{ "version": 3, "sources": ["../../../../../node_modules/@qwerty.software/global-entities/configs/utils/init.ts", "../../../../../node_modules/@qwerty.software/global-entities/bootstrap-data/utils/init.ts", "../../../../../node_modules/@qwerty.software/store-manager/initializer.ts", "../../../../../node_modules/@qwerty.software/store-manager/absrtact-initializer.ts", "../../../../../resources/views/common/microservices/lazy-store-manager.ts"], "sourcesContent": ["import type { Configs as ConfigsMapType } from 'common/configs/types'\n\nexport const KEY = 'MICROSERVICES_CONFIGS' as const\n\ndeclare global {\n interface Window {\n MICROSERVICES_INNER_CONFIGS?: ConfigsMapType\n MICROSERVICES_OUTER_CONFIGS?: ConfigsMapType\n\n [KEY]?: ConfigsMapType\n }\n}\n\nexport const initConfigs = (...args: Array) => {\n const prevConfigs = window[KEY] || {}\n\n const innerConfigs = window.MICROSERVICES_INNER_CONFIGS || {}\n const outerConfigs = window.MICROSERVICES_OUTER_CONFIGS || {}\n\n const configs = Object.assign({}, innerConfigs, outerConfigs, prevConfigs, ...args) as ConfigsMapType\n\n window[KEY] = configs\n}\n\nexport type { Configs as ConfigsMapType } from 'common/configs/types'", "import type { BootstrapData } from 'types/BootstrapData'\n\nconst GLOBAL_BOOTSTRAP_DATA_FIELDS = ['livechatGroupsIDs'] as const\n\nenum PickedBdFields {\n paperTypes = 'paperTypes',\n paperTypeGroups = 'paperTypeGroups',\n subjects = 'subjects',\n academicLevels = 'academicLevels',\n paperFormats = 'paperFormats',\n workTypes = 'workTypes',\n deadlines = 'deadlines',\n spacings = 'spacings',\n writerCategories = 'writerCategories',\n additionalFeatures = 'additionalFeatures',\n softwares = 'softwares',\n softcopies = 'softcopies',\n speakerNotes = 'speakerNotes',\n prices = 'prices',\n currencies = 'currencies'\n}\n\nexport const KEY = 'MICROSERVICES_BOOTSTRAP_DATA' as const\n\ndeclare global {\n interface Window {\n [KEY]?: BootstrapData.ICore\n }\n}\n\nexport const initBootstrapData = (...args: Array) => {\n const prevBootstrapData = window[KEY] || {}\n\n const bootstrapData = Object.assign({}, prevBootstrapData, ...args) as BootstrapData.ICore\n\n // transform for price calculator\n // @ts-ignore\n bootstrapData.priceCalculatorAdapted = {\n bdPrices: bootstrapData[PickedBdFields.prices],\n bdPaperTypeGroups: bootstrapData[PickedBdFields.paperTypeGroups],\n bdPaperTypes: bootstrapData[PickedBdFields.paperTypes],\n bdAcademicLevels: bootstrapData[PickedBdFields.academicLevels],\n bdSpacings: bootstrapData[PickedBdFields.spacings],\n bdSubjects: bootstrapData[PickedBdFields.subjects],\n bdSoftwares: bootstrapData[PickedBdFields.softwares],\n bdWriterCategories: bootstrapData[PickedBdFields.writerCategories],\n bdAdditionalFeatures: bootstrapData[PickedBdFields.additionalFeatures],\n bdSoftcopies: bootstrapData[PickedBdFields.softcopies],\n bdSpeakerNotes: bootstrapData[PickedBdFields.speakerNotes],\n bdCurrencies: bootstrapData[PickedBdFields.currencies],\n }\n\n for (const key of GLOBAL_BOOTSTRAP_DATA_FIELDS) {\n window[key] = bootstrapData[key]\n }\n\n window[KEY] = bootstrapData\n\n return bootstrapData\n}\n\nexport type { BootstrapData } from 'types/BootstrapData'\n", "import InitializerObserver from './absrtact-initializer'\n\nimport { ConfigsMapType } from 'global-entities/configs/utils/init'\nimport { BootstrapData } from 'global-entities/bootstrap-data/utils/init'\n\nimport type { StoreManagerClass } from '.'\n\nclass Initializer extends InitializerObserver {\n private constructor() { super() }\n\n static getInstance() {\n window.__storeManagerInitializer = window.__storeManagerInitializer || new Initializer()\n\n return window.__storeManagerInitializer\n }\n\n static async init(StoreManager: StoreManagerClass, configs: ConfigsMapType, bootstrapData: BootstrapData.ICore) {\n const instance = Initializer.getInstance()\n\n return new Promise((resolve) => {\n instance.addEventListener('init', handleInited)\n\n instance.init(StoreManager, configs, bootstrapData)\n\n function handleInited(e) {\n instance.removeEventListener('init', handleInited)\n\n resolve(true)\n }\n })\n }\n\n private init(StoreManager: StoreManagerClass, configs: ConfigsMapType, bootstrapData: BootstrapData.ICore) {\n if (this.isInitialized()) {\n console.warn('Store already initialized')\n\n return\n }\n\n require('global-entities/configs/utils/init')\n .initConfigs(configs)\n\n require('global-entities/bootstrap-data/utils/init')\n .initBootstrapData(bootstrapData)\n\n StoreManager.init(this.initialized)\n }\n}\n\nexport const storeManagerInitializer = Initializer.getInstance()\n\nexport { KEY as CONFIGS_KEY } from 'global-entities/configs/utils/init'\nexport { KEY as BOOTSTRAP_DATA_KEY } from 'global-entities/bootstrap-data/utils/init'\n\nexport default Initializer\n\ndeclare global {\n interface Window {\n __storeManagerInitializer?: Initializer\n }\n}", "/**\n * An observer that can be used to monitor the initialization state of the storage manager\n */\ninterface IInitializer extends EventTarget {\n isInitialized(): boolean\n}\n\ninterface IInitEvent extends Event {\n /**\n * Flag which signal about synthetic call for callbacks or real clear init event\n */\n isFresh: boolean\n}\n\nabstract class Initializer extends EventTarget implements IInitializer {\n static FreshInitEvent = class extends Event implements IInitEvent {\n public isFresh: boolean = true\n\n constructor(eventInitDict?: EventInit) {\n super('init', eventInitDict)\n }\n }\n\n static InitEvent = class extends Event implements IInitEvent {\n public isFresh: boolean = false\n\n constructor(eventInitDict?: EventInit) {\n super('init', eventInitDict)\n }\n }\n\n private _isInitialized: boolean = false\n\n public isInitialized = (): boolean => {\n return this._isInitialized\n }\n\n /**\n * Overriding addEventListener for \"init\" event:\n * dispatching all callbacks immediately if assigned new listener after it initialized\n */\n public addEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void {\n if (this._isInitialized && type === 'init') {\n const cb = typeof callback === 'function' ? callback : callback.handleEvent\n\n cb(new Initializer.InitEvent())\n }\n\n super.addEventListener(type, callback, options)\n }\n\n protected initialized = () => {\n if (this._isInitialized) {\n return\n }\n\n this._isInitialized = true\n\n this.dispatchEvent(new Initializer.FreshInitEvent())\n\n console.log('Store initialized')\n }\n}\n\nexport default Initializer", "import Initializer, {\n CONFIGS_KEY,\n BOOTSTRAP_DATA_KEY,\n} from '@qwerty.software/store-manager/lib/initializer'\n\ninit()\n\nexport const initializing = new Promise(resolve => {\n Initializer.getInstance().addEventListener('init', onInit)\n\n function onInit() {\n Initializer.getInstance().removeEventListener('init', onInit)\n\n resolve(true)\n }\n})\n\nasync function init() {\n const StoreManager = await import('@qwerty.software/store-manager/lib')\n .then(_module => _module.default.default)\n\n return Initializer.init(StoreManager, window[CONFIGS_KEY], window[BOOTSTRAP_DATA_KEY])\n}\n"], "mappings": "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", "names": ["init_exports", "__export", "KEY", "initConfigs", "init_init", "__esmMin", "args", "prevConfigs", "innerConfigs", "outerConfigs", "configs", "initBootstrapData", "GLOBAL_BOOTSTRAP_DATA_FIELDS", "prevBootstrapData", "bootstrapData", "key", "initializer_exports", "initializer_default", "storeManagerInitializer", "module", "__toCommonJS", "_Initializer", "type", "callback", "options", "Initializer", "__publicField", "eventInitDict", "absrtact_initializer_default", "StoreManager", "instance", "resolve", "handleInited", "e", "C", "I", "v", "g", "b", "import_initializer", "init", "initializing", "resolve", "Initializer", "onInit", "StoreManager", "_module"] }