@one-commerce/sdk-core 1.11.0 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/cjs/index.js CHANGED
@@ -84,6 +84,10 @@ var Sdk = /*#__PURE__*/function (_Events) {
84
84
 
85
85
  _defineProperty(_assertThisInitialized(_this), "channel", void 0);
86
86
 
87
+ _defineProperty(_assertThisInitialized(_this), "autoheight", true);
88
+
89
+ _defineProperty(_assertThisInitialized(_this), "heightMutationObserver", null);
90
+
87
91
  _defineProperty(_assertThisInitialized(_this), "origin", void 0);
88
92
 
89
93
  _defineProperty(_assertThisInitialized(_this), "isInitialized", false);
@@ -130,8 +134,20 @@ var Sdk = /*#__PURE__*/function (_Events) {
130
134
  _this.emit(SdkInternalEvents.UPDATE, payload);
131
135
  });
132
136
 
137
+ _this.channel.subscribe(_sdkShared.Message.FRAME_HEIGHT_REQUEST, function (payload) {
138
+ if (_this.autoheight) {
139
+ Sdk.log('Request for iframe height');
140
+
141
+ _this.sendFrameHeight();
142
+ }
143
+ });
144
+
133
145
  _this.channel.connect().then(function () {
134
146
  Sdk.log('Connected with ONe SDK');
147
+
148
+ if (_this.autoheight) {
149
+ _this.initializeHeightObserver();
150
+ }
135
151
  });
136
152
 
137
153
  _this.setupOptions(options);
@@ -155,6 +171,40 @@ var Sdk = /*#__PURE__*/function (_Events) {
155
171
  });
156
172
  }
157
173
  }
174
+ }, {
175
+ key: "sendFrameHeight",
176
+ value: function sendFrameHeight() {
177
+ var body = document.body,
178
+ html = document.documentElement;
179
+ var height = Math.max(body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight);
180
+ this.channel.postMessage(_sdkShared.Message.FRAME_HEIGHT_CHANGE, height);
181
+ }
182
+ }, {
183
+ key: "initializeHeightObserver",
184
+ value: function initializeHeightObserver() {
185
+ var _this3 = this;
186
+
187
+ if ("MutationObserver" in window) {
188
+ var onMutationObserved = function onMutationObserved() {
189
+ _this3.sendFrameHeight();
190
+ };
191
+
192
+ var target = document.querySelector('body'),
193
+ config = {
194
+ attributes: true,
195
+ attributeOldValue: false,
196
+ characterData: true,
197
+ characterDataOldValue: false,
198
+ childList: true,
199
+ subtree: true
200
+ };
201
+ this.heightMutationObserver = new MutationObserver(onMutationObserved);
202
+ Sdk.log('Create body MutationObserver');
203
+ this.heightMutationObserver.observe(target, config);
204
+ } else {
205
+ Sdk.warn('MutationObserver not available. Auto-height functionality disabled.');
206
+ }
207
+ }
158
208
  }, {
159
209
  key: "setupOptions",
160
210
  value: function setupOptions(options) {
@@ -162,12 +212,16 @@ var Sdk = /*#__PURE__*/function (_Events) {
162
212
  if (typeof options.debug !== 'undefined') {
163
213
  Sdk.debug = options.debug;
164
214
  }
215
+
216
+ if (typeof options.autoheight !== 'undefined') {
217
+ this.autoheight = options.autoheight;
218
+ }
165
219
  }
166
220
  }
167
221
  }, {
168
222
  key: "callFunction",
169
223
  value: function callFunction(service, fun) {
170
- var _this3 = this;
224
+ var _this4 = this;
171
225
 
172
226
  var callId = (0, _utils.generateCallId)();
173
227
 
@@ -186,13 +240,13 @@ var Sdk = /*#__PURE__*/function (_Events) {
186
240
  return new Promise(function (resolve) {
187
241
  var onChannelMessage = function onChannelMessage(response) {
188
242
  if (response.callId === callId) {
189
- _this3.channel.unsubscribe(_sdkShared.Message.METHOD_RESULT, onChannelMessage);
243
+ _this4.channel.unsubscribe(_sdkShared.Message.METHOD_RESULT, onChannelMessage);
190
244
 
191
245
  return resolve(response.result);
192
246
  }
193
247
  };
194
248
 
195
- _this3.channel.subscribe(_sdkShared.Message.METHOD_RESULT, onChannelMessage);
249
+ _this4.channel.subscribe(_sdkShared.Message.METHOD_RESULT, onChannelMessage);
196
250
  });
197
251
  }
198
252
 
@@ -239,7 +293,7 @@ var BackofficeSdk = /*#__PURE__*/function (_Sdk) {
239
293
  var _super2 = _createSuper(BackofficeSdk);
240
294
 
241
295
  function BackofficeSdk() {
242
- var _this4;
296
+ var _this5;
243
297
 
244
298
  _classCallCheck(this, BackofficeSdk);
245
299
 
@@ -247,21 +301,21 @@ var BackofficeSdk = /*#__PURE__*/function (_Sdk) {
247
301
  args[_key4] = arguments[_key4];
248
302
  }
249
303
 
250
- _this4 = _super2.call.apply(_super2, [this].concat(args));
304
+ _this5 = _super2.call.apply(_super2, [this].concat(args));
251
305
 
252
- _defineProperty(_assertThisInitialized(_this4), "instances", {
306
+ _defineProperty(_assertThisInitialized(_this5), "instances", {
253
307
  route: {
254
308
  hash: '',
255
309
  query: {}
256
310
  },
257
- orderpath: new _backofficeServices.BackofficeOrderpath(_this4.callFunction.bind(_assertThisInitialized(_this4))),
258
- catalog: new _backofficeServices.BackofficeCatalog(_this4.callFunction.bind(_assertThisInitialized(_this4))),
259
- user: new _backofficeServices.BackofficeUser(_this4.callFunction.bind(_assertThisInitialized(_this4))),
260
- tenant: new _backofficeServices.BackofficeTenant(_this4.callFunction.bind(_assertThisInitialized(_this4))),
261
- layout: new _backofficeServices.BackofficeLayout(_this4.callFunction.bind(_assertThisInitialized(_this4)))
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)))
262
316
  });
263
317
 
264
- return _this4;
318
+ return _this5;
265
319
  }
266
320
 
267
321
  return _createClass(BackofficeSdk);
@@ -275,7 +329,7 @@ var ShopSdk = /*#__PURE__*/function (_Sdk2) {
275
329
  var _super3 = _createSuper(ShopSdk);
276
330
 
277
331
  function ShopSdk() {
278
- var _this5;
332
+ var _this6;
279
333
 
280
334
  _classCallCheck(this, ShopSdk);
281
335
 
@@ -283,21 +337,21 @@ var ShopSdk = /*#__PURE__*/function (_Sdk2) {
283
337
  args[_key5] = arguments[_key5];
284
338
  }
285
339
 
286
- _this5 = _super3.call.apply(_super3, [this].concat(args));
340
+ _this6 = _super3.call.apply(_super3, [this].concat(args));
287
341
 
288
- _defineProperty(_assertThisInitialized(_this5), "instances", {
342
+ _defineProperty(_assertThisInitialized(_this6), "instances", {
289
343
  route: {
290
344
  hash: '',
291
345
  query: {}
292
346
  },
293
- cart: new _shopServices.ShopCart(_this5.callFunction.bind(_assertThisInitialized(_this5))),
294
- catalog: new _shopServices.ShopCatalog(_this5.callFunction.bind(_assertThisInitialized(_this5))),
295
- account: new _shopServices.ShopAccount(_this5.callFunction.bind(_assertThisInitialized(_this5))),
296
- utils: new _shopServices.ShopUtils(_this5.callFunction.bind(_assertThisInitialized(_this5))),
297
- config: new _shopServices.ShopConfig(_this5.callFunction.bind(_assertThisInitialized(_this5)))
347
+ cart: new _shopServices.ShopCart(_this6.callFunction.bind(_assertThisInitialized(_this6))),
348
+ catalog: new _shopServices.ShopCatalog(_this6.callFunction.bind(_assertThisInitialized(_this6))),
349
+ account: new _shopServices.ShopAccount(_this6.callFunction.bind(_assertThisInitialized(_this6))),
350
+ utils: new _shopServices.ShopUtils(_this6.callFunction.bind(_assertThisInitialized(_this6))),
351
+ config: new _shopServices.ShopConfig(_this6.callFunction.bind(_assertThisInitialized(_this6)))
298
352
  });
299
353
 
300
- return _this5;
354
+ return _this6;
301
355
  }
302
356
 
303
357
  return _createClass(ShopSdk);
@@ -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","connect","then","setupOptions","keys","serviceName","defineProperty","get","debug","service","fun","callId","postMessage","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","ShopSdk","cart","ShopCart","ShopCatalog","account","ShopAccount","utils","ShopUtils","config","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 BackofficeCatalog,\n BackofficeLayout,\n BackofficeOrderpath,\n BackofficeTenant,\n BackofficeUser\n} from \"./backofficeServices\";\nimport Events from \"./events\";\nimport {\n ShopAccount,\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 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 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.connect().then(() => {\n Sdk.log('Connected with ONe SDK')\n })\n this.setupOptions(options)\n Sdk.log('Initialized.')\n }\n\n private setupOptions(options?: SdkOptions) {\n if (options) {\n if (typeof options.debug !== 'undefined') {\n Sdk.debug = options.debug\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}\n\nexport interface ShopInstances extends Shop.Api {\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 }\n}\n\nexport class ShopSdk extends Sdk<ShopInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\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","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","ShopSdk","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 BackofficeCatalog,\n BackofficeLayout,\n BackofficeOrderpath,\n BackofficeTenant,\n BackofficeUser\n} from \"./backofficeServices\";\nimport Events from \"./events\";\nimport {\n ShopAccount,\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}\n\nexport interface ShopInstances extends Shop.Api {\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 }\n}\n\nexport class ShopSdk extends Sdk<ShopInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\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"}
package/lib/esm/index.js CHANGED
@@ -46,6 +46,10 @@ class Sdk extends Events {
46
46
 
47
47
  _defineProperty(this, "channel", void 0);
48
48
 
49
+ _defineProperty(this, "autoheight", true);
50
+
51
+ _defineProperty(this, "heightMutationObserver", null);
52
+
49
53
  _defineProperty(this, "origin", void 0);
50
54
 
51
55
  _defineProperty(this, "isInitialized", false);
@@ -81,18 +85,62 @@ class Sdk extends Events {
81
85
  Sdk.log('Emitting UPDATE with payload ', payload);
82
86
  this.emit(SdkInternalEvents.UPDATE, payload);
83
87
  });
88
+ this.channel.subscribe(Message.FRAME_HEIGHT_REQUEST, payload => {
89
+ if (this.autoheight) {
90
+ Sdk.log('Request for iframe height');
91
+ this.sendFrameHeight();
92
+ }
93
+ });
84
94
  this.channel.connect().then(() => {
85
95
  Sdk.log('Connected with ONe SDK');
96
+
97
+ if (this.autoheight) {
98
+ this.initializeHeightObserver();
99
+ }
86
100
  });
87
101
  this.setupOptions(options);
88
102
  Sdk.log('Initialized.');
89
103
  }
90
104
 
105
+ sendFrameHeight() {
106
+ const body = document.body,
107
+ html = document.documentElement;
108
+ const height = Math.max(body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight);
109
+ this.channel.postMessage(Message.FRAME_HEIGHT_CHANGE, height);
110
+ }
111
+
112
+ initializeHeightObserver() {
113
+ if ("MutationObserver" in window) {
114
+ const onMutationObserved = () => {
115
+ this.sendFrameHeight();
116
+ };
117
+
118
+ const target = document.querySelector('body'),
119
+ config = {
120
+ attributes: true,
121
+ attributeOldValue: false,
122
+ characterData: true,
123
+ characterDataOldValue: false,
124
+ childList: true,
125
+ subtree: true
126
+ };
127
+ this.heightMutationObserver = new MutationObserver(onMutationObserved);
128
+ Sdk.log('Create body MutationObserver');
129
+ this.heightMutationObserver.observe(target, config);
130
+ } else {
131
+ Sdk.warn('MutationObserver not available. Auto-height functionality disabled.');
132
+ }
133
+ }
134
+
91
135
  setupOptions(options) {
92
136
  if (options) {
93
137
  if (typeof options.debug !== 'undefined') {
94
138
  Sdk.debug = options.debug;
95
139
  }
140
+
141
+ if (typeof options.autoheight !== 'undefined') {
142
+ this.autoheight = options.autoheight;
143
+ }
96
144
  }
97
145
  }
98
146
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"names":["Message","Channel","BackofficeCatalog","BackofficeLayout","BackofficeOrderpath","BackofficeTenant","BackofficeUser","Events","ShopAccount","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","connect","then","setupOptions","callFunction","service","fun","callId","postMessage","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","ShopSdk","cart","account","utils","config"],"mappings":"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","sourcesContent":["import {Backoffice, Message, Route, Shop} from \"@one-commerce/sdk-shared\";\nimport Channel from \"iframe-channel\"\n\nimport {\n BackofficeCatalog,\n BackofficeLayout,\n BackofficeOrderpath,\n BackofficeTenant,\n BackofficeUser\n} from \"./backofficeServices\";\nimport Events from \"./events\";\nimport {\n ShopAccount,\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 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 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.connect().then(() => {\n Sdk.log('Connected with ONe SDK')\n })\n this.setupOptions(options)\n Sdk.log('Initialized.')\n }\n\n private setupOptions(options?: SdkOptions) {\n if (options) {\n if (typeof options.debug !== 'undefined') {\n Sdk.debug = options.debug\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}\n\nexport interface ShopInstances extends Shop.Api {\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 }\n}\n\nexport class ShopSdk extends Sdk<ShopInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\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","BackofficeCatalog","BackofficeLayout","BackofficeOrderpath","BackofficeTenant","BackofficeUser","Events","ShopAccount","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","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 BackofficeCatalog,\n BackofficeLayout,\n BackofficeOrderpath,\n BackofficeTenant,\n BackofficeUser\n} from \"./backofficeServices\";\nimport Events from \"./events\";\nimport {\n ShopAccount,\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}\n\nexport interface ShopInstances extends Shop.Api {\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 }\n}\n\nexport class ShopSdk extends Sdk<ShopInstances> {\n instances = {\n route: {\n hash: '',\n query: {},\n },\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"}
@@ -8,6 +8,7 @@ export declare enum SdkEvents {
8
8
  }
9
9
  export interface SdkOptions {
10
10
  debug?: boolean;
11
+ autoheight?: boolean;
11
12
  origin: string;
12
13
  }
13
14
  interface NamedNavigationPayload {
@@ -21,6 +22,8 @@ interface PathNavigationPayload {
21
22
  declare abstract class Sdk<T> extends Events {
22
23
  private channel;
23
24
  private static debug;
25
+ private autoheight;
26
+ private heightMutationObserver;
24
27
  origin: string;
25
28
  isInitialized: boolean;
26
29
  instances: T;
@@ -28,6 +31,8 @@ declare abstract class Sdk<T> extends Events {
28
31
  private static warn;
29
32
  private initializeServiceGetters;
30
33
  constructor(options: SdkOptions);
34
+ private sendFrameHeight;
35
+ private initializeHeightObserver;
31
36
  private setupOptions;
32
37
  protected callFunction(service: string, fun: string, ...payload: any): Promise<any>;
33
38
  navigate(event: NamedNavigationPayload | PathNavigationPayload): void;
@@ -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,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,EACL,WAAW,EACX,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,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,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;IAqC/B,OAAO,CAAC,YAAY;IAOpB,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,CAAA;CACzB;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,GAAG;IAC7C,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;;;;;;;;;;MAUR;CACF;AAED,qBAAa,OAAQ,SAAQ,GAAG,CAAC,aAAa,CAAC;IAC7C,SAAS;;;;;;;;;;MAUR;CACF"}
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,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,EACL,WAAW,EACX,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,CAAA;CACzB;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,GAAG;IAC7C,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;;;;;;;;;;MAUR;CACF;AAED,qBAAa,OAAQ,SAAQ,GAAG,CAAC,aAAa,CAAC;IAC7C,SAAS;;;;;;;;;;MAUR;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@one-commerce/sdk-core",
3
- "version": "1.11.0",
3
+ "version": "1.13.0",
4
4
  "description": "Core package for One Plugins",
5
5
  "module": "lib/esm/index.js",
6
6
  "main": "lib/cjs/index.js",
@@ -55,7 +55,7 @@
55
55
  "node": ">=14"
56
56
  },
57
57
  "dependencies": {
58
- "@one-commerce/sdk-shared": "^1.11.0",
58
+ "@one-commerce/sdk-shared": "^1.13.0",
59
59
  "iframe-channel": "^1.2.5"
60
60
  },
61
61
  "devDependencies": {
@@ -125,5 +125,5 @@
125
125
  "**/*.spec.js"
126
126
  ]
127
127
  },
128
- "gitHead": "86bf9cec3569f01a17f2f44b17bd383e3806cd2c"
128
+ "gitHead": "4a624ea2becce1b59da95e8d39a3731af41ba207"
129
129
  }