@one-commerce/sdk-core 1.17.0 → 1.19.0-alpha.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.
Files changed (38) hide show
  1. package/lib/bundles/bundle.esm.js +23 -2
  2. package/lib/bundles/bundle.esm.js.map +1 -1
  3. package/lib/bundles/bundle.esm.min.js +1 -1
  4. package/lib/bundles/bundle.esm.min.js.map +1 -1
  5. package/lib/bundles/bundle.umd.js +23 -2
  6. package/lib/bundles/bundle.umd.js.map +1 -1
  7. package/lib/bundles/bundle.umd.min.js +1 -1
  8. package/lib/bundles/bundle.umd.min.js.map +1 -1
  9. package/lib/cjs/backoffice/context.js +84 -0
  10. package/lib/cjs/backoffice/context.js.map +1 -0
  11. package/lib/cjs/{backofficeServices.js → backoffice/services.js} +2 -2
  12. package/lib/cjs/backoffice/services.js.map +1 -0
  13. package/lib/cjs/index.js +26 -16
  14. package/lib/cjs/index.js.map +1 -1
  15. package/lib/cjs/{shopServices.js → shop/services.js} +2 -2
  16. package/lib/cjs/shop/services.js.map +1 -0
  17. package/lib/esm/backoffice/context.js +31 -0
  18. package/lib/esm/backoffice/context.js.map +1 -0
  19. package/lib/esm/{backofficeServices.js → backoffice/services.js} +2 -2
  20. package/lib/esm/backoffice/services.js.map +1 -0
  21. package/lib/esm/index.js +12 -3
  22. package/lib/esm/index.js.map +1 -1
  23. package/lib/esm/{shopServices.js → shop/services.js} +2 -2
  24. package/lib/esm/shop/services.js.map +1 -0
  25. package/lib/types/backoffice/context.d.ts +13 -0
  26. package/lib/types/backoffice/context.d.ts.map +1 -0
  27. package/lib/types/{backofficeServices.d.ts → backoffice/services.d.ts} +2 -2
  28. package/lib/types/backoffice/services.d.ts.map +1 -0
  29. package/lib/types/index.d.ts +10 -2
  30. package/lib/types/index.d.ts.map +1 -1
  31. package/lib/types/{shopServices.d.ts → shop/services.d.ts} +2 -2
  32. package/lib/types/{shopServices.d.ts.map → shop/services.d.ts.map} +1 -1
  33. package/package.json +3 -3
  34. package/lib/cjs/backofficeServices.js.map +0 -1
  35. package/lib/cjs/shopServices.js.map +0 -1
  36. package/lib/esm/backofficeServices.js.map +0 -1
  37. package/lib/esm/shopServices.js.map +0 -1
  38. package/lib/types/backofficeServices.d.ts.map +0 -1
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.BackofficeUser = exports.BackofficeTenant = exports.BackofficePlugin = exports.BackofficeOrderpath = exports.BackofficeLayout = exports.BackofficeCustomer = exports.BackofficeCatalog = exports.BackofficeAuthorization = void 0;
9
9
 
10
- var _utils = require("./utils");
10
+ var _utils = require("../utils");
11
11
 
12
12
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
13
13
 
@@ -283,4 +283,4 @@ var BackofficePlugin = /*#__PURE__*/function (_BaseCallClass8) {
283
283
  }(_utils.BaseCallClass);
284
284
 
285
285
  exports.BackofficePlugin = BackofficePlugin;
286
- //# sourceMappingURL=backofficeServices.js.map
286
+ //# sourceMappingURL=services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/backoffice/services.ts"],"names":["BackofficeCatalog","call","id","BaseCallClass","BackofficeUser","BackofficeTenant","BackofficeOrderpath","BackofficeLayout","BackofficeAuthorization","BackofficeCustomer","BackofficePlugin"],"mappings":";;;;;;;;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;IAEaA,iB;;;;;;;;;;;;;;;;kEACG,S;;;;;;;WAEd,2BAA2C;AACzC,aAAO,KAAKC,IAAL,CAAU,iBAAV,CAAP;AACD;;;WACD,sBAAoBC,EAApB,EAAkD;AAChD,aAAO,KAAKD,IAAL,CAAU,cAAV,EAA0BC,EAA1B,CAAP;AACD;;;;EARoCC,oB;;;;IAW1BC,c;;;;;;;;;;;;;;;;mEACG,M;;;;;;;;;;;;;;EADoBD,oB;;;;IAQvBE,gB;;;;;;;;;;;;;;;;mEACG,Q;;;;;;;;;;;;EADsBF,oB;;;;IAOzBG,mB;;;;;;;;;;;;;;;;mEACG,W;;;;;;EADyBH,oB;;;;IAI5BI,gB;;;;;;;;;;;;;;;;mEACG,Q;;;;;;;;EADsBJ,oB;;;;IAKzBK,uB;;;;;;;;;;;;;;;;mEACG,e;;;;;;;WAEd,wBAAgC;AAC9B,aAAO,KAAKP,IAAL,CAAU,cAAV,CAAP;AACD;;;;EAL0CE,oB;;;;IAQhCM,kB;;;;;;;;;;;;;;;;mEACG,U;;;;;;;;;;EADwBN,oB;;;;IAM3BO,gB;;;;;;;;;;;;;;;;mEACG,Q;;;;;;;;;;;;EADsBP,oB","sourcesContent":["import {Backoffice} from \"@one-commerce/sdk-shared\";\n\nimport {BaseCallClass} from \"../utils\";\n\nexport class BackofficeCatalog extends BaseCallClass implements Backoffice.Catalog {\n serviceName = 'catalog'\n\n fetchCategories(): Promise<Array<unknown>> {\n return this.call('fetchCategories')\n }\n public fetchProduct(id: string): Promise<unknown> {\n return this.call('fetchProduct', id)\n }\n}\n\nexport class BackofficeUser extends BaseCallClass implements Backoffice.User {\n serviceName = 'user'\n email?: string;\n id!: string;\n name?: string;\n authorities!: Array<string>;\n}\n\nexport class BackofficeTenant extends BaseCallClass implements Backoffice.Tenant {\n serviceName = 'tenant'\n tenantKey?: string;\n language?: string;\n currency?: string;\n}\n\nexport class BackofficeOrderpath extends BaseCallClass implements Backoffice.Orderpath {\n serviceName = 'orderpath'\n}\n\nexport class BackofficeLayout extends BaseCallClass implements Backoffice.Layout {\n serviceName = 'layout'\n isAsideOpened!: boolean;\n}\n\nexport class BackofficeAuthorization extends BaseCallClass implements Backoffice.Authorization {\n serviceName = 'authorization'\n\n getAuthToken(): Promise<string> {\n return this.call('getAuthToken')\n }\n}\n\nexport class BackofficeCustomer extends BaseCallClass implements Backoffice.Customer {\n serviceName = 'customer'\n id?: string;\n name?: string;\n}\n\nexport class BackofficePlugin extends BaseCallClass implements Backoffice.Plugin {\n serviceName = 'plugin'\n id: string;\n srcUrl?: string;\n name?: string;\n}\n"],"file":"services.js"}
package/lib/cjs/index.js CHANGED
@@ -11,11 +11,11 @@ var _sdkShared = require("@one-commerce/sdk-shared");
11
11
 
12
12
  var _iframeChannel = _interopRequireDefault(require("iframe-channel"));
13
13
 
14
- var _backofficeServices = require("./backofficeServices");
14
+ var _services = require("./backoffice/services");
15
15
 
16
16
  var _events = _interopRequireDefault(require("./events"));
17
17
 
18
- var _shopServices = require("./shopServices");
18
+ var _services2 = require("./shop/services");
19
19
 
20
20
  var _utils = require("./utils");
21
21
 
@@ -94,6 +94,8 @@ var Sdk = /*#__PURE__*/function (_Events) {
94
94
 
95
95
  _defineProperty(_assertThisInitialized(_this), "instances", void 0);
96
96
 
97
+ _defineProperty(_assertThisInitialized(_this), "contextClass", void 0);
98
+
97
99
  _this.initializeServiceGetters();
98
100
 
99
101
  _this.origin = options.origin;
@@ -157,6 +159,11 @@ var Sdk = /*#__PURE__*/function (_Events) {
157
159
  }
158
160
 
159
161
  _createClass(Sdk, [{
162
+ key: "initializeContextClass",
163
+ value: function initializeContextClass() {
164
+ return new this.contextClass(this.callFunction.bind(this));
165
+ }
166
+ }, {
160
167
  key: "initializeServiceGetters",
161
168
  value: function initializeServiceGetters() {
162
169
  var _this2 = this;
@@ -216,6 +223,8 @@ var Sdk = /*#__PURE__*/function (_Events) {
216
223
  if (typeof options.autoheight !== 'undefined') {
217
224
  this.autoheight = options.autoheight;
218
225
  }
226
+
227
+ this.contextClass = options.context;
219
228
  }
220
229
  }
221
230
  }, {
@@ -308,14 +317,15 @@ var BackofficeSdk = /*#__PURE__*/function (_Sdk) {
308
317
  hash: '',
309
318
  query: {}
310
319
  },
311
- orderpath: new _backofficeServices.BackofficeOrderpath(_this5.callFunction.bind(_assertThisInitialized(_this5))),
312
- catalog: new _backofficeServices.BackofficeCatalog(_this5.callFunction.bind(_assertThisInitialized(_this5))),
313
- user: new _backofficeServices.BackofficeUser(_this5.callFunction.bind(_assertThisInitialized(_this5))),
314
- tenant: new _backofficeServices.BackofficeTenant(_this5.callFunction.bind(_assertThisInitialized(_this5))),
315
- layout: new _backofficeServices.BackofficeLayout(_this5.callFunction.bind(_assertThisInitialized(_this5))),
316
- authorization: new _backofficeServices.BackofficeAuthorization(_this5.callFunction.bind(_assertThisInitialized(_this5))),
317
- customer: new _backofficeServices.BackofficeCustomer(_this5.callFunction.bind(_assertThisInitialized(_this5))),
318
- plugin: new _backofficeServices.BackofficePlugin(_this5.callFunction.bind(_assertThisInitialized(_this5)))
320
+ orderpath: new _services.BackofficeOrderpath(_this5.callFunction.bind(_assertThisInitialized(_this5))),
321
+ catalog: new _services.BackofficeCatalog(_this5.callFunction.bind(_assertThisInitialized(_this5))),
322
+ user: new _services.BackofficeUser(_this5.callFunction.bind(_assertThisInitialized(_this5))),
323
+ tenant: new _services.BackofficeTenant(_this5.callFunction.bind(_assertThisInitialized(_this5))),
324
+ layout: new _services.BackofficeLayout(_this5.callFunction.bind(_assertThisInitialized(_this5))),
325
+ authorization: new _services.BackofficeAuthorization(_this5.callFunction.bind(_assertThisInitialized(_this5))),
326
+ customer: new _services.BackofficeCustomer(_this5.callFunction.bind(_assertThisInitialized(_this5))),
327
+ plugin: new _services.BackofficePlugin(_this5.callFunction.bind(_assertThisInitialized(_this5))),
328
+ context: _this5.initializeContextClass()
319
329
  });
320
330
 
321
331
  return _this5;
@@ -347,12 +357,12 @@ var ShopSdk = /*#__PURE__*/function (_Sdk2) {
347
357
  hash: '',
348
358
  query: {}
349
359
  },
350
- authorization: new _shopServices.ShopAuthorization(_this6.callFunction.bind(_assertThisInitialized(_this6))),
351
- cart: new _shopServices.ShopCart(_this6.callFunction.bind(_assertThisInitialized(_this6))),
352
- catalog: new _shopServices.ShopCatalog(_this6.callFunction.bind(_assertThisInitialized(_this6))),
353
- account: new _shopServices.ShopAccount(_this6.callFunction.bind(_assertThisInitialized(_this6))),
354
- utils: new _shopServices.ShopUtils(_this6.callFunction.bind(_assertThisInitialized(_this6))),
355
- config: new _shopServices.ShopConfig(_this6.callFunction.bind(_assertThisInitialized(_this6)))
360
+ authorization: new _services2.ShopAuthorization(_this6.callFunction.bind(_assertThisInitialized(_this6))),
361
+ cart: new _services2.ShopCart(_this6.callFunction.bind(_assertThisInitialized(_this6))),
362
+ catalog: new _services2.ShopCatalog(_this6.callFunction.bind(_assertThisInitialized(_this6))),
363
+ account: new _services2.ShopAccount(_this6.callFunction.bind(_assertThisInitialized(_this6))),
364
+ utils: new _services2.ShopUtils(_this6.callFunction.bind(_assertThisInitialized(_this6))),
365
+ config: new _services2.ShopConfig(_this6.callFunction.bind(_assertThisInitialized(_this6)))
356
366
  });
357
367
 
358
368
  return _this6;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"names":["SdkInternalEvents","SdkEvents","Sdk","options","initializeServiceGetters","origin","channel","Channel","targetOrigin","target","window","parent","subscribe","Message","INIT","payload","log","Object","entries","instances","forEach","key","value","BaseCallClass","update","attributesForKey","warn","emit","isInitialized","UPDATE","FRAME_HEIGHT_REQUEST","autoheight","sendFrameHeight","connect","then","initializeHeightObserver","setupOptions","keys","serviceName","defineProperty","get","body","document","html","documentElement","height","Math","max","scrollHeight","offsetHeight","clientHeight","postMessage","FRAME_HEIGHT_CHANGE","onMutationObserved","querySelector","config","attributes","attributeOldValue","characterData","characterDataOldValue","childList","subtree","heightMutationObserver","MutationObserver","observe","debug","service","fun","callId","METHOD_CALL","method","Promise","resolve","onChannelMessage","response","unsubscribe","METHOD_RESULT","result","event","NAVIGATION_PUSH","data","console","Events","BackofficeSdk","route","hash","query","orderpath","BackofficeOrderpath","callFunction","bind","catalog","BackofficeCatalog","user","BackofficeUser","tenant","BackofficeTenant","layout","BackofficeLayout","authorization","BackofficeAuthorization","customer","BackofficeCustomer","plugin","BackofficePlugin","ShopSdk","ShopAuthorization","cart","ShopCart","ShopCatalog","account","ShopAccount","utils","ShopUtils","ShopConfig"],"mappings":"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","sourcesContent":["import {Backoffice, Message, Route, Shop} from \"@one-commerce/sdk-shared\";\nimport Channel from \"iframe-channel\"\n\nimport {\n BackofficeAuthorization,\n BackofficeCatalog,\n BackofficeCustomer,\n BackofficeLayout,\n BackofficeOrderpath,\n BackofficePlugin,\n BackofficeTenant,\n BackofficeUser\n} from \"./backofficeServices\";\nimport Events from \"./events\";\nimport {\n ShopAccount, ShopAuthorization,\n ShopCart,\n ShopCatalog, ShopConfig, ShopUtils,\n} from \"./shopServices\";\nimport { BaseCallClass, generateCallId } from \"./utils\";\n\nenum SdkInternalEvents {\n INIT='INIT',\n UPDATE='UPDATE'\n}\nexport enum SdkEvents {\n INIT='INIT',\n UPDATE='UPDATE',\n}\nexport interface SdkOptions {\n debug?: boolean\n autoheight?: boolean\n origin: string\n}\n\ninterface NamedNavigationPayload {\n name: string\n params: any\n}\n\ninterface PathNavigationPayload {\n path: string\n params: any\n}\n\nabstract class Sdk<T> extends Events {\n private channel!: Channel;\n private static debug = false\n private autoheight = true\n private heightMutationObserver = null\n origin: string;\n isInitialized = false\n instances!: T;\n\n private static log(...data: any[]) {\n Sdk.debug && console.log('[SDK Core] ', ...data)\n }\n\n private static warn(...data: any[]) {\n console.warn('[SDK Core] ', ...data)\n }\n\n private initializeServiceGetters(): void {\n if (this.instances) {\n Object.keys(this.instances).forEach((serviceName: string) => {\n Object.defineProperty(this, serviceName, {\n get: () => {\n return this.isInitialized ? this.instances![serviceName as keyof T] : null\n }\n })\n })\n }\n }\n\n constructor(options: SdkOptions) {\n super()\n this.initializeServiceGetters()\n this.origin = options.origin\n this.channel = new Channel({\n targetOrigin: this.origin,\n target: window.parent,\n })\n this.channel.subscribe(Message.INIT, (payload: any) => {\n Sdk.log('Handling INIT message')\n Object.entries(this.instances!).forEach(([key, value]: [key: string, value: BaseCallClass | Record<string, any>]) => {\n if (value instanceof BaseCallClass) {\n value.update(payload)\n } else {\n const attributesForKey = payload[key]\n if (typeof attributesForKey !== 'undefined') {\n BaseCallClass.update(value as Record<string, any>, payload[key])\n } else {\n Sdk.warn(`Missing attributes for ${key} in `, payload)\n }\n }\n })\n Sdk.log('Emitting INIT with payload ', this.instances)\n this.emit(SdkInternalEvents.INIT, this.instances)\n this.isInitialized = true\n })\n this.channel.subscribe(Message.UPDATE, (payload: any) => {\n Sdk.log('Emitting UPDATE with payload ', payload)\n this.emit(SdkInternalEvents.UPDATE, payload)\n })\n this.channel.subscribe(Message.FRAME_HEIGHT_REQUEST, (payload: any) => {\n if (this.autoheight) {\n Sdk.log('Request for iframe height')\n this.sendFrameHeight()\n }\n })\n this.channel.connect().then(() => {\n Sdk.log('Connected with ONe SDK')\n if(this.autoheight) {\n this.initializeHeightObserver()\n }\n })\n this.setupOptions(options)\n Sdk.log('Initialized.')\n }\n\n private sendFrameHeight() {\n const body = document.body, html = document.documentElement;\n const height = Math.max(body.scrollHeight, body.offsetHeight,\n html.clientHeight, html.scrollHeight, html.offsetHeight);\n this.channel.postMessage(Message.FRAME_HEIGHT_CHANGE, height)\n }\n\n private initializeHeightObserver() {\n if (\"MutationObserver\" in window) {\n const onMutationObserved = () => {\n this.sendFrameHeight()\n }\n const target = document.querySelector('body'),\n config = {\n attributes: true,\n attributeOldValue: false,\n characterData: true,\n characterDataOldValue: false,\n childList: true,\n subtree: true\n }\n\n this.heightMutationObserver = new MutationObserver(onMutationObserved)\n\n Sdk.log('Create body MutationObserver')\n this.heightMutationObserver.observe(target, config)\n } else {\n Sdk.warn('MutationObserver not available. Auto-height functionality disabled.')\n }\n }\n\n private setupOptions(options?: SdkOptions) {\n if (options) {\n if (typeof options.debug !== 'undefined') {\n Sdk.debug = options.debug\n }\n if (typeof options.autoheight !== 'undefined') {\n this.autoheight = options.autoheight\n }\n }\n }\n protected callFunction(service: string, fun: string, ...payload: any) {\n const callId: string = generateCallId()\n if (this.isInitialized) {\n Sdk.log(`Call ID ${callId} for ${service}:${fun}`, payload)\n this.channel.postMessage(Message.METHOD_CALL, {\n callId,\n service,\n method: fun,\n payload: payload,\n })\n return new Promise((resolve) => {\n const onChannelMessage = (response: any) => {\n if (response.callId === callId) {\n this.channel.unsubscribe(Message.METHOD_RESULT, onChannelMessage)\n return resolve(response.result)\n }\n }\n this.channel.subscribe(Message.METHOD_RESULT, onChannelMessage)\n })\n }\n Sdk.log('SDK is not initialized!')\n return Promise.resolve(null)\n }\n\n public navigate(event: NamedNavigationPayload | PathNavigationPayload) {\n this.channel.postMessage(Message.NAVIGATION_PUSH, event)\n }\n\n}\n\nexport interface BackofficeInstances extends Backoffice.Api {\n route: Route,\n orderpath: BackofficeOrderpath,\n catalog: BackofficeCatalog,\n user: BackofficeUser,\n tenant: BackofficeTenant,\n layout: BackofficeLayout,\n authorization: BackofficeAuthorization,\n customer: BackofficeCustomer,\n plugin: BackofficePlugin\n}\n\nexport interface ShopInstances extends Shop.Api {\n authorization: ShopAuthorization,\n route: Route,\n cart: ShopCart,\n catalog: ShopCatalog,\n account: ShopAccount,\n utils: ShopUtils\n config: ShopConfig\n}\n\nexport class BackofficeSdk extends Sdk<BackofficeInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\n orderpath: new BackofficeOrderpath(this.callFunction.bind(this)),\n catalog: new BackofficeCatalog(this.callFunction.bind(this)),\n user: new BackofficeUser(this.callFunction.bind(this)),\n tenant: new BackofficeTenant(this.callFunction.bind(this)),\n layout: new BackofficeLayout(this.callFunction.bind(this)),\n authorization: new BackofficeAuthorization(this.callFunction.bind(this)),\n customer: new BackofficeCustomer(this.callFunction.bind(this)),\n plugin: new BackofficePlugin(this.callFunction.bind(this)),\n }\n}\n\nexport class ShopSdk extends Sdk<ShopInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\n authorization: new ShopAuthorization(this.callFunction.bind(this)),\n cart: new ShopCart(this.callFunction.bind(this)),\n catalog: new ShopCatalog(this.callFunction.bind(this)),\n account: new ShopAccount(this.callFunction.bind(this)),\n utils: new ShopUtils(this.callFunction.bind(this)),\n config: new ShopConfig(this.callFunction.bind(this))\n }\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/index.ts"],"names":["SdkInternalEvents","SdkEvents","Sdk","options","initializeServiceGetters","origin","channel","Channel","targetOrigin","target","window","parent","subscribe","Message","INIT","payload","log","Object","entries","instances","forEach","key","value","BaseCallClass","update","attributesForKey","warn","emit","isInitialized","UPDATE","FRAME_HEIGHT_REQUEST","autoheight","sendFrameHeight","connect","then","initializeHeightObserver","setupOptions","contextClass","callFunction","bind","keys","serviceName","defineProperty","get","body","document","html","documentElement","height","Math","max","scrollHeight","offsetHeight","clientHeight","postMessage","FRAME_HEIGHT_CHANGE","onMutationObserved","querySelector","config","attributes","attributeOldValue","characterData","characterDataOldValue","childList","subtree","heightMutationObserver","MutationObserver","observe","debug","context","service","fun","callId","METHOD_CALL","method","Promise","resolve","onChannelMessage","response","unsubscribe","METHOD_RESULT","result","event","NAVIGATION_PUSH","data","console","Events","BackofficeSdk","route","hash","query","orderpath","BackofficeOrderpath","catalog","BackofficeCatalog","user","BackofficeUser","tenant","BackofficeTenant","layout","BackofficeLayout","authorization","BackofficeAuthorization","customer","BackofficeCustomer","plugin","BackofficePlugin","initializeContextClass","ShopSdk","ShopAuthorization","cart","ShopCart","ShopCatalog","account","ShopAccount","utils","ShopUtils","ShopConfig"],"mappings":"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","sourcesContent":["import {\n Backoffice,\n Message,\n Route,\n Shop\n} from \"@one-commerce/sdk-shared\";\nimport Channel from \"iframe-channel\"\n\nimport {AvailableContext as BackofficeContext} from \"./backoffice/context\";\nimport {\n BackofficeAuthorization,\n BackofficeCatalog,\n BackofficeCustomer,\n BackofficeLayout,\n BackofficeOrderpath,\n BackofficePlugin,\n BackofficeTenant,\n BackofficeUser,\n} from \"./backoffice/services\";\nimport Events from \"./events\";\nimport {\n ShopAccount, ShopAuthorization,\n ShopCart,\n ShopCatalog, ShopConfig, ShopUtils,\n} from \"./shop/services\";\nimport { BaseCallClass, generateCallId } from \"./utils\";\n\nexport type AvailableContext = BackofficeContext\n\nenum SdkInternalEvents {\n INIT='INIT',\n UPDATE='UPDATE'\n}\nexport enum SdkEvents {\n INIT='INIT',\n UPDATE='UPDATE',\n}\nexport interface SdkOptions {\n debug?: boolean\n autoheight?: boolean\n origin: string,\n context?: Class<AvailableContext>;\n}\n\ninterface NamedNavigationPayload {\n name: string\n params: any\n}\n\ninterface PathNavigationPayload {\n path: string\n params: any\n}\n\nexport type Class<T = any> = new (...args: any[]) => T;\n\nabstract class Sdk<T> extends Events {\n private channel!: Channel;\n private static debug = false\n private autoheight = true\n private heightMutationObserver = null\n origin: string;\n isInitialized = false\n instances!: T;\n contextClass?: Class<AvailableContext>;\n\n private static log(...data: any[]) {\n Sdk.debug && console.log('[SDK Core] ', ...data)\n }\n\n private static warn(...data: any[]) {\n console.warn('[SDK Core] ', ...data)\n }\n\n public initializeContextClass(): AvailableContext {\n return new this.contextClass(this.callFunction.bind(this))\n }\n\n private initializeServiceGetters(): void {\n if (this.instances) {\n Object.keys(this.instances).forEach((serviceName: string) => {\n Object.defineProperty(this, serviceName, {\n get: () => {\n return this.isInitialized ? this.instances![serviceName as keyof T] : null\n }\n })\n })\n }\n }\n\n constructor(options: SdkOptions) {\n super()\n this.initializeServiceGetters()\n this.origin = options.origin\n this.channel = new Channel({\n targetOrigin: this.origin,\n target: window.parent,\n })\n this.channel.subscribe(Message.INIT, (payload: any) => {\n Sdk.log('Handling INIT message')\n Object.entries(this.instances!).forEach(([key, value]: [key: string, value: BaseCallClass | Record<string, any>]) => {\n if (value instanceof BaseCallClass) {\n value.update(payload)\n } else {\n const attributesForKey = payload[key]\n if (typeof attributesForKey !== 'undefined') {\n BaseCallClass.update(value as Record<string, any>, payload[key])\n } else {\n Sdk.warn(`Missing attributes for ${key} in `, payload)\n }\n }\n })\n Sdk.log('Emitting INIT with payload ', this.instances)\n this.emit(SdkInternalEvents.INIT, this.instances)\n this.isInitialized = true\n })\n this.channel.subscribe(Message.UPDATE, (payload: any) => {\n Sdk.log('Emitting UPDATE with payload ', payload)\n this.emit(SdkInternalEvents.UPDATE, payload)\n })\n this.channel.subscribe(Message.FRAME_HEIGHT_REQUEST, (payload: any) => {\n if (this.autoheight) {\n Sdk.log('Request for iframe height')\n this.sendFrameHeight()\n }\n })\n this.channel.connect().then(() => {\n Sdk.log('Connected with ONe SDK')\n if(this.autoheight) {\n this.initializeHeightObserver()\n }\n })\n this.setupOptions(options)\n Sdk.log('Initialized.')\n }\n\n private sendFrameHeight() {\n const body = document.body, html = document.documentElement;\n const height = Math.max(body.scrollHeight, body.offsetHeight,\n html.clientHeight, html.scrollHeight, html.offsetHeight);\n this.channel.postMessage(Message.FRAME_HEIGHT_CHANGE, height)\n }\n\n private initializeHeightObserver() {\n if (\"MutationObserver\" in window) {\n const onMutationObserved = () => {\n this.sendFrameHeight()\n }\n const target = document.querySelector('body'),\n config = {\n attributes: true,\n attributeOldValue: false,\n characterData: true,\n characterDataOldValue: false,\n childList: true,\n subtree: true\n }\n\n this.heightMutationObserver = new MutationObserver(onMutationObserved)\n\n Sdk.log('Create body MutationObserver')\n this.heightMutationObserver.observe(target, config)\n } else {\n Sdk.warn('MutationObserver not available. Auto-height functionality disabled.')\n }\n }\n\n private setupOptions(options?: SdkOptions) {\n if (options) {\n if (typeof options.debug !== 'undefined') {\n Sdk.debug = options.debug\n }\n if (typeof options.autoheight !== 'undefined') {\n this.autoheight = options.autoheight\n }\n this.contextClass = options.context\n }\n }\n protected callFunction(service: string, fun: string, ...payload: any) {\n const callId: string = generateCallId()\n if (this.isInitialized) {\n Sdk.log(`Call ID ${callId} for ${service}:${fun}`, payload)\n this.channel.postMessage(Message.METHOD_CALL, {\n callId,\n service,\n method: fun,\n payload: payload,\n })\n return new Promise((resolve) => {\n const onChannelMessage = (response: any) => {\n if (response.callId === callId) {\n this.channel.unsubscribe(Message.METHOD_RESULT, onChannelMessage)\n return resolve(response.result)\n }\n }\n this.channel.subscribe(Message.METHOD_RESULT, onChannelMessage)\n })\n }\n Sdk.log('SDK is not initialized!')\n return Promise.resolve(null)\n }\n\n public navigate(event: NamedNavigationPayload | PathNavigationPayload) {\n this.channel.postMessage(Message.NAVIGATION_PUSH, event)\n }\n\n}\n\nexport interface BackofficeInstances extends Backoffice.Api {\n route: Route,\n orderpath: BackofficeOrderpath,\n catalog: BackofficeCatalog,\n user: BackofficeUser,\n tenant: BackofficeTenant,\n layout: BackofficeLayout,\n authorization: BackofficeAuthorization,\n customer: BackofficeCustomer,\n plugin: BackofficePlugin,\n context: AvailableContext\n}\n\nexport interface ShopInstances extends Shop.Api {\n authorization: ShopAuthorization,\n route: Route,\n cart: ShopCart,\n catalog: ShopCatalog,\n account: ShopAccount,\n utils: ShopUtils\n config: ShopConfig\n}\n\nexport class BackofficeSdk extends Sdk<BackofficeInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\n orderpath: new BackofficeOrderpath(this.callFunction.bind(this)),\n catalog: new BackofficeCatalog(this.callFunction.bind(this)),\n user: new BackofficeUser(this.callFunction.bind(this)),\n tenant: new BackofficeTenant(this.callFunction.bind(this)),\n layout: new BackofficeLayout(this.callFunction.bind(this)),\n authorization: new BackofficeAuthorization(this.callFunction.bind(this)),\n customer: new BackofficeCustomer(this.callFunction.bind(this)),\n plugin: new BackofficePlugin(this.callFunction.bind(this)),\n context: this.initializeContextClass()\n }\n}\n\nexport class ShopSdk extends Sdk<ShopInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\n authorization: new ShopAuthorization(this.callFunction.bind(this)),\n cart: new ShopCart(this.callFunction.bind(this)),\n catalog: new ShopCatalog(this.callFunction.bind(this)),\n account: new ShopAccount(this.callFunction.bind(this)),\n utils: new ShopUtils(this.callFunction.bind(this)),\n config: new ShopConfig(this.callFunction.bind(this))\n }\n}\n"],"file":"index.js"}
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.ShopUtils = exports.ShopConfig = exports.ShopCatalog = exports.ShopCart = exports.ShopAuthorization = exports.ShopAccount = void 0;
9
9
 
10
- var _utils = require("./utils");
10
+ var _utils = require("../utils");
11
11
 
12
12
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
13
13
 
@@ -297,4 +297,4 @@ var ShopConfig = /*#__PURE__*/function (_BaseCallClass6) {
297
297
  }(_utils.BaseCallClass);
298
298
 
299
299
  exports.ShopConfig = ShopConfig;
300
- //# sourceMappingURL=shopServices.js.map
300
+ //# sourceMappingURL=services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/shop/services.ts"],"names":["ShopCatalog","productId","call","categoryId","BaseCallClass","ShopAccount","name","ShopCart","amount","where","cartId","ShopAuthorization","ShopUtils","routes","getCategoryPath","getManufacturerSearchUrl","getProductUrl","isExternalUrl","id","manufacturer","product","url","ShopConfig"],"mappings":";;;;;;;;;AACA;;;;;;;;;;;;;;;;;;;;;;;;IAGaA,W;;;;;;;;;;;;;;;;kEACG,S;;;;;;;;;;;WAId,sBAAaC,SAAb,EAA8C;AAC5C,aAAO,KAAKC,IAAL,CAAU,cAAV,EAA0BD,SAA1B,CAAP;AACD;;;WAED,yBAAgBE,UAAhB,EAAkD;AAChD,aAAO,KAAKD,IAAL,CAAU,iBAAV,EAA6BC,UAA7B,CAAP;AACD;;;;EAX8BC,oB;;;;IAgBpBC,W;;;;;;;;;;;;;;;;mEACG,S;;;;;;;;;;;;;;;WAoDd,oBAAWC,IAAX,EAA2C;AACzC,aAAO,KAAKJ,IAAL,CAAU,YAAV,EAAwBI,IAAxB,CAAP;AACD;;;WAWD,kBAAe,CACb;AACD;;;;EApE8BF,oB;;;;IAuEpBG,Q;;;;;;;;;;;;;;;;mEACG,M;;;;;;;;;;;;;WAKd,mBAAUN,SAAV,EAA6BO,MAA7B,EAA6CC,KAA7C,EAA4DC,MAA5D,EAA4F;AAC1F,aAAO,KAAKR,IAAL,CAAU,WAAV,EAAuBD,SAAvB,EAAkCO,MAAlC,EAA0CC,KAA1C,EAAiDC,MAAjD,CAAP;AACD;;;;EAR2BN,oB;;;;IAWjBO,iB;;;;;;;;;;;;;;;;mEACG,e;;;;;;;WAEd,wBAAgC;AAC9B,aAAO,KAAKT,IAAL,CAAU,cAAV,CAAP;AACD;;;;EALoCE,oB;;;;IAQ1BQ,S;;;;;AASX,qBAAYV,IAAZ,EAA+E;AAAA;;AAAA;;AAC7E,gCAAMA,IAAN;;AAD6E,mEARjE,OAQiE;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAE7E,WAAKW,MAAL,GAAc;AACZC,MAAAA,eAAe,EAAE,OAAKA,eADV;AAEZC,MAAAA,wBAAwB,EAAE,OAAKA,wBAFnB;AAGZC,MAAAA,aAAa,EAAE,OAAKA,aAHR;AAIZC,MAAAA,aAAa,EAAE,OAAKA;AAJR,KAAd;AAF6E;AAQ9E;;;;WAED,yBAAgBC,EAAhB,EAAqD;AACnD,aAAO,KAAKhB,IAAL,CAAU,iBAAV,EAA6BgB,EAA7B,CAAP;AACD;;;WAED,kCAAyBC,YAAzB,EAAgE;AAC9D,aAAO,KAAKjB,IAAL,CAAU,0BAAV,EAAsCiB,YAAtC,CAAP;AACD;;;WAED,uBAAcC,OAAd,EAAoD;AAClD,aAAO,KAAKlB,IAAL,CAAU,eAAV,EAA2BkB,OAA3B,CAAP;AACD;;;WAED,uBAAcC,GAAd,EAA6C;AAC3C,aAAO,KAAKnB,IAAL,CAAU,eAAV,EAA2BmB,GAA3B,CAAP;AACD;;;;EAjC4BjB,oB;;;;IAuDlBkB,U;;;;;;;;;;;;;;;;mEACG,Q;;;;;;;;;;;;;;;;;;;;;;;;EADgBlB,oB","sourcesContent":["import {Shop} from \"@one-commerce/sdk-shared\";\nimport {BaseCallClass} from \"../utils\";\n\n\nexport class ShopCatalog extends BaseCallClass implements Shop.Catalog {\n serviceName = 'catalog'\n categories!: Array<any>;\n selectedCategoryId!: string | null;\n\n fetchProduct(productId: string): Promise<any> {\n return this.call('fetchProduct', productId)\n }\n\n getCategoryById(categoryId: string): Promise<any> {\n return this.call('getCategoryById', categoryId)\n }\n\n\n}\n\nexport class ShopAccount extends BaseCallClass implements Shop.Account {\n serviceName = 'account'\n client!: {\n id: string;\n name: string;\n externalId?: string;\n tin?: string;\n phone?: string;\n segmentId?: string;\n segments: {\n additionalSegments?: Array<{\n id: string;\n name: string;\n externalId?: string;\n parentSegmentId?: string;\n }>;\n mainSegment: {\n id: string;\n name: string;\n externalId?: string;\n parentSegmentId?: string;\n };\n };\n warehouseId?: string;\n termPayment?: {\n id: string;\n label?: string;\n paymentDaysPeriod?: number;\n };\n isTaxPayer?: boolean;\n billingAddress?: {\n city: string;\n country: string;\n id: string;\n isDefault: boolean;\n name: string;\n phone: string;\n street: string;\n type: string;\n zipCode: string\n }\n };\n isAuthenticated!: boolean;\n user!: {\n email?: string;\n name?: string;\n phone?: string;\n /**\n * @deprecated Use non-nested function instead\n */\n hasSegment(name: string): Promise<boolean>\n };\n\n hasSegment(name: string): Promise<boolean> {\n return this.call('hasSegment', name)\n }\n\n manager!: {\n additionalEmail?: string;\n email: string; id: string;\n landlinePhone?: string;\n mobilePhone?: string;\n name: string;\n photo?: string\n };\n\n logout(): void {\n // NotImplementedYet\n }\n}\n\nexport class ShopCart extends BaseCallClass implements Shop.Cart {\n serviceName = 'cart'\n carts!: Array<any>;\n currentCart!: any;\n totalCartPrice!: number;\n\n addToCart(productId: string, amount: number, where: string, cartId?: string): Promise<void> {\n return this.call('addToCart', productId, amount, where, cartId)\n }\n}\n\nexport class ShopAuthorization extends BaseCallClass implements Shop.Authorization {\n serviceName = 'authorization'\n\n getAuthToken(): Promise<string> {\n return this.call('getAuthToken')\n }\n}\n\nexport class ShopUtils extends BaseCallClass implements Shop.Utils {\n serviceName = 'utils'\n currency!: any;\n isAnonymousAndPurchaseDisabled!: boolean;\n isB2B!: boolean;\n isB2BAndPlatformIsNotOpened!: boolean;\n isIndexPage!: boolean;\n isPurchaseEnabledOrAuthenticated!: boolean;\n\n constructor(call: (service: string, fun: string, ...arg: any) => Promise<any>) {\n super(call)\n this.routes = {\n getCategoryPath: this.getCategoryPath,\n getManufacturerSearchUrl: this.getManufacturerSearchUrl,\n getProductUrl: this.getProductUrl,\n isExternalUrl: this.isExternalUrl\n }\n }\n\n getCategoryPath(id?: string): Promise<string | null> {\n return this.call('getCategoryPath', id)\n }\n\n getManufacturerSearchUrl(manufacturer: string): Promise<string> {\n return this.call('getManufacturerSearchUrl', manufacturer)\n }\n\n getProductUrl(product: any): Promise<string | null> {\n return this.call('getProductUrl', product)\n }\n\n isExternalUrl(url: string): Promise<boolean> {\n return this.call('isExternalUrl', url)\n }\n\n routes: {\n /**\n * @deprecated Use non-nested function instead\n */\n getCategoryPath(id?: string): (Promise<string | null> | string | null);\n /**\n * @deprecated Use non-nested function instead\n */\n getManufacturerSearchUrl(manufacturer: string): (Promise<string> | string);\n /**\n * @deprecated Use non-nested function instead\n */\n getProductUrl(product: any): (Promise<string | null> | string | null);\n /**\n * @deprecated Use non-nested function instead\n */\n isExternalUrl(url: string): (Promise<boolean> | boolean)\n };\n}\n\nexport class ShopConfig extends BaseCallClass implements Shop.Config {\n serviceName = 'config'\n accessMode!: string;\n isB2CRegistrationEnabled!: boolean;\n isCatalogOpened!: boolean;\n isGrossSelected!: boolean;\n isPlatformClosed!: boolean;\n isPlatformOpened!: boolean;\n isPurchaseEnabled!: boolean;\n isRegistrationEnabled!: boolean;\n currency: any;\n}\n"],"file":"services.js"}
@@ -0,0 +1,31 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ import { Backoffice } from "@one-commerce/sdk-shared";
4
+ import { BaseCallClass } from "../utils";
5
+ export class AddToCartContext extends BaseCallClass {
6
+ constructor(...args) {
7
+ super(...args);
8
+
9
+ _defineProperty(this, "serviceName", Backoffice.Context.AvailableContext.ADD_TO_CART);
10
+
11
+ _defineProperty(this, "productId", void 0);
12
+
13
+ _defineProperty(this, "cartId", void 0);
14
+
15
+ _defineProperty(this, "warehouses", void 0);
16
+ }
17
+
18
+ closePlugin() {
19
+ return this.call('closePlugin');
20
+ }
21
+
22
+ closePluginAndAddToCart() {
23
+ return this.call('closePluginAndAddToCart');
24
+ }
25
+
26
+ closePluginAndRefreshCart() {
27
+ return this.call('closePluginAndRefreshCart');
28
+ }
29
+
30
+ }
31
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/backoffice/context.ts"],"names":["Backoffice","BaseCallClass","AddToCartContext","Context","AvailableContext","ADD_TO_CART","closePlugin","call","closePluginAndAddToCart","closePluginAndRefreshCart"],"mappings":";;AAAA,SAAQA,UAAR,QAAyB,0BAAzB;AACA,SAAQC,aAAR,QAA4B,UAA5B;AAEA,OAAO,MAAMC,gBAAN,SAA+BD,aAA/B,CAAqF;AAAA;AAAA;;AAAA,yCAC5ED,UAAU,CAACG,OAAX,CAAmBC,gBAAnB,CAAoCC,WADwC;;AAAA;;AAAA;;AAAA;AAAA;;AAK1FC,EAAAA,WAAW,GAAkB;AAC3B,WAAO,KAAKC,IAAL,CAAU,aAAV,CAAP;AACD;;AACDC,EAAAA,uBAAuB,GAAkB;AACvC,WAAO,KAAKD,IAAL,CAAU,yBAAV,CAAP;AACD;;AACDE,EAAAA,yBAAyB,GAAkB;AACzC,WAAO,KAAKF,IAAL,CAAU,2BAAV,CAAP;AACD;;AAbyF","sourcesContent":["import {Backoffice} from \"@one-commerce/sdk-shared\";\nimport {BaseCallClass} from \"../utils\";\n\nexport class AddToCartContext extends BaseCallClass implements Backoffice.Context.AddToCart {\n serviceName = Backoffice.Context.AvailableContext.ADD_TO_CART\n productId: string;\n cartId: string;\n warehouses: Array<any>;\n closePlugin(): Promise<void> {\n return this.call('closePlugin')\n }\n closePluginAndAddToCart(): Promise<void> {\n return this.call('closePluginAndAddToCart')\n }\n closePluginAndRefreshCart(): Promise<void> {\n return this.call('closePluginAndRefreshCart')\n }\n}\n\nexport type AvailableContext = AddToCartContext\n"],"file":"context.js"}
@@ -1,6 +1,6 @@
1
1
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
 
3
- import { BaseCallClass } from "./utils";
3
+ import { BaseCallClass } from "../utils";
4
4
  export class BackofficeCatalog extends BaseCallClass {
5
5
  constructor(...args) {
6
6
  super(...args);
@@ -103,4 +103,4 @@ export class BackofficePlugin extends BaseCallClass {
103
103
  }
104
104
 
105
105
  }
106
- //# sourceMappingURL=backofficeServices.js.map
106
+ //# sourceMappingURL=services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/backoffice/services.ts"],"names":["BaseCallClass","BackofficeCatalog","fetchCategories","call","fetchProduct","id","BackofficeUser","BackofficeTenant","BackofficeOrderpath","BackofficeLayout","BackofficeAuthorization","getAuthToken","BackofficeCustomer","BackofficePlugin"],"mappings":";;AAEA,SAAQA,aAAR,QAA4B,UAA5B;AAEA,OAAO,MAAMC,iBAAN,SAAgCD,aAAhC,CAA4E;AAAA;AAAA;;AAAA,yCACnE,SADmE;AAAA;;AAGjFE,EAAAA,eAAe,GAA4B;AACzC,WAAO,KAAKC,IAAL,CAAU,iBAAV,CAAP;AACD;;AACMC,EAAAA,YAAY,CAACC,EAAD,EAA+B;AAChD,WAAO,KAAKF,IAAL,CAAU,cAAV,EAA0BE,EAA1B,CAAP;AACD;;AARgF;AAWnF,OAAO,MAAMC,cAAN,SAA6BN,aAA7B,CAAsE;AAAA;AAAA;;AAAA,yCAC7D,MAD6D;;AAAA;;AAAA;;AAAA;;AAAA;AAAA;;AAAA;AAQ7E,OAAO,MAAMO,gBAAN,SAA+BP,aAA/B,CAA0E;AAAA;AAAA;;AAAA,yCACjE,QADiE;;AAAA;;AAAA;;AAAA;AAAA;;AAAA;AAOjF,OAAO,MAAMQ,mBAAN,SAAkCR,aAAlC,CAAgF;AAAA;AAAA;;AAAA,yCACvE,WADuE;AAAA;;AAAA;AAIvF,OAAO,MAAMS,gBAAN,SAA+BT,aAA/B,CAA0E;AAAA;AAAA;;AAAA,yCACjE,QADiE;;AAAA;AAAA;;AAAA;AAKjF,OAAO,MAAMU,uBAAN,SAAsCV,aAAtC,CAAwF;AAAA;AAAA;;AAAA,yCAC/E,eAD+E;AAAA;;AAG7FW,EAAAA,YAAY,GAAoB;AAC9B,WAAO,KAAKR,IAAL,CAAU,cAAV,CAAP;AACD;;AAL4F;AAQ/F,OAAO,MAAMS,kBAAN,SAAiCZ,aAAjC,CAA8E;AAAA;AAAA;;AAAA,yCACrE,UADqE;;AAAA;;AAAA;AAAA;;AAAA;AAMrF,OAAO,MAAMa,gBAAN,SAA+Bb,aAA/B,CAA0E;AAAA;AAAA;;AAAA,yCACjE,QADiE;;AAAA;;AAAA;;AAAA;AAAA;;AAAA","sourcesContent":["import {Backoffice} from \"@one-commerce/sdk-shared\";\n\nimport {BaseCallClass} from \"../utils\";\n\nexport class BackofficeCatalog extends BaseCallClass implements Backoffice.Catalog {\n serviceName = 'catalog'\n\n fetchCategories(): Promise<Array<unknown>> {\n return this.call('fetchCategories')\n }\n public fetchProduct(id: string): Promise<unknown> {\n return this.call('fetchProduct', id)\n }\n}\n\nexport class BackofficeUser extends BaseCallClass implements Backoffice.User {\n serviceName = 'user'\n email?: string;\n id!: string;\n name?: string;\n authorities!: Array<string>;\n}\n\nexport class BackofficeTenant extends BaseCallClass implements Backoffice.Tenant {\n serviceName = 'tenant'\n tenantKey?: string;\n language?: string;\n currency?: string;\n}\n\nexport class BackofficeOrderpath extends BaseCallClass implements Backoffice.Orderpath {\n serviceName = 'orderpath'\n}\n\nexport class BackofficeLayout extends BaseCallClass implements Backoffice.Layout {\n serviceName = 'layout'\n isAsideOpened!: boolean;\n}\n\nexport class BackofficeAuthorization extends BaseCallClass implements Backoffice.Authorization {\n serviceName = 'authorization'\n\n getAuthToken(): Promise<string> {\n return this.call('getAuthToken')\n }\n}\n\nexport class BackofficeCustomer extends BaseCallClass implements Backoffice.Customer {\n serviceName = 'customer'\n id?: string;\n name?: string;\n}\n\nexport class BackofficePlugin extends BaseCallClass implements Backoffice.Plugin {\n serviceName = 'plugin'\n id: string;\n srcUrl?: string;\n name?: string;\n}\n"],"file":"services.js"}
package/lib/esm/index.js CHANGED
@@ -2,9 +2,9 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
2
2
 
3
3
  import { Message } from "@one-commerce/sdk-shared";
4
4
  import Channel from "iframe-channel";
5
- import { BackofficeAuthorization, BackofficeCatalog, BackofficeCustomer, BackofficeLayout, BackofficeOrderpath, BackofficePlugin, BackofficeTenant, BackofficeUser } from "./backofficeServices";
5
+ import { BackofficeAuthorization, BackofficeCatalog, BackofficeCustomer, BackofficeLayout, BackofficeOrderpath, BackofficePlugin, BackofficeTenant, BackofficeUser } from "./backoffice/services";
6
6
  import Events from "./events";
7
- import { ShopAccount, ShopAuthorization, ShopCart, ShopCatalog, ShopConfig, ShopUtils } from "./shopServices";
7
+ import { ShopAccount, ShopAuthorization, ShopCart, ShopCatalog, ShopConfig, ShopUtils } from "./shop/services";
8
8
  import { BaseCallClass, generateCallId } from "./utils";
9
9
  var SdkInternalEvents;
10
10
 
@@ -29,6 +29,10 @@ class Sdk extends Events {
29
29
  console.warn('[SDK Core] ', ...data);
30
30
  }
31
31
 
32
+ initializeContextClass() {
33
+ return new this.contextClass(this.callFunction.bind(this));
34
+ }
35
+
32
36
  initializeServiceGetters() {
33
37
  if (this.instances) {
34
38
  Object.keys(this.instances).forEach(serviceName => {
@@ -56,6 +60,8 @@ class Sdk extends Events {
56
60
 
57
61
  _defineProperty(this, "instances", void 0);
58
62
 
63
+ _defineProperty(this, "contextClass", void 0);
64
+
59
65
  this.initializeServiceGetters();
60
66
  this.origin = options.origin;
61
67
  this.channel = new Channel({
@@ -141,6 +147,8 @@ class Sdk extends Events {
141
147
  if (typeof options.autoheight !== 'undefined') {
142
148
  this.autoheight = options.autoheight;
143
149
  }
150
+
151
+ this.contextClass = options.context;
144
152
  }
145
153
  }
146
154
 
@@ -195,7 +203,8 @@ export class BackofficeSdk extends Sdk {
195
203
  layout: new BackofficeLayout(this.callFunction.bind(this)),
196
204
  authorization: new BackofficeAuthorization(this.callFunction.bind(this)),
197
205
  customer: new BackofficeCustomer(this.callFunction.bind(this)),
198
- plugin: new BackofficePlugin(this.callFunction.bind(this))
206
+ plugin: new BackofficePlugin(this.callFunction.bind(this)),
207
+ context: this.initializeContextClass()
199
208
  });
200
209
  }
201
210
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"names":["Message","Channel","BackofficeAuthorization","BackofficeCatalog","BackofficeCustomer","BackofficeLayout","BackofficeOrderpath","BackofficePlugin","BackofficeTenant","BackofficeUser","Events","ShopAccount","ShopAuthorization","ShopCart","ShopCatalog","ShopConfig","ShopUtils","BaseCallClass","generateCallId","SdkInternalEvents","SdkEvents","Sdk","log","data","debug","console","warn","initializeServiceGetters","instances","Object","keys","forEach","serviceName","defineProperty","get","isInitialized","constructor","options","origin","channel","targetOrigin","target","window","parent","subscribe","INIT","payload","entries","key","value","update","attributesForKey","emit","UPDATE","FRAME_HEIGHT_REQUEST","autoheight","sendFrameHeight","connect","then","initializeHeightObserver","setupOptions","body","document","html","documentElement","height","Math","max","scrollHeight","offsetHeight","clientHeight","postMessage","FRAME_HEIGHT_CHANGE","onMutationObserved","querySelector","config","attributes","attributeOldValue","characterData","characterDataOldValue","childList","subtree","heightMutationObserver","MutationObserver","observe","callFunction","service","fun","callId","METHOD_CALL","method","Promise","resolve","onChannelMessage","response","unsubscribe","METHOD_RESULT","result","navigate","event","NAVIGATION_PUSH","BackofficeSdk","route","hash","query","orderpath","bind","catalog","user","tenant","layout","authorization","customer","plugin","ShopSdk","cart","account","utils"],"mappings":"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","sourcesContent":["import {Backoffice, Message, Route, Shop} from \"@one-commerce/sdk-shared\";\nimport Channel from \"iframe-channel\"\n\nimport {\n BackofficeAuthorization,\n BackofficeCatalog,\n BackofficeCustomer,\n BackofficeLayout,\n BackofficeOrderpath,\n BackofficePlugin,\n BackofficeTenant,\n BackofficeUser\n} from \"./backofficeServices\";\nimport Events from \"./events\";\nimport {\n ShopAccount, ShopAuthorization,\n ShopCart,\n ShopCatalog, ShopConfig, ShopUtils,\n} from \"./shopServices\";\nimport { BaseCallClass, generateCallId } from \"./utils\";\n\nenum SdkInternalEvents {\n INIT='INIT',\n UPDATE='UPDATE'\n}\nexport enum SdkEvents {\n INIT='INIT',\n UPDATE='UPDATE',\n}\nexport interface SdkOptions {\n debug?: boolean\n autoheight?: boolean\n origin: string\n}\n\ninterface NamedNavigationPayload {\n name: string\n params: any\n}\n\ninterface PathNavigationPayload {\n path: string\n params: any\n}\n\nabstract class Sdk<T> extends Events {\n private channel!: Channel;\n private static debug = false\n private autoheight = true\n private heightMutationObserver = null\n origin: string;\n isInitialized = false\n instances!: T;\n\n private static log(...data: any[]) {\n Sdk.debug && console.log('[SDK Core] ', ...data)\n }\n\n private static warn(...data: any[]) {\n console.warn('[SDK Core] ', ...data)\n }\n\n private initializeServiceGetters(): void {\n if (this.instances) {\n Object.keys(this.instances).forEach((serviceName: string) => {\n Object.defineProperty(this, serviceName, {\n get: () => {\n return this.isInitialized ? this.instances![serviceName as keyof T] : null\n }\n })\n })\n }\n }\n\n constructor(options: SdkOptions) {\n super()\n this.initializeServiceGetters()\n this.origin = options.origin\n this.channel = new Channel({\n targetOrigin: this.origin,\n target: window.parent,\n })\n this.channel.subscribe(Message.INIT, (payload: any) => {\n Sdk.log('Handling INIT message')\n Object.entries(this.instances!).forEach(([key, value]: [key: string, value: BaseCallClass | Record<string, any>]) => {\n if (value instanceof BaseCallClass) {\n value.update(payload)\n } else {\n const attributesForKey = payload[key]\n if (typeof attributesForKey !== 'undefined') {\n BaseCallClass.update(value as Record<string, any>, payload[key])\n } else {\n Sdk.warn(`Missing attributes for ${key} in `, payload)\n }\n }\n })\n Sdk.log('Emitting INIT with payload ', this.instances)\n this.emit(SdkInternalEvents.INIT, this.instances)\n this.isInitialized = true\n })\n this.channel.subscribe(Message.UPDATE, (payload: any) => {\n Sdk.log('Emitting UPDATE with payload ', payload)\n this.emit(SdkInternalEvents.UPDATE, payload)\n })\n this.channel.subscribe(Message.FRAME_HEIGHT_REQUEST, (payload: any) => {\n if (this.autoheight) {\n Sdk.log('Request for iframe height')\n this.sendFrameHeight()\n }\n })\n this.channel.connect().then(() => {\n Sdk.log('Connected with ONe SDK')\n if(this.autoheight) {\n this.initializeHeightObserver()\n }\n })\n this.setupOptions(options)\n Sdk.log('Initialized.')\n }\n\n private sendFrameHeight() {\n const body = document.body, html = document.documentElement;\n const height = Math.max(body.scrollHeight, body.offsetHeight,\n html.clientHeight, html.scrollHeight, html.offsetHeight);\n this.channel.postMessage(Message.FRAME_HEIGHT_CHANGE, height)\n }\n\n private initializeHeightObserver() {\n if (\"MutationObserver\" in window) {\n const onMutationObserved = () => {\n this.sendFrameHeight()\n }\n const target = document.querySelector('body'),\n config = {\n attributes: true,\n attributeOldValue: false,\n characterData: true,\n characterDataOldValue: false,\n childList: true,\n subtree: true\n }\n\n this.heightMutationObserver = new MutationObserver(onMutationObserved)\n\n Sdk.log('Create body MutationObserver')\n this.heightMutationObserver.observe(target, config)\n } else {\n Sdk.warn('MutationObserver not available. Auto-height functionality disabled.')\n }\n }\n\n private setupOptions(options?: SdkOptions) {\n if (options) {\n if (typeof options.debug !== 'undefined') {\n Sdk.debug = options.debug\n }\n if (typeof options.autoheight !== 'undefined') {\n this.autoheight = options.autoheight\n }\n }\n }\n protected callFunction(service: string, fun: string, ...payload: any) {\n const callId: string = generateCallId()\n if (this.isInitialized) {\n Sdk.log(`Call ID ${callId} for ${service}:${fun}`, payload)\n this.channel.postMessage(Message.METHOD_CALL, {\n callId,\n service,\n method: fun,\n payload: payload,\n })\n return new Promise((resolve) => {\n const onChannelMessage = (response: any) => {\n if (response.callId === callId) {\n this.channel.unsubscribe(Message.METHOD_RESULT, onChannelMessage)\n return resolve(response.result)\n }\n }\n this.channel.subscribe(Message.METHOD_RESULT, onChannelMessage)\n })\n }\n Sdk.log('SDK is not initialized!')\n return Promise.resolve(null)\n }\n\n public navigate(event: NamedNavigationPayload | PathNavigationPayload) {\n this.channel.postMessage(Message.NAVIGATION_PUSH, event)\n }\n\n}\n\nexport interface BackofficeInstances extends Backoffice.Api {\n route: Route,\n orderpath: BackofficeOrderpath,\n catalog: BackofficeCatalog,\n user: BackofficeUser,\n tenant: BackofficeTenant,\n layout: BackofficeLayout,\n authorization: BackofficeAuthorization,\n customer: BackofficeCustomer,\n plugin: BackofficePlugin\n}\n\nexport interface ShopInstances extends Shop.Api {\n authorization: ShopAuthorization,\n route: Route,\n cart: ShopCart,\n catalog: ShopCatalog,\n account: ShopAccount,\n utils: ShopUtils\n config: ShopConfig\n}\n\nexport class BackofficeSdk extends Sdk<BackofficeInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\n orderpath: new BackofficeOrderpath(this.callFunction.bind(this)),\n catalog: new BackofficeCatalog(this.callFunction.bind(this)),\n user: new BackofficeUser(this.callFunction.bind(this)),\n tenant: new BackofficeTenant(this.callFunction.bind(this)),\n layout: new BackofficeLayout(this.callFunction.bind(this)),\n authorization: new BackofficeAuthorization(this.callFunction.bind(this)),\n customer: new BackofficeCustomer(this.callFunction.bind(this)),\n plugin: new BackofficePlugin(this.callFunction.bind(this)),\n }\n}\n\nexport class ShopSdk extends Sdk<ShopInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\n authorization: new ShopAuthorization(this.callFunction.bind(this)),\n cart: new ShopCart(this.callFunction.bind(this)),\n catalog: new ShopCatalog(this.callFunction.bind(this)),\n account: new ShopAccount(this.callFunction.bind(this)),\n utils: new ShopUtils(this.callFunction.bind(this)),\n config: new ShopConfig(this.callFunction.bind(this))\n }\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/index.ts"],"names":["Message","Channel","BackofficeAuthorization","BackofficeCatalog","BackofficeCustomer","BackofficeLayout","BackofficeOrderpath","BackofficePlugin","BackofficeTenant","BackofficeUser","Events","ShopAccount","ShopAuthorization","ShopCart","ShopCatalog","ShopConfig","ShopUtils","BaseCallClass","generateCallId","SdkInternalEvents","SdkEvents","Sdk","log","data","debug","console","warn","initializeContextClass","contextClass","callFunction","bind","initializeServiceGetters","instances","Object","keys","forEach","serviceName","defineProperty","get","isInitialized","constructor","options","origin","channel","targetOrigin","target","window","parent","subscribe","INIT","payload","entries","key","value","update","attributesForKey","emit","UPDATE","FRAME_HEIGHT_REQUEST","autoheight","sendFrameHeight","connect","then","initializeHeightObserver","setupOptions","body","document","html","documentElement","height","Math","max","scrollHeight","offsetHeight","clientHeight","postMessage","FRAME_HEIGHT_CHANGE","onMutationObserved","querySelector","config","attributes","attributeOldValue","characterData","characterDataOldValue","childList","subtree","heightMutationObserver","MutationObserver","observe","context","service","fun","callId","METHOD_CALL","method","Promise","resolve","onChannelMessage","response","unsubscribe","METHOD_RESULT","result","navigate","event","NAVIGATION_PUSH","BackofficeSdk","route","hash","query","orderpath","catalog","user","tenant","layout","authorization","customer","plugin","ShopSdk","cart","account","utils"],"mappings":"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","sourcesContent":["import {\n Backoffice,\n Message,\n Route,\n Shop\n} from \"@one-commerce/sdk-shared\";\nimport Channel from \"iframe-channel\"\n\nimport {AvailableContext as BackofficeContext} from \"./backoffice/context\";\nimport {\n BackofficeAuthorization,\n BackofficeCatalog,\n BackofficeCustomer,\n BackofficeLayout,\n BackofficeOrderpath,\n BackofficePlugin,\n BackofficeTenant,\n BackofficeUser,\n} from \"./backoffice/services\";\nimport Events from \"./events\";\nimport {\n ShopAccount, ShopAuthorization,\n ShopCart,\n ShopCatalog, ShopConfig, ShopUtils,\n} from \"./shop/services\";\nimport { BaseCallClass, generateCallId } from \"./utils\";\n\nexport type AvailableContext = BackofficeContext\n\nenum SdkInternalEvents {\n INIT='INIT',\n UPDATE='UPDATE'\n}\nexport enum SdkEvents {\n INIT='INIT',\n UPDATE='UPDATE',\n}\nexport interface SdkOptions {\n debug?: boolean\n autoheight?: boolean\n origin: string,\n context?: Class<AvailableContext>;\n}\n\ninterface NamedNavigationPayload {\n name: string\n params: any\n}\n\ninterface PathNavigationPayload {\n path: string\n params: any\n}\n\nexport type Class<T = any> = new (...args: any[]) => T;\n\nabstract class Sdk<T> extends Events {\n private channel!: Channel;\n private static debug = false\n private autoheight = true\n private heightMutationObserver = null\n origin: string;\n isInitialized = false\n instances!: T;\n contextClass?: Class<AvailableContext>;\n\n private static log(...data: any[]) {\n Sdk.debug && console.log('[SDK Core] ', ...data)\n }\n\n private static warn(...data: any[]) {\n console.warn('[SDK Core] ', ...data)\n }\n\n public initializeContextClass(): AvailableContext {\n return new this.contextClass(this.callFunction.bind(this))\n }\n\n private initializeServiceGetters(): void {\n if (this.instances) {\n Object.keys(this.instances).forEach((serviceName: string) => {\n Object.defineProperty(this, serviceName, {\n get: () => {\n return this.isInitialized ? this.instances![serviceName as keyof T] : null\n }\n })\n })\n }\n }\n\n constructor(options: SdkOptions) {\n super()\n this.initializeServiceGetters()\n this.origin = options.origin\n this.channel = new Channel({\n targetOrigin: this.origin,\n target: window.parent,\n })\n this.channel.subscribe(Message.INIT, (payload: any) => {\n Sdk.log('Handling INIT message')\n Object.entries(this.instances!).forEach(([key, value]: [key: string, value: BaseCallClass | Record<string, any>]) => {\n if (value instanceof BaseCallClass) {\n value.update(payload)\n } else {\n const attributesForKey = payload[key]\n if (typeof attributesForKey !== 'undefined') {\n BaseCallClass.update(value as Record<string, any>, payload[key])\n } else {\n Sdk.warn(`Missing attributes for ${key} in `, payload)\n }\n }\n })\n Sdk.log('Emitting INIT with payload ', this.instances)\n this.emit(SdkInternalEvents.INIT, this.instances)\n this.isInitialized = true\n })\n this.channel.subscribe(Message.UPDATE, (payload: any) => {\n Sdk.log('Emitting UPDATE with payload ', payload)\n this.emit(SdkInternalEvents.UPDATE, payload)\n })\n this.channel.subscribe(Message.FRAME_HEIGHT_REQUEST, (payload: any) => {\n if (this.autoheight) {\n Sdk.log('Request for iframe height')\n this.sendFrameHeight()\n }\n })\n this.channel.connect().then(() => {\n Sdk.log('Connected with ONe SDK')\n if(this.autoheight) {\n this.initializeHeightObserver()\n }\n })\n this.setupOptions(options)\n Sdk.log('Initialized.')\n }\n\n private sendFrameHeight() {\n const body = document.body, html = document.documentElement;\n const height = Math.max(body.scrollHeight, body.offsetHeight,\n html.clientHeight, html.scrollHeight, html.offsetHeight);\n this.channel.postMessage(Message.FRAME_HEIGHT_CHANGE, height)\n }\n\n private initializeHeightObserver() {\n if (\"MutationObserver\" in window) {\n const onMutationObserved = () => {\n this.sendFrameHeight()\n }\n const target = document.querySelector('body'),\n config = {\n attributes: true,\n attributeOldValue: false,\n characterData: true,\n characterDataOldValue: false,\n childList: true,\n subtree: true\n }\n\n this.heightMutationObserver = new MutationObserver(onMutationObserved)\n\n Sdk.log('Create body MutationObserver')\n this.heightMutationObserver.observe(target, config)\n } else {\n Sdk.warn('MutationObserver not available. Auto-height functionality disabled.')\n }\n }\n\n private setupOptions(options?: SdkOptions) {\n if (options) {\n if (typeof options.debug !== 'undefined') {\n Sdk.debug = options.debug\n }\n if (typeof options.autoheight !== 'undefined') {\n this.autoheight = options.autoheight\n }\n this.contextClass = options.context\n }\n }\n protected callFunction(service: string, fun: string, ...payload: any) {\n const callId: string = generateCallId()\n if (this.isInitialized) {\n Sdk.log(`Call ID ${callId} for ${service}:${fun}`, payload)\n this.channel.postMessage(Message.METHOD_CALL, {\n callId,\n service,\n method: fun,\n payload: payload,\n })\n return new Promise((resolve) => {\n const onChannelMessage = (response: any) => {\n if (response.callId === callId) {\n this.channel.unsubscribe(Message.METHOD_RESULT, onChannelMessage)\n return resolve(response.result)\n }\n }\n this.channel.subscribe(Message.METHOD_RESULT, onChannelMessage)\n })\n }\n Sdk.log('SDK is not initialized!')\n return Promise.resolve(null)\n }\n\n public navigate(event: NamedNavigationPayload | PathNavigationPayload) {\n this.channel.postMessage(Message.NAVIGATION_PUSH, event)\n }\n\n}\n\nexport interface BackofficeInstances extends Backoffice.Api {\n route: Route,\n orderpath: BackofficeOrderpath,\n catalog: BackofficeCatalog,\n user: BackofficeUser,\n tenant: BackofficeTenant,\n layout: BackofficeLayout,\n authorization: BackofficeAuthorization,\n customer: BackofficeCustomer,\n plugin: BackofficePlugin,\n context: AvailableContext\n}\n\nexport interface ShopInstances extends Shop.Api {\n authorization: ShopAuthorization,\n route: Route,\n cart: ShopCart,\n catalog: ShopCatalog,\n account: ShopAccount,\n utils: ShopUtils\n config: ShopConfig\n}\n\nexport class BackofficeSdk extends Sdk<BackofficeInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\n orderpath: new BackofficeOrderpath(this.callFunction.bind(this)),\n catalog: new BackofficeCatalog(this.callFunction.bind(this)),\n user: new BackofficeUser(this.callFunction.bind(this)),\n tenant: new BackofficeTenant(this.callFunction.bind(this)),\n layout: new BackofficeLayout(this.callFunction.bind(this)),\n authorization: new BackofficeAuthorization(this.callFunction.bind(this)),\n customer: new BackofficeCustomer(this.callFunction.bind(this)),\n plugin: new BackofficePlugin(this.callFunction.bind(this)),\n context: this.initializeContextClass()\n }\n}\n\nexport class ShopSdk extends Sdk<ShopInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\n authorization: new ShopAuthorization(this.callFunction.bind(this)),\n cart: new ShopCart(this.callFunction.bind(this)),\n catalog: new ShopCatalog(this.callFunction.bind(this)),\n account: new ShopAccount(this.callFunction.bind(this)),\n utils: new ShopUtils(this.callFunction.bind(this)),\n config: new ShopConfig(this.callFunction.bind(this))\n }\n}\n"],"file":"index.js"}
@@ -1,6 +1,6 @@
1
1
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
 
3
- import { BaseCallClass } from "./utils";
3
+ import { BaseCallClass } from "../utils";
4
4
  export class ShopCatalog extends BaseCallClass {
5
5
  constructor(...args) {
6
6
  super(...args);
@@ -145,4 +145,4 @@ export class ShopConfig extends BaseCallClass {
145
145
  }
146
146
 
147
147
  }
148
- //# sourceMappingURL=shopServices.js.map
148
+ //# sourceMappingURL=services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/shop/services.ts"],"names":["BaseCallClass","ShopCatalog","fetchProduct","productId","call","getCategoryById","categoryId","ShopAccount","hasSegment","name","logout","ShopCart","addToCart","amount","where","cartId","ShopAuthorization","getAuthToken","ShopUtils","constructor","routes","getCategoryPath","getManufacturerSearchUrl","getProductUrl","isExternalUrl","id","manufacturer","product","url","ShopConfig"],"mappings":";;AACA,SAAQA,aAAR,QAA4B,UAA5B;AAGA,OAAO,MAAMC,WAAN,SAA0BD,aAA1B,CAAgE;AAAA;AAAA;;AAAA,yCACvD,SADuD;;AAAA;;AAAA;AAAA;;AAKrEE,EAAAA,YAAY,CAACC,SAAD,EAAkC;AAC5C,WAAO,KAAKC,IAAL,CAAU,cAAV,EAA0BD,SAA1B,CAAP;AACD;;AAEDE,EAAAA,eAAe,CAACC,UAAD,EAAmC;AAChD,WAAO,KAAKF,IAAL,CAAU,iBAAV,EAA6BE,UAA7B,CAAP;AACD;;AAXoE;AAgBvE,OAAO,MAAMC,WAAN,SAA0BP,aAA1B,CAAgE;AAAA;AAAA;;AAAA,yCACvD,SADuD;;AAAA;;AAAA;;AAAA;;AAAA;AAAA;;AAqDrEQ,EAAAA,UAAU,CAACC,IAAD,EAAiC;AACzC,WAAO,KAAKL,IAAL,CAAU,YAAV,EAAwBK,IAAxB,CAAP;AACD;;AAWDC,EAAAA,MAAM,GAAS,CACb;AACD;;AApEoE;AAuEvE,OAAO,MAAMC,QAAN,SAAuBX,aAAvB,CAA0D;AAAA;AAAA;;AAAA,yCACjD,MADiD;;AAAA;;AAAA;;AAAA;AAAA;;AAM/DY,EAAAA,SAAS,CAACT,SAAD,EAAoBU,MAApB,EAAoCC,KAApC,EAAmDC,MAAnD,EAAmF;AAC1F,WAAO,KAAKX,IAAL,CAAU,WAAV,EAAuBD,SAAvB,EAAkCU,MAAlC,EAA0CC,KAA1C,EAAiDC,MAAjD,CAAP;AACD;;AAR8D;AAWjE,OAAO,MAAMC,iBAAN,SAAgChB,aAAhC,CAA4E;AAAA;AAAA;;AAAA,yCACnE,eADmE;AAAA;;AAGjFiB,EAAAA,YAAY,GAAoB;AAC9B,WAAO,KAAKb,IAAL,CAAU,cAAV,CAAP;AACD;;AALgF;AAQnF,OAAO,MAAMc,SAAN,SAAwBlB,aAAxB,CAA4D;AASjEmB,EAAAA,WAAW,CAACf,IAAD,EAAoE;AAC7E,UAAMA,IAAN;;AAD6E,yCARjE,OAQiE;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAE7E,SAAKgB,MAAL,GAAc;AACZC,MAAAA,eAAe,EAAE,KAAKA,eADV;AAEZC,MAAAA,wBAAwB,EAAE,KAAKA,wBAFnB;AAGZC,MAAAA,aAAa,EAAE,KAAKA,aAHR;AAIZC,MAAAA,aAAa,EAAE,KAAKA;AAJR,KAAd;AAMD;;AAEDH,EAAAA,eAAe,CAACI,EAAD,EAAsC;AACnD,WAAO,KAAKrB,IAAL,CAAU,iBAAV,EAA6BqB,EAA7B,CAAP;AACD;;AAEDH,EAAAA,wBAAwB,CAACI,YAAD,EAAwC;AAC9D,WAAO,KAAKtB,IAAL,CAAU,0BAAV,EAAsCsB,YAAtC,CAAP;AACD;;AAEDH,EAAAA,aAAa,CAACI,OAAD,EAAuC;AAClD,WAAO,KAAKvB,IAAL,CAAU,eAAV,EAA2BuB,OAA3B,CAAP;AACD;;AAEDH,EAAAA,aAAa,CAACI,GAAD,EAAgC;AAC3C,WAAO,KAAKxB,IAAL,CAAU,eAAV,EAA2BwB,GAA3B,CAAP;AACD;;AAjCgE;AAuDnE,OAAO,MAAMC,UAAN,SAAyB7B,aAAzB,CAA8D;AAAA;AAAA;;AAAA,yCACrD,QADqD;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;AAAA;;AAAA","sourcesContent":["import {Shop} from \"@one-commerce/sdk-shared\";\nimport {BaseCallClass} from \"../utils\";\n\n\nexport class ShopCatalog extends BaseCallClass implements Shop.Catalog {\n serviceName = 'catalog'\n categories!: Array<any>;\n selectedCategoryId!: string | null;\n\n fetchProduct(productId: string): Promise<any> {\n return this.call('fetchProduct', productId)\n }\n\n getCategoryById(categoryId: string): Promise<any> {\n return this.call('getCategoryById', categoryId)\n }\n\n\n}\n\nexport class ShopAccount extends BaseCallClass implements Shop.Account {\n serviceName = 'account'\n client!: {\n id: string;\n name: string;\n externalId?: string;\n tin?: string;\n phone?: string;\n segmentId?: string;\n segments: {\n additionalSegments?: Array<{\n id: string;\n name: string;\n externalId?: string;\n parentSegmentId?: string;\n }>;\n mainSegment: {\n id: string;\n name: string;\n externalId?: string;\n parentSegmentId?: string;\n };\n };\n warehouseId?: string;\n termPayment?: {\n id: string;\n label?: string;\n paymentDaysPeriod?: number;\n };\n isTaxPayer?: boolean;\n billingAddress?: {\n city: string;\n country: string;\n id: string;\n isDefault: boolean;\n name: string;\n phone: string;\n street: string;\n type: string;\n zipCode: string\n }\n };\n isAuthenticated!: boolean;\n user!: {\n email?: string;\n name?: string;\n phone?: string;\n /**\n * @deprecated Use non-nested function instead\n */\n hasSegment(name: string): Promise<boolean>\n };\n\n hasSegment(name: string): Promise<boolean> {\n return this.call('hasSegment', name)\n }\n\n manager!: {\n additionalEmail?: string;\n email: string; id: string;\n landlinePhone?: string;\n mobilePhone?: string;\n name: string;\n photo?: string\n };\n\n logout(): void {\n // NotImplementedYet\n }\n}\n\nexport class ShopCart extends BaseCallClass implements Shop.Cart {\n serviceName = 'cart'\n carts!: Array<any>;\n currentCart!: any;\n totalCartPrice!: number;\n\n addToCart(productId: string, amount: number, where: string, cartId?: string): Promise<void> {\n return this.call('addToCart', productId, amount, where, cartId)\n }\n}\n\nexport class ShopAuthorization extends BaseCallClass implements Shop.Authorization {\n serviceName = 'authorization'\n\n getAuthToken(): Promise<string> {\n return this.call('getAuthToken')\n }\n}\n\nexport class ShopUtils extends BaseCallClass implements Shop.Utils {\n serviceName = 'utils'\n currency!: any;\n isAnonymousAndPurchaseDisabled!: boolean;\n isB2B!: boolean;\n isB2BAndPlatformIsNotOpened!: boolean;\n isIndexPage!: boolean;\n isPurchaseEnabledOrAuthenticated!: boolean;\n\n constructor(call: (service: string, fun: string, ...arg: any) => Promise<any>) {\n super(call)\n this.routes = {\n getCategoryPath: this.getCategoryPath,\n getManufacturerSearchUrl: this.getManufacturerSearchUrl,\n getProductUrl: this.getProductUrl,\n isExternalUrl: this.isExternalUrl\n }\n }\n\n getCategoryPath(id?: string): Promise<string | null> {\n return this.call('getCategoryPath', id)\n }\n\n getManufacturerSearchUrl(manufacturer: string): Promise<string> {\n return this.call('getManufacturerSearchUrl', manufacturer)\n }\n\n getProductUrl(product: any): Promise<string | null> {\n return this.call('getProductUrl', product)\n }\n\n isExternalUrl(url: string): Promise<boolean> {\n return this.call('isExternalUrl', url)\n }\n\n routes: {\n /**\n * @deprecated Use non-nested function instead\n */\n getCategoryPath(id?: string): (Promise<string | null> | string | null);\n /**\n * @deprecated Use non-nested function instead\n */\n getManufacturerSearchUrl(manufacturer: string): (Promise<string> | string);\n /**\n * @deprecated Use non-nested function instead\n */\n getProductUrl(product: any): (Promise<string | null> | string | null);\n /**\n * @deprecated Use non-nested function instead\n */\n isExternalUrl(url: string): (Promise<boolean> | boolean)\n };\n}\n\nexport class ShopConfig extends BaseCallClass implements Shop.Config {\n serviceName = 'config'\n accessMode!: string;\n isB2CRegistrationEnabled!: boolean;\n isCatalogOpened!: boolean;\n isGrossSelected!: boolean;\n isPlatformClosed!: boolean;\n isPlatformOpened!: boolean;\n isPurchaseEnabled!: boolean;\n isRegistrationEnabled!: boolean;\n currency: any;\n}\n"],"file":"services.js"}
@@ -0,0 +1,13 @@
1
+ import { Backoffice } from "@one-commerce/sdk-shared";
2
+ import { BaseCallClass } from "../utils";
3
+ export declare class AddToCartContext extends BaseCallClass implements Backoffice.Context.AddToCart {
4
+ serviceName: Backoffice.Context.AvailableContext;
5
+ productId: string;
6
+ cartId: string;
7
+ warehouses: Array<any>;
8
+ closePlugin(): Promise<void>;
9
+ closePluginAndAddToCart(): Promise<void>;
10
+ closePluginAndRefreshCart(): Promise<void>;
11
+ }
12
+ export declare type AvailableContext = AddToCartContext;
13
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/backoffice/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAC;AAEvC,qBAAa,gBAAiB,SAAQ,aAAc,YAAW,UAAU,CAAC,OAAO,CAAC,SAAS;IACzF,WAAW,sCAAkD;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAG5B,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAGxC,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC;CAG3C;AAED,oBAAY,gBAAgB,GAAG,gBAAgB,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { Backoffice } from "@one-commerce/sdk-shared";
2
- import { BaseCallClass } from "./utils";
2
+ import { BaseCallClass } from "../utils";
3
3
  export declare class BackofficeCatalog extends BaseCallClass implements Backoffice.Catalog {
4
4
  serviceName: string;
5
5
  fetchCategories(): Promise<Array<unknown>>;
@@ -40,4 +40,4 @@ export declare class BackofficePlugin extends BaseCallClass implements Backoffic
40
40
  srcUrl?: string;
41
41
  name?: string;
42
42
  }
43
- //# sourceMappingURL=backofficeServices.d.ts.map
43
+ //# sourceMappingURL=services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/backoffice/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAEpD,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAC;AAEvC,qBAAa,iBAAkB,SAAQ,aAAc,YAAW,UAAU,CAAC,OAAO;IAChF,WAAW,SAAY;IAEvB,eAAe,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAGnC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAGlD;AAED,qBAAa,cAAe,SAAQ,aAAc,YAAW,UAAU,CAAC,IAAI;IAC1E,WAAW,SAAS;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,EAAG,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,EAAG,KAAK,CAAC,MAAM,CAAC,CAAC;CAC7B;AAED,qBAAa,gBAAiB,SAAQ,aAAc,YAAW,UAAU,CAAC,MAAM;IAC9E,WAAW,SAAW;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,mBAAoB,SAAQ,aAAc,YAAW,UAAU,CAAC,SAAS;IACpF,WAAW,SAAc;CAC1B;AAED,qBAAa,gBAAiB,SAAQ,aAAc,YAAW,UAAU,CAAC,MAAM;IAC9E,WAAW,SAAW;IACtB,aAAa,EAAG,OAAO,CAAC;CACzB;AAED,qBAAa,uBAAwB,SAAQ,aAAc,YAAW,UAAU,CAAC,aAAa;IAC5F,WAAW,SAAkB;IAE7B,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;CAGhC;AAED,qBAAa,kBAAmB,SAAQ,aAAc,YAAW,UAAU,CAAC,QAAQ;IAClF,WAAW,SAAa;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,gBAAiB,SAAQ,aAAc,YAAW,UAAU,CAAC,MAAM;IAC9E,WAAW,SAAW;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
@@ -1,7 +1,9 @@
1
1
  import { Backoffice, Route, Shop } from "@one-commerce/sdk-shared";
2
- import { BackofficeAuthorization, BackofficeCatalog, BackofficeCustomer, BackofficeLayout, BackofficeOrderpath, BackofficePlugin, BackofficeTenant, BackofficeUser } from "./backofficeServices";
2
+ import { AvailableContext as BackofficeContext } from "./backoffice/context";
3
+ import { BackofficeAuthorization, BackofficeCatalog, BackofficeCustomer, BackofficeLayout, BackofficeOrderpath, BackofficePlugin, BackofficeTenant, BackofficeUser } from "./backoffice/services";
3
4
  import Events from "./events";
4
- import { ShopAccount, ShopAuthorization, ShopCart, ShopCatalog, ShopConfig, ShopUtils } from "./shopServices";
5
+ import { ShopAccount, ShopAuthorization, ShopCart, ShopCatalog, ShopConfig, ShopUtils } from "./shop/services";
6
+ export declare type AvailableContext = BackofficeContext;
5
7
  export declare enum SdkEvents {
6
8
  INIT = "INIT",
7
9
  UPDATE = "UPDATE"
@@ -10,6 +12,7 @@ export interface SdkOptions {
10
12
  debug?: boolean;
11
13
  autoheight?: boolean;
12
14
  origin: string;
15
+ context?: Class<AvailableContext>;
13
16
  }
14
17
  interface NamedNavigationPayload {
15
18
  name: string;
@@ -19,6 +22,7 @@ interface PathNavigationPayload {
19
22
  path: string;
20
23
  params: any;
21
24
  }
25
+ export declare type Class<T = any> = new (...args: any[]) => T;
22
26
  declare abstract class Sdk<T> extends Events {
23
27
  private channel;
24
28
  private static debug;
@@ -27,8 +31,10 @@ declare abstract class Sdk<T> extends Events {
27
31
  origin: string;
28
32
  isInitialized: boolean;
29
33
  instances: T;
34
+ contextClass?: Class<AvailableContext>;
30
35
  private static log;
31
36
  private static warn;
37
+ initializeContextClass(): AvailableContext;
32
38
  private initializeServiceGetters;
33
39
  constructor(options: SdkOptions);
34
40
  private sendFrameHeight;
@@ -47,6 +53,7 @@ export interface BackofficeInstances extends Backoffice.Api {
47
53
  authorization: BackofficeAuthorization;
48
54
  customer: BackofficeCustomer;
49
55
  plugin: BackofficePlugin;
56
+ context: AvailableContext;
50
57
  }
51
58
  export interface ShopInstances extends Shop.Api {
52
59
  authorization: ShopAuthorization;
@@ -71,6 +78,7 @@ export declare class BackofficeSdk extends Sdk<BackofficeInstances> {
71
78
  authorization: BackofficeAuthorization;
72
79
  customer: BackofficeCustomer;
73
80
  plugin: BackofficePlugin;
81
+ context: import("./backoffice/context").AddToCartContext;
74
82
  };
75
83
  }
76
84
  export declare class ShopSdk extends Sdk<ShopInstances> {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAW,KAAK,EAAE,IAAI,EAAC,MAAM,0BAA0B,CAAC;AAG1E,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,EACL,WAAW,EAAE,iBAAiB,EAC9B,QAAQ,EACR,WAAW,EAAE,UAAU,EAAE,SAAS,EACnC,MAAM,gBAAgB,CAAC;AAOxB,oBAAY,SAAS;IACnB,IAAI,SAAO;IACX,MAAM,WAAS;CAChB;AACD,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,UAAU,sBAAsB;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,GAAG,CAAA;CACZ;AAED,UAAU,qBAAqB;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,GAAG,CAAA;CACZ;AAED,uBAAe,GAAG,CAAC,CAAC,CAAE,SAAQ,MAAM;IAClC,OAAO,CAAC,OAAO,CAAW;IAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAQ;IAC5B,OAAO,CAAC,UAAU,CAAO;IACzB,OAAO,CAAC,sBAAsB,CAAO;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,UAAQ;IACrB,SAAS,EAAG,CAAC,CAAC;IAEd,OAAO,CAAC,MAAM,CAAC,GAAG;IAIlB,OAAO,CAAC,MAAM,CAAC,IAAI;IAInB,OAAO,CAAC,wBAAwB;gBAYpB,OAAO,EAAE,UAAU;IA8C/B,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,wBAAwB;IAwBhC,OAAO,CAAC,YAAY;IAUpB,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,GAAG;IAwB7D,QAAQ,CAAC,KAAK,EAAE,sBAAsB,GAAG,qBAAqB;CAItE;AAED,MAAM,WAAW,mBAAoB,SAAQ,UAAU,CAAC,GAAG;IACzD,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,mBAAmB,CAAC;IAC/B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,gBAAgB,CAAC;IACzB,MAAM,EAAE,gBAAgB,CAAC;IACzB,aAAa,EAAE,uBAAuB,CAAC;IACvC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,MAAM,EAAE,gBAAgB,CAAA;CACzB;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,GAAG;IAC7C,aAAa,EAAE,iBAAiB,CAAC;IACjC,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,SAAS,CAAA;IAChB,MAAM,EAAE,UAAU,CAAA;CACnB;AAED,qBAAa,aAAc,SAAQ,GAAG,CAAC,mBAAmB,CAAC;IACzD,SAAS;;;;;;;;;;;;;MAaR;CACF;AAED,qBAAa,OAAQ,SAAQ,GAAG,CAAC,aAAa,CAAC;IAC7C,SAAS;;;;;;;;;;;MAWR;CACF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Shop } from "@one-commerce/sdk-shared";
2
- import { BaseCallClass } from "./utils";
2
+ import { BaseCallClass } from "../utils";
3
3
  export declare class ShopCatalog extends BaseCallClass implements Shop.Catalog {
4
4
  serviceName: string;
5
5
  categories: Array<any>;
@@ -126,4 +126,4 @@ export declare class ShopConfig extends BaseCallClass implements Shop.Config {
126
126
  isRegistrationEnabled: boolean;
127
127
  currency: any;
128
128
  }
129
- //# sourceMappingURL=shopServices.d.ts.map
129
+ //# sourceMappingURL=services.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shopServices.d.ts","sourceRoot":"","sources":["../../src/shopServices.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/shop/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAC;AAGvC,qBAAa,WAAY,SAAQ,aAAc,YAAW,IAAI,CAAC,OAAO;IACpE,WAAW,SAAY;IACvB,UAAU,EAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IACxB,kBAAkB,EAAG,MAAM,GAAG,IAAI,CAAC;IAEnC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI7C,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAKlD;AAED,qBAAa,WAAY,SAAQ,aAAc,YAAW,IAAI,CAAC,OAAO;IACpE,WAAW,SAAY;IACvB,MAAM,EAAG;QACP,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE;YACR,kBAAkB,CAAC,EAAE,KAAK,CAAC;gBACzB,EAAE,EAAE,MAAM,CAAC;gBACX,IAAI,EAAE,MAAM,CAAC;gBACb,UAAU,CAAC,EAAE,MAAM,CAAC;gBACpB,eAAe,CAAC,EAAE,MAAM,CAAC;aAC1B,CAAC,CAAC;YACH,WAAW,EAAE;gBACX,EAAE,EAAE,MAAM,CAAC;gBACX,IAAI,EAAE,MAAM,CAAC;gBACb,UAAU,CAAC,EAAE,MAAM,CAAC;gBACpB,eAAe,CAAC,EAAE,MAAM,CAAC;aAC1B,CAAC;SACH,CAAC;QACF,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE;YACZ,EAAE,EAAE,MAAM,CAAC;YACX,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;SAC5B,CAAC;QACF,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,cAAc,CAAC,EAAE;YACf,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,MAAM,CAAC;YAChB,EAAE,EAAE,MAAM,CAAC;YACX,SAAS,EAAE,OAAO,CAAC;YACnB,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,MAAM,CAAA;SAChB,CAAA;KACF,CAAC;IACF,eAAe,EAAG,OAAO,CAAC;IAC1B,IAAI,EAAG;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf;;WAEG;QACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;KAC3C,CAAC;IAEF,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI1C,OAAO,EAAG;QACR,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,KAAK,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,CAAC;IAEF,MAAM,IAAI,IAAI;CAGf;AAED,qBAAa,QAAS,SAAQ,aAAc,YAAW,IAAI,CAAC,IAAI;IAC9D,WAAW,SAAS;IACpB,KAAK,EAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,WAAW,EAAG,GAAG,CAAC;IAClB,cAAc,EAAG,MAAM,CAAC;IAExB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG5F;AAED,qBAAa,iBAAkB,SAAQ,aAAc,YAAW,IAAI,CAAC,aAAa;IAChF,WAAW,SAAkB;IAE7B,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;CAGhC;AAED,qBAAa,SAAU,SAAQ,aAAc,YAAW,IAAI,CAAC,KAAK;IAChE,WAAW,SAAU;IACrB,QAAQ,EAAG,GAAG,CAAC;IACf,8BAA8B,EAAG,OAAO,CAAC;IACzC,KAAK,EAAG,OAAO,CAAC;IAChB,2BAA2B,EAAG,OAAO,CAAC;IACtC,WAAW,EAAG,OAAO,CAAC;IACtB,gCAAgC,EAAG,OAAO,CAAC;gBAE/B,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC;IAU7E,eAAe,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIpD,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI/D,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAInD,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI5C,MAAM,EAAE;QACN;;WAEG;QACH,eAAe,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC;QACvE;;WAEG;QACH,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC;QAC3E;;WAEG;QACH,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC;QACtE;;WAEG;QACH,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAA;KACzD,CAAC;CACH;AAED,qBAAa,UAAW,SAAQ,aAAc,YAAW,IAAI,CAAC,MAAM;IAClE,WAAW,SAAW;IACtB,UAAU,EAAG,MAAM,CAAC;IACpB,wBAAwB,EAAG,OAAO,CAAC;IACnC,eAAe,EAAG,OAAO,CAAC;IAC1B,eAAe,EAAG,OAAO,CAAC;IAC1B,gBAAgB,EAAG,OAAO,CAAC;IAC3B,gBAAgB,EAAG,OAAO,CAAC;IAC3B,iBAAiB,EAAG,OAAO,CAAC;IAC5B,qBAAqB,EAAG,OAAO,CAAC;IAChC,QAAQ,EAAE,GAAG,CAAC;CACf"}