{"version":3,"file":"@dicebear.a320a187.js","sources":["../../../node_modules/@dicebear/core/lib/utils/escape.js","../../../node_modules/@dicebear/core/lib/utils/license.js","../../../node_modules/@dicebear/core/lib/utils/prng.js","../../../node_modules/@dicebear/core/lib/utils/svg.js","../../../node_modules/@dicebear/core/lib/schema.js","../../../node_modules/@dicebear/core/lib/utils/options.js","../../../node_modules/@dicebear/converter/lib/utils/mime-type.js","../../../node_modules/@dicebear/converter/lib/utils/svg.js","../../../node_modules/@dicebear/converter/lib/utils/text.js","../../../node_modules/@dicebear/converter/lib/core.js","../../../node_modules/@dicebear/core/lib/utils/color.js","../../../node_modules/@dicebear/core/lib/core.js","../../../node_modules/@dicebear/initials/lib/utils/initials.js","../../../node_modules/@dicebear/initials/lib/utils/convertColor.js","../../../node_modules/@dicebear/initials/lib/utils/escape.js","../../../node_modules/@dicebear/initials/lib/schema.js","../../../node_modules/@dicebear/initials/lib/index.js"],"sourcesContent":["export function xml(content) {\n return content\n .replace(/&/g, '&')\n .replace(/'/g, ''')\n .replace(/\"/g, '"')\n .replace(//g, '>');\n}\n","import * as _ from './escape.js';\nexport function xml(style) {\n var _a, _b, _c, _d, _e, _f, _g;\n const title = (_a = style.meta) === null || _a === void 0 ? void 0 : _a.title;\n const creator = (_b = style.meta) === null || _b === void 0 ? void 0 : _b.creator;\n const source = (_c = style.meta) === null || _c === void 0 ? void 0 : _c.source;\n const license = (_e = (_d = style.meta) === null || _d === void 0 ? void 0 : _d.license) === null || _e === void 0 ? void 0 : _e.url;\n const rights = text(style);\n if (!title && !creator && !source && !license && !rights) {\n return '';\n }\n // https://nsteffel.github.io/dublin_core_generator/generator.html\n return ('' +\n '' +\n '' +\n (title ? `${_.xml(title)}` : '') +\n (creator ? `${_.xml(creator)}` : '') +\n (source ? `${_.xml((_g = (_f = style.meta) === null || _f === void 0 ? void 0 : _f.source) !== null && _g !== void 0 ? _g : '')}` : '') +\n (license ? `${_.xml(license)}` : '') +\n (rights ? `${_.xml(rights)}` : '') +\n '' +\n '' +\n '');\n}\nexport function text(style) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;\n let title = ((_a = style.meta) === null || _a === void 0 ? void 0 : _a.title) ? `„${(_b = style.meta) === null || _b === void 0 ? void 0 : _b.title}”` : 'Design';\n let creator = `„${(_d = (_c = style.meta) === null || _c === void 0 ? void 0 : _c.creator) !== null && _d !== void 0 ? _d : 'Unknown'}”`;\n if ((_e = style.meta) === null || _e === void 0 ? void 0 : _e.source) {\n title += ` (${style.meta.source})`;\n }\n let result = '';\n if (((_g = (_f = style.meta) === null || _f === void 0 ? void 0 : _f.license) === null || _g === void 0 ? void 0 : _g.name) !== 'MIT' && ((_h = style.meta) === null || _h === void 0 ? void 0 : _h.creator) !== 'DiceBear' && ((_j = style.meta) === null || _j === void 0 ? void 0 : _j.title)) {\n result += 'Remix of ';\n }\n result += `${title} by ${creator}`;\n if ((_l = (_k = style.meta) === null || _k === void 0 ? void 0 : _k.license) === null || _l === void 0 ? void 0 : _l.name) {\n result += `, licensed under „${(_o = (_m = style.meta) === null || _m === void 0 ? void 0 : _m.license) === null || _o === void 0 ? void 0 : _o.name}”`;\n if ((_q = (_p = style.meta) === null || _p === void 0 ? void 0 : _p.license) === null || _q === void 0 ? void 0 : _q.url) {\n result += ` (${style.meta.license.url})`;\n }\n }\n return result;\n}\nexport function exif(style) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j;\n const copyright = text(style);\n // https://www.iptc.org/std/photometadata/specification/IPTC-PhotoMetadata\n // https://developers.google.com/search/docs/appearance/structured-data/image-license-metadata\n return {\n // Title\n 'IPTC:ObjectName': (_a = style.meta) === null || _a === void 0 ? void 0 : _a.title,\n 'XMP-dc:Title': (_b = style.meta) === null || _b === void 0 ? void 0 : _b.title,\n // Copyright\n 'IPTC:CopyrightNotice': copyright,\n 'XMP-dc:Rights': copyright,\n // Creator\n 'IPTC:By-line': (_c = style.meta) === null || _c === void 0 ? void 0 : _c.creator,\n 'XMP-dc:Creator': (_d = style.meta) === null || _d === void 0 ? void 0 : _d.creator,\n // Credit\n 'IPTC:Credit': (_e = style.meta) === null || _e === void 0 ? void 0 : _e.creator,\n 'XMP-photoshop:Credit': (_f = style.meta) === null || _f === void 0 ? void 0 : _f.creator,\n // Licensor\n 'XMP-plus:LicensorURL': (_g = style.meta) === null || _g === void 0 ? void 0 : _g.source,\n // Rights\n 'XMP-xmpRights:WebStatement': (_j = (_h = style.meta) === null || _h === void 0 ? void 0 : _h.license) === null || _j === void 0 ? void 0 : _j.url,\n };\n}\n","const MIN = -2147483648;\nconst MAX = 2147483647;\nfunction xorshift(value) {\n value ^= value << 13;\n value ^= value >> 17;\n value ^= value << 5;\n return value;\n}\nfunction hashSeed(seed) {\n let hash = 0;\n for (let i = 0; i < seed.length; i++) {\n hash = ((hash << 5) - hash + seed.charCodeAt(i)) | 0;\n hash = xorshift(hash);\n }\n return hash;\n}\nexport function create(seed = '') {\n // Ensure that seed is a string\n seed = seed.toString();\n let value = hashSeed(seed) || 1;\n const next = () => (value = xorshift(value));\n const integer = (min, max) => {\n return Math.floor(((next() - MIN) / (MAX - MIN)) * (max + 1 - min) + min);\n };\n return {\n seed,\n next,\n bool(likelihood = 50) {\n return integer(0, 100) <= likelihood;\n },\n integer(min, max) {\n return integer(min, max);\n },\n pick(arr, fallback) {\n var _a;\n if (arr.length === 0) {\n next();\n return fallback;\n }\n return (_a = arr[integer(0, arr.length - 1)]) !== null && _a !== void 0 ? _a : fallback;\n },\n shuffle(arr) {\n // Each method call should call the `next` function only once.\n // Therefore, we use a separate instance of the PRNG here.\n const internalPrng = create(next().toString());\n return arr.sort(() => internalPrng.integer(-1, 1));\n },\n string(length, characters = 'abcdefghijklmnopqrstuvwxyz1234567890') {\n // Each method call should call the `next` function only once.\n // Therefore, we use a separate instance of the PRNG here.\n const internalPrng = create(next().toString());\n let str = '';\n for (let i = 0; i < length; i++) {\n str += characters[internalPrng.integer(0, characters.length - 1)];\n }\n return str;\n },\n };\n}\n","import * as escape from './escape.js';\nimport { create as createPrng } from './prng.js';\nexport function getViewBox(result) {\n let viewBox = result.attributes['viewBox'].split(' ');\n let x = parseInt(viewBox[0]);\n let y = parseInt(viewBox[1]);\n let width = parseInt(viewBox[2]);\n let height = parseInt(viewBox[3]);\n return {\n x,\n y,\n width,\n height,\n };\n}\nexport function addBackground(result, primaryColor, secondaryColor, type, rotation) {\n let { width, height, x, y } = getViewBox(result);\n const solidBackground = ``;\n switch (type) {\n case 'solid':\n return solidBackground + result.body;\n case 'gradientLinear':\n return (`` +\n `` +\n `` +\n `` +\n `` +\n `` +\n `` +\n result.body);\n }\n}\nexport function addScale(result, scale) {\n let { width, height, x, y } = getViewBox(result);\n let percent = scale ? (scale - 100) / 100 : 0;\n let translateX = (width / 2 + x) * percent * -1;\n let translateY = (height / 2 + y) * percent * -1;\n return `${result.body}`;\n}\nexport function addTranslate(result, x, y) {\n let viewBox = getViewBox(result);\n let translateX = (viewBox.width + viewBox.x * 2) * ((x !== null && x !== void 0 ? x : 0) / 100);\n let translateY = (viewBox.height + viewBox.y * 2) * ((y !== null && y !== void 0 ? y : 0) / 100);\n return `${result.body}`;\n}\nexport function addRotate(result, rotate) {\n let { width, height, x, y } = getViewBox(result);\n return `${result.body}`;\n}\nexport function addFlip(result) {\n let { width, x } = getViewBox(result);\n return `${result.body}`;\n}\nexport function addViewboxMask(result, radius) {\n let { width, height, x, y } = getViewBox(result);\n let rx = radius ? (width * radius) / 100 : 0;\n let ry = radius ? (height * radius) / 100 : 0;\n return (`` +\n `` +\n `` +\n `${result.body}`);\n}\nexport function createAttrString(result) {\n const attributes = {\n xmlns: 'http://www.w3.org/2000/svg',\n ...result.attributes,\n };\n return Object.keys(attributes)\n .map((attr) => `${escape.xml(attr)}=\"${escape.xml(attributes[attr])}\"`)\n .join(' ');\n}\nexport function randomizeIds(result) {\n const prng = createPrng(Math.random().toString());\n const ids = {};\n return result.body.replace(/(id=\"|url\\(#)([a-z0-9-_]+)([\")])/gi, (match, m1, m2, m3) => {\n ids[m2] = ids[m2] || prng.string(8);\n return `${m1}${ids[m2]}${m3}`;\n });\n}\n","export const schema = {\n type: 'object',\n $schema: 'http://json-schema.org/draft-07/schema#',\n properties: {\n seed: {\n type: 'string',\n },\n flip: {\n type: 'boolean',\n default: false,\n },\n rotate: {\n type: 'integer',\n minimum: 0,\n maximum: 360,\n default: 0,\n },\n scale: {\n type: 'integer',\n minimum: 0,\n maximum: 200,\n default: 100,\n },\n radius: {\n type: 'integer',\n minimum: 0,\n maximum: 50,\n default: 0,\n },\n size: {\n type: 'integer',\n minimum: 1,\n },\n backgroundColor: {\n type: 'array',\n items: {\n type: 'string',\n pattern: '^(transparent|[a-fA-F0-9]{6})$',\n },\n },\n backgroundType: {\n type: 'array',\n items: {\n type: 'string',\n enum: ['solid', 'gradientLinear'],\n },\n default: ['solid'],\n },\n backgroundRotation: {\n type: 'array',\n items: {\n type: 'integer',\n minimum: -360,\n maximum: 360,\n },\n default: [\n 0, 360,\n ],\n },\n translateX: {\n type: 'integer',\n minimum: -100,\n maximum: 100,\n default: 0,\n },\n translateY: {\n type: 'integer',\n minimum: -100,\n maximum: 100,\n default: 0,\n },\n clip: {\n type: 'boolean',\n default: true,\n },\n randomizeIds: {\n type: 'boolean',\n default: false,\n },\n },\n};\n","import { schema } from '../schema.js';\nexport function defaults(schema) {\n var _a;\n let result = {};\n let props = (_a = schema.properties) !== null && _a !== void 0 ? _a : {};\n Object.keys(props).forEach((key) => {\n let val = props[key];\n if (typeof val === 'object' && undefined !== val.default) {\n if (Array.isArray(val.default)) {\n result[key] = [...val.default];\n }\n else if (typeof val.default === 'object') {\n result[key] = { ...val.default };\n }\n else {\n result[key] = val.default;\n }\n }\n });\n return result;\n}\nexport function merge(style, options) {\n var _a;\n let result = {\n ...defaults(schema),\n ...defaults((_a = style.schema) !== null && _a !== void 0 ? _a : {}),\n ...options,\n };\n // Return a complete copy because the styles could partially customize the\n // options and thus modify nested objects and arrays.\n return JSON.parse(JSON.stringify(result));\n}\n","export function getMimeType(format) {\n switch (format) {\n case 'svg':\n return 'image/svg+xml';\n case 'png':\n case 'jpeg':\n return `image/${format}`;\n default:\n throw new Error(`Unsupported format: ${format}`);\n }\n}\n","export function ensureSize(svg, defaultSize = 512) {\n let size = defaultSize;\n svg = svg.replace(/]*)/, (match, g1) => {\n const found = g1.match(/width=\"([^\"]+)\"/);\n if (found) {\n size = parseInt(found[1]);\n }\n if (g1.match(/width=\"([^\"]+)\"/)) {\n g1 = g1.replace(/width=\"([^\"]+)\"/, `width=\"${size}\"`);\n }\n else {\n g1 += ` width=\"${size}\"`;\n }\n if (g1.match(/height=\"([^\"]+)\"/)) {\n g1 = g1.replace(/height=\"([^\"]+)\"/, `height=\"${size}\"`);\n }\n else {\n g1 += ` height=\"${size}\"`;\n }\n return ` toDataUri(svg, format, exif),\n toFile: (name) => toFile(name, svg, format, exif),\n toArrayBuffer: () => toArrayBuffer(svg, format, exif),\n };\n};\nasync function toDataUri(svg, format, exif) {\n if ('svg' === format) {\n return `data:${getMimeType(format)};utf8,${encodeURIComponent(svg)}`;\n }\n const canvas = await toCanvas(svg, format, exif);\n return canvas.toDataURL(getMimeType(format));\n}\nasync function toArrayBuffer(rawSvg, format, exif) {\n if ('svg' === format) {\n return getEncoder().encode(rawSvg);\n }\n const canvas = await toCanvas(rawSvg, format, exif);\n return await new Promise((resolve, reject) => {\n canvas.toBlob((blob) => {\n blob\n ? resolve(blob.arrayBuffer())\n : reject(new Error('Could not create blob'));\n }, getMimeType(format));\n });\n}\nasync function toFile(name, svg, format, exif) {\n const link = document.createElement('a');\n link.href = await toDataUri(svg, format, exif);\n link.download = name;\n link.click();\n link.remove();\n}\nasync function toCanvas(rawSvg, format, exif) {\n if (exif) {\n console.warn('The `exif` option is not supported in the browser version of `@dicebear/converter`. \\n' +\n 'Please use the node version of `@dicebear/converter` to generate images with exif data.');\n }\n let { svg, size } = ensureSize(rawSvg);\n const canvas = document.createElement('canvas');\n canvas.width = size;\n canvas.height = size;\n const context = canvas.getContext('2d');\n if (null === context) {\n throw new Error('Could not get canvas context');\n }\n if (format === 'jpeg') {\n context.fillStyle = 'white';\n context.fillRect(0, 0, size, size);\n }\n var img = document.createElement('img');\n img.width = size;\n img.height = size;\n img.setAttribute('src', await toDataUri(svg, 'svg'));\n return new Promise((resolve, reject) => {\n img.onload = () => {\n context.drawImage(img, 0, 0, size, size);\n resolve(canvas);\n };\n img.onerror = (e) => reject(e);\n });\n}\n","export function convertColor(color) {\n return 'transparent' === color ? color : `#${color}`;\n}\nexport function getBackgroundColors(prng, backgroundColor) {\n var _a;\n let shuffledBackgroundColors;\n if (backgroundColor.length <= 2) {\n // A function call should in any case make an identical number of calls to the PRNG.\n prng.next();\n shuffledBackgroundColors = backgroundColor;\n }\n else {\n shuffledBackgroundColors = prng.shuffle(backgroundColor);\n }\n if (shuffledBackgroundColors.length === 0) {\n shuffledBackgroundColors = ['transparent'];\n }\n const primary = shuffledBackgroundColors[0];\n const secondary = (_a = shuffledBackgroundColors[1]) !== null && _a !== void 0 ? _a : shuffledBackgroundColors[0];\n return {\n primary: convertColor(primary),\n secondary: convertColor(secondary),\n };\n}\n","import * as svgUtils from './utils/svg.js';\nimport { merge as mergeOptions } from './utils/options.js';\nimport { create as createPrng } from './utils/prng.js';\nimport * as license from './utils/license.js';\nimport { toFormat } from '@dicebear/converter';\nimport { getBackgroundColors } from './utils/color.js';\nexport function createAvatar(style, options = {}) {\n var _a, _b, _c, _d, _e;\n options = mergeOptions(style, options);\n const prng = createPrng(options.seed);\n const result = style.create({ prng: prng, options });\n const { primary: primaryBackgroundColor, secondary: secondaryBackgroundColor, } = getBackgroundColors(prng, (_a = options.backgroundColor) !== null && _a !== void 0 ? _a : []);\n const backgroundType = prng.pick((_b = options.backgroundType) !== null && _b !== void 0 ? _b : [], 'solid');\n const backgroundRotation = prng.integer(((_c = options.backgroundRotation) === null || _c === void 0 ? void 0 : _c.length) ? Math.min(...options.backgroundRotation) : 0, ((_d = options.backgroundRotation) === null || _d === void 0 ? void 0 : _d.length) ? Math.max(...options.backgroundRotation) : 0);\n if (options.size) {\n result.attributes.width = options.size.toString();\n result.attributes.height = options.size.toString();\n }\n if (options.scale !== undefined && options.scale !== 100) {\n result.body = svgUtils.addScale(result, options.scale);\n }\n if (options.flip) {\n result.body = svgUtils.addFlip(result);\n }\n if (options.rotate) {\n result.body = svgUtils.addRotate(result, options.rotate);\n }\n if (options.translateX || options.translateY) {\n result.body = svgUtils.addTranslate(result, options.translateX, options.translateY);\n }\n if (primaryBackgroundColor !== 'transparent' &&\n secondaryBackgroundColor !== 'transparent') {\n result.body = svgUtils.addBackground(result, primaryBackgroundColor, secondaryBackgroundColor, backgroundType, backgroundRotation);\n }\n if (options.radius || options.clip) {\n result.body = svgUtils.addViewboxMask(result, (_e = options.radius) !== null && _e !== void 0 ? _e : 0);\n }\n if (options.randomizeIds) {\n // Reduces the occurrence of ID collisions when rendering multiple avatars on one HTML page.\n result.body = svgUtils.randomizeIds(result);\n }\n const attributes = svgUtils.createAttrString(result);\n const metadata = license.xml(style);\n const exif = license.exif(style);\n const svg = `${metadata}${result.body}`;\n return {\n toString: () => svg,\n toJson: () => {\n var _a;\n return ({\n svg: svg,\n extra: {\n primaryBackgroundColor,\n secondaryBackgroundColor,\n backgroundType,\n backgroundRotation,\n ...(_a = result.extra) === null || _a === void 0 ? void 0 : _a.call(result),\n },\n });\n },\n toDataUriSync: () => {\n return `data:image/svg+xml;utf8,${encodeURIComponent(svg)}`;\n },\n ...toFormat(svg, 'svg'),\n png: ({ includeExif = false } = {}) => {\n return toFormat(svg, 'png', includeExif ? exif : undefined);\n },\n jpeg: ({ includeExif = false } = {}) => {\n return toFormat(svg, 'jpeg', includeExif ? exif : undefined);\n },\n };\n}\n","// @see https://www.regular-expressions.info/unicode.html\nexport function getInitials(seed, discardAtSymbol = true) {\n const input = discardAtSymbol ? seed.replace(/@.*/, '') : seed;\n const matches = input.match(/(\\p{L}[\\p{L}\\p{M}]*)/gu);\n if (!matches) {\n // Re-run without discarding `@`-symbol, if no matches\n return discardAtSymbol ? getInitials(seed, false) : '';\n }\n if (matches.length === 1) {\n return matches[0].match(/^(?:\\p{L}\\p{M}*){1,2}/u)[0].toUpperCase();\n }\n const firstCharacter = matches[0].match(/^(?:\\p{L}\\p{M}*)/u)[0];\n const secondCharacter = matches[matches.length - 1].match(/^(?:\\p{L}\\p{M}*)/u)[0];\n return (firstCharacter + secondCharacter).toUpperCase();\n}\n","export function convertColor(color) {\n return 'transparent' === color ? color : `#${color}`;\n}\n","export function escapeXml(content) {\n return content\n .replace(/&/g, '&')\n .replace(/'/g, ''')\n .replace(/\"/g, '"')\n .replace(//g, '>');\n}\n","export const schema = {\n $schema: 'http://json-schema.org/draft-07/schema#',\n properties: {\n backgroundColor: {\n type: 'array',\n items: {\n type: 'string',\n pattern: '^(transparent|[a-fA-F0-9]{6})$',\n },\n default: [\n 'e53935',\n 'd81b60',\n '8e24aa',\n '5e35b1',\n '3949ab',\n '1e88e5',\n '039be5',\n '00acc1',\n '00897b',\n '43a047',\n '7cb342',\n 'c0ca33',\n 'fdd835',\n 'ffb300',\n 'fb8c00',\n 'f4511e',\n ],\n },\n textColor: {\n type: 'array',\n items: {\n type: 'string',\n pattern: '^(transparent|[a-fA-F0-9]{6})$',\n },\n default: [\n 'ffffff'\n ],\n },\n fontFamily: {\n type: 'array',\n minItems: 1,\n items: {\n type: 'string',\n enum: [\n 'Arial',\n 'Verdana',\n 'Helvetica',\n 'Tahoma',\n 'Trebuchet MS',\n 'Times New Roman',\n 'Georgia',\n 'Garamond',\n 'Courier New',\n 'Brush Script MT',\n 'sans-serif',\n 'serif',\n ],\n },\n default: ['Arial', 'sans-serif'],\n },\n fontSize: {\n type: 'integer',\n minimum: 1,\n maximum: 100,\n default: 50,\n },\n chars: {\n type: 'integer',\n minimum: 0,\n maximum: 2,\n default: 2,\n },\n fontWeight: {\n type: 'integer',\n default: 400,\n enum: [100, 200, 300, 400, 500, 600, 700, 800, 900],\n },\n },\n};\n","/*!\n * DiceBear Initials (@dicebear/initials)\n *\n * Code licensed under MIT (https://github.com/dicebear/dicebear/blob/v4/packages/initials/LICENSE)\n * Copyright (c) 2023 Florian Körner\n */\nimport { getInitials } from './utils/initials.js';\nimport { convertColor } from './utils/convertColor.js';\nimport { escapeXml } from './utils/escape.js';\nexport const meta = {\n title: 'Initials',\n creator: 'DiceBear',\n source: 'https://github.com/dicebear/dicebear',\n license: {\n name: 'CC0 1.0',\n url: 'https://creativecommons.org/publicdomain/zero/1.0/',\n },\n};\nexport const create = ({ prng, options }) => {\n var _a, _b, _c, _d, _e, _f, _g;\n const fontFamily = (_b = (_a = options.fontFamily) === null || _a === void 0 ? void 0 : _a.join(', ')) !== null && _b !== void 0 ? _b : 'Arial, sans-serif';\n const fontSize = (_c = options.fontSize) !== null && _c !== void 0 ? _c : 50;\n const fontWeight = (_d = options.fontWeight) !== null && _d !== void 0 ? _d : 400;\n const textColor = convertColor((_f = prng.pick((_e = options.textColor) !== null && _e !== void 0 ? _e : [])) !== null && _f !== void 0 ? _f : 'ffffff');\n const initials = getInitials(prng.seed.trim()).slice(0, (_g = options.chars) !== null && _g !== void 0 ? _g : 2);\n // prettier-ignore\n const svg = [\n `${escapeXml(initials)}`,\n ].join('');\n return {\n attributes: {\n viewBox: '0 0 100 100',\n },\n body: svg,\n extra: () => ({\n fontFamily,\n fontSize,\n fontWeight,\n textColor,\n initials,\n }),\n };\n};\nexport { schema } from './schema.js';\n"],"names":["xml","content","style","_a","_b","_c","_d","_e","_f","_g","title","creator","source","license","rights","text","_.xml","_h","_j","_k","_l","_m","_o","_p","_q","result","exif","copyright","MIN","MAX","xorshift","value","hashSeed","seed","hash","i","create","next","integer","min","max","likelihood","arr","fallback","internalPrng","length","characters","str","getViewBox","viewBox","x","y","width","height","addBackground","primaryColor","secondaryColor","type","rotation","solidBackground","addScale","scale","percent","translateX","translateY","addTranslate","addRotate","rotate","addFlip","addViewboxMask","radius","rx","ry","createAttrString","attributes","attr","escape.xml","randomizeIds","prng","createPrng","ids","match","m1","m2","m3","schema","defaults","props","key","val","merge","options","getMimeType","format","ensureSize","svg","defaultSize","size","g1","found","encoder","getEncoder","toFormat","toDataUri","name","toFile","toArrayBuffer","toCanvas","rawSvg","canvas","resolve","reject","blob","link","context","img","e","convertColor","color","getBackgroundColors","backgroundColor","shuffledBackgroundColors","primary","secondary","createAvatar","mergeOptions","primaryBackgroundColor","secondaryBackgroundColor","backgroundType","backgroundRotation","svgUtils.addScale","svgUtils.addFlip","svgUtils.addRotate","svgUtils.addTranslate","svgUtils.addBackground","svgUtils.addViewboxMask","svgUtils.randomizeIds","svgUtils.createAttrString","metadata","license.xml","license.exif","includeExif","getInitials","discardAtSymbol","matches","firstCharacter","secondCharacter","escapeXml","meta","fontFamily","fontSize","fontWeight","textColor","initials"],"mappings":"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"}