{"version":3,"file":"BlockiesSvgSync.cjs","sources":["../../src/BlockiesSvgSync.tsx"],"sourcesContent":["import React from 'react'\nimport { BlockiesOptions, buildOpts, createImageData } from './blockies'\n\nconst store: Record<string, { opts: BlockiesOptions; imageData: number[] }> = Object.create(null)\n\nexport default function BlockiesSvgSync(\n\tprops: { address: string; size?: number; scale?: number; caseSensitive?: boolean } & React.SVGProps<SVGSVGElement>\n) {\n\tlet { address, size = 8, scale = 10, caseSensitive = false, ...rest } = props\n\tconst width = size * scale\n\n\tif (!address)\n\t\treturn (\n\t\t\t<svg {...rest} width={width} height={width} viewBox={`0 0 ${width} ${width}`} xmlns='http://www.w3.org/2000/svg'>\n\t\t\t\t<rect width={width} height={width} fill='black' />\n\t\t\t</svg>\n\t\t)\n\n\tlet opts: BlockiesOptions | null = null\n\tlet imageData: number[] | null = null\n\n\tif (!caseSensitive) address = address.toLowerCase()\n\n\tif (store[address] && store[address].opts.size === size) {\n\t\topts = store[address].opts\n\t\timageData = store[address].imageData\n\t} else {\n\t\topts = buildOpts({ seed: address, size, scale })\n\t\timageData = createImageData(opts.size)\n\n\t\tstore[address] = { opts, imageData }\n\t}\n\n\treturn (\n\t\t<svg {...rest} width={width} height={width} viewBox={`0 0 ${width} ${width}`} xmlns='http://www.w3.org/2000/svg'>\n\t\t\t<rect width={width} height={width} fill={opts.bgcolor} />\n\n\t\t\t<g fill={opts.color}>\n\t\t\t\t{imageData?.map((value, i) => {\n\t\t\t\t\tif (value === 1) {\n\t\t\t\t\t\tconst row = (i % size) * scale\n\t\t\t\t\t\tconst col = Math.floor(i / size) * scale\n\n\t\t\t\t\t\treturn <rect key={`${address}-${i}`} width={scale} height={scale} x={row} y={col} />\n\t\t\t\t\t}\n\t\t\t\t})}\n\t\t\t</g>\n\t\t\t<g fill={opts.spotcolor}>\n\t\t\t\t{imageData?.map((value, i) => {\n\t\t\t\t\tif (value === 2) {\n\t\t\t\t\t\tconst row = (i % size) * scale\n\t\t\t\t\t\tconst col = Math.floor(i / size) * scale\n\n\t\t\t\t\t\treturn <rect key={`${address}-${i}`} width={scale} height={scale} x={row} y={col} />\n\t\t\t\t\t}\n\t\t\t\t})}\n\t\t\t</g>\n\t\t</svg>\n\t)\n}\n"],"names":["_jsx","buildOpts","createImageData","_jsxs"],"mappings":"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"}