@unchainedshop/core 4.0.2 → 4.1.1

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.
Files changed (73) hide show
  1. package/lib/factory/index.d.ts +9 -1
  2. package/lib/factory/index.d.ts.map +1 -1
  3. package/lib/factory/index.js +9 -1
  4. package/lib/factory/index.js.map +1 -1
  5. package/lib/factory/registerAssortmentSearchFilter.d.ts +9 -0
  6. package/lib/factory/registerAssortmentSearchFilter.d.ts.map +1 -0
  7. package/lib/factory/registerAssortmentSearchFilter.js +24 -0
  8. package/lib/factory/registerAssortmentSearchFilter.js.map +1 -0
  9. package/lib/factory/registerInvoicePayment.d.ts +9 -0
  10. package/lib/factory/registerInvoicePayment.d.ts.map +1 -0
  11. package/lib/factory/registerInvoicePayment.js +32 -0
  12. package/lib/factory/registerInvoicePayment.js.map +1 -0
  13. package/lib/factory/registerPhysicalWarehouse copy.d.ts +10 -0
  14. package/lib/factory/registerPhysicalWarehouse copy.d.ts.map +1 -0
  15. package/lib/factory/registerPhysicalWarehouse copy.js +54 -0
  16. package/lib/factory/registerPhysicalWarehouse copy.js.map +1 -0
  17. package/lib/factory/registerPhysicalWarehouse.d.ts +10 -0
  18. package/lib/factory/registerPhysicalWarehouse.d.ts.map +1 -0
  19. package/lib/factory/registerPhysicalWarehouse.js +54 -0
  20. package/lib/factory/registerPhysicalWarehouse.js.map +1 -0
  21. package/lib/factory/registerPhysicalWarehousing.d.ts +10 -0
  22. package/lib/factory/registerPhysicalWarehousing.d.ts.map +1 -0
  23. package/lib/factory/registerPhysicalWarehousing.js +54 -0
  24. package/lib/factory/registerPhysicalWarehousing.js.map +1 -0
  25. package/lib/factory/registerPickUpDelivery.d.ts +12 -0
  26. package/lib/factory/registerPickUpDelivery.d.ts.map +1 -0
  27. package/lib/factory/registerPickUpDelivery.js +46 -0
  28. package/lib/factory/registerPickUpDelivery.js.map +1 -0
  29. package/lib/factory/registerProductDiscoverabilityFilter.js +1 -1
  30. package/lib/factory/registerProductDiscoverabilityFilter.js.map +1 -1
  31. package/lib/factory/registerProductSearchFilter.d.ts +9 -0
  32. package/lib/factory/registerProductSearchFilter.d.ts.map +1 -0
  33. package/lib/factory/registerProductSearchFilter.js +24 -0
  34. package/lib/factory/registerProductSearchFilter.js.map +1 -0
  35. package/lib/factory/registerShippingDelivery.d.ts +11 -0
  36. package/lib/factory/registerShippingDelivery.d.ts.map +1 -0
  37. package/lib/factory/registerShippingDelivery.js +38 -0
  38. package/lib/factory/registerShippingDelivery.js.map +1 -0
  39. package/lib/factory/registerVirtualWarehouse.d.ts +11 -0
  40. package/lib/factory/registerVirtualWarehouse.d.ts.map +1 -0
  41. package/lib/factory/registerVirtualWarehouse.js +51 -0
  42. package/lib/factory/registerVirtualWarehouse.js.map +1 -0
  43. package/lib/factory/registerVirtualWarehousing.d.ts +11 -0
  44. package/lib/factory/registerVirtualWarehousing.d.ts.map +1 -0
  45. package/lib/factory/registerVirtualWarehousing.js +51 -0
  46. package/lib/factory/registerVirtualWarehousing.js.map +1 -0
  47. package/lib/factory/registerWarehouse.d.ts +7 -0
  48. package/lib/factory/registerWarehouse.d.ts.map +1 -0
  49. package/lib/factory/registerWarehouse.js +35 -0
  50. package/lib/factory/registerWarehouse.js.map +1 -0
  51. package/lib/factory/registerWorker copy.d.ts +7 -0
  52. package/lib/factory/registerWorker copy.d.ts.map +1 -0
  53. package/lib/factory/registerWorker copy.js +35 -0
  54. package/lib/factory/registerWorker copy.js.map +1 -0
  55. package/lib/factory/registerWorker.d.ts +7 -0
  56. package/lib/factory/registerWorker.d.ts.map +1 -0
  57. package/lib/factory/registerWorker.js +35 -0
  58. package/lib/factory/registerWorker.js.map +1 -0
  59. package/lib/services/removeProduct.d.ts.map +1 -1
  60. package/lib/services/removeProduct.js +3 -0
  61. package/lib/services/removeProduct.js.map +1 -1
  62. package/package.json +20 -20
  63. package/src/factory/index.ts +19 -1
  64. package/src/factory/registerAssortmentSearchFilter.ts +36 -0
  65. package/src/factory/registerInvoicePayment.ts +61 -0
  66. package/src/factory/registerPhysicalWarehousing.ts +92 -0
  67. package/src/factory/registerPickUpDelivery.ts +81 -0
  68. package/src/factory/registerProductDiscoverabilityFilter.ts +1 -1
  69. package/src/factory/registerProductSearchFilter.ts +36 -0
  70. package/src/factory/registerShippingDelivery.ts +65 -0
  71. package/src/factory/registerVirtualWarehousing.ts +100 -0
  72. package/src/factory/registerWorker.ts +46 -0
  73. package/src/services/removeProduct.ts +3 -0
@@ -1,3 +1,11 @@
1
1
  import registerProductDiscoverabilityFilter from './registerProductDiscoverabilityFilter.js';
2
- export { registerProductDiscoverabilityFilter };
2
+ import registerPickUpDelivery from './registerPickUpDelivery.js';
3
+ import registerShippingDelivery from './registerShippingDelivery.js';
4
+ import registerWorker from './registerWorker.js';
5
+ import registerPhysicalWarehousing from './registerPhysicalWarehousing.js';
6
+ import registerVirtualWarehousing from './registerVirtualWarehousing.js';
7
+ import registerProductSearchFilter from './registerProductSearchFilter.js';
8
+ import registerAssortmentSearchFilter from './registerAssortmentSearchFilter.js';
9
+ import registerInvoicePayment from './registerInvoicePayment.js';
10
+ export { registerProductDiscoverabilityFilter, registerPickUpDelivery, registerShippingDelivery, registerInvoicePayment, registerWorker, registerPhysicalWarehousing, registerVirtualWarehousing, registerProductSearchFilter, registerAssortmentSearchFilter, };
3
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/factory/index.ts"],"names":[],"mappings":"AAAA,OAAO,oCAAoC,MAAM,2CAA2C,CAAC;AAE7F,OAAO,EAAE,oCAAoC,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/factory/index.ts"],"names":[],"mappings":"AAAA,OAAO,oCAAoC,MAAM,2CAA2C,CAAC;AAC7F,OAAO,sBAAsB,MAAM,6BAA6B,CAAC;AACjE,OAAO,wBAAwB,MAAM,+BAA+B,CAAC;AACrE,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,2BAA2B,MAAM,kCAAkC,CAAC;AAC3E,OAAO,0BAA0B,MAAM,iCAAiC,CAAC;AACzE,OAAO,2BAA2B,MAAM,kCAAkC,CAAC;AAC3E,OAAO,8BAA8B,MAAM,qCAAqC,CAAC;AACjF,OAAO,sBAAsB,MAAM,6BAA6B,CAAC;AAEjE,OAAO,EACL,oCAAoC,EACpC,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,cAAc,EACd,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,8BAA8B,GAC/B,CAAC"}
@@ -1,3 +1,11 @@
1
1
  import registerProductDiscoverabilityFilter from './registerProductDiscoverabilityFilter.js';
2
- export { registerProductDiscoverabilityFilter };
2
+ import registerPickUpDelivery from './registerPickUpDelivery.js';
3
+ import registerShippingDelivery from './registerShippingDelivery.js';
4
+ import registerWorker from './registerWorker.js';
5
+ import registerPhysicalWarehousing from './registerPhysicalWarehousing.js';
6
+ import registerVirtualWarehousing from './registerVirtualWarehousing.js';
7
+ import registerProductSearchFilter from './registerProductSearchFilter.js';
8
+ import registerAssortmentSearchFilter from './registerAssortmentSearchFilter.js';
9
+ import registerInvoicePayment from './registerInvoicePayment.js';
10
+ export { registerProductDiscoverabilityFilter, registerPickUpDelivery, registerShippingDelivery, registerInvoicePayment, registerWorker, registerPhysicalWarehousing, registerVirtualWarehousing, registerProductSearchFilter, registerAssortmentSearchFilter, };
3
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/factory/index.ts"],"names":[],"mappings":"AAAA,OAAO,oCAAoC,MAAM,2CAA2C,CAAC;AAE7F,OAAO,EAAE,oCAAoC,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/factory/index.ts"],"names":[],"mappings":"AAAA,OAAO,oCAAoC,MAAM,2CAA2C,CAAC;AAC7F,OAAO,sBAAsB,MAAM,6BAA6B,CAAC;AACjE,OAAO,wBAAwB,MAAM,+BAA+B,CAAC;AACrE,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,2BAA2B,MAAM,kCAAkC,CAAC;AAC3E,OAAO,0BAA0B,MAAM,iCAAiC,CAAC;AACzE,OAAO,2BAA2B,MAAM,kCAAkC,CAAC;AAC3E,OAAO,8BAA8B,MAAM,qCAAqC,CAAC;AACjF,OAAO,sBAAsB,MAAM,6BAA6B,CAAC;AAEjE,OAAO,EACL,oCAAoC,EACpC,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,cAAc,EACd,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,8BAA8B,GAC/B,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { SearchQuery } from '@unchainedshop/core-filters';
2
+ export default function registerAssortmentSearchFilter({ orderIndex, search, }: {
3
+ orderIndex?: number;
4
+ search: (params: SearchQuery & {
5
+ queryString: string;
6
+ locale: Intl.Locale;
7
+ }) => Promise<string[]>;
8
+ }): void;
9
+ //# sourceMappingURL=registerAssortmentSearchFilter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerAssortmentSearchFilter.d.ts","sourceRoot":"","sources":["../../src/factory/registerAssortmentSearchFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG1D,MAAM,CAAC,OAAO,UAAU,8BAA8B,CAAC,EACrD,UAAc,EACd,MAAM,GACP,EAAE;IACD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,GAAG;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACnG,QA0BA"}
@@ -0,0 +1,24 @@
1
+ import { FilterAdapter, FilterDirector } from '../core-index.js';
2
+ export default function registerAssortmentSearchFilter({ orderIndex = 0, search, }) {
3
+ FilterDirector.registerAdapter({
4
+ ...FilterAdapter,
5
+ key: `shop.unchained.filters.assortment-search-${crypto.randomUUID()}`,
6
+ label: 'Assortment Search Filter (auto-generated)',
7
+ version: '1.0.0',
8
+ orderIndex,
9
+ actions: (params) => {
10
+ return {
11
+ ...FilterAdapter.actions(params),
12
+ async searchAssortments({ assortmentIds }, { locale }) {
13
+ const { queryString, ...rest } = params.searchQuery;
14
+ if (!queryString)
15
+ return assortmentIds;
16
+ const restrictedAssortmentIds = new Set(assortmentIds || []);
17
+ const foundAssortmentIds = await search({ ...rest, queryString, locale });
18
+ return foundAssortmentIds.filter(restrictedAssortmentIds.size === 0 ? Boolean : (id) => restrictedAssortmentIds.has(id));
19
+ },
20
+ };
21
+ },
22
+ });
23
+ }
24
+ //# sourceMappingURL=registerAssortmentSearchFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerAssortmentSearchFilter.js","sourceRoot":"","sources":["../../src/factory/registerAssortmentSearchFilter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEjE,MAAM,CAAC,OAAO,UAAU,8BAA8B,CAAC,EACrD,UAAU,GAAG,CAAC,EACd,MAAM,GAIP;IACC,cAAc,CAAC,eAAe,CAAC;QAC7B,GAAG,aAAa;QAEhB,GAAG,EAAE,4CAA4C,MAAM,CAAC,UAAU,EAAE,EAAE;QACtE,KAAK,EAAE,2CAA2C;QAClD,OAAO,EAAE,OAAO;QAChB,UAAU;QAEV,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;YAClB,OAAO;gBACL,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;gBAEhC,KAAK,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,MAAM,EAAE;oBACnD,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;oBACpD,IAAI,CAAC,WAAW;wBAAE,OAAO,aAAa,CAAC;oBAEvC,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;oBAC7D,MAAM,kBAAkB,GAAG,MAAM,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC1E,OAAO,kBAAkB,CAAC,MAAM,CAC9B,uBAAuB,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,CACvF,CAAC;gBACJ,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { PaymentConfiguration } from '@unchainedshop/core-payment';
2
+ import { PaymentContext, PaymentChargeActionResult } from '../core-index.js';
3
+ export default function registerInvoicePayment({ adapterId, active, payLaterAllowed, charge, }: {
4
+ adapterId: string;
5
+ active?: boolean;
6
+ payLaterAllowed?: boolean;
7
+ charge: false | ((configuration: PaymentConfiguration, context: PaymentContext) => Promise<PaymentChargeActionResult | false>);
8
+ }): void;
9
+ //# sourceMappingURL=registerInvoicePayment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerInvoicePayment.d.ts","sourceRoot":"","sources":["../../src/factory/registerInvoicePayment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EACL,cAAc,EAGd,yBAAyB,EAC1B,MAAM,kBAAkB,CAAC;AAG1B,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAC7C,SAAS,EACT,MAAM,EACN,eAAe,EACf,MAAM,GACP,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,EACF,KAAK,GACL,CAAC,CACC,aAAa,EAAE,oBAAoB,EACnC,OAAO,EAAE,cAAc,KACpB,OAAO,CAAC,yBAAyB,GAAG,KAAK,CAAC,CAAC,CAAC;CACtD,QAoCA"}
@@ -0,0 +1,32 @@
1
+ import { PaymentAdapter, PaymentDirector, } from '../core-index.js';
2
+ import { PaymentProviderType } from '@unchainedshop/core-payment';
3
+ export default function registerInvoicePayment({ adapterId, active, payLaterAllowed, charge, }) {
4
+ PaymentDirector.registerAdapter({
5
+ ...PaymentAdapter,
6
+ key: `shop.unchained.payment.invoice-${adapterId}`,
7
+ label: 'Invoice Payment: ' + adapterId,
8
+ version: '1.0.0',
9
+ initialConfiguration: [],
10
+ typeSupported: (type) => {
11
+ return type === PaymentProviderType.INVOICE;
12
+ },
13
+ actions: (config, context) => {
14
+ return {
15
+ ...PaymentAdapter.actions(config, context),
16
+ isActive: () => {
17
+ return active ?? true;
18
+ },
19
+ isPayLaterAllowed() {
20
+ return payLaterAllowed ?? false;
21
+ },
22
+ configurationError: () => {
23
+ return null;
24
+ },
25
+ charge: async () => {
26
+ return typeof charge === 'function' ? await charge(config, context) : charge;
27
+ },
28
+ };
29
+ },
30
+ });
31
+ }
32
+ //# sourceMappingURL=registerInvoicePayment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerInvoicePayment.js","sourceRoot":"","sources":["../../src/factory/registerInvoicePayment.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,cAAc,EACd,eAAe,GAEhB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAC7C,SAAS,EACT,MAAM,EACN,eAAe,EACf,MAAM,GAWP;IACC,eAAe,CAAC,eAAe,CAAC;QAC9B,GAAG,cAAc;QAEjB,GAAG,EAAE,kCAAkC,SAAS,EAAE;QAClD,KAAK,EAAE,mBAAmB,GAAG,SAAS;QACtC,OAAO,EAAE,OAAO;QAEhB,oBAAoB,EAAE,EAAE;QAExB,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;YACtB,OAAO,IAAI,KAAK,mBAAmB,CAAC,OAAO,CAAC;QAC9C,CAAC;QAED,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;YAC3B,OAAO;gBACL,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC;gBAE1C,QAAQ,EAAE,GAAG,EAAE;oBACb,OAAO,MAAM,IAAI,IAAI,CAAC;gBACxB,CAAC;gBAED,iBAAiB;oBACf,OAAO,eAAe,IAAI,KAAK,CAAC;gBAClC,CAAC;gBAED,kBAAkB,EAAE,GAAG,EAAE;oBACvB,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,MAAM,EAAE,KAAK,IAAI,EAAE;oBACjB,OAAO,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC/E,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { WarehousingConfiguration } from '@unchainedshop/core-warehousing';
2
+ import { WarehousingContext } from '../core-index.js';
3
+ export default function registerPhysicalWarehouse({ adapterId, orderIndex, stock, productionTime, commissioningTime, }: {
4
+ adapterId: string;
5
+ orderIndex?: number;
6
+ stock?: number | ((referenceDate: Date, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<number>);
7
+ productionTime?: number | ((quantityToProduct: number, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<number>);
8
+ commissioningTime?: number | ((quantity: number, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<number>);
9
+ }): void;
10
+ //# sourceMappingURL=registerPhysicalWarehouse%20copy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerPhysicalWarehouse copy.d.ts","sourceRoot":"","sources":["../../src/factory/registerPhysicalWarehouse copy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAA2B,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAsB,kBAAkB,EAAuB,MAAM,kBAAkB,CAAC;AAE/F,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAChD,SAAS,EACT,UAAc,EACd,KAAK,EACL,cAAc,EACd,iBAAiB,GAClB,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EACF,MAAM,GACN,CAAC,CACC,aAAa,EAAE,IAAI,EACnB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1B,cAAc,CAAC,EACX,MAAM,GACN,CAAC,CACC,iBAAiB,EAAE,MAAM,EACzB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1B,iBAAiB,CAAC,EACd,MAAM,GACN,CAAC,CACC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;CAC3B,QAwDA"}
@@ -0,0 +1,54 @@
1
+ import { WarehousingProviderType } from '@unchainedshop/core-warehousing';
2
+ import { WarehousingAdapter, WarehousingDirector } from '../core-index.js';
3
+ export default function registerPhysicalWarehouse({ adapterId, orderIndex = 0, stock, productionTime, commissioningTime, }) {
4
+ WarehousingDirector.registerAdapter({
5
+ ...WarehousingAdapter,
6
+ key: 'shop.unchained.warehousing.physical.' + adapterId,
7
+ label: 'Store',
8
+ version: '1.0.0',
9
+ orderIndex,
10
+ initialConfiguration: [{ key: 'shipping-hub', value: 'Shipping Hub' }],
11
+ typeSupported: (type) => {
12
+ return type === WarehousingProviderType.PHYSICAL;
13
+ },
14
+ actions: (configuration, context) => {
15
+ return {
16
+ ...WarehousingAdapter.actions(configuration, context),
17
+ isActive() {
18
+ return true;
19
+ },
20
+ configurationError() {
21
+ return null;
22
+ },
23
+ stock: async () => {
24
+ if (typeof stock === 'number') {
25
+ return stock;
26
+ }
27
+ else if (typeof stock === 'function') {
28
+ return stock(new Date(), configuration, context);
29
+ }
30
+ return 99999;
31
+ },
32
+ productionTime: async (quantityToProduct) => {
33
+ if (typeof productionTime === 'number') {
34
+ return productionTime;
35
+ }
36
+ else if (typeof productionTime === 'function') {
37
+ return productionTime(quantityToProduct, configuration, context);
38
+ }
39
+ return 0;
40
+ },
41
+ commissioningTime: async (quantity) => {
42
+ if (typeof commissioningTime === 'number') {
43
+ return commissioningTime;
44
+ }
45
+ else if (typeof commissioningTime === 'function') {
46
+ return commissioningTime(quantity, configuration, context);
47
+ }
48
+ return 0;
49
+ },
50
+ };
51
+ },
52
+ });
53
+ }
54
+ //# sourceMappingURL=registerPhysicalWarehouse%20copy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerPhysicalWarehouse copy.js","sourceRoot":"","sources":["../../src/factory/registerPhysicalWarehouse copy.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAE,kBAAkB,EAAsB,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE/F,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAChD,SAAS,EACT,UAAU,GAAG,CAAC,EACd,KAAK,EACL,cAAc,EACd,iBAAiB,GA2BlB;IACC,mBAAmB,CAAC,eAAe,CAAC;QAClC,GAAG,kBAAkB;QAErB,GAAG,EAAE,sCAAsC,GAAG,SAAS;QACvD,KAAK,EAAE,OAAO;QACd,OAAO,EAAE,OAAO;QAChB,UAAU;QAEV,oBAAoB,EAAE,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;QAEtE,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;YACtB,OAAO,IAAI,KAAK,uBAAuB,CAAC,QAAQ,CAAC;QACnD,CAAC;QAED,OAAO,EAAE,CAAC,aAAa,EAAE,OAAO,EAAE,EAAE;YAClC,OAAO;gBACL,GAAG,kBAAkB,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC;gBAErD,QAAQ;oBACN,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,kBAAkB;oBAChB,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,KAAK,EAAE,KAAK,IAAI,EAAE;oBAChB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9B,OAAO,KAAK,CAAC;oBACf,CAAC;yBAAM,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;wBACvC,OAAO,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBACnD,CAAC;oBACD,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,cAAc,EAAE,KAAK,EAAE,iBAAyB,EAAE,EAAE;oBAClD,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;wBACvC,OAAO,cAAc,CAAC;oBACxB,CAAC;yBAAM,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;wBAChD,OAAO,cAAc,CAAC,iBAAiB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBACnE,CAAC;oBACD,OAAO,CAAC,CAAC;gBACX,CAAC;gBAED,iBAAiB,EAAE,KAAK,EAAE,QAAgB,EAAE,EAAE;oBAC5C,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE,CAAC;wBAC1C,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;yBAAM,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE,CAAC;wBACnD,OAAO,iBAAiB,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBAC7D,CAAC;oBACD,OAAO,CAAC,CAAC;gBACX,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { WarehousingConfiguration } from '@unchainedshop/core-warehousing';
2
+ import { WarehousingContext } from '../core-index.js';
3
+ export default function registerPhysicalWarehouse({ adapterId, orderIndex, stock, productionTime, commissioningTime, }: {
4
+ adapterId: string;
5
+ orderIndex?: number;
6
+ stock?: number | ((referenceDate: Date, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<number>);
7
+ productionTime?: number | ((quantityToProduct: number, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<number>);
8
+ commissioningTime?: number | ((quantity: number, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<number>);
9
+ }): void;
10
+ //# sourceMappingURL=registerPhysicalWarehouse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerPhysicalWarehouse.d.ts","sourceRoot":"","sources":["../../src/factory/registerPhysicalWarehouse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAA2B,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAsB,kBAAkB,EAAuB,MAAM,kBAAkB,CAAC;AAE/F,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAChD,SAAS,EACT,UAAc,EACd,KAAK,EACL,cAAc,EACd,iBAAiB,GAClB,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EACF,MAAM,GACN,CAAC,CACC,aAAa,EAAE,IAAI,EACnB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1B,cAAc,CAAC,EACX,MAAM,GACN,CAAC,CACC,iBAAiB,EAAE,MAAM,EACzB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1B,iBAAiB,CAAC,EACd,MAAM,GACN,CAAC,CACC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;CAC3B,QAwDA"}
@@ -0,0 +1,54 @@
1
+ import { WarehousingProviderType } from '@unchainedshop/core-warehousing';
2
+ import { WarehousingAdapter, WarehousingDirector } from '../core-index.js';
3
+ export default function registerPhysicalWarehouse({ adapterId, orderIndex = 0, stock, productionTime, commissioningTime, }) {
4
+ WarehousingDirector.registerAdapter({
5
+ ...WarehousingAdapter,
6
+ key: 'shop.unchained.warehousing.physical.' + adapterId,
7
+ label: 'Physical Warehousing: ' + adapterId,
8
+ version: '1.0.0',
9
+ orderIndex,
10
+ initialConfiguration: [{ key: 'shipping-hub', value: 'Shipping Hub' }],
11
+ typeSupported: (type) => {
12
+ return type === WarehousingProviderType.PHYSICAL;
13
+ },
14
+ actions: (configuration, context) => {
15
+ return {
16
+ ...WarehousingAdapter.actions(configuration, context),
17
+ isActive() {
18
+ return true;
19
+ },
20
+ configurationError() {
21
+ return null;
22
+ },
23
+ stock: async (referenceDate) => {
24
+ if (typeof stock === 'number') {
25
+ return stock;
26
+ }
27
+ else if (typeof stock === 'function') {
28
+ return stock(referenceDate, configuration, context);
29
+ }
30
+ return 99999;
31
+ },
32
+ productionTime: async (quantityToProduct) => {
33
+ if (typeof productionTime === 'number') {
34
+ return productionTime;
35
+ }
36
+ else if (typeof productionTime === 'function') {
37
+ return productionTime(quantityToProduct, configuration, context);
38
+ }
39
+ return 0;
40
+ },
41
+ commissioningTime: async (quantity) => {
42
+ if (typeof commissioningTime === 'number') {
43
+ return commissioningTime;
44
+ }
45
+ else if (typeof commissioningTime === 'function') {
46
+ return commissioningTime(quantity, configuration, context);
47
+ }
48
+ return 0;
49
+ },
50
+ };
51
+ },
52
+ });
53
+ }
54
+ //# sourceMappingURL=registerPhysicalWarehouse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerPhysicalWarehouse.js","sourceRoot":"","sources":["../../src/factory/registerPhysicalWarehouse.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAE,kBAAkB,EAAsB,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE/F,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAChD,SAAS,EACT,UAAU,GAAG,CAAC,EACd,KAAK,EACL,cAAc,EACd,iBAAiB,GA2BlB;IACC,mBAAmB,CAAC,eAAe,CAAC;QAClC,GAAG,kBAAkB;QAErB,GAAG,EAAE,sCAAsC,GAAG,SAAS;QACvD,KAAK,EAAE,wBAAwB,GAAG,SAAS;QAC3C,OAAO,EAAE,OAAO;QAChB,UAAU;QAEV,oBAAoB,EAAE,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;QAEtE,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;YACtB,OAAO,IAAI,KAAK,uBAAuB,CAAC,QAAQ,CAAC;QACnD,CAAC;QAED,OAAO,EAAE,CAAC,aAAa,EAAE,OAAO,EAAE,EAAE;YAClC,OAAO;gBACL,GAAG,kBAAkB,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC;gBAErD,QAAQ;oBACN,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,kBAAkB;oBAChB,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;oBAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9B,OAAO,KAAK,CAAC;oBACf,CAAC;yBAAM,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;wBACvC,OAAO,KAAK,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBACtD,CAAC;oBACD,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,cAAc,EAAE,KAAK,EAAE,iBAAyB,EAAE,EAAE;oBAClD,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;wBACvC,OAAO,cAAc,CAAC;oBACxB,CAAC;yBAAM,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;wBAChD,OAAO,cAAc,CAAC,iBAAiB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBACnE,CAAC;oBACD,OAAO,CAAC,CAAC;gBACX,CAAC;gBAED,iBAAiB,EAAE,KAAK,EAAE,QAAgB,EAAE,EAAE;oBAC5C,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE,CAAC;wBAC1C,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;yBAAM,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE,CAAC;wBACnD,OAAO,iBAAiB,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBAC7D,CAAC;oBACD,OAAO,CAAC,CAAC;gBACX,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { WarehousingConfiguration } from '@unchainedshop/core-warehousing';
2
+ import { WarehousingContext } from '../core-index.js';
3
+ export default function registerPhysicalWarehousing({ adapterId, orderIndex, stock, productionTime, commissioningTime, }: {
4
+ adapterId: string;
5
+ orderIndex?: number;
6
+ stock?: number | ((referenceDate: Date, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<number>);
7
+ productionTime?: number | ((quantityToProduct: number, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<number>);
8
+ commissioningTime?: number | ((quantity: number, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<number>);
9
+ }): void;
10
+ //# sourceMappingURL=registerPhysicalWarehousing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerPhysicalWarehousing.d.ts","sourceRoot":"","sources":["../../src/factory/registerPhysicalWarehousing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAA2B,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAsB,kBAAkB,EAAuB,MAAM,kBAAkB,CAAC;AAE/F,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,EAClD,SAAS,EACT,UAAc,EACd,KAAK,EACL,cAAc,EACd,iBAAiB,GAClB,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EACF,MAAM,GACN,CAAC,CACC,aAAa,EAAE,IAAI,EACnB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1B,cAAc,CAAC,EACX,MAAM,GACN,CAAC,CACC,iBAAiB,EAAE,MAAM,EACzB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1B,iBAAiB,CAAC,EACd,MAAM,GACN,CAAC,CACC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;CAC3B,QAwDA"}
@@ -0,0 +1,54 @@
1
+ import { WarehousingProviderType } from '@unchainedshop/core-warehousing';
2
+ import { WarehousingAdapter, WarehousingDirector } from '../core-index.js';
3
+ export default function registerPhysicalWarehousing({ adapterId, orderIndex = 0, stock, productionTime, commissioningTime, }) {
4
+ WarehousingDirector.registerAdapter({
5
+ ...WarehousingAdapter,
6
+ key: 'shop.unchained.warehousing.physical.' + adapterId,
7
+ label: 'Physical Warehousing: ' + adapterId,
8
+ version: '1.0.0',
9
+ orderIndex,
10
+ initialConfiguration: [{ key: 'shipping-hub', value: 'Shipping Hub' }],
11
+ typeSupported: (type) => {
12
+ return type === WarehousingProviderType.PHYSICAL;
13
+ },
14
+ actions: (configuration, context) => {
15
+ return {
16
+ ...WarehousingAdapter.actions(configuration, context),
17
+ isActive() {
18
+ return true;
19
+ },
20
+ configurationError() {
21
+ return null;
22
+ },
23
+ stock: async (referenceDate) => {
24
+ if (typeof stock === 'number') {
25
+ return stock;
26
+ }
27
+ else if (typeof stock === 'function') {
28
+ return stock(referenceDate, configuration, context);
29
+ }
30
+ return 99999;
31
+ },
32
+ productionTime: async (quantityToProduct) => {
33
+ if (typeof productionTime === 'number') {
34
+ return productionTime;
35
+ }
36
+ else if (typeof productionTime === 'function') {
37
+ return productionTime(quantityToProduct, configuration, context);
38
+ }
39
+ return 0;
40
+ },
41
+ commissioningTime: async (quantity) => {
42
+ if (typeof commissioningTime === 'number') {
43
+ return commissioningTime;
44
+ }
45
+ else if (typeof commissioningTime === 'function') {
46
+ return commissioningTime(quantity, configuration, context);
47
+ }
48
+ return 0;
49
+ },
50
+ };
51
+ },
52
+ });
53
+ }
54
+ //# sourceMappingURL=registerPhysicalWarehousing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerPhysicalWarehousing.js","sourceRoot":"","sources":["../../src/factory/registerPhysicalWarehousing.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAE,kBAAkB,EAAsB,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE/F,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,EAClD,SAAS,EACT,UAAU,GAAG,CAAC,EACd,KAAK,EACL,cAAc,EACd,iBAAiB,GA2BlB;IACC,mBAAmB,CAAC,eAAe,CAAC;QAClC,GAAG,kBAAkB;QAErB,GAAG,EAAE,sCAAsC,GAAG,SAAS;QACvD,KAAK,EAAE,wBAAwB,GAAG,SAAS;QAC3C,OAAO,EAAE,OAAO;QAChB,UAAU;QAEV,oBAAoB,EAAE,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;QAEtE,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;YACtB,OAAO,IAAI,KAAK,uBAAuB,CAAC,QAAQ,CAAC;QACnD,CAAC;QAED,OAAO,EAAE,CAAC,aAAa,EAAE,OAAO,EAAE,EAAE;YAClC,OAAO;gBACL,GAAG,kBAAkB,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC;gBAErD,QAAQ;oBACN,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,kBAAkB;oBAChB,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;oBAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9B,OAAO,KAAK,CAAC;oBACf,CAAC;yBAAM,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;wBACvC,OAAO,KAAK,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBACtD,CAAC;oBACD,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,cAAc,EAAE,KAAK,EAAE,iBAAyB,EAAE,EAAE;oBAClD,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;wBACvC,OAAO,cAAc,CAAC;oBACxB,CAAC;yBAAM,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;wBAChD,OAAO,cAAc,CAAC,iBAAiB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBACnE,CAAC;oBACD,OAAO,CAAC,CAAC;gBACX,CAAC;gBAED,iBAAiB,EAAE,KAAK,EAAE,QAAgB,EAAE,EAAE;oBAC5C,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE,CAAC;wBAC1C,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;yBAAM,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE,CAAC;wBACnD,OAAO,iBAAiB,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBAC7D,CAAC;oBACD,OAAO,CAAC,CAAC;gBACX,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { DeliveryConfiguration, DeliveryLocation } from '@unchainedshop/core-delivery';
2
+ import { DeliveryContext } from '../core-index.js';
3
+ import { Work } from '@unchainedshop/core-worker';
4
+ export default function registerPickUpDelivery({ adapterId, locations, active, autoReleaseAllowed, estimatedDeliveryThroughput, send, }: {
5
+ adapterId: string;
6
+ active?: boolean;
7
+ autoReleaseAllowed?: boolean;
8
+ estimatedDeliveryThroughput?: (warehousingThroughputTime: number, context: DeliveryContext) => Promise<number | null>;
9
+ send: boolean | ((configuration: DeliveryConfiguration, context: DeliveryContext) => Promise<boolean | Work>);
10
+ locations: DeliveryLocation[] | ((context: DeliveryContext) => Promise<DeliveryLocation[]>);
11
+ }): void;
12
+ //# sourceMappingURL=registerPickUpDelivery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerPickUpDelivery.d.ts","sourceRoot":"","sources":["../../src/factory/registerPickUpDelivery.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAEjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAmB,eAAe,EAAoB,MAAM,kBAAkB,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAElD,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAC7C,SAAS,EACT,SAAS,EACT,MAAM,EACN,kBAAkB,EAClB,2BAA2B,EAC3B,IAAI,GACL,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,2BAA2B,CAAC,EAAE,CAC5B,yBAAyB,EAAE,MAAM,EACjC,OAAO,EAAE,eAAe,KACrB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5B,IAAI,EACA,OAAO,GACP,CAAC,CAAC,aAAa,EAAE,qBAAqB,EAAE,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC;IAClG,SAAS,EAAE,gBAAgB,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;CAC7F,QAqDA"}
@@ -0,0 +1,46 @@
1
+ import { DeliveryProviderType, } from '@unchainedshop/core-delivery';
2
+ import { DeliveryAdapter, DeliveryDirector } from '../core-index.js';
3
+ export default function registerPickUpDelivery({ adapterId, locations, active, autoReleaseAllowed, estimatedDeliveryThroughput, send, }) {
4
+ DeliveryDirector.registerAdapter({
5
+ ...DeliveryAdapter,
6
+ key: `shop.unchained.delivery.pickup-${adapterId}`,
7
+ label: 'PickUp Delivery: ' + adapterId,
8
+ version: '1.0.0',
9
+ initialConfiguration: [],
10
+ typeSupported: (type) => {
11
+ return type === DeliveryProviderType.PICKUP;
12
+ },
13
+ actions: (config, context) => {
14
+ return {
15
+ ...DeliveryAdapter.actions(config, context),
16
+ isActive: () => {
17
+ return active ?? true;
18
+ },
19
+ isAutoReleaseAllowed: () => {
20
+ return autoReleaseAllowed ?? true;
21
+ },
22
+ configurationError: () => {
23
+ return null;
24
+ },
25
+ pickUpLocationById: async (id) => {
26
+ const result = typeof locations === 'function' ? await locations(context) : locations;
27
+ return result.find((location) => location._id === id) || null;
28
+ },
29
+ pickUpLocations: async () => {
30
+ const result = typeof locations === 'function' ? await locations(context) : locations;
31
+ return result;
32
+ },
33
+ estimatedDeliveryThroughput: async (warehousingThroughputTime) => {
34
+ if (estimatedDeliveryThroughput) {
35
+ return estimatedDeliveryThroughput(warehousingThroughputTime, context);
36
+ }
37
+ return 0;
38
+ },
39
+ send: async () => {
40
+ return typeof send === 'function' ? await send(config, context) : send;
41
+ },
42
+ };
43
+ },
44
+ });
45
+ }
46
+ //# sourceMappingURL=registerPickUpDelivery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerPickUpDelivery.js","sourceRoot":"","sources":["../../src/factory/registerPickUpDelivery.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,eAAe,EAAmB,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGtF,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAC7C,SAAS,EACT,SAAS,EACT,MAAM,EACN,kBAAkB,EAClB,2BAA2B,EAC3B,IAAI,GAaL;IACC,gBAAgB,CAAC,eAAe,CAAC;QAC/B,GAAG,eAAe;QAElB,GAAG,EAAE,kCAAkC,SAAS,EAAE;QAClD,KAAK,EAAE,mBAAmB,GAAG,SAAS;QACtC,OAAO,EAAE,OAAO;QAEhB,oBAAoB,EAAE,EAAE;QAExB,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;YACtB,OAAO,IAAI,KAAK,oBAAoB,CAAC,MAAM,CAAC;QAC9C,CAAC;QAED,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;YAC3B,OAAO;gBACL,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC;gBAE3C,QAAQ,EAAE,GAAG,EAAE;oBACb,OAAO,MAAM,IAAI,IAAI,CAAC;gBACxB,CAAC;gBAED,oBAAoB,EAAE,GAAG,EAAE;oBACzB,OAAO,kBAAkB,IAAI,IAAI,CAAC;gBACpC,CAAC;gBAED,kBAAkB,EAAE,GAAG,EAAE;oBACvB,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,kBAAkB,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;oBAC/B,MAAM,MAAM,GAAG,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBACtF,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC;gBAChE,CAAC;gBAED,eAAe,EAAE,KAAK,IAAI,EAAE;oBAC1B,MAAM,MAAM,GAAG,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBACtF,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAED,2BAA2B,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE;oBAC/D,IAAI,2BAA2B,EAAE,CAAC;wBAChC,OAAO,2BAA2B,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;oBACzE,CAAC;oBACD,OAAO,CAAC,CAAC;gBACX,CAAC;gBAED,IAAI,EAAE,KAAK,IAAI,EAAE;oBACf,OAAO,OAAO,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACzE,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -3,7 +3,7 @@ export default function registerProductDiscoverabilityFilter({ orderIndex = 0, h
3
3
  FilterDirector.registerAdapter({
4
4
  ...FilterAdapter,
5
5
  key: `shop.unchained.filters.product-discoverability-${crypto.randomUUID()}`,
6
- label: 'Product Discoverability Filter',
6
+ label: 'Product Discoverability Filter (auto-generated)',
7
7
  version: '1.0.0',
8
8
  orderIndex,
9
9
  actions: (params) => {
@@ -1 +1 @@
1
- {"version":3,"file":"registerProductDiscoverabilityFilter.js","sourceRoot":"","sources":["../../src/factory/registerProductDiscoverabilityFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEjE,MAAM,CAAC,OAAO,UAAU,oCAAoC,CAAC,EAC3D,UAAU,GAAG,CAAC,EACd,cAAc,GAAG,QAAQ,GAI1B;IACC,cAAc,CAAC,eAAe,CAAC;QAC7B,GAAG,aAAa;QAEhB,GAAG,EAAE,kDAAkD,MAAM,CAAC,UAAU,EAAE,EAAE;QAC5E,KAAK,EAAE,gCAAgC;QACvC,OAAO,EAAE,OAAO;QAChB,UAAU;QAEV,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;YAClB,OAAO;gBACL,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;gBAEhC,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE;oBACxD,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;oBAE9B,IAAI,CAAC,GAAG,EAAE,CAAC;wBACT,MAAM,WAAW,GAAG,EAAE,GAAG,YAAY,EAAE,CAAC;wBACxC,IAAI,CAAC,WAAW,CAAC,IAAI;4BAAE,WAAW,CAAC,IAAI,GAAG,EAAE,CAAC;wBAC7C,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;wBACzD,OAAO,WAAW,CAAC;oBACrB,CAAC;oBACD,OAAO,YAAY,CAAC;gBACtB,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"registerProductDiscoverabilityFilter.js","sourceRoot":"","sources":["../../src/factory/registerProductDiscoverabilityFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEjE,MAAM,CAAC,OAAO,UAAU,oCAAoC,CAAC,EAC3D,UAAU,GAAG,CAAC,EACd,cAAc,GAAG,QAAQ,GAI1B;IACC,cAAc,CAAC,eAAe,CAAC;QAC7B,GAAG,aAAa;QAEhB,GAAG,EAAE,kDAAkD,MAAM,CAAC,UAAU,EAAE,EAAE;QAC5E,KAAK,EAAE,iDAAiD;QACxD,OAAO,EAAE,OAAO;QAChB,UAAU;QAEV,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;YAClB,OAAO;gBACL,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;gBAEhC,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE;oBACxD,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;oBAE9B,IAAI,CAAC,GAAG,EAAE,CAAC;wBACT,MAAM,WAAW,GAAG,EAAE,GAAG,YAAY,EAAE,CAAC;wBACxC,IAAI,CAAC,WAAW,CAAC,IAAI;4BAAE,WAAW,CAAC,IAAI,GAAG,EAAE,CAAC;wBAC7C,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;wBACzD,OAAO,WAAW,CAAC;oBACrB,CAAC;oBACD,OAAO,YAAY,CAAC;gBACtB,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { SearchQuery } from '@unchainedshop/core-filters';
2
+ export default function registerProductSearchFilter({ orderIndex, search, }: {
3
+ orderIndex?: number;
4
+ search: (params: SearchQuery & {
5
+ queryString: string;
6
+ locale: Intl.Locale;
7
+ }) => Promise<string[]>;
8
+ }): void;
9
+ //# sourceMappingURL=registerProductSearchFilter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerProductSearchFilter.d.ts","sourceRoot":"","sources":["../../src/factory/registerProductSearchFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG1D,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,EAClD,UAAc,EACd,MAAM,GACP,EAAE;IACD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,GAAG;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACnG,QA0BA"}
@@ -0,0 +1,24 @@
1
+ import { FilterAdapter, FilterDirector } from '../core-index.js';
2
+ export default function registerProductSearchFilter({ orderIndex = 0, search, }) {
3
+ FilterDirector.registerAdapter({
4
+ ...FilterAdapter,
5
+ key: `shop.unchained.filters.product-search-${crypto.randomUUID()}`,
6
+ label: 'Product Search Filter (auto-generated)',
7
+ version: '1.0.0',
8
+ orderIndex,
9
+ actions: (params) => {
10
+ return {
11
+ ...FilterAdapter.actions(params),
12
+ async searchProducts({ productIds }, { locale }) {
13
+ const { queryString, ...rest } = params.searchQuery;
14
+ if (!queryString)
15
+ return productIds;
16
+ const restrictedProductIds = new Set(productIds || []);
17
+ const foundProductIds = await search({ ...rest, queryString, locale });
18
+ return foundProductIds.filter(restrictedProductIds.size === 0 ? Boolean : (id) => restrictedProductIds.has(id));
19
+ },
20
+ };
21
+ },
22
+ });
23
+ }
24
+ //# sourceMappingURL=registerProductSearchFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerProductSearchFilter.js","sourceRoot":"","sources":["../../src/factory/registerProductSearchFilter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEjE,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,EAClD,UAAU,GAAG,CAAC,EACd,MAAM,GAIP;IACC,cAAc,CAAC,eAAe,CAAC;QAC7B,GAAG,aAAa;QAEhB,GAAG,EAAE,yCAAyC,MAAM,CAAC,UAAU,EAAE,EAAE;QACnE,KAAK,EAAE,wCAAwC;QAC/C,OAAO,EAAE,OAAO;QAChB,UAAU;QAEV,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;YAClB,OAAO;gBACL,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;gBAEhC,KAAK,CAAC,cAAc,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE;oBAC7C,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;oBACpD,IAAI,CAAC,WAAW;wBAAE,OAAO,UAAU,CAAC;oBAEpC,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;oBACvD,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;oBACvE,OAAO,eAAe,CAAC,MAAM,CAC3B,oBAAoB,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CACjF,CAAC;gBACJ,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { DeliveryConfiguration } from '@unchainedshop/core-delivery';
2
+ import { DeliveryContext } from '../core-index.js';
3
+ import { Work } from '@unchainedshop/core-worker';
4
+ export default function registerShippingDelivery({ adapterId, active, autoReleaseAllowed, estimatedDeliveryThroughput, send, }: {
5
+ adapterId: string;
6
+ active?: boolean;
7
+ autoReleaseAllowed?: boolean;
8
+ estimatedDeliveryThroughput?: (warehousingThroughputTime: number, context: DeliveryContext) => Promise<number | null>;
9
+ send: boolean | ((configuration: DeliveryConfiguration, context: DeliveryContext) => Promise<boolean | Work>);
10
+ }): void;
11
+ //# sourceMappingURL=registerShippingDelivery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerShippingDelivery.d.ts","sourceRoot":"","sources":["../../src/factory/registerShippingDelivery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAwB,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAmB,eAAe,EAAoB,MAAM,kBAAkB,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAElD,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAAC,EAC/C,SAAS,EACT,MAAM,EACN,kBAAkB,EAClB,2BAA2B,EAC3B,IAAI,GACL,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,2BAA2B,CAAC,EAAE,CAC5B,yBAAyB,EAAE,MAAM,EACjC,OAAO,EAAE,eAAe,KACrB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5B,IAAI,EACA,OAAO,GACP,CAAC,CAAC,aAAa,EAAE,qBAAqB,EAAE,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC;CACnG,QA2CA"}
@@ -0,0 +1,38 @@
1
+ import { DeliveryProviderType } from '@unchainedshop/core-delivery';
2
+ import { DeliveryAdapter, DeliveryDirector } from '../core-index.js';
3
+ export default function registerShippingDelivery({ adapterId, active, autoReleaseAllowed, estimatedDeliveryThroughput, send, }) {
4
+ DeliveryDirector.registerAdapter({
5
+ ...DeliveryAdapter,
6
+ key: `shop.unchained.delivery.shipping-${adapterId}`,
7
+ label: 'Shipping Delivery: ' + adapterId,
8
+ version: '1.0.0',
9
+ initialConfiguration: [],
10
+ typeSupported: (type) => {
11
+ return type === DeliveryProviderType.SHIPPING;
12
+ },
13
+ actions: (config, context) => {
14
+ return {
15
+ ...DeliveryAdapter.actions(config, context),
16
+ isActive: () => {
17
+ return active ?? true;
18
+ },
19
+ isAutoReleaseAllowed: () => {
20
+ return autoReleaseAllowed ?? true;
21
+ },
22
+ configurationError: () => {
23
+ return null;
24
+ },
25
+ estimatedDeliveryThroughput: async (warehousingThroughputTime) => {
26
+ if (estimatedDeliveryThroughput) {
27
+ return estimatedDeliveryThroughput(warehousingThroughputTime, context);
28
+ }
29
+ return 0;
30
+ },
31
+ send: async () => {
32
+ return typeof send === 'function' ? await send(config, context) : send;
33
+ },
34
+ };
35
+ },
36
+ });
37
+ }
38
+ //# sourceMappingURL=registerShippingDelivery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerShippingDelivery.js","sourceRoot":"","sources":["../../src/factory/registerShippingDelivery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAmB,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGtF,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAAC,EAC/C,SAAS,EACT,MAAM,EACN,kBAAkB,EAClB,2BAA2B,EAC3B,IAAI,GAYL;IACC,gBAAgB,CAAC,eAAe,CAAC;QAC/B,GAAG,eAAe;QAElB,GAAG,EAAE,oCAAoC,SAAS,EAAE;QACpD,KAAK,EAAE,qBAAqB,GAAG,SAAS;QACxC,OAAO,EAAE,OAAO;QAEhB,oBAAoB,EAAE,EAAE;QAExB,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;YACtB,OAAO,IAAI,KAAK,oBAAoB,CAAC,QAAQ,CAAC;QAChD,CAAC;QAED,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;YAC3B,OAAO;gBACL,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC;gBAE3C,QAAQ,EAAE,GAAG,EAAE;oBACb,OAAO,MAAM,IAAI,IAAI,CAAC;gBACxB,CAAC;gBAED,oBAAoB,EAAE,GAAG,EAAE;oBACzB,OAAO,kBAAkB,IAAI,IAAI,CAAC;gBACpC,CAAC;gBAED,kBAAkB,EAAE,GAAG,EAAE;oBACvB,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,2BAA2B,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE;oBAC/D,IAAI,2BAA2B,EAAE,CAAC;wBAChC,OAAO,2BAA2B,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;oBACzE,CAAC;oBACD,OAAO,CAAC,CAAC;gBACX,CAAC;gBAED,IAAI,EAAE,KAAK,IAAI,EAAE;oBACf,OAAO,OAAO,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACzE,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { TokenSurrogate, WarehousingConfiguration } from '@unchainedshop/core-warehousing';
2
+ import { WarehousingContext } from '../core-index.js';
3
+ export default function registerVirtualWarehouse<Metadata = Record<string, any>>({ adapterId, orderIndex, stock, tokenize, tokenMetadata, isInvalidateable, }: {
4
+ adapterId: string;
5
+ orderIndex?: number;
6
+ stock?: number | ((referenceDate: Date, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<number>);
7
+ tokenize: (configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<Omit<TokenSurrogate, 'userId' | 'productId' | 'orderPositionId'>[]>;
8
+ tokenMetadata?: (serialNumber: string, referenceDate: Date, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<Metadata>;
9
+ isInvalidateable?: (serialNumber: string, referenceDate: Date, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise<boolean>;
10
+ }): void;
11
+ //# sourceMappingURL=registerVirtualWarehouse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerVirtualWarehouse.d.ts","sourceRoot":"","sources":["../../src/factory/registerVirtualWarehouse.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,wBAAwB,EAEzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAsB,kBAAkB,EAAuB,MAAM,kBAAkB,CAAC;AAE/F,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAC/E,SAAS,EACT,UAAc,EACd,KAAK,EACL,QAAQ,EACR,aAAa,EACb,gBAAgB,GACjB,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EACF,MAAM,GACN,CAAC,CACC,aAAa,EAAE,IAAI,EACnB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1B,QAAQ,EAAE,CACR,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,WAAW,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAEjF,aAAa,CAAC,EAAE,CACd,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,IAAI,EACnB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEvB,gBAAgB,CAAC,EAAE,CACjB,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,IAAI,EACnB,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,OAAO,CAAC,CAAC;CACvB,QAwDA"}