{"version":3,"file":"main.avatar-editor.bundle.js","sources":["../src/tabs/default-tab.js","../src/tabs/camera-tab.js","../src/backend.js","../src/tabs/upload-tab.js","../src/options.js","../src/mask-tool/mask-editor.js","../src/mask-tool/mask-item.js","../src/mask-tool/mask-list.js","../src/tabs/mask-tab.js","../src/tabs/canvas-tab.js","../src/canvas-tool/canvas-loader.js","../src/canvas-tool/canvas-default.js","../src/canvas-tool/canvas-master.js","../src/canvas-tool/canvas-preview.js","../src/canvas-tool/canvas-zooming.js","../src/canvas-tool/canvas-mask.js","../src/editor.js","../src/editor-in-popup.js","../src/editor-in-slider.js","../src/index.js"],"sourcesContent":["import {Tag, Dom, Loc, Type, Cache} from 'main.core';\nimport {EventEmitter} from 'main.core.events';\n\nexport default class DefaultTab extends EventEmitter\n{\n\tcache = new Cache.MemoryCache();\n\tstatic priority = 1;\n\t#parent: ?DefaultTab;\n\n\tconstructor()\n\t{\n\t\tsuper();\n\t\tthis.setEventNamespace('Main.Avatar.Editor');\n\t}\n\n\tgetPriority(): Number\n\t{\n\t\treturn this.constructor.priority;\n\t}\n\n\tsetParentTab(tab: DefaultTab)\n\t{\n\t\tthis.#parent = tab;\n\t}\n\n\tgetHeaderContainer(): Element\n\t{\n\t\treturn this.cache.remember('headerContainer', () => {\n\t\t\tconst id = this.constructor.code;\n\t\t\tconst title = this.getHeader();\n\t\t\tif (title === null)\n\t\t\t{\n\t\t\t\treturn Tag.render``;\n\t\t\t}\n\t\t\treturn Tag.render`
`;\n\t\t})\n\t}\n\n\tgetHeader(): ?String\n\t{\n\t\tif (this.#parent !== null)\n\t\t\treturn this.constructor.code.toUpperCase();\n\n\t\treturn null;\n\t}\n\n\tgetBodyContainer(): Element\n\t{\n\t\treturn this.cache.remember('bodyContainer', () => {\n\t\t\tconst id = this.constructor.code;\n\t\t\treturn Tag.render`\n\t\t\t\t${Text.encode(message)}`\n\t\t\t)\n\t\t});\n\t}\n}\n\nexport class MaskRecentlyUsedList extends MaskList{}\n\nexport class MaskSystemList extends MaskList {}\n\nexport class MaskUserList extends MaskList {\n\tconstructor()\n\t{\n\t\tsuper(...arguments);\n\t\tMaskEditor.subscribe(\n\t\t\t'onSave',\n\t\t\t(event: BaseEvent) => {\n\t\t\t\ttry {\n\t\t\t\t\tconst {data: {id, data}} = event;\n\t\t\t\t\tif (id === null)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.renderItemsReverse({'doesNotMatter': {items: [data]}})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tcatch(e)\n\t\t\t\t{\n\t\t\t\t\tconsole.log(e.message);\n\t\t\t\t}\n\t\t\t})\n\t\t;\n\t}\n}\n\nexport class MaskSharedList extends MaskList {}\n","import {Dom, Tag, Loc, Type, Event} from 'main.core';\nimport DefaultTab from './default-tab';\nimport {MaskList, MaskRecentlyUsedList, MaskSystemList, MaskUserList, MaskSharedList} from '../mask-tool/mask-list';\nimport MaskEditor from '../mask-tool/mask-editor';\nimport {BaseEvent, EventEmitter} from \"main.core.events\";\nimport {MaskItem} from \"../mask-tool/mask-item\";\nimport {MaskType} from \"../editor\";\nimport Backend from \"../backend\";\nimport {MenuManager} from \"main.popup\";\nimport {MessageBox, MessageBoxButtons} from 'ui.dialogs.messagebox';\nimport {Loader} from \"main.loader\";\n\nexport default class MaskTab extends DefaultTab\n{\n\tstatic maxCount = 5;\n\tstatic priority = 4;\n\t#ready: boolean = false;\n\t#callbacks: Array = [];\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis.badges = null;\n\t\tthis.activeId = null;\n\t\tthis.mask = this.mask.bind(this)\n\t\tthis.subscribeOnce('onActive', this.initialize.bind(this));\n\t}\n\n\tgetHeader(): ?String\n\t{\n\t\treturn Loc.getMessage('JS_AVATAR_EDITOR_MASKS');\n\t}\n\n\tgetBody(): String| Element\n\t{\n\t\treturn this.cache.remember('body', () => {\n\t\t\treturn Tag.render\n\t\t\t`