@navios/di 0.5.1 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +146 -0
- package/README.md +196 -219
- package/docs/README.md +69 -11
- package/docs/api-reference.md +281 -117
- package/docs/container.md +220 -56
- package/docs/examples/request-scope-example.mts +2 -2
- package/docs/factory.md +3 -8
- package/docs/getting-started.md +37 -8
- package/docs/migration.md +318 -37
- package/docs/request-contexts.md +263 -175
- package/docs/scopes.md +79 -42
- package/lib/browser/index.d.mts +1577 -0
- package/lib/browser/index.d.mts.map +1 -0
- package/lib/browser/index.mjs +3012 -0
- package/lib/browser/index.mjs.map +1 -0
- package/lib/index-S_qX2VLI.d.mts +1211 -0
- package/lib/index-S_qX2VLI.d.mts.map +1 -0
- package/lib/index-fKPuT65j.d.cts +1206 -0
- package/lib/index-fKPuT65j.d.cts.map +1 -0
- package/lib/index.cjs +389 -0
- package/lib/index.cjs.map +1 -0
- package/lib/index.d.cts +376 -0
- package/lib/index.d.cts.map +1 -0
- package/lib/index.d.mts +371 -78
- package/lib/index.d.mts.map +1 -0
- package/lib/index.mjs +325 -63
- package/lib/index.mjs.map +1 -1
- package/lib/testing/index.cjs +9 -0
- package/lib/testing/index.d.cts +2 -0
- package/lib/testing/index.d.mts +2 -2
- package/lib/testing/index.mjs +2 -72
- package/lib/testing-BMGmmxH7.cjs +2895 -0
- package/lib/testing-BMGmmxH7.cjs.map +1 -0
- package/lib/testing-DCXz8AJD.mjs +2655 -0
- package/lib/testing-DCXz8AJD.mjs.map +1 -0
- package/package.json +23 -1
- package/project.json +2 -2
- package/src/__tests__/async-local-storage.browser.spec.mts +240 -0
- package/src/__tests__/async-local-storage.spec.mts +333 -0
- package/src/__tests__/container.spec.mts +30 -25
- package/src/__tests__/e2e.browser.spec.mts +790 -0
- package/src/__tests__/e2e.spec.mts +1222 -0
- package/src/__tests__/errors.spec.mts +6 -6
- package/src/__tests__/factory.spec.mts +1 -1
- package/src/__tests__/get-injectors.spec.mts +1 -1
- package/src/__tests__/injectable.spec.mts +1 -1
- package/src/__tests__/injection-token.spec.mts +1 -1
- package/src/__tests__/library-findings.spec.mts +563 -0
- package/src/__tests__/registry.spec.mts +2 -2
- package/src/__tests__/request-scope.spec.mts +266 -274
- package/src/__tests__/service-instantiator.spec.mts +18 -17
- package/src/__tests__/service-locator-event-bus.spec.mts +9 -9
- package/src/__tests__/service-locator-manager.spec.mts +15 -15
- package/src/__tests__/service-locator.spec.mts +167 -244
- package/src/__tests__/unified-api.spec.mts +27 -27
- package/src/__type-tests__/factory.spec-d.mts +2 -2
- package/src/__type-tests__/inject.spec-d.mts +2 -2
- package/src/__type-tests__/injectable.spec-d.mts +1 -1
- package/src/browser.mts +16 -0
- package/src/container/container.mts +319 -0
- package/src/container/index.mts +2 -0
- package/src/container/scoped-container.mts +350 -0
- package/src/decorators/factory.decorator.mts +4 -4
- package/src/decorators/injectable.decorator.mts +5 -5
- package/src/errors/di-error.mts +13 -7
- package/src/errors/index.mts +0 -8
- package/src/index.mts +156 -15
- package/src/interfaces/container.interface.mts +82 -0
- package/src/interfaces/factory.interface.mts +2 -2
- package/src/interfaces/index.mts +1 -0
- package/src/internal/context/async-local-storage.mts +120 -0
- package/src/internal/context/factory-context.mts +18 -0
- package/src/internal/context/index.mts +3 -0
- package/src/{request-context-holder.mts → internal/context/request-context.mts} +40 -27
- package/src/internal/context/resolution-context.mts +63 -0
- package/src/internal/context/sync-local-storage.mts +51 -0
- package/src/internal/core/index.mts +5 -0
- package/src/internal/core/instance-resolver.mts +641 -0
- package/src/{service-instantiator.mts → internal/core/instantiator.mts} +31 -27
- package/src/internal/core/invalidator.mts +437 -0
- package/src/internal/core/service-locator.mts +202 -0
- package/src/{token-processor.mts → internal/core/token-processor.mts} +79 -60
- package/src/{base-instance-holder-manager.mts → internal/holder/base-holder-manager.mts} +91 -21
- package/src/internal/holder/holder-manager.mts +85 -0
- package/src/internal/holder/holder-storage.interface.mts +116 -0
- package/src/internal/holder/index.mts +6 -0
- package/src/internal/holder/instance-holder.mts +109 -0
- package/src/internal/holder/request-storage.mts +134 -0
- package/src/internal/holder/singleton-storage.mts +105 -0
- package/src/internal/index.mts +4 -0
- package/src/internal/lifecycle/circular-detector.mts +77 -0
- package/src/internal/lifecycle/index.mts +2 -0
- package/src/{service-locator-event-bus.mts → internal/lifecycle/lifecycle-event-bus.mts} +11 -4
- package/src/testing/__tests__/test-container.spec.mts +2 -2
- package/src/testing/test-container.mts +4 -4
- package/src/token/index.mts +2 -0
- package/src/{injection-token.mts → token/injection-token.mts} +1 -1
- package/src/{registry.mts → token/registry.mts} +1 -1
- package/src/utils/get-injectable-token.mts +1 -1
- package/src/utils/get-injectors.mts +32 -15
- package/src/utils/types.mts +1 -1
- package/tsdown.config.mts +67 -0
- package/lib/_tsup-dts-rollup.d.mts +0 -1283
- package/lib/_tsup-dts-rollup.d.ts +0 -1283
- package/lib/chunk-2M576LCC.mjs +0 -2043
- package/lib/chunk-2M576LCC.mjs.map +0 -1
- package/lib/index.d.ts +0 -78
- package/lib/index.js +0 -2127
- package/lib/index.js.map +0 -1
- package/lib/testing/index.d.ts +0 -2
- package/lib/testing/index.js +0 -2060
- package/lib/testing/index.js.map +0 -1
- package/lib/testing/index.mjs.map +0 -1
- package/src/container.mts +0 -227
- package/src/factory-context.mts +0 -8
- package/src/instance-resolver.mts +0 -559
- package/src/request-context-manager.mts +0 -149
- package/src/service-invalidator.mts +0 -429
- package/src/service-locator-instance-holder.mts +0 -70
- package/src/service-locator-manager.mts +0 -85
- package/src/service-locator.mts +0 -246
- package/tsup.config.mts +0 -12
- /package/src/{injector.mts → injectors.mts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-fKPuT65j.d.cts","names":[],"sources":["../src/utils/types.mts","../src/interfaces/factory.interface.mts","../src/interfaces/container.interface.mts","../src/utils/get-injectors.mts","../src/internal/context/factory-context.mts","../src/token/injection-token.mts","../src/enums/injectable-scope.enum.mts","../src/enums/injectable-type.enum.mts","../src/token/registry.mts","../src/errors/di-error.mts","../src/internal/holder/instance-holder.mts","../src/internal/holder/holder-storage.interface.mts","../src/internal/holder/base-holder-manager.mts","../src/internal/context/request-context.mts","../src/container/scoped-container.mts","../src/internal/lifecycle/lifecycle-event-bus.mts","../src/internal/holder/holder-manager.mts","../src/internal/core/invalidator.mts","../src/internal/core/token-processor.mts","../src/internal/core/service-locator.mts","../src/container/container.mts","../src/testing/test-container.mts"],"sourcesContent":[],"mappings":";;;KAQY,6CACV,kBAAkB,sDACD,kDAEN,+BAA+B,aAAa,KAAK,MAAM;KAMxD,0BACV,oBAAoB;AAXV,KAiBA,YAjBI,CAAA,CAAA,CAAA,GAiBc,mBAjBd,CAkBd,CAlBc,SAAA,GAAA,GAAA,CAAA,CAAA,EAkBM,CAlBN,EAAA,GAAA,IAAA,GAAA,KAAA,CAAA;AACd,KAoBU,QApBV,CAAA,CAAA,CAAA,GAqBA,YArBA,CAqBa,CArBb,CAAA,UAAA,CAAA,CAAA,EAAA,KAAA,EAAA,EAAA,GAAA,IAAA,IAAA,CAAA,GAAA,KAAA;AAAkB,KAuBR,OAvBQ,CAAA,CAAA,CAAA,GAAA,CAuBM,CAvBN,CAAA,SAAA,CAuBkB,mBAvBlB,CAuBsC,CAvBtC,CAAA,CAAA,GAAA,KAAA,GAAA,IAAA;AACD,KAwBP,YAxBO,CAAA,CAAA,EAAA,UAAA,OAAA,EAAA,GAAA,EAAA,CAAA,GAyBjB,OAzBiB,CAyBT,CAzBS,CAAA,SAAA,IAAA,GA0Bb,YA1Ba,CA0BA,OA1BA,CA0BQ,CA1BR,EA0BW,QA1BX,CA0BoB,CA1BpB,CAAA,CAAA,EAAA,CA0B0B,QA1B1B,CA0BmC,CA1BnC,CAAA,EAAA,GA0B0C,CA1B1C,CAAA,CAAA,GAAA,CA2BZ,CA3BY,EAAA,GA2BN,CA3BM,CAAA;AAEN,KA2BD,aAAA,GA3BC;EAA+B,KAAA,EA6BtC,cA7BsC,CAAA,GAAA,CAAA,GA8BtC,mBA9BsC,CAAA,GAAA,EAAA,GAAA,CAAA,GA+BtC,qBA/BsC,CAAA,GAAA,EAAA,GAAA,CAAA,GAgCtC,SAhCsC;EAAkB,OAAA,EAiCnD,OAjCmD,CAAA,GAAA,CAAA;EAAM,SAAA,MAAA,EAAA,GAAA;EAAX,SAAA,KAAA,EAmCvC,KAnCuC,GAAA,IAAA;CAAI;AAMjD,UAiCK,WAAA,CAjCc;EAOnB,YAAA,EAAA,MAAY;EACtB,QAAA,EAAA,OAAA;EAAoB,QAAA,EA4BV,aA5BU,EAAA;;;;AAlBV,UCHK,UDGD,CAAA,CAAA,CAAA,CAAA;EACd,MAAA,CAAA,GAAA,CAAA,ECHa,cDGb,CAAA,ECH8B,ODG9B,CCHsC,CDGtC,CAAA,GCH2C,CDG3C;;AACiB,UCDF,kBDCE,CAAA,CAAA,EAAA,UCD8B,wBDC9B,CAAA,CAAA;EAEN,MAAA,CAAA,GAAA,CAAA,ECFE,cDEF,EAAA,GAAA,IAAA,EAAA,CCF4B,CAAA,CAAE,MDE9B,CCFqC,CDErC,CAAA,CAAA,CAAA,ECF2C,ODE3C,CCFmD,CDEnD,CAAA,GCFwD,CDExD;;;;;;;;;AAAiD,UEM7C,UAAA,CFN6C;EAAM;;;EAMxD,GAAA,CAAA,UEKI,SFLe,CAAA,CAAA,KAAA,EEMpB,CFNoB,CAAA,EEO1B,YFNkB,CEML,CFNK,CAAA,SEMM,UFNN,CAAA,KAAA,EAAA,CAAA,GEOjB,OFPiB,CEOT,CFPS,CAAA,GEQjB,OFRiB,CEQT,YFRS,CEQI,CFRJ,CAAA,CAAA;EAMX,GAAA,CAAA,UEII,qBFJQ,CEIc,CFJd,CAAA,EAAA,CAAA,CAAA,CAAA,KAAA,EEKb,CFLa,EAAA,IAAA,EEMd,CFNc,CAAA,EEOnB,OFPmB,CEOX,YFPW,CEOE,CFPF,CAAA,CAAA;EACtB,GAAA,CAAA,CAAA,EAAA,UEQiB,wBFRjB,CAAA,CAAA,KAAA,EESS,cFTT,CESwB,CFTxB,EES2B,CFT3B,CAAA,EAAA,IAAA,EEUQ,CAAA,CAAE,KFVV,CEUgB,CFVhB,CAAA,CAAA,EEWG,OFXH,CEWW,CFXX,CAAA;EAAoB,GAAA,CAAA,CAAA,EAAA,UEaH,wBFbG,EAAA,UAAA,OAAA,CAAA,CAAA,KAAA,EEcX,cFdW,CEcI,CFdJ,EEcO,CFdP,EEcU,CFdV,CAAA,CAAA,EEejB,CFfiB,SAAA,KAAA,GEgBhB,OFhBgB,CEgBR,CFhBQ,CAAA,GEiBhB,CFjBgB,SEiBN,OFjBM,CAAA,KAAA,KAAA,CAAA,GAAA,oCEkBsB,IFlBtB,CEmBZ,YFnBY,CAAA,MEmBO,IFnBP,CAAA,EAAA,IAAA,CAAA,EAAA,GAAA,iCAAA;EADQ,GAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EEyBd,cFzBc,CEyBC,CFzBD,EAAA,SAAA,CAAA,CAAA,EEyBiB,OFzBjB,CEyByB,CFzBzB,CAAA;EAAmB,GAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EE0BjC,mBF1BiC,CE0Bb,CF1Ba,EAAA,GAAA,CAAA,CAAA,EE0BH,OF1BG,CE0BK,CF1BL,CAAA;EAIrC,GAAA,CAAA,CAAA,CAAA,CAAA,KAAQ,EEuBJ,qBFtBd,CEsBoC,CFtBpC,EAAA,GAAY,CAAA,CAAA,EEsBkC,OFtBlC,CEsB0C,CFtB1C,CAAA;EAEF;;;EAA0B,UAAA,CAAA,OAAA,EAAA,OAAA,CAAA,EEyBN,OFzBM,CAAA,IAAA,CAAA;EAAmB;AAEzD;;EACE,YAAA,CAAA,KAAA,EAAA,GAAA,CAAA,EAAA,OAAA;EACyB;;;EAAR,OAAA,EAAA,EE+BN,OF/BM,CAAA,IAAA,CAAA;EAAmC;;;EAAhD,KAAA,EAAA,EEoCK,OFpCL,CAAA,IAAA,CAAA;EACC;;;AAEP;;;EAIM,UAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,GAAA,EAAA,IAAA,CAAA,EAAA,GAAA,CAAA,EEqCmC,CFrCnC,GAAA,IAAA;;;;AAlCc,UGiBH,SAAA,CHjBG;EACD,WAAA,CAAA,UGkBK,yBHlBL,CAAA,CAAA,KAAA,EGmBR,CHnBQ,CAAA,EGoBd,YHpBc,CGoBD,CHpBC,CAAA,SGoBU,UHpBV,CAAA,KAAA,EAAA,CAAA,GGqBb,OHrBa,CGqBL,CHrBK,CAAA,GGsBb,OHtBa,CGsBL,YHtBK,CGsBQ,CHtBR,CAAA,CAAA;EAEN,WAAA,CAAA,IAAA,EAAA,UGqBiB,qBHrBjB,CGqBuC,IHrBvC,CAAA,CAAA,CAAA,KAAA,EGsBF,CHtBE,EAAA,IAAA,EGuBH,IHvBG,CAAA,EGwBR,OHxBQ,CGwBA,YHxBA,CGwBa,CHxBb,CAAA,CAAA;EAA+B,WAAA,CAAA,eG0BzB,wBH1ByB,EAAA,CAAA,EAAA,UG4B9B,kBH5B8B,CG4BX,CH5BW,EG4BR,MH5BQ,CAAA,CAAA,CAAA,KAAA,EG8BjC,CH9BiC,EAAA,IAAA,EG+BlC,CAAA,CAAE,KH/BgC,CG+B1B,MH/B0B,CAAA,CAAA,EGgCvC,OHhCuC,CGgC/B,CHhC+B,CAAA;EAAkB,WAAA,CAAA,CAAA,EAAA,UGmCnC,wBHnCmC,CAAA,CAAA,KAAA,EGoCnD,cHpCmD,CGoCpC,CHpCoC,EGoCjC,CHpCiC,CAAA,EAAA,IAAA,EGqCpD,CAAA,CAAE,KHrCkD,CGqC5C,CHrC4C,CAAA,CAAA,EGsCzD,OHtCyD,CGsCjD,CHtCiD,CAAA;EAAM,WAAA,CAAA,CAAA,EAAA,UGwCzC,wBHxCyC,EAAA,UAAA,OAAA,CAAA,CAAA,KAAA,EGyCzD,cHzCyD,CGyC1C,CHzC0C,EGyCvC,CHzCuC,EGyCpC,CHzCoC,CAAA,CAAA,EG0C/D,CH1C+D,SAAA,KAAA,GG2C9D,OH3C8D,CG2CtD,CH3CsD,CAAA,GG4C9D,CH5C8D,SG4CpD,OH5CoD,CAAA,KAAA,KAAA,CAAA,GAAA,oCG6CxB,IH7CwB,CG8C1D,YH9C0D,CAAA,MG8CvC,IH9CuC,CAAA,EAAA,IAAA,CAAA,EAAA,GAAA,iCAAA;EAAX,WAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EGmDjC,cHnDiC,CGmDlB,CHnDkB,EAAA,SAAA,CAAA,CAAA,EGmDF,OHnDE,CGmDM,CHnDN,CAAA;EAAI,WAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EGoDrC,mBHpDqC,CGoDjB,CHpDiB,EAAA,GAAA,CAAA,CAAA,EGoDP,OHpDO,CGoDC,CHpDD,CAAA;EAMjD,WAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EG+CY,qBH9CD,CG8CuB,CH9CvB,EAAA,GAAA,CAAA,CAAA,EG8CiC,OH9CjC,CG8CyC,CH9CzC,CAAA;EAMX,MAAA,CAAA,UG0CO,yBH1CK,CAAA,CAAA,KAAA,EG2Cb,CH3Ca,CAAA,EG4CnB,YH5CmB,CG4CN,CH5CM,CAAA,SG4CK,UH5CL,CAAA,KAAA,EAAA,CAAA,GAAA,CAAA,GG4C+B,YH5C/B,CG4C4C,CH5C5C,CAAA;EACtB,MAAA,CAAA,IAAA,EAAA,UG4CuB,qBH5CvB,CG4C6C,IH5C7C,CAAA,CAAA,CAAA,KAAA,EG6CS,CH7CT,EAAA,IAAA,EG8CQ,IH9CR,CAAA,EG+CG,YH/CH,CG+CgB,CH/ChB,CAAA;EAAoB,MAAA,CAAA,eGiDH,wBHjDG,EAAA,CAAA,EAAA,UGmDR,kBHnDQ,CGmDW,CHnDX,EGmDc,MHnDd,CAAA,CAAA,CAAA,KAAA,EGqDX,CHrDW,EAAA,IAAA,EGsDZ,CAAA,CAAE,KHtDU,CGsDJ,MHtDI,CAAA,CAAA,EGuDjB,CHvDiB;EADQ,MAAA,CAAA,CAAA,EAAA,UG0DR,wBH1DQ,CAAA,CAAA,KAAA,EG2DnB,cH3DmB,CG2DJ,CH3DI,EG2DD,CH3DC,CAAA,EAAA,IAAA,EG4DpB,CAAA,CAAE,KH5DkB,CG4DZ,CH5DY,CAAA,CAAA,EG6DzB,CH7DyB;EAAmB,MAAA,CAAA,CAAA,EAAA,UG+D3B,wBH/D2B,EAAA,UAAA,OAAA,CAAA,CAAA,KAAA,EGgEtC,cHhEsC,CGgEvB,CHhEuB,EGgEpB,CHhEoB,EGgEjB,CHhEiB,CAAA,CAAA,EGiE5C,CHjE4C,SAAA,KAAA,GGkE3C,CHlE2C,GGmE3C,CHnE2C,SGmEjC,OHnEiC,CAAA,KAAA,KAAA,CAAA,GAAA,oCGoEL,IHpEK,CGqEvC,YHrEuC,CAAA,MGqEpB,IHrEoB,CAAA,EAAA,IAAA,CAAA,EAAA,GAAA,iCAAA;EAIrC,MAAA,CAAA,CAAA,CAAA,CAAA,KAAQ,EGqED,cHpEjB,CGoEgC,CHpEhC,EAAA,SAAY,CAAA,CAAA,EGoEoC,CHpEpC;EAEF,MAAA,CAAA,CAAA,CAAA,CAAO,KAAA,EGmEA,mBHnEA,CGmEoB,CHnEpB,EAAA,GAAA,CAAA,CAAA,EGmE8B,CHnE9B;EAAO,MAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EGoEP,qBHpEO,CGoEe,CHpEf,EAAA,GAAA,CAAA,CAAA,EGoEyB,CHpEzB;EAAgC;;;AAE1D;;;;;;;;;;;;;;AAKA;EAEM,QAAA,CAAA,UG+Ee,SH/Ef,CAAA,CAAA,KAAA,EGgFK,CHhFL,CAAA,EAAA,CGiFA,YHjFA,CGiFa,CHjFb,CAAA,SGiFwB,UHjFxB,CAAA,KAAA,EAAA,CAAA,GAAA,CAAA,GGiFkD,YHjFlD,CGiF+D,CHjF/D,CAAA,CAAA,GAAA,IAAA;EACA,QAAA,CAAA,CAAA,EAAA,UGiFkB,wBHjFlB,CAAA,CAAA,KAAA,EGkFK,cHlFL,CGkFoB,CHlFpB,EGkFuB,CHlFvB,CAAA,EAAA,IAAA,EGmFI,CAAA,CAAE,KHnFN,CGmFY,CHnFZ,CAAA,CAAA,EGoFD,CHpFC,GAAA,IAAA;EACA,QAAA,CAAA,CAAA,EAAA,UGoFkB,wBHpFlB,EAAA,UAAA,OAAA,CAAA,CAAA,KAAA,EGqFK,cHrFL,CGqFoB,CHrFpB,EGqFuB,CHrFvB,EGqF0B,CHrF1B,CAAA,CAAA,EGsFD,CHtFC,SAAA,KAAA,GGuFA,CHvFA,GAAA,IAAA,GGwFA,CHxFA,SGwFU,OHxFV,CAAA,KAAA,KAAA,CAAA,GAAA,oCGyFsC,IHzFtC,CG0FI,YH1FJ,CAAA,MG0FuB,IH1FvB,CAAA,EAAA,IAAA,CAAA,EAAA,GAAA,iCAAA;EACA,QAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EG6Fe,cH7Ff,CG6F8B,CH7F9B,EAAA,SAAA,CAAA,CAAA,EG6F8C,CH7F9C,GAAA,IAAA;EACK,QAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EG6FU,mBH7FV,CG6F8B,CH7F9B,EAAA,GAAA,CAAA,CAAA,EG6FwC,CH7FxC,GAAA,IAAA;EAEO,QAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EG4FG,qBH5FH,CG4FyB,CH5FzB,EAAA,GAAA,CAAA,CAAA,EG4FmC,CH5FnC,GAAA,IAAA;EAAK,YAAA,CAAA,EAAA,EAAA,GAAA,GAAA,GAAA,CAAA,EAAA,CAAA,WAAA,CAAA,EGgGH,WHhGG,EAAA,GAAA,CAAA,GAAA,EGgGmB,OHhGnB,CAAA,GAAA,CAAA,EAAA,EGgGmC,WHhGnC,CAAA;EAIN,qBAAW,CAAA,OAGhB,EG2FqB,cH3FR,GAAA,IAAA,CAAA,EG2FgC,cH3FhC,GAAA,IAAA;;iBG8FT,YAAA,CAAA,GAAY;;;;AH5I5B;;;;;AAI4C,UIH3B,cAAA,CJG2B;EAAkB,MAAA,EIFpD,SJEoD,CAAA,aAAA,CAAA;EAAM;;;AAMpE;EAOY,SAAA,EIVC,UJUW;EACtB,kBAAA,EAAA,CAAA,QAAA,EAAA,GAAA,GAAA,IAAA,EAAA,GAAA,IAAA;;;;KKtBU,SAAA;ALIA,KKHA,yBAAA,GLGI,OAAA,GAAA,GAAA;AACd,KKHU,qBLGV,CAAA,GAAA,CAAA,GAAA,KAAA,GAAA,EKHiD,GLGjD,EAAA,GAAA,GAAA;AAAkB,KKFR,6BLEQ,CAAA,GAAA,CAAA,GAAA,KAAA,GAAA,CAAA,EKFwC,GLExC,EAAA,GAAA,GAAA;AACD,KKDP,qBLCO,CAAA,CAAA,CAAA,GAAA,KAAA,GAAA,IAAA,EAAA,GAAA,EAAA,EAAA,GKD4C,CLC5C;AAEN,KKFD,gCLEC,CAAA,CAAA,EAAA,GAAA,CAAA,GAAA,KAAA,GAAA,EKFoD,GLEpD,EAAA,GKF4D,CLE5D;AAA+B,KKDhC,wCLCgC,CAAA,CAAA,EAAA,GAAA,CAAA,GAAA,KAAA,GAAA,CAAA,EKApC,GLAoC,EAAA,GKCvC,CLDuC;AAAkB,KKGlD,4BAAA,GAA+B,SLHmB,GKGP,SLHO;AAAM,KKKxD,gCAAA,GACR,WLNgE,CKMpD,SLNoD,CAAA,GKOhE,WLPgE,CKOpD,SLPoD,CAAA;AAAX,KKS7C,wBAAA,GACR,4BLVqD,GKWrD,gCLXqD;AAAI,cKahD,cLbgD,CAAA,CAAA,EAAA,UKgBjD,wBLhBiD,GAAA,OAAA,GAAA,OAAA,EAAA,iBAAA,OAAA,IKkBhC,CLlBgC,SKkBtB,WLlBsB,CKkBV,SLlBU,CAAA,GAAA,KAAA,GKoBvD,CLpBuD,SKoB7C,WLpB6C,CKoBjC,SLpBiC,CAAA,GAAA,KAAA,GKsBrD,CLtBqD,SKsB3C,SLtB2C,GAAA,IAAA,GKwBnD,CLxBmD,SKwBzC,SLxByC,GAAA,IAAA,GAAA,KAAA,EAAA,CAAA;EAMjD,SAAA,IAAA,EAAA,MAAA,GAAmB,MAAA,GK0Ba,SLzBrB;EAMX,SAAA,MAAY,EKoBI,SLpBJ,GAAA,SAAA;EACtB,EAAA,EAAA,GAAA,MAAA,IAAA,MAAA,IAAA,MAAA,IAAA,MAAA,IAAA,MAAA,EAAA;EAAoB,QAAA,aAAA;EADQ,WAAA,CAAA,IAAA,EAAA,MAAA,GAAA,MAAA,GKmBc,SLnBd,EAAA,MAAA,EKoBF,SLpBE,GAAA,SAAA;EAAmB,OAAA,MAAA,CAAA,UKuBvB,SLvBuB,CAAA,CAAA,IAAA,EKwBvC,CLxBuC,CAAA,EKyB5C,cLzB4C,CKyB7B,YLzB6B,CKyBhB,CLzBgB,CAAA,EAAA,SAAA,CAAA;EAIrC,OAAA,MAAQ,CAAA,UKsBM,SLrBxB,EAAA,eKqBkD,wBLrBtC,CAAA,CAAA,IAAA,EKsBJ,CLtBI,EAAA,MAAA,EKuBF,MLvBE,CAAA,EKwBT,MLxBS,CAAA,MAAA,CAAA,CAAA,MAAA,CAAA,SAAA,aAAA,GKyBR,cLzBQ,CKyBO,YLzBP,CKyBoB,CLzBpB,CAAA,EKyBwB,MLzBxB,EAAA,KAAA,CAAA,GK0BR,cL1BQ,CK0BO,YL1BP,CK0BoB,CL1BpB,CAAA,EK0BwB,ML1BxB,EAAA,IAAA,CAAA;EAEF,OAAA,MAAO,CAAA,CAAA,CAAA,CAAA,IAAA,EAAA,MAAA,GAAA,MAAA,CAAA,EKyBwB,cLzBxB,CKyBuC,CLzBvC,EAAA,SAAA,CAAA;EAAO,OAAA,MAAA,CAAA,CAAA,EAAA,eK0BQ,wBL1BR,CAAA,CAAA,IAAA,EAAA,MAAA,GAAA,GAAA,EAAA,MAAA,EK4Bd,ML5Bc,CAAA,EK6BrB,cL7BqB,CK6BN,CL7BM,EK6BH,ML7BG,CAAA;EAAgC,OAAA,KAAA,CAAA,CAAA,EAAA,UKmC9B,wBLnC8B,CAAA,CAAA,KAAA,EKoC/C,cLpC+C,CKoChC,CLpCgC,EKoC7B,CLpC6B,CAAA,EAAA,KAAA,EKqC/C,CAAA,CAAE,KLrC6C,CKqCvC,CLrCuC,CAAA,CAAA,EKsCrD,mBLtCqD,CKsCjC,CLtCiC,EKsC9B,CLtC8B,CAAA;EAApB,OAAA,OAAA,CAAA,CAAA,EAAA,UK0CR,wBL1CQ,CAAA,CAAA,KAAA,EK2C3B,cL3C2B,CK2CZ,CL3CY,EK2CT,CL3CS,CAAA,EAAA,OAAA,EAAA,CAAA,GAAA,EK4CnB,cL5CmB,EAAA,GK4CA,OL5CA,CK4CQ,CAAA,CAAE,KL5CV,CK4CgB,CL5ChB,CAAA,CAAA,CAAA,EK6CjC,qBL7CiC,CK6CX,CL7CW,EK6CR,CL7CQ,CAAA;EAAmB,OAAA,UAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EKkD9C,mBLlD8C,CAAA,GAAA,EAAA,GAAA,CAAA,CAAA,EKmDpD,mBLnDoD,CKmDhC,CLnDgC,EAAA,GAAA,CAAA;EAE7C,QAAA,CAAA,CAAA,EAAA,MAAY;;AACtB,cKsEW,mBLtEX,CAAA,CAAA,EAAA,UKsE4C,wBLtE5C,CAAA,CAAA;EACyB,SAAA,KAAA,EK2EA,cL3EA,CK2Ee,CL3Ef,EK2EkB,CL3ElB,CAAA;EAAY,SAAA,KAAA,EK4EZ,CAAA,CAAE,KL5EU,CK4EJ,CL5EI,CAAA;EAAT,EAAA,EAAA,MAAA;EAAX,IAAA,EAAA,MAAA,GAAA,MAAA,GKuEc,SLvEd;EAAmC,MAAA,EKwErC,wBLxEqC;EAAT,WAAA,CAAA,KAAA,EK2ElB,cL3EkB,CK2EH,CL3EG,EK2EA,CL3EA,CAAA,EAAA,KAAA,EK4ElB,CAAA,CAAE,KL5EgB,CK4EV,CL5EU,CAAA;EAAgB,QAAA,CAAA,CAAA,EAAA,MAAA;;AACtD,cKuFM,qBLvFN,CAAA,CAAA,EAAA,UKuFyC,wBLvFzC,CAAA,CAAA;EAAM,SAAA,KAAA,EK+Fc,cL/Fd,CK+F6B,CL/F7B,EK+FgC,CL/FhC,CAAA;EAAC,SAAA,OAAA,EAAA,CAAA,GAAA,EKgGqB,cLhGrB,EAAA,GKgGwC,OLhGxC,CKgGgD,CAAA,CAAE,KLhGlD,CKgGwD,CLhGxD,CAAA,CAAA;EAEF,KAAA,CAAA,EKsFK,CAAA,CAAE,KLtFP,CKsFa,CLtFA,CAAA;EAEnB,QAAA,EAAA,OAAA;EACA,EAAA,EAAA,MAAA;EACA,IAAA,EAAA,MAAA,GAAA,MAAA,GKqF2B,SLrF3B;EACA,MAAA,EKqFW,wBLrFX;EACK,WAAA,CAAA,KAAA,EKuFgB,cLvFhB,CKuF+B,CLvF/B,EKuFkC,CLvFlC,CAAA,EAAA,OAAA,EAAA,CAAA,GAAA,EKwFwB,cLxFxB,EAAA,GKwF2C,OLxF3C,CKwFmD,CAAA,CAAE,KLxFrD,CKwF2D,CLxF3D,CAAA,CAAA;EAEO,OAAA,CAAA,GAAA,EK6FG,cL7FH,CAAA,EK6FoB,OL7FpB,CK6F4B,CAAA,CAAE,KL7F9B,CK6FoC,CL7FpC,CAAA,CAAA;EAAK,QAAA,CAAA,CAAA,EAAA,MAAA;AAIvB;KKsGY,iBAAA,GACR,YACA,2BACA,gCACA;KAEQ,kBAAA,GACR,2BACA,gCACA;;;aClKQ,eAAA;;;ANQZ;EACE,SAAA,GAAA,WAAA;EAAkB;;;EAGwB,SAAA,GAAA,WAAA;EAAkB;;;EAAD,OAAA,GAAA,SAAA;AAM7D;;;aOlBY,cAAA;;;APQZ;;;KQJY;ERIA,KAAA,EQHH,eRGO;EACd,aAAA,EQHe,cRGf,CQH8B,QRG9B,EQHwC,MRGxC,CAAA;EAAkB,MAAA,EQFV,SREU;EACD,IAAA,EQFX,cREW;CAEN;AAA+B,cQD/B,QAAA,CRC+B;EAAkB,iBAAA,MAAA;EAAM,iBAAA,SAAA;EAAX,WAAA,CAAA,MAAA,CAAA,EQEjB,QRFiB,GAAA,SAAA;EAAI,GAAA,CAAA,KAAA,EQIhD,cRJgD,CAAA,GAAA,EAAA,GAAA,CAAA,CAAA,EAAA,OAAA;EAMjD,GAAA,CAAA,QAAA,EAAA,MAAA,CAAA,CAAmB,KAAA,EQSpB,cRRY,CQQG,QRRH,EQQa,MRRb,CAAA,CAAA,EQSlB,aRTkB,CQSJ,QRTI,EQSM,MRTN,CAAA;EAMX,GAAA,CAAA,QAAA,EAAA,MAAY,CAAA,CAAA,KAAA,EQeb,cRfa,CQeE,QRfF,EQeY,MRfZ,CAAA,EAAA,KAAA,EQgBb,eRhBa,EAAA,MAAA,EQiBZ,SRjBY,EAAA,IAAA,EQkBd,cRlBc,CAAA,EAAA,IAAA;EACtB,MAAA,CAAA,KAAA,EQsBc,cRtBd,CAAA,GAAA,EAAA,GAAA,CAAA,CAAA,EAAA,IAAA;;AAD4B,cQ4BjB,cR5BiB,EQ4BH,QR5BG;;;aSzBlB,WAAA;;;ETQA,gBAAI,GAAA,kBAAA;EACd,kBAAA,GAAA,oBAAA;EAAkB,kBAAA,GAAA,oBAAA;EACD,YAAA,GAAA,cAAA;;AAEyB,cSH/B,OAAA,CTG+B;EAAkB,SAAA,IAAA,ESCpC,WTDoC;EAAM,SAAA,OAAA,EAAA,MAAA;EAAX,SAAA,OAAA,CAAA,ESF7B,MTE6B,CAAA,MAAA,EAAA,OAAA,CAAA;EAAI,WAAA,CAAA,IAAA,ESCnC,WTDmC,EAAA,OAAA,EAAA,MAAA,EAAA,OAAA,CAAA,ESG/C,MTH+C,CAAA,MAAA,EAAA,OAAA,CAAA;EAMjD,OAAA,eAAmB,CAAA,IAAA,EAAA,MAC7B,CAAA,ESEsC,OTFjB;EAMX,OAAA,uBAAY,CAAA,KAAA,EAAA,MAAA,GAAA,MAAA,GAAA,OAAA,CAAA,ESI4C,OTJ5C;EACtB,OAAA,gBAAA,CAAA,IAAA,EAAA,MAAA,CAAA,ESWuC,OTXvC;EAAoB,OAAA,kBAAA,CAAA,IAAA,EAAA,MAAA,CAAA,ESmBqB,OTnBrB;EADQ,OAAA,OAAA,CAAA,OAAA,EAAA,MAAA,GS6BR,KT7BQ,EAAA,OAAA,CAAA,ES8BhB,MT9BgB,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,ES+BzB,OT/ByB;EAAmB,OAAA,kBAAA,CAAA,KAAA,EAAA,MAAA,EAAA,CAAA,ESyCH,OTzCG;AAIjD;;;;;AArBA;AACE,aUJU,cAAA;EVIQ;EACD,OAAA,GAAA,SAAA;EAEN;EAA+B,QAAA,GAAA,UAAA;EAAkB;EAAM,UAAA,GAAA,YAAA;EAAX;EAAI,KAAA,GAAA,OAAA;AAM7D;AAOA;AACE,KUTU,cAAA,GVSV,GAAA,GAAA,IAAA;;AAD4B,KULlB,uBAAA,GVKkB,GAAA,GAAA,IAAA,GULqB,OVKrB,CAAA,IAAA,CAAA;;AAI9B;AAGA;;AAA0D,UUNzC,sBVMyC,CAAA,QAAA,CAAA,CAAA;EAApB,MAAA,EUL5B,cAAA,CAAe,QVKa;EAAmB,IAAA,EAAA,MAAA;EAE7C,QAAA,EAAA,IAAA;EACF,eAAA,EULS,OVKT,CAAA,CAAA,SAAA,EUL6B,QVK7B,CAAA,CAAA,GAAA,IAAA;EAAR,cAAA,EAAA,IAAA;EACyB,IAAA,EUJnB,cVImB;EAAY,KAAA,EUH9B,eVG8B;EAAT,IAAA,EUFtB,GVEsB,CAAA,MAAA,CAAA;EAAX,gBAAA,EUDC,uBVCD,EAAA;EAAmC,SAAA,EAAA,MAAA;EAAT;EAAgB,UAAA,EUE/C,GVF+C,CAAA,MAAA,CAAA;;;;;AAG7D;AAEM,UUIW,qBVJX,CAAA,QAAA,CAAA,CAAA;EACA,MAAA,EUII,cAAA,CAAe,OVJnB;EACA,IAAA,EAAA,MAAA;EACA,QAAA,EUIM,QVJN;EACK,eAAA,EAAA,IAAA;EAEO,cAAA,EAAA,IAAA;EAAK,IAAA,EUIf,cVJe;EAIN,KAAA,EUCR,eVDmB;QUEpB;oBACY;;ETjDH;EACF,UAAA,ESmDD,GTnDC,CAAA,MAAA,CAAA;;;;;AAGf;AAAiD,USuDhC,wBTvDgC,CAAA,QAAA,CAAA,CAAA;EAClC,MAAA,ESuDL,cAAA,CAAe,UTvDV;EAAmC,IAAA,EAAA,MAAA;EAAP,QAAA,ESyD/B,QTzD+B,GAAA,IAAA;EAAqB,eAAA,EAAA,IAAA;EAAR,cAAA,ES2DtC,OT3DsC,CAAA,IAAA,CAAA;EAAa,IAAA,ES4D7D,cT5D6D;EAAC,KAAA,ES6D7D,eT7D6D;QS8D9D;oBACY;;ERvDH;EAKD,UAAA,EQqDF,GRrDE,CAAA,MAAA,CAAA;;;;;;AAGV,UQyDW,mBAAA,CRzDX;EACqB,MAAA,EQyDjB,cAAA,CAAe,KRzDE;EAAb,IAAA,EAAA,MAAA;EAAR,QAAA,EQ2DM,KR3DN;EAEgC,eAAA,EAAA,IAAA;EAAtB,cAAA,EAAA,IAAA;EACL,IAAA,EQ2DH,cR3DG;EACD,KAAA,EQ2DD,eR3DC;EACgB,IAAA,EQ2DlB,GR3DkB,CAAA,MAAA,CAAA;EAAb,gBAAA,EQ4DO,uBR5DP,EAAA;EAAR,SAAA,EAAA,MAAA;EAEc;EACO,UAAA,EQ4DZ,GR5DY,CAAA,MAAA,CAAA;;;;;;;;AAKA,KQgEd,cRhEc,CAAA,WAAA,OAAA,CAAA,GQiEtB,sBRjEsB,CQiEC,QRjED,CAAA,GQkEtB,qBRlEsB,CQkEA,QRlEA,CAAA,GQmEtB,wBRnEsB,CQmEG,QRnEH,CAAA,GQoEtB,mBRpEsB;;;AFhC1B;;;;;;AAI8D,KWFlD,eXEkD,CAAA,IAAA,OAAA,CAAA,GAAA,CAAA,SAAA,EWD9C,cXC8C,CWD/B,CXC+B,CAAA,CAAA,GAAA,CWAzD,OXAyD,EWAhD,cXAgD,CWAjC,CXAiC,CAAA,CAAA,CAAA,GAAA,IAAA;;;;AAM9D;AAOA;;;AAA8B,UWHb,cAAA,CXGa;EAAmB;AAIjD;AAGA;EAA0B,SAAA,KAAA,EWNR,eXMQ;EAAgC;;;AAE1D;;;;;;EAEmB,GAAA,CAAA,IAAA,OAAA,CAAA,CAAA,YAAA,EAAA,MAAA,CAAA,EWKuB,eXLvB,CWKuC,CXLvC,CAAA;EAAmC;;;;;;EACxC,GAAA,CAAA,YAAA,EAAA,MAAA,EAAA,MAAA,EWYsB,cXZtB,CAAA,EAAA,IAAA;EAEF;;;;;;EAQM,MAAA,CAAA,YAAA,EAAA,MAAA,CAAA,EAAA,OAAA;EAAK;AAIvB;;;;AC9CA;;;;EAC6C,YAAA,CAAA,CAAA,CAAA,CAAA,YAAA,EAAA,MAAA,EAAA,IAAA,EUgEnC,cVhEmC,EAAA,IAAA,EUiEnC,GVjEmC,CAAA,MAAA,CAAA,CAAA,EAAA,CUmEzC,UVnE0C,CAAA,OUmExB,OAAA,CAAQ,aVnEgB,CAAA,CAAA,SAAA,EUmEU,CVnEV,CAAA,CAAA,CAAA,EUoE1C,cVjEa,CUiEE,CVjEF,CAAkB,CAAc;EAClC;;;EAAiD,OAAA,CAAA,KAAA,EUsE/C,eVtE+C,CAAA,EAAA,OAAA;EAAR;;;;;;ACQxD;;;EAOkB,OAAA,CAAA,QAAA,EAAA,CAAA,IAAA,EAAA,MAAA,EAAA,MAAA,ESwEmB,cTxEnB,EAAA,GAAA,IAAA,CAAA,EAAA,IAAA;EAAb;;;;;;EAEC,cAAA,CAAA,QAAA,EAAA,OAAA,CAAA,ES+E+B,cT/E/B,GAAA,IAAA;EAEgC;;;;;;EAGjC,cAAA,CAAA,YAAA,EAAA,MAAA,CAAA,EAAA,MAAA,EAAA;;;;AFxBL;;;;AAIa,KYDD,iBZCC,CAAA,CAAA,CAAA,GAAA,CAAA,SAAA,EYDkC,cZClC,CYDiD,CZCjD,CAAA,CAAA,GAAA,CYDwD,OZCxD,CAAA;;;;;;AAMb;AAOY,uBYNU,iBAAA,CZME;EACtB,mBAAA,MAAA,EYJuC,OZIvC,GAAA,IAAA;EAAoB,mBAAA,QAAA,EYNS,GZMT,CAAA,MAAA,EYNqB,cZMrB,CAAA;EADQ,WAAA,CAAA,MAAA,CAAA,EYHW,OZGX,GAAA,IAAA;EAAmB;AAIjD;AAGA;EAA0B,cAAA,OAAA,CAAA,CAAA,EYHC,GZGD,CAAA,MAAA,EYHa,cZGb,CAAA;EAAgC;;;AAE1D;EACU,SAAA,GAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAA,GAAA;EAAR;;;EAC4B,SAAA,GAAA,CAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EYMO,cZNP,CAAA,EAAA,IAAA;EAAX;;;EAA0C,SAAA,GAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAA,GAAA;EAAvD;;;;AAGN;EAEM,MAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAA,OAAA;EACA;;;;;EAKiB,MAAA,CAAA,SAAA,EAAA,CAAA,KAAA,EYiBA,cZjBA,CAAA,GAAA,CAAA,EAAA,GAAA,EAAA,MAAA,EAAA,GAAA,OAAA,CAAA,EYkBlB,GZlBkB,CAAA,MAAA,EYkBN,cZlBM,CAAA;EAIN;;;;EC9CA;;;EACe,IAAA,CAAA,CAAA,EAAA,MAAA;EAAa;;AAG7C;;;;;;;EACqE,oBAAA,CAAA,QAAA,CAAA,CAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EWsF3D,cXtF2D,EAAA,KAAA,EWuF1D,eXvF0D,EAAA,IAAA,CAAA,EWwF3D,GXxF2D,CAAA,MAAA,CAAA,CAAA,EAAA,CW0FjE,UX1FkE,CAAA,OW0FhD,OAAA,CAAQ,aX1FwC,CAAA,CAAA,SAAA,EW0Fd,QX1Fc,CAAA,CAAA,CAAA,EW2FlE,eAAe;;AVnFnB;;;;;;;;;EASc,UAAA,mBAAA,CAAA,QAAA,CAAA,CAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EU2GA,QV3GA,EAAA,IAAA,EU4GJ,cV5GI,EAAA,KAAA,EU6GH,eV7GG,EAAA,IAAA,CAAA,EU8GJ,GV9GI,CAAA,MAAA,CAAA,CAAA,EU+GT,cV/GS,CU+GM,QV/GN,CAAA;EAAR;;;EAGK,WAAA,CAAA,CAAA,EAAA,MAAA,EAAA;EACD;;;EACL,aAAA,CAAA,CAAA,EUsIc,cVtId,EAAA;EAEc;;;EACR,OAAA,CAAA,CAAA,EAAA,OAAA;EACO;;;;;;;;;EAKb,OAAA,kBAAA,CAAA,CAAA,CAAA,CAAA,MAAA,EUkJO,cVlJP,CUkJsB,CVlJtB,CAAA,EAAA,YAAA,CAAA,EUmJc,cVnJd,EAAA,SAAA,CAAA,EAAA,CAAA,IAAA,EAAA,MAAA,EAAA,GUoJ6B,cVpJ7B,GAAA,SAAA,CAAA,EUqJA,OVrJA,CUqJQ,iBVrJR,CUqJ0B,CVrJ1B,CAAA,CAAA;;;;AFjCL;;;;;;AAI8D,UaA7C,cAAA,CbA6C;EAAM;;;EAMxD,SAAA,SAAA,EAAA,MAAmB;EAOnB;;;EAAkB,SAAA,OAAA,EaJV,GbIU,CAAA,MAAA,EaJE,cbIF,CAAA;EAAmB;AAIjD;AAGA;;EAA0D,SAAA,QAAA,EAAA,MAAA;EAApB;;AAEtC;EACU,SAAA,QAAA,EaHW,GbGX,CAAA,MAAA,EAAA,GAAA,CAAA;EAAR;;;EAC4B,SAAA,SAAA,EAAA,MAAA;EAAX;;;EAA0C,WAAA,CAAA,YAAA,EAAA,MAAA,EAAA,QAAA,EAAA,GAAA,EAAA,MAAA,EaSjD,cbTiD,CAAA,EAAA,IAAA;EAAvD;;;EACQ,WAAA,CAAA,KAAA,EacO,cbdP,CAAA,GAAA,EAAA,SAAA,CAAA,EAAA,QAAA,EAAA,GAAA,CAAA,EAAA,IAAA;EAEF;;;EAIN,GAAA,CAAA,YAAA,EAAA,MAAA,CAAA,EaauB,cbbvB,GAAA,SAAA;EACA;;;EAGiB,GAAA,CAAA,YAAA,EAAA,MAAA,EAAA,MAAA,Eaca,cbdb,CAAA,EAAA,IAAA;EAIN;;;;EC9CA;;;EACe,KAAA,EAAA,EAAA,IAAA;EAAa;;AAG7C;EAAiD,WAAA,CAAA,GAAA,EAAA,MAAA,CAAA,EAAA,GAAA,GAAA,SAAA;EAClC;;;EAAiD,WAAA,CAAA,GAAA,EAAA,MAAA,EAAA,KAAA,EAAA,GAAA,CAAA,EAAA,IAAA;EAAR;;;4BY+E3C,+CAGR,YAAY;;;AX1EjB;EAKgB,MAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAA,OAAA;EACL;;;EACkB,IAAA,EAAA,EAAA,MAAA;EACf;;;EACA,OAAA,EAAA,EAAA,OAAA;;;AAEE,KWkFJ,oBAAA,GAAuB,cXlFnB;;;;;;;AAMU,cWoFb,qBAAA,SACH,iBAAA,YACG,cXtFa,CAAA;EAAG,SAAA,SAAA,EAAA,MAAA;EAAlB,SAAA,QAAA,EAAA,MAAA;EACO,SAAA,QAAA,EWuFQ,GXvFR,CAAA,MAAA,EAAA,GAAA,CAAA;EAAN,SAAA,SAAA,EAAA,MAAA;EACC,WAAA,CAAA,SAAA,EAAA,MAAA,EAAA,QAAA,CAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EW4FS,MX5FT,CAAA,MAAA,EAAA,GAAA,CAAA;EAAR;;;EAGwB,IAAA,OAAA,CAAA,CAAA,EWsGZ,GXtGY,CAAA,MAAA,EWsGA,cXtGA,CAAA;EAAG;;;EAElB,GAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EW2GO,cX3GP,GAAA,SAAA;EAAR;;;EAGuB,GAAA,CAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EW+GD,cX/GC,CAAA,EAAA,IAAA;EAAnB;;;EAKM,GAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAA,OAAA;EAAuC,WAAA,CAAA,YAAA,EAAA,MAAA,GWsH5B,cXtH4B,CAAA,GAAA,EAAA,SAAA,CAAA,EAAA,QAAA,EAAA,GAAA,EAAA,MAAA,CAAA,EWwH1C,cXxH0C,CAAA,EAAA,IAAA;EAAR,KAAA,CAAA,CAAA,EAAA,IAAA;EACX,WAAA,CAAA,GAAA,EAAA,MAAA,CAAA,EAAA,GAAA,GAAA,SAAA;EAApB,WAAA,CAAA,GAAA,EAAA,MAAA,EAAA,KAAA,EAAA,GAAA,CAAA,EAAA,IAAA;;;;;AACwC,iBW2JxC,oBAAA,CX3JwC,SAAA,EAAA,MAAA,EAAA,QAAA,CAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EW8JpC,MX9JoC,CAAA,MAAA,EAAA,GAAA,CAAA,CAAA,EW+JrD,cX/JqD;;;;;;AFlCxD;AAOA;;;;AAAiD,ccSpC,eAAA,YAA2B,UdTS,CAAA;EAIrC,iBAAQ,MAAA;EAGR,iBAAO,QAAA;EAAO,SAAA,SAAA,EAAA,MAAA;EAAgC,iBAAA,oBAAA;EAApB,iBAAA,aAAA;EAAmB,QAAA,QAAA;EAE7C,WAAA,CAAA,MAAY,EcMK,SdNL,EAAA,QAAA,EcOO,QdPP,EAAA,SAAA,EAAA,MAAA,EAAA,QAAA,CAAA,EcST,MdTS,CAAA,MAAA,EAAA,GAAA,CAAA,EAAA,QAAA,CAAA,EAAA,MAAA;EACd;;;EAC6B,uBAAA,CAAA,CAAA,EcyBV,cdzBU;EAAT;;;;EAA+B,gBAAA,CAAA,CAAA,EciCvC,cdjCuC;EAAvD;;;EACQ,YAAA,CAAA,CAAA,EAAA,MAAA;EAEF;;;EAIN,SAAA,CAAA,CAAA,EcwCS,SdxCT;EACA;;;EAGiB,WAAA,CAAA,GAAA,EAAA,MAAA,CAAA,EAAA,GAAA,GAAA,SAAA;EAIN;;;;EC9CA;;;EACe,WAAA,CAAA,KAAA,EakGX,cblGW,CAAA,GAAA,EAAA,SAAA,CAAA,EAAA,QAAA,EAAA,GAAA,CAAA,EAAA,IAAA;EAAa;;AAG7C;;;EACkD,GAAA,CAAA,UawGlC,SbxGkC,CAAA,CAAA,KAAA,EayGvC,CbzGuC,CAAA,Ea0G7C,Yb1G6C,Ca0GhC,Cb1GgC,CAAA,Sa0GrB,Ub1GqB,CAAA,KAAA,EAAA,CAAA,Ga2G5C,Ob3G4C,Ca2GpC,Cb3GoC,CAAA,Ga4G5C,Ob5G4C,Ca4GpC,Yb5GoC,Ca4GvB,Cb5GuB,CAAA,CAAA;EAAP,GAAA,CAAA,Ua8G3B,qBb9G2B,Ca8GL,Cb9GK,CAAA,EAAA,CAAA,CAAA,CAAA,KAAA,Ea+GhC,Cb/GgC,EAAA,IAAA,EagHjC,CbhHiC,CAAA,EaiHtC,ObjHsC,CaiH9B,YbjH8B,CaiHjB,CbjHiB,CAAA,CAAA;EAAqB,GAAA,CAAA,CAAA,EAAA,UamH7C,wBbnH6C,CAAA,CAAA,KAAA,EaoHrD,cbpHqD,CaoHtC,CbpHsC,EaoHnC,CbpHmC,CAAA,EAAA,IAAA,EaqHtD,CAAA,CAAE,KbrHoD,CaqH9C,CbrH8C,CAAA,CAAA,EasH3D,ObtH2D,CasHnD,CbtHmD,CAAA;EAAR,GAAA,CAAA,CAAA,EAAA,UawHrC,wBbxHqC,EAAA,UAAA,OAAA,CAAA,CAAA,KAAA,EayH7C,cbzH6C,CayH9B,CbzH8B,EayH3B,CbzH2B,EayHxB,CbzHwB,CAAA,CAAA,Ea0HnD,Cb1HmD,SAAA,KAAA,Ga2HlD,Ob3HkD,Ca2H1C,Cb3H0C,CAAA,Ga4HlD,Cb5HkD,Sa4HxC,Ob5HwC,CAAA,KAAA,KAAA,CAAA,GAAA,oCa6HZ,Ib7HY,Ca8H9C,Yb9H8C,CAAA,Ma8H3B,Ib9H2B,CAAA,EAAA,IAAA,CAAA,EAAA,GAAA,iCAAA;EAAa,GAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EamIrD,cbnIqD,CamItC,CbnIsC,EAAA,SAAA,CAAA,CAAA,EamItB,ObnIsB,CamId,CbnIc,CAAA;EAAC,GAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EaoItD,mBbpIsD,CaoIlC,CbpIkC,EAAA,GAAA,CAAA,CAAA,EaoIxB,ObpIwB,CaoIhB,CbpIgB,CAAA;gBaqItD,sBAAsB,UAAU,QAAQ;;;AZ7HxD;;EAMW,UAAA,CAAA,OAAA,EAAA,OAAA,CAAA,EYyJ2B,OZzJ3B,CAAA,IAAA,CAAA;EACO;;;EACJ,YAAA,CAAA,KAAA,EAAA,GAAA,CAAA,EAAA,OAAA;EAAR;;;;EAGgC,OAAA,CAAA,CAAA,EYiLnB,OZjLmB,CAAA,IAAA,CAAA;EAAtB;;;;EAGH,UAAA,CAAA,CAAA,EYsLS,OZtLT,CAAA,IAAA,CAAA;EAAR;;;EAGwB,KAAA,CAAA,CAAA,EY8MZ,OZ9MY,CAAA,IAAA,CAAA;EAAlB;;;;;;;;EAKqB,UAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,GAAA,EAAA,IAAA,CAAA,EAAA,GAAA,CAAA,EYqNS,CZrNT,GAAA,IAAA;EAArB;;;EAEL,QAAA,eAAA;EACA;;;;EACsC,QAAA,oBAAA;EAMb;;;;EACK,oBAAA,CAAA,YAAA,EAAA,MAAA,EAAA,QAAA,EAAA,GAAA,EAAA,MAAA,EYoRxB,cZpRwB,CAAA,EAAA,IAAA;EAApB;;;;EACA,kBAAA,CAAA,YAAA,EAAA,MAAA,CAAA,EY8RX,cZ9RW,GAAA,SAAA;EAAwC;;;;EAoB7C,oBAAA,CAAA,YAAA,EAAA,MAAA,CAAA,EAAA,MAAA;;;;;;;AFhEX;;;;AAIa,ceCA,iBAAA,CfDA;EAA+B,iBAAA,MAAA;EAAkB,QAAA,SAAA;EAAM,WAAA,CAAA,MAAA,CAAA,EeG7B,OfH6B,GAAA,IAAA;EAAX,EAAA,CAAA,cAAA,MAAA,GAAA,OAAA,MAAA,EAAA,GAAA,QAAA,MAAA,EAAA,CAAA,CAAA,EAAA,EAAA,MAAA,EAAA,KAAA,EeO9C,KfP8C,EAAA,QAAA,EAAA,CAAA,KAAA,EeQnC,KfRmC,EAAA,GAAA,IAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EAAI,IAAA,CAAA,GAAA,EAAA,MAAA,EAAA,KAAA,EAAA,MAAA,CAAA,EeiCtB,OfjCsB,CeiCtB,oBfjCsB,CAAA,GAAA,CAAA,EAAA,GAAA,SAAA,CAAA;AAM7D;;;;;;;;;AANoE,cgBCvD,aAAA,SAAsB,iBAAA,ChBDiC;EAAX,WAAA,CAAA,MAAA,CAAA,EgBEnC,OhBFmC,GAAA,IAAA;EAAI,GAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAA,CgBQvD,OhBRuD,EgBQ9C,chBR8C,CAAA,GAAA,CgBQ3B,OhBR2B,CAAA,GAAA,CAAA,SAAA,EgBQJ,chBRI,CAAA;EAMjD,GAAA,CAAA,IAAA,EAAA,MAAA,EAAA,MAAmB,EgBwBH,chBvBL,CAAA,EAAA,IAAA;EAMX,GAAA,CAAA,IAAA,EAAA,MAAY,CAAA,EAAA,CgBqBF,OhBrBE,CAAA,GAAA,CAAA,SAAA,EAAA,OAAA,CAAA;EACtB;;;;AAGF;AAGA;;;;;EAEY,kBAAY,CAAA,QAAA,CAAA,CAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EgBuCV,QhBvCU,EAAA,IAAA,EgBwCd,chBxCc,EAAA,KAAA,EgByCb,ehBzCa,EAAA,IAAA,CAAA,EgB0Cd,GhB1Cc,CAAA,MAAA,CAAA,CAAA,EgB2CnB,chB3CmB,CgB2CJ,QhB3CI,CAAA;;;;AA1BZ,UiBCK,eAAA,CjBDD;EACd;EAAkB,SAAA,CAAA,EAAA,MAAA;EACD;EAEN,iBAAA,CAAA,EAAA,OAAA;;AAAiD,UiBI7C,mBAAA,CjBJ6C;EAAM;EAAX,UAAA,CAAA,EAAA,OAAA;EAAI;EAMjD,aAAA,CAAA,EAAA,CAAA,YAAmB,EAAA,MAC7B,EAAoB,GiBCsB,OjBDrB,CAAA,IAAA,CAAA;EAMX;EACV,OAAA,CAAA,EAAA,OAAA;EAAoB;EADQ,aAAA,CAAA,EiBDZ,GjBCY,CAAA,MAAA,CAAA;;AAI9B;AAGA;;;;;AAEA;AACU,ciBDG,WAAA,CjBCH;EAAR,iBAAA,QAAA;EACyB,iBAAA,MAAA;EAAY,iBAAA,OAAA;EAAT,WAAA,CAAA,OAAA,EiBEjB,ajBFiB,EAAA,QAAA,EiBGC,iBjBHD,GAAA,IAAA,EAAA,MAAA,CAAA,EiBID,OjBJC,GAAA,IAAA;EAAX;;;;EAAb,UAAA,CAAA,OAAA,EAAA,MAAA,EAAA,KAAA,CAAA,EAAA,MAAA,CAAA,EiBaoC,OjBbpC,CAAA,GAAA,CAAA;EACC;;;AAEP;;;;;;EAQkB,qBAAA,CAAA,OAAA,EAAA,MAAA,EAAA,OAAA,EiBiBL,cjBjBK,EAAA,KAAA,CAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EiBmBL,mBjBnBK,CAAA,EiBoBb,OjBpBa,CAAA,IAAA,CAAA;EAAK;AAIvB;;;;EC9CiB,QAAA,CAAA,OAAU,CAAA,EgB2GD,ehB3GC,CAAA,EgB2GsB,OhB3GtB,CAAA,IAAA,CAAA;EACZ;;;;EAA+B,mBAAA,CAAA,OAAA,EgBmHjC,chBnHiC,EAAA,OAAA,CAAA,EgBoHjC,ehBpHiC,CAAA,EgBqHzC,OhBrHyC,CAAA,IAAA,CAAA;EAG7B;;;EACiC,KAAA,CAAA,CAAA,EgBwJjC,OhBxJiC,CAAA,IAAA,CAAA;EAAP;;;EAA0B,gBAAA,CAAA,OAAA,EgB+JnC,chB/JmC,CAAA,EgB+JlB,OhB/JkB,CAAA,IAAA,CAAA;EAAC;;;;ECQrD;;;EAOC,QAAA,wBAAA;EAAb;;;EACC,QAAA,wBAAA;EACqB;;;EAEW,QAAA,qBAAA;EAAtB;;;EAGU,QAAA,8CAAA;EAAb;;;;EAGgB,QAAA,qCAAA;EAAlB;;;;EAEN,QAAA,2BAAA;EAEc;;;EACa,QAAA,iBAAA;;;;;;;;;;AF5ByB,ckBY5C,cAAA,ClBZ4C;EAAI,iBAAA,MAAA;EAMjD,WAAA,CAAA,MACV,CADU,EkBO2B,OlBPR,GAAA,IAC7B;EAMU;;;;;AAIZ;AAGA;EAA0B,cAAA,CAAA,KAAA,EkBMF,iBlBNE,CAAA,EkBMkB,kBlBNlB;EAAgC;;;AAE1D;;;;;EAE8B,YAAA,CAAA,IAAA,OAAA,CAAA,CAAA,KAAA,EkBiBK,kBlBjBL,CAAA,EkBiB0B,clBjB1B,CkBiByC,ClBjBzC,CAAA;EAAX;;;;;;;EACL,gBAAA,CAAA,IAAA,OAAA,CAAA,CAAA,KAAA,EkBiCyB,iBlBjCzB,CAAA,EkBiC6C,clBjC7C,CkBiC4D,ClBjC5D,CAAA;EAEF;;;EAIN,2BAAA,CAAA,KAAA,EkBuCK,iBlBvCL,EAAA,IAAA,CAAA,EAAA,GAAA,CAAA,EAAA,CkB0CF,OlBzCE,GAAA,SAAA,EACK;IAEO,WAAA,EkBuCC,kBlBvCD;IAAK,aAAA,CAAA,EAAA,GAAA;EAIN,CAAA;;;AC9CjB;EACe,oBAAA,CAAA,KAAA,EiBiHe,kBjBjHf,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA,MAAA;EAAyB;;;EAAM,cAAA,CAAA,KAAA,EAAA,GAAA,CAAA,EAAA,MAAA;EAG7B;;;;;EAC+C,oBAAA,CAAA,SAAA,EiB6IjD,UjB7IiD,EAAA,oBAAA,CAAA,EAAA,CAAA,YAAA,EAAA,MAAA,EAAA,GAAA,IAAA,CAAA,EiB+I3D,cjB/I2D,GAAA;IAAR,mBAAA,EAAA,GAAA,GAAA,CAAA,GAAA,GAAA,IAAA,CAAA,EAAA;IAAa,IAAA,EiBiJ3D,GjBjJ2D,CAAA,MAAA,CAAA;EAAC,CAAA;;;;;;ADQtE;AAOA;;;;AAAiD,cmBKpC,cAAA,CnBLoC;EAIrC,iBAAQ,QACL;EAEH,iBAAO,MAAA;EAAO,iBAAA,SAAA;EAAgC,iBAAA,QAAA;EAApB,iBAAA,OAAA;EAAmB,iBAAA,YAAA;EAE7C,iBAAY,cAAA;EACd,iBAAA,WAAA;EAAR,iBAAA,gBAAA;EACyB,WAAA,CAAA,QAAA,CAAA,EmBGI,QnBHJ,EAAA,MAAA,CAAA,EmBIE,OnBJF,GAAA,IAAA,EAAA,SAAA,CAAA,EmBKK,SnBLL;EAAY,WAAA,CAAA,CAAA,EmB8B1B,iBnB9B0B;EAAT,UAAA,CAAA,CAAA,EmBkClB,anBlCkB;EAAX,cAAA,CAAA,CAAA,EmBsCH,WnBtCG;EAAmC,iBAAA,CAAA,CAAA,EmB0CnC,cnB1CmC;EAAT,qBAAA,CAAA,KAAA,EmB8CP,iBnB9CO,EAAA,IAAA,CAAA,EAAA,GAAA,CAAA,EAAA,MAAA;EAAgB;;;;;AAG7D;EAEM,WAAA,CAAA,KAAA,EmByDK,iBnBzDL,EAAA,IAAA,EAAA,GAAA,EAAA,gBAAA,EmB2DgB,UnB3DhB,CAAA,EmB2D0B,OnB3D1B,CAAA,GAAA,EAAA,CAAA;EACA;;;;;;EASW,kBAAW,CAAA,QAGhB,CAAA,CAAA,KAAA,EmBmED,iBnBnEc,EAAA,IAAA,EAAA,GAAA,EAAA,gBAAA,EmBqEH,UnBrEG,CAAA,EmBsEpB,OnBtEoB,CmBsEZ,QnBtEY,CAAA;;;;ACjDzB;;;;;EAC8C,oBAAA,CAAA,KAAA,EkBuInC,iBlBvImC,EAAA,IAAA,EAAA,GAAA,EAAA,eAAA,EkByIzB,elBzIyB,CAAA,EkB0IzC,OlB1IyC,CAAA,GAAA,CAAA;EAG7B,eAAA,CAAA,QAAkB,EAAA,ekBqJhB,wBlBrJgB,GAAA,SAAA,CAAA,CAAA,KAAA,EkBuJxB,iBlBvJwB,EAAA,IAAA,EkBwJzB,MlBxJyB,SkBwJV,SlBxJU,GkByJ3B,CAAA,CAAE,KlBzJyB,CkByJnB,MlBzJmB,CAAA,GkB0J3B,MlB1J2B,SkB0JZ,WlB1JY,CkB0JA,SlB1JA,CAAA,GkB2JzB,CAAA,CAAE,KlB3JuB,CkB2JjB,MlB3JiB,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,gBAAA,EkB6Jb,UlB7Ja,CAAA,EkB8J9B,QlB9J8B,GAAA,IAAA;EAAc,UAAA,CAAA,OAAA,EAAA,MAAA,EAAA,KAAA,CAAA,EAAA,MAAA,CAAA,EkBkKP,OlBlKO,CAAA,GAAA,CAAA;EAClC;;;;;;;;qBkB6KW,kBAAuB;;AjBrKjD;;EAMW,KAAA,CAAA,CAAA,EiBsKM,OjBtKN,CAAA,IAAA,CAAA;EACO;;;;EACZ,oBAAA,CAAA,KAAA,EAAA,GAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA,MAAA;;;;;;;AFRN;AAOA;;;AAA8B,coBWjB,SAAA,YAAqB,UpBXJ,CAAA;EAAmB,mBAAA,QAAA,EoBgBhB,QpBhBgB;EAIrC,mBAAQ,MACL,EoBYgB,OpBZ7B,GAAA,IAAY;EAEF,mBAAO,SAAA,EoBWe,SpBXf;EAAO,iBAAA,cAAA;EAAgC,iBAAA,gBAAA;EAApB,WAAA,CAAA,QAAA,CAAA,EoBSL,QpBTK,EAAA,MAAA,CAAA,EoBUP,OpBVO,GAAA,IAAA,EAAA,SAAA,CAAA,EoBWJ,SpBXI;EAAmB,QAAA,YAAA;EAE7C;;;;;;;EAE0C,GAAA,CAAA,UoBkCtC,SpBlCsC,CAAA,CAAA,KAAA,EoBmC3C,CpBnC2C,CAAA,EoBoCjD,YpBpCiD,CoBoCpC,CpBpCoC,CAAA,SoBoCzB,UpBpCyB,CAAA,KAAA,EAAA,CAAA,GoBqChD,OpBrCgD,CoBqCxC,CpBrCwC,CAAA,GoBsChD,OpBtCgD,CoBsCxC,YpBtCwC,CoBsC3B,CpBtC2B,CAAA,CAAA;EAAT,GAAA,CAAA,UoBwC7B,qBpBxC6B,CoBwCP,CpBxCO,CAAA,EAAA,CAAA,CAAA,CAAA,KAAA,EoByClC,CpBzCkC,EAAA,IAAA,EoB0CnC,CpB1CmC,CAAA,EoB2CxC,OpB3CwC,CoB2ChC,YpB3CgC,CoB2CnB,CpB3CmB,CAAA,CAAA;EAAgB,GAAA,CAAA,CAAA,EAAA,UoB8C1C,wBpB9C0C,CAAA,CAAA,KAAA,EoB+ClD,cpB/CkD,CoB+CnC,CpB/CmC,EoB+ChC,CpB/CgC,CAAA,EAAA,IAAA,EoBgDnD,CAAA,CAAE,KpBhDiD,CoBgD3C,CpBhD2C,CAAA,CAAA,EoBiDxD,OpBjDwD,CoBiDhD,CpBjDgD,CAAA;EAAvD,GAAA,CAAA,CAAA,EAAA,UoBmDa,wBpBnDb,EAAA,UAAA,OAAA,CAAA,CAAA,KAAA,EoBoDK,cpBpDL,CoBoDoB,CpBpDpB,EoBoDuB,CpBpDvB,EoBoD0B,CpBpD1B,CAAA,CAAA,EoBqDD,CpBrDC,SAAA,KAAA,GoBsDA,OpBtDA,CoBsDQ,CpBtDR,CAAA,GoBuDA,CpBvDA,SoBuDU,OpBvDV,CAAA,KAAA,KAAA,CAAA,GAAA,oCoBwDsC,IpBxDtC,CoByDI,YpBzDJ,CAAA,MoByDuB,IpBzDvB,CAAA,EAAA,IAAA,CAAA,EAAA,GAAA,iCAAA;EACC,GAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EoB6DS,cpB7DT,CoB6DwB,CpB7DxB,EAAA,SAAA,CAAA,CAAA,EoB6DwC,OpB7DxC,CoB6DgD,CpB7DhD,CAAA;EAAM,GAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EoB8DG,mBpB9DH,CoB8DuB,CpB9DvB,EAAA,GAAA,CAAA,CAAA,EoB8DiC,OpB9DjC,CoB8DyC,CpB9DzC,CAAA;EAAC,GAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EoB+DE,qBpB/DF,CoB+DwB,CpB/DxB,EAAA,GAAA,CAAA,CAAA,EoB+DkC,OpB/DlC,CoB+D0C,CpB/D1C,CAAA;EAEF;;;;;;;EAQW,cAAA,CAAA,KAAA,EoB0Ff,SpB1Fe,GoB2Ff,cpB3Fe,CAAA,GAAA,CAAA,GoB4Ff,mBpB5Fe,CAAA,GAAA,EAAA,GAAA,CAAA,GoB6Ff,qBpB7Fe,CAAA,GAAA,EAAA,GAAA,CAAA,EAAA,IAAA,EAAA,OAAA,EAAA,gBAAA,EoB+FD,UpB/FC,CAAA,EoBgGlB,OpBhGkB,CAAA,GAAA,CAAA;EAIN;;;;AC9CjB;;EACwC,iBAAA,CAAA,KAAA,EmByJhC,SnBzJgC,GmB0JhC,cnB1JgC,CAAA,GAAA,CAAA,GmB2JhC,mBnB3JgC,CAAA,GAAA,EAAA,GAAA,CAAA,GmB4JhC,qBnB5JgC,CAAA,GAAA,EAAA,GAAA,CAAA,EAAA,IAAA,EAAA,OAAA,EAAA,eAAA,EmB8JnB,enB9JmB,CAAA,EmB+JnC,OnB/JmC,CAAA,GAAA,CAAA;EAAR;;;EAGf,iBAAA,CAAA,CAAA,EmBuKM,cnBvKY;EAAc;;;EACN,WAAA,CAAA,CAAA,EmB6K1B,QnB7K0B;EAAqB;;;EAAM,UAAA,CAAA,OAAA,EAAA,OAAA,CAAA,EmBoLhC,OnBpLgC,CAAA,IAAA,CAAA;;;;ECQrD,QAAA,mBAAU;EAKX;;;EAEX,YAAA,CAAA,KAAA,EAAA,GAAA,CAAA,EAAA,OAAA;EAAwB;;;EAEF,OAAA,CAAA,CAAA,EkBwMR,OlBxMQ,CAAA,IAAA,CAAA;EAAb;;;EAEE,KAAA,CAAA,CAAA,EkB6MC,OlB7MD,CAAA,IAAA,CAAA;EACL;;;;;EAIQ,UAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,GAAA,EAAA,IAAA,CAAA,EAAA,GAAA,CAAA,EkBiNsB,ClBjNtB,GAAA,IAAA;EACO;;;;;;;;;;;EAKf,YAAA,CAAA,SAAA,EAAA,MAAA,EAAA,QAAA,CAAA,EkBgOI,MlBhOJ,CAAA,MAAA,EAAA,GAAA,CAAA,EAAA,QAAA,CAAA,EAAA,MAAA,CAAA,EkBkON,elBlOM;EACN;;;;;;EAIK,mBAAA,CAAA,SAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EADkC;;;EAMW,mBAAA,CAAA,CAAA,EkB0P9B,WlB1P8B,CAAA,MAAA,CAAA;EAAR;;;EACO,gBAAA,CAAA,SAAA,EAAA,MAAA,CAAA,EAAA,OAAA;EAAR;;;;EACE,KAAA,CAAA,CAAA,EkBuQrC,OlBvQqC,CAAA,IAAA,CAAA;;;;;;;AFxCnC,cqBCA,kBrBDA,CAAA,CAAA,CAAA,CAAA;EAA+B,iBAAA,SAAA;EAAkB,iBAAA,KAAA;EAAM,WAAA,CAAA,SAAA,EqBGpC,arBHoC,EAAA,KAAA,EqBIxC,crBJwC,CqBIzB,CrBJyB,EAAA,GAAA,CAAA;EAAX;;AAMzD;AAOA;;EACsB,OAAA,CAAA,KAAA,EqBFL,CrBEK,CAAA,EqBFD,arBEC;EADQ;;AAI9B;AAGA;EAA0B,OAAA,CAAA,MAAA,EqBYR,SrBZQ,CAAA,EqBYI,arBZJ;;;;AAE1B;;AACE,cqByBW,aAAA,SAAsB,SAAA,CrBzBjC;EACyB,WAAA,CAAA,QAAA,CAAA,EqB0Bb,QrB1Ba,EAAA,MAAA,CAAA,EqB2Bf,OrB3Be,GAAA,IAAA,EAAA,SAAA,CAAA,EqB4BZ,SrB5BY;EAAY;;;;;;EAAjC,IAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EqBuCW,SrBvCX,CAAA,EqBuCuB,kBrBvCvB,CqBuC0C,CrBvC1C,CAAA;EACC,IAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EqBuCU,crBvCV,CqBuCyB,CrBvCzB,EAAA,GAAA,CAAA,CAAA,EqBuCmC,kBrBvCnC,CqBuCsD,CrBvCtD,CAAA;EAAM;;AAEb;;;;;EAMW,SAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EqB+CW,SrB/CX,EAAA,KAAA,EqB+C6B,CrB/C7B,CAAA,EqB+CiC,arB/CjC;EAEO,SAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EqB8CI,crB9CJ,CqB8CmB,CrB9CnB,EAAA,GAAA,CAAA,EAAA,KAAA,EqB8CmC,CrB9CnC,CAAA,EqB8CuC,arB9CvC;EAAK;AAIvB;;;;AC9CA;;EACwC,SAAA,CAAA,KAAA,EoBmGrB,SpBnGqB,EAAA,MAAA,EoBmGF,SpBnGE,CAAA,EoBmGU,apBnGV;EAAR,SAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EoBoGV,cpBpGU,CoBoGK,CpBpGL,EAAA,GAAA,CAAA,EAAA,MAAA,EoBoGsB,SpBpGtB,CAAA,EoBoGkC,apBpGlC;EAAa;;AAG7C;;;EACkD,WAAA,CAAA,CAAA,EoB0GjC,apB1GiC"}
|
package/lib/index.cjs
ADDED
|
@@ -0,0 +1,389 @@
|
|
|
1
|
+
const require_testing = require('./testing-BMGmmxH7.cjs');
|
|
2
|
+
require("zod/v4");
|
|
3
|
+
|
|
4
|
+
//#region src/decorators/factory.decorator.mts
|
|
5
|
+
function Factory({ scope = require_testing.InjectableScope.Singleton, token, registry = require_testing.globalRegistry } = {}) {
|
|
6
|
+
return (target, context) => {
|
|
7
|
+
if (context && context.kind !== "class" || target instanceof Function && !context) throw new Error("[ServiceLocator] @Factory decorator can only be used on classes.");
|
|
8
|
+
let injectableToken = token ?? require_testing.InjectionToken.create(target);
|
|
9
|
+
registry.set(injectableToken, scope, target, require_testing.InjectableType.Factory);
|
|
10
|
+
target[require_testing.InjectableTokenMeta] = injectableToken;
|
|
11
|
+
return target;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
//#endregion
|
|
16
|
+
//#region src/event-emitter.mts
|
|
17
|
+
function applyDecs2203RFactory() {
|
|
18
|
+
function createAddInitializerMethod(initializers, decoratorFinishedRef) {
|
|
19
|
+
return function addInitializer(initializer) {
|
|
20
|
+
assertNotFinished(decoratorFinishedRef, "addInitializer");
|
|
21
|
+
assertCallable(initializer, "An initializer");
|
|
22
|
+
initializers.push(initializer);
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
function memberDec(dec, name, desc, initializers, kind, isStatic, isPrivate, metadata, value) {
|
|
26
|
+
var kindStr;
|
|
27
|
+
switch (kind) {
|
|
28
|
+
case 1:
|
|
29
|
+
kindStr = "accessor";
|
|
30
|
+
break;
|
|
31
|
+
case 2:
|
|
32
|
+
kindStr = "method";
|
|
33
|
+
break;
|
|
34
|
+
case 3:
|
|
35
|
+
kindStr = "getter";
|
|
36
|
+
break;
|
|
37
|
+
case 4:
|
|
38
|
+
kindStr = "setter";
|
|
39
|
+
break;
|
|
40
|
+
default: kindStr = "field";
|
|
41
|
+
}
|
|
42
|
+
var ctx = {
|
|
43
|
+
kind: kindStr,
|
|
44
|
+
name: isPrivate ? "#" + name : name,
|
|
45
|
+
static: isStatic,
|
|
46
|
+
private: isPrivate,
|
|
47
|
+
metadata
|
|
48
|
+
};
|
|
49
|
+
var decoratorFinishedRef = { v: false };
|
|
50
|
+
ctx.addInitializer = createAddInitializerMethod(initializers, decoratorFinishedRef);
|
|
51
|
+
var get, set;
|
|
52
|
+
if (kind === 0) if (isPrivate) {
|
|
53
|
+
get = desc.get;
|
|
54
|
+
set = desc.set;
|
|
55
|
+
} else {
|
|
56
|
+
get = function() {
|
|
57
|
+
return this[name];
|
|
58
|
+
};
|
|
59
|
+
set = function(v) {
|
|
60
|
+
this[name] = v;
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
else if (kind === 2) get = function() {
|
|
64
|
+
return desc.value;
|
|
65
|
+
};
|
|
66
|
+
else {
|
|
67
|
+
if (kind === 1 || kind === 3) get = function() {
|
|
68
|
+
return desc.get.call(this);
|
|
69
|
+
};
|
|
70
|
+
if (kind === 1 || kind === 4) set = function(v) {
|
|
71
|
+
desc.set.call(this, v);
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
ctx.access = get && set ? {
|
|
75
|
+
get,
|
|
76
|
+
set
|
|
77
|
+
} : get ? { get } : { set };
|
|
78
|
+
try {
|
|
79
|
+
return dec(value, ctx);
|
|
80
|
+
} finally {
|
|
81
|
+
decoratorFinishedRef.v = true;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
function assertNotFinished(decoratorFinishedRef, fnName) {
|
|
85
|
+
if (decoratorFinishedRef.v) throw new Error("attempted to call " + fnName + " after decoration was finished");
|
|
86
|
+
}
|
|
87
|
+
function assertCallable(fn, hint) {
|
|
88
|
+
if (typeof fn !== "function") throw new TypeError(hint + " must be a function");
|
|
89
|
+
}
|
|
90
|
+
function assertValidReturnValue(kind, value) {
|
|
91
|
+
var type = typeof value;
|
|
92
|
+
if (kind === 1) {
|
|
93
|
+
if (type !== "object" || value === null) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0");
|
|
94
|
+
if (value.get !== void 0) assertCallable(value.get, "accessor.get");
|
|
95
|
+
if (value.set !== void 0) assertCallable(value.set, "accessor.set");
|
|
96
|
+
if (value.init !== void 0) assertCallable(value.init, "accessor.init");
|
|
97
|
+
} else if (type !== "function") {
|
|
98
|
+
var hint;
|
|
99
|
+
if (kind === 0) hint = "field";
|
|
100
|
+
else if (kind === 10) hint = "class";
|
|
101
|
+
else hint = "method";
|
|
102
|
+
throw new TypeError(hint + " decorators must return a function or void 0");
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
function applyMemberDec(ret, base, decInfo, name, kind, isStatic, isPrivate, initializers, metadata) {
|
|
106
|
+
var decs = decInfo[0];
|
|
107
|
+
var desc, init, value;
|
|
108
|
+
if (isPrivate) if (kind === 0 || kind === 1) desc = {
|
|
109
|
+
get: decInfo[3],
|
|
110
|
+
set: decInfo[4]
|
|
111
|
+
};
|
|
112
|
+
else if (kind === 3) desc = { get: decInfo[3] };
|
|
113
|
+
else if (kind === 4) desc = { set: decInfo[3] };
|
|
114
|
+
else desc = { value: decInfo[3] };
|
|
115
|
+
else if (kind !== 0) desc = Object.getOwnPropertyDescriptor(base, name);
|
|
116
|
+
if (kind === 1) value = {
|
|
117
|
+
get: desc.get,
|
|
118
|
+
set: desc.set
|
|
119
|
+
};
|
|
120
|
+
else if (kind === 2) value = desc.value;
|
|
121
|
+
else if (kind === 3) value = desc.get;
|
|
122
|
+
else if (kind === 4) value = desc.set;
|
|
123
|
+
var newValue, get, set;
|
|
124
|
+
if (typeof decs === "function") {
|
|
125
|
+
newValue = memberDec(decs, name, desc, initializers, kind, isStatic, isPrivate, metadata, value);
|
|
126
|
+
if (newValue !== void 0) {
|
|
127
|
+
assertValidReturnValue(kind, newValue);
|
|
128
|
+
if (kind === 0) init = newValue;
|
|
129
|
+
else if (kind === 1) {
|
|
130
|
+
init = newValue.init;
|
|
131
|
+
get = newValue.get || value.get;
|
|
132
|
+
set = newValue.set || value.set;
|
|
133
|
+
value = {
|
|
134
|
+
get,
|
|
135
|
+
set
|
|
136
|
+
};
|
|
137
|
+
} else value = newValue;
|
|
138
|
+
}
|
|
139
|
+
} else for (var i = decs.length - 1; i >= 0; i--) {
|
|
140
|
+
var dec = decs[i];
|
|
141
|
+
newValue = memberDec(dec, name, desc, initializers, kind, isStatic, isPrivate, metadata, value);
|
|
142
|
+
if (newValue !== void 0) {
|
|
143
|
+
assertValidReturnValue(kind, newValue);
|
|
144
|
+
var newInit;
|
|
145
|
+
if (kind === 0) newInit = newValue;
|
|
146
|
+
else if (kind === 1) {
|
|
147
|
+
newInit = newValue.init;
|
|
148
|
+
get = newValue.get || value.get;
|
|
149
|
+
set = newValue.set || value.set;
|
|
150
|
+
value = {
|
|
151
|
+
get,
|
|
152
|
+
set
|
|
153
|
+
};
|
|
154
|
+
} else value = newValue;
|
|
155
|
+
if (newInit !== void 0) if (init === void 0) init = newInit;
|
|
156
|
+
else if (typeof init === "function") init = [init, newInit];
|
|
157
|
+
else init.push(newInit);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
if (kind === 0 || kind === 1) {
|
|
161
|
+
if (init === void 0) init = function(instance, init$1) {
|
|
162
|
+
return init$1;
|
|
163
|
+
};
|
|
164
|
+
else if (typeof init !== "function") {
|
|
165
|
+
var ownInitializers = init;
|
|
166
|
+
init = function(instance, init$1) {
|
|
167
|
+
var value$1 = init$1;
|
|
168
|
+
for (var i$1 = 0; i$1 < ownInitializers.length; i$1++) value$1 = ownInitializers[i$1].call(instance, value$1);
|
|
169
|
+
return value$1;
|
|
170
|
+
};
|
|
171
|
+
} else {
|
|
172
|
+
var originalInitializer = init;
|
|
173
|
+
init = function(instance, init$1) {
|
|
174
|
+
return originalInitializer.call(instance, init$1);
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
ret.push(init);
|
|
178
|
+
}
|
|
179
|
+
if (kind !== 0) {
|
|
180
|
+
if (kind === 1) {
|
|
181
|
+
desc.get = value.get;
|
|
182
|
+
desc.set = value.set;
|
|
183
|
+
} else if (kind === 2) desc.value = value;
|
|
184
|
+
else if (kind === 3) desc.get = value;
|
|
185
|
+
else if (kind === 4) desc.set = value;
|
|
186
|
+
if (isPrivate) if (kind === 1) {
|
|
187
|
+
ret.push(function(instance, args) {
|
|
188
|
+
return value.get.call(instance, args);
|
|
189
|
+
});
|
|
190
|
+
ret.push(function(instance, args) {
|
|
191
|
+
return value.set.call(instance, args);
|
|
192
|
+
});
|
|
193
|
+
} else if (kind === 2) ret.push(value);
|
|
194
|
+
else ret.push(function(instance, args) {
|
|
195
|
+
return value.call(instance, args);
|
|
196
|
+
});
|
|
197
|
+
else Object.defineProperty(base, name, desc);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
function applyMemberDecs(Class, decInfos, metadata) {
|
|
201
|
+
var ret = [];
|
|
202
|
+
var protoInitializers;
|
|
203
|
+
var staticInitializers;
|
|
204
|
+
var existingProtoNonFields = /* @__PURE__ */ new Map();
|
|
205
|
+
var existingStaticNonFields = /* @__PURE__ */ new Map();
|
|
206
|
+
for (var i = 0; i < decInfos.length; i++) {
|
|
207
|
+
var decInfo = decInfos[i];
|
|
208
|
+
if (!Array.isArray(decInfo)) continue;
|
|
209
|
+
var kind = decInfo[1];
|
|
210
|
+
var name = decInfo[2];
|
|
211
|
+
var isPrivate = decInfo.length > 3;
|
|
212
|
+
var isStatic = kind >= 5;
|
|
213
|
+
var base;
|
|
214
|
+
var initializers;
|
|
215
|
+
if (isStatic) {
|
|
216
|
+
base = Class;
|
|
217
|
+
kind = kind - 5;
|
|
218
|
+
staticInitializers = staticInitializers || [];
|
|
219
|
+
initializers = staticInitializers;
|
|
220
|
+
} else {
|
|
221
|
+
base = Class.prototype;
|
|
222
|
+
protoInitializers = protoInitializers || [];
|
|
223
|
+
initializers = protoInitializers;
|
|
224
|
+
}
|
|
225
|
+
if (kind !== 0 && !isPrivate) {
|
|
226
|
+
var existingNonFields = isStatic ? existingStaticNonFields : existingProtoNonFields;
|
|
227
|
+
var existingKind = existingNonFields.get(name) || 0;
|
|
228
|
+
if (existingKind === true || existingKind === 3 && kind !== 4 || existingKind === 4 && kind !== 3) throw new Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + name);
|
|
229
|
+
else if (!existingKind && kind > 2) existingNonFields.set(name, kind);
|
|
230
|
+
else existingNonFields.set(name, true);
|
|
231
|
+
}
|
|
232
|
+
applyMemberDec(ret, base, decInfo, name, kind, isStatic, isPrivate, initializers, metadata);
|
|
233
|
+
}
|
|
234
|
+
pushInitializers(ret, protoInitializers);
|
|
235
|
+
pushInitializers(ret, staticInitializers);
|
|
236
|
+
return ret;
|
|
237
|
+
}
|
|
238
|
+
function pushInitializers(ret, initializers) {
|
|
239
|
+
if (initializers) ret.push(function(instance) {
|
|
240
|
+
for (var i = 0; i < initializers.length; i++) initializers[i].call(instance);
|
|
241
|
+
return instance;
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
function applyClassDecs(targetClass, classDecs, metadata) {
|
|
245
|
+
if (classDecs.length > 0) {
|
|
246
|
+
var initializers = [];
|
|
247
|
+
var newClass = targetClass;
|
|
248
|
+
var name = targetClass.name;
|
|
249
|
+
for (var i = classDecs.length - 1; i >= 0; i--) {
|
|
250
|
+
var decoratorFinishedRef = { v: false };
|
|
251
|
+
try {
|
|
252
|
+
var nextNewClass = classDecs[i](newClass, {
|
|
253
|
+
kind: "class",
|
|
254
|
+
name,
|
|
255
|
+
addInitializer: createAddInitializerMethod(initializers, decoratorFinishedRef),
|
|
256
|
+
metadata
|
|
257
|
+
});
|
|
258
|
+
} finally {
|
|
259
|
+
decoratorFinishedRef.v = true;
|
|
260
|
+
}
|
|
261
|
+
if (nextNewClass !== void 0) {
|
|
262
|
+
assertValidReturnValue(10, nextNewClass);
|
|
263
|
+
newClass = nextNewClass;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
return [defineMetadata(newClass, metadata), function() {
|
|
267
|
+
for (var i$1 = 0; i$1 < initializers.length; i$1++) initializers[i$1].call(newClass);
|
|
268
|
+
}];
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
function defineMetadata(Class, metadata) {
|
|
272
|
+
return Object.defineProperty(Class, Symbol.metadata || Symbol.for("Symbol.metadata"), {
|
|
273
|
+
configurable: true,
|
|
274
|
+
enumerable: true,
|
|
275
|
+
value: metadata
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
return function applyDecs2203R(targetClass, memberDecs, classDecs, parentClass) {
|
|
279
|
+
if (parentClass !== void 0) var parentMetadata = parentClass[Symbol.metadata || Symbol.for("Symbol.metadata")];
|
|
280
|
+
var metadata = Object.create(parentMetadata === void 0 ? null : parentMetadata);
|
|
281
|
+
var e = applyMemberDecs(targetClass, memberDecs, metadata);
|
|
282
|
+
if (!classDecs.length) defineMetadata(targetClass, metadata);
|
|
283
|
+
return {
|
|
284
|
+
e,
|
|
285
|
+
get c() {
|
|
286
|
+
return applyClassDecs(targetClass, classDecs, metadata);
|
|
287
|
+
}
|
|
288
|
+
};
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
function _apply_decs_2203_r(targetClass, memberDecs, classDecs, parentClass) {
|
|
292
|
+
return (_apply_decs_2203_r = applyDecs2203RFactory())(targetClass, memberDecs, classDecs, parentClass);
|
|
293
|
+
}
|
|
294
|
+
var _dec, _initClass;
|
|
295
|
+
let _EventEmitter;
|
|
296
|
+
_dec = require_testing.Injectable({ scope: require_testing.InjectableScope.Transient });
|
|
297
|
+
var EventEmitter = class {
|
|
298
|
+
static {
|
|
299
|
+
({c: [_EventEmitter, _initClass]} = _apply_decs_2203_r(this, [], [_dec]));
|
|
300
|
+
}
|
|
301
|
+
listeners = /* @__PURE__ */ new Map();
|
|
302
|
+
on(event, listener) {
|
|
303
|
+
if (!this.listeners.has(event)) this.listeners.set(event, /* @__PURE__ */ new Set());
|
|
304
|
+
this.listeners.get(event).add(listener);
|
|
305
|
+
return () => {
|
|
306
|
+
this.off(event, listener);
|
|
307
|
+
};
|
|
308
|
+
}
|
|
309
|
+
off(event, listener) {
|
|
310
|
+
if (!this.listeners.has(event)) return;
|
|
311
|
+
this.listeners.get(event).delete(listener);
|
|
312
|
+
if (this.listeners.get(event).size === 0) this.listeners.delete(event);
|
|
313
|
+
}
|
|
314
|
+
once(event, listener) {
|
|
315
|
+
const off = this.on(event, (...args) => {
|
|
316
|
+
off();
|
|
317
|
+
listener(...args);
|
|
318
|
+
});
|
|
319
|
+
return off;
|
|
320
|
+
}
|
|
321
|
+
async emit(event, ...args) {
|
|
322
|
+
if (!this.listeners.has(event)) return;
|
|
323
|
+
return Promise.all(Array.from(this.listeners.get(event)).map((listener) => listener(...args)));
|
|
324
|
+
}
|
|
325
|
+
static {
|
|
326
|
+
_initClass();
|
|
327
|
+
}
|
|
328
|
+
};
|
|
329
|
+
|
|
330
|
+
//#endregion
|
|
331
|
+
exports.BaseHolderManager = require_testing.BaseHolderManager;
|
|
332
|
+
exports.BoundInjectionToken = require_testing.BoundInjectionToken;
|
|
333
|
+
exports.CircularDetector = require_testing.CircularDetector;
|
|
334
|
+
Object.defineProperty(exports, 'Container', {
|
|
335
|
+
enumerable: true,
|
|
336
|
+
get: function () {
|
|
337
|
+
return require_testing._Container;
|
|
338
|
+
}
|
|
339
|
+
});
|
|
340
|
+
exports.DIError = require_testing.DIError;
|
|
341
|
+
exports.DIErrorCode = require_testing.DIErrorCode;
|
|
342
|
+
exports.DefaultRequestContext = require_testing.DefaultRequestContext;
|
|
343
|
+
Object.defineProperty(exports, 'EventEmitter', {
|
|
344
|
+
enumerable: true,
|
|
345
|
+
get: function () {
|
|
346
|
+
return _EventEmitter;
|
|
347
|
+
}
|
|
348
|
+
});
|
|
349
|
+
exports.Factory = Factory;
|
|
350
|
+
exports.FactoryInjectionToken = require_testing.FactoryInjectionToken;
|
|
351
|
+
exports.HolderManager = require_testing.HolderManager;
|
|
352
|
+
exports.Injectable = require_testing.Injectable;
|
|
353
|
+
exports.InjectableScope = require_testing.InjectableScope;
|
|
354
|
+
exports.InjectableTokenMeta = require_testing.InjectableTokenMeta;
|
|
355
|
+
exports.InjectableType = require_testing.InjectableType;
|
|
356
|
+
exports.InjectionToken = require_testing.InjectionToken;
|
|
357
|
+
exports.InstanceResolver = require_testing.InstanceResolver;
|
|
358
|
+
exports.InstanceStatus = require_testing.InstanceStatus;
|
|
359
|
+
exports.Instantiator = require_testing.Instantiator;
|
|
360
|
+
exports.Invalidator = require_testing.Invalidator;
|
|
361
|
+
exports.LifecycleEventBus = require_testing.LifecycleEventBus;
|
|
362
|
+
exports.Registry = require_testing.Registry;
|
|
363
|
+
exports.RequestStorage = require_testing.RequestStorage;
|
|
364
|
+
exports.ScopedContainer = require_testing.ScopedContainer;
|
|
365
|
+
exports.ServiceLocator = require_testing.ServiceLocator;
|
|
366
|
+
exports.SingletonStorage = require_testing.SingletonStorage;
|
|
367
|
+
exports.TestBindingBuilder = require_testing.TestBindingBuilder;
|
|
368
|
+
Object.defineProperty(exports, 'TestContainer', {
|
|
369
|
+
enumerable: true,
|
|
370
|
+
get: function () {
|
|
371
|
+
return require_testing._TestContainer;
|
|
372
|
+
}
|
|
373
|
+
});
|
|
374
|
+
exports.TokenProcessor = require_testing.TokenProcessor;
|
|
375
|
+
exports.asyncInject = require_testing.asyncInject;
|
|
376
|
+
exports.createRequestContext = require_testing.createRequestContext;
|
|
377
|
+
exports.defaultInjectors = require_testing.defaultInjectors;
|
|
378
|
+
exports.getCurrentResolutionContext = require_testing.getCurrentResolutionContext;
|
|
379
|
+
exports.getInjectableToken = require_testing.getInjectableToken;
|
|
380
|
+
exports.getInjectors = require_testing.getInjectors;
|
|
381
|
+
exports.globalRegistry = require_testing.globalRegistry;
|
|
382
|
+
exports.inject = require_testing.inject;
|
|
383
|
+
exports.optional = require_testing.optional;
|
|
384
|
+
exports.provideFactoryContext = require_testing.provideFactoryContext;
|
|
385
|
+
exports.resolutionContext = require_testing.resolutionContext;
|
|
386
|
+
exports.withResolutionContext = require_testing.withResolutionContext;
|
|
387
|
+
exports.withoutResolutionContext = require_testing.withoutResolutionContext;
|
|
388
|
+
exports.wrapSyncInit = require_testing.wrapSyncInit;
|
|
389
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","names":["InjectableScope","InjectableType","InjectionToken","globalRegistry","InjectableTokenMeta","Factory","scope","Singleton","token","registry","target","context","kind","Function","Error","injectableToken","create","set","Injectable","InjectableScope","scope","Transient","EventEmitter","listeners","Map","on","event","listener","has","set","Set","get","add","off","delete","size","once","args","emit","Promise","all","Array","from","map"],"sources":["../src/decorators/factory.decorator.mts","../src/event-emitter.mts"],"sourcesContent":["import type {\n ClassTypeWithInstance,\n InjectionTokenSchemaType,\n} from '../token/injection-token.mjs'\nimport type { Factorable, FactorableWithArgs } from '../interfaces/index.mjs'\nimport type { Registry } from '../token/registry.mjs'\n\nimport { InjectableScope, InjectableType } from '../enums/index.mjs'\nimport { InjectionToken } from '../token/injection-token.mjs'\nimport { globalRegistry } from '../token/registry.mjs'\nimport { InjectableTokenMeta } from '../symbols/index.mjs'\n\nexport interface FactoryOptions {\n scope?: InjectableScope\n token?: InjectionToken<any, any>\n registry?: Registry\n}\n\n// #1 Factory without arguments\nexport function Factory<R>(options?: {\n scope?: InjectableScope\n registry?: Registry\n}): <T extends ClassTypeWithInstance<Factorable<R>>>(\n target: T,\n context?: ClassDecoratorContext,\n) => T\n\n// #2 Factory with typed token\nexport function Factory<R, S>(options: {\n scope?: InjectableScope\n token: InjectionToken<R, S>\n registry?: Registry\n}): R extends undefined // #2.1 Check that token has a type\n ? never // #2.1.1 Token must have a type\n : S extends InjectionTokenSchemaType // #2.2 Check that schema is an object or a record\n ? <T extends ClassTypeWithInstance<FactorableWithArgs<R, S>>>( // #2.2.1 Token have a schema\n target: T,\n context?: ClassDecoratorContext,\n ) => T\n : S extends undefined // #2.3 For a factory without schema\n ? <T extends ClassTypeWithInstance<Factorable<R>>>( // #2.3.1 Token without a schema\n target: T,\n context?: ClassDecoratorContext,\n ) => T\n : never // #2.4 Cannot use a token without a type and schema\n\nexport function Factory({\n scope = InjectableScope.Singleton,\n token,\n registry = globalRegistry,\n}: FactoryOptions = {}) {\n return <\n T extends ClassTypeWithInstance<\n Factorable<any> | FactorableWithArgs<any, any>\n >,\n >(\n target: T,\n context?: ClassDecoratorContext,\n ): T => {\n if (\n (context && context.kind !== 'class') ||\n (target instanceof Function && !context)\n ) {\n throw new Error(\n '[ServiceLocator] @Factory decorator can only be used on classes.',\n )\n }\n\n let injectableToken: InjectionToken<any, any> =\n token ?? InjectionToken.create(target)\n\n registry.set(injectableToken, scope, target, InjectableType.Factory)\n\n // @ts-expect-error\n target[InjectableTokenMeta] = injectableToken\n\n return target\n }\n}\n","/* eslint-disable @typescript-eslint/no-non-null-assertion */\n/* eslint-disable @typescript-eslint/no-empty-object-type */\n/* eslint-disable @typescript-eslint/no-unsafe-function-type */\n\nimport { Injectable, InjectableScope } from './index.mjs'\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\nexport type EventsConfig = {\n [event: string]: any[]\n}\nexport type EventsNames<Events extends EventsConfig> = Exclude<\n keyof Events,\n symbol | number\n>\nexport type EventsArgs<\n Events extends EventsConfig,\n Name extends EventsNames<Events>,\n> = Events[Name] extends any[] ? Events[Name] : []\n\nexport type ChannelEmitter<\n Events extends EventsConfig,\n Ns extends string,\n E extends EventsNames<Events>,\n> = {\n emit<Args extends EventsArgs<Events, E>>(\n ns: Ns,\n event: E,\n ...args: Args\n ): Promise<any>\n}\n\nexport interface EventEmitterInterface<Events extends EventsConfig> {\n on<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(\n event: E,\n listener: (...args: Args) => void | Promise<void>,\n ): () => void\n emit<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(\n event: E,\n ...args: Args\n ): void | Promise<void>\n}\n\n@Injectable({ scope: InjectableScope.Transient })\nexport class EventEmitter<Events extends EventsConfig = {}>\n implements EventEmitterInterface<Events>\n{\n private listeners: Map<EventsNames<Events>, Set<Function>> = new Map()\n\n on<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(\n event: E,\n listener: (...args: Args) => void | Promise<void>,\n ) {\n if (!this.listeners.has(event)) {\n this.listeners.set(event, new Set())\n }\n\n this.listeners.get(event)!.add(listener)\n\n return () => {\n this.off(event, listener)\n }\n }\n\n off<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(\n event: E,\n listener: (...args: Args) => void | Promise<void>,\n ) {\n if (!this.listeners.has(event)) {\n return\n }\n\n this.listeners.get(event)!.delete(listener)\n if (this.listeners.get(event)!.size === 0) {\n this.listeners.delete(event)\n }\n }\n\n once<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(\n event: E,\n listener: (...args: Args) => void | Promise<void>,\n ) {\n const off = this.on(event, (...args) => {\n off()\n // @ts-expect-error - This is a valid call\n listener(...args)\n })\n\n return off\n }\n\n async emit<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(\n event: E,\n ...args: Args\n ): Promise<any> {\n if (!this.listeners.has(event)) {\n return\n }\n\n return Promise.all(\n Array.from(this.listeners.get(event)!).map((listener) =>\n listener(...args),\n ),\n )\n }\n}\n"],"mappings":";;;;AA8CA,SAAgBK,QAAQ,EACtBC,QAAQN,gCAAgBO,WACxBC,OACAC,WAAWN,mCACO,EAAE,EAAA;AACpB,SAKEO,QACAC,YAAAA;AAEA,MACE,WAAYA,QAAQC,SAAS,WAC5BF,kBAAkBG,YAAY,CAACF,QAEhC,OAAM,IAAIG,MACR,mEAAA;EAIJ,IAAIC,kBACFP,SAASN,+BAAec,OAAON,OAAAA;AAEjCD,WAASQ,IAAIF,iBAAiBT,OAAOI,QAAQT,+BAAeI,QAAO;AAGnEK,SAAON,uCAAuBW;AAE9B,SAAOL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OClCVQ,2BAAW,EAAEE,OAAOD,gCAAgBE,WAAU,CAAA;AACxC,IAAMC,eAAN,MAAMA;;;;CAGHC,4BAAqD,IAAIC,KAAAA;CAEjEC,GACEC,OACAC,UACA;AACA,MAAI,CAAC,KAAKJ,UAAUK,IAAIF,MAAAA,CACtB,MAAKH,UAAUM,IAAIH,uBAAO,IAAII,KAAAA,CAAAA;AAGhC,OAAKP,UAAUQ,IAAIL,MAAAA,CAAQM,IAAIL,SAAAA;AAE/B,eAAO;AACL,QAAKM,IAAIP,OAAOC,SAAAA;;;CAIpBM,IACEP,OACAC,UACA;AACA,MAAI,CAAC,KAAKJ,UAAUK,IAAIF,MAAAA,CACtB;AAGF,OAAKH,UAAUQ,IAAIL,MAAAA,CAAQQ,OAAOP,SAAAA;AAClC,MAAI,KAAKJ,UAAUQ,IAAIL,MAAAA,CAAQS,SAAS,EACtC,MAAKZ,UAAUW,OAAOR,MAAAA;;CAI1BU,KACEV,OACAC,UACA;EACA,MAAMM,MAAM,KAAKR,GAAGC,QAAQ,GAAGW,SAAAA;AAC7BJ,QAAAA;AAEAN,YAAAA,GAAYU,KAAAA;IACd;AAEA,SAAOJ;;CAGT,MAAMK,KACJZ,OACA,GAAGW,MACW;AACd,MAAI,CAAC,KAAKd,UAAUK,IAAIF,MAAAA,CACtB;AAGF,SAAOa,QAAQC,IACbC,MAAMC,KAAK,KAAKnB,UAAUQ,IAAIL,MAAAA,CAAAA,CAASiB,KAAKhB,aAC1CA,SAAAA,GAAYU,KAAAA,CAAAA,CAAAA"}
|