@askdialog/dialog-sdk 1.0.6 → 1.0.8

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/dist/Dialog.d.ts CHANGED
@@ -13,8 +13,10 @@ export declare class Dialog {
13
13
  private _eventsHandler;
14
14
  private _tracking;
15
15
  constructor({ apiKey, locale, callbacks, theme, userId }: DialogConstructor);
16
+ get apiKey(): string;
16
17
  get theme(): Theme;
17
18
  get userId(): string;
19
+ get locale(): string;
18
20
  getLocalizationInformations(): DetailedLocaleInfo | null;
19
21
  private _createOrRetrieveUserId;
20
22
  getSuggestions(productId: string): Promise<Suggestion>;
@@ -22,7 +24,7 @@ export declare class Dialog {
22
24
  closeAssistant(): void;
23
25
  sendProductMessage(params: ProductQuestionPayload): void;
24
26
  sendGenericMessage(params: GenericQuestionPayload): void;
25
- getProduct(productId: string, variantId: string): Promise<SimplifiedProduct>;
27
+ getProduct(productId: string, variantId?: string): Promise<SimplifiedProduct>;
26
28
  addToCart({ productId, variantId, quantity, }: {
27
29
  productId: string;
28
30
  variantId: string;
@@ -34,5 +36,6 @@ export declare class Dialog {
34
36
  quantity: number;
35
37
  }): void;
36
38
  registerSubmitCheckoutEvent(): void;
39
+ private _loadAssistant;
37
40
  }
38
41
  //# sourceMappingURL=Dialog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../src/Dialog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EACL,kBAAkB,EAEnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAEL,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAKpD,qBAAa,MAAM;IACjB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,UAAU,CAchB;IACF,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,SAAS,CAAW;gBAEhB,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,iBAAiB;IAa3E,IAAW,KAAK,IAAI,KAAK,CAExB;IACD,IAAW,MAAM,IAAI,MAAM,CAE1B;IAEM,2BAA2B,IAAI,kBAAkB,GAAG,IAAI;IAI/D,OAAO,CAAC,uBAAuB;IAkBlB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI5D,aAAa,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI;IAIjD,cAAc,IAAI,IAAI;IAItB,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAIxD,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAOxD,UAAU,CACf,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,iBAAiB,CAAC;IAItB,SAAS,CAAC,EACf,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIV,sBAAsB,CAAC,EAC5B,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;KAClB,GAAG,IAAI;IAQD,2BAA2B,IAAI,IAAI;CAG3C"}
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../src/Dialog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EACL,kBAAkB,EAEnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAEL,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAMpD,qBAAa,MAAM;IACjB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,UAAU,CAchB;IACF,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,SAAS,CAAW;gBAEhB,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,iBAAiB;IAc3E,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,IAAW,KAAK,IAAI,KAAK,CAExB;IACD,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,IAAW,MAAM,IAAI,MAAM,CAE1B;IAEM,2BAA2B,IAAI,kBAAkB,GAAG,IAAI;IAI/D,OAAO,CAAC,uBAAuB;IAkBlB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI5D,aAAa,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI;IAIjD,cAAc,IAAI,IAAI;IAItB,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAIxD,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAOxD,UAAU,CACf,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,iBAAiB,CAAC;IAItB,SAAS,CAAC,EACf,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIV,sBAAsB,CAAC,EAC5B,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;KAClB,GAAG,IAAI;IAQD,2BAA2B,IAAI,IAAI;IAI1C,OAAO,CAAC,cAAc;CA0BvB"}
package/dist/Dialog.js CHANGED
@@ -7,6 +7,7 @@ import { EventsHandler } from './EventsHandler';
7
7
  import { Tracking } from './Tracking';
8
8
  import { TrackingEvents } from './types/trackings';
9
9
  import { loadSuggestions } from './services/suggestions';
10
+ import { config } from './config';
10
11
  export class Dialog {
11
12
  _apiKey;
12
13
  _locale;
@@ -26,6 +27,10 @@ export class Dialog {
26
27
  window.dialog = {
27
28
  instance: this,
28
29
  };
30
+ this._loadAssistant();
31
+ }
32
+ get apiKey() {
33
+ return this._apiKey;
29
34
  }
30
35
  get theme() {
31
36
  return this._theme;
@@ -33,6 +38,9 @@ export class Dialog {
33
38
  get userId() {
34
39
  return this._userId;
35
40
  }
41
+ get locale() {
42
+ return this._locale;
43
+ }
36
44
  getLocalizationInformations() {
37
45
  return getDetailedLocaleInfo(this._locale);
38
46
  }
@@ -80,4 +88,25 @@ export class Dialog {
80
88
  registerSubmitCheckoutEvent() {
81
89
  this._tracking.track(TrackingEvents.USER_SUBMITTED_CHECKOUT);
82
90
  }
91
+ _loadAssistant() {
92
+ const localeInfo = getDetailedLocaleInfo(this._locale);
93
+ if (localeInfo === null) {
94
+ console.error('Missing locale information');
95
+ return;
96
+ }
97
+ const script = document.createElement('script');
98
+ script.type = 'text/javascript';
99
+ script.defer = true;
100
+ script.async = true;
101
+ script.src = config.assistantUrl;
102
+ document.head.insertBefore(script, document.head.firstChild);
103
+ const div = document.createElement('div');
104
+ div.id = 'dialog-shopify-ai';
105
+ div.dataset.shopIsoCode = this._locale;
106
+ div.dataset.apiKey = this._apiKey;
107
+ div.dataset.userId = this._userId;
108
+ div.dataset.countryCode = localeInfo.countryCode;
109
+ div.dataset.language = localeInfo.language;
110
+ document.body.appendChild(div);
111
+ }
83
112
  }
@@ -1,5 +1,6 @@
1
1
  export declare const config: {
2
2
  baseApiUrl: string;
3
+ assistantUrl: string;
3
4
  };
4
5
  export type Config = typeof config;
5
6
  //# sourceMappingURL=config.development.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.development.d.ts","sourceRoot":"","sources":["../../src/config/config.development.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;CAElB,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC"}
1
+ {"version":3,"file":"config.development.d.ts","sourceRoot":"","sources":["../../src/config/config.development.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export const config = {
2
2
  baseApiUrl: 'https://abkjr5ukvi.execute-api.eu-west-1.amazonaws.com',
3
+ assistantUrl: 'https://d2bycosa71tnxv.cloudfront.net/assets/index.js',
3
4
  };
@@ -1,5 +1,6 @@
1
1
  export declare const config: {
2
2
  baseApiUrl: string;
3
+ assistantUrl: string;
3
4
  };
4
5
  export type Config = typeof config;
5
6
  //# sourceMappingURL=config.production.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.production.d.ts","sourceRoot":"","sources":["../../src/config/config.production.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;CAElB,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC"}
1
+ {"version":3,"file":"config.production.d.ts","sourceRoot":"","sources":["../../src/config/config.production.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export const config = {
2
2
  baseApiUrl: 'https://rtbzcxkmwj.execute-api.eu-west-1.amazonaws.com',
3
+ assistantUrl: 'https://d2zm7i5bmzo6ze.cloudfront.net/assets/index.js',
3
4
  };
@@ -1,5 +1,6 @@
1
1
  export declare const config: {
2
2
  baseApiUrl: string;
3
+ assistantUrl: string;
3
4
  };
4
5
  export type Config = typeof config;
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;CAElB,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export const config = {
2
2
  baseApiUrl: 'https://rtbzcxkmwj.execute-api.eu-west-1.amazonaws.com',
3
+ assistantUrl: 'https://d2zm7i5bmzo6ze.cloudfront.net/assets/index.js',
3
4
  };
@@ -9,7 +9,7 @@ export interface DialogConstructor {
9
9
  variantId: string;
10
10
  quantity: number;
11
11
  }) => Promise<void>;
12
- getProduct: (productId: string, variantId: string) => Promise<SimplifiedProduct>;
12
+ getProduct: (productId: string, variantId?: string) => Promise<SimplifiedProduct>;
13
13
  };
14
14
  theme?: Partial<Theme>;
15
15
  userId?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"constructor.d.ts","sourceRoot":"","sources":["../../src/types/constructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE;QACT,SAAS,EAAE,CAAC,EACV,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE;YACD,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;YAClB,QAAQ,EAAE,MAAM,CAAC;SAClB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QACpB,UAAU,EAAE,CACV,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,KACd,OAAO,CAAC,iBAAiB,CAAC,CAAC;KACjC,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"constructor.d.ts","sourceRoot":"","sources":["../../src/types/constructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE;QACT,SAAS,EAAE,CAAC,EACV,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE;YACD,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;YAClB,QAAQ,EAAE,MAAM,CAAC;SAClB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QACpB,UAAU,EAAE,CACV,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,KACf,OAAO,CAAC,iBAAiB,CAAC,CAAC;KACjC,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -1,9 +1,44 @@
1
+ export interface SimplifiedProductVariant {
2
+ id: string;
3
+ title?: string;
4
+ displayName?: string;
5
+ selectedOptions?: {
6
+ name: string;
7
+ value: string;
8
+ }[];
9
+ image?: {
10
+ url?: string;
11
+ } | null;
12
+ inventoryQuantity?: number;
13
+ price?: string;
14
+ currencyCode?: string;
15
+ compareAtPrice?: string | null;
16
+ translations?: {
17
+ key: string;
18
+ value: string;
19
+ }[];
20
+ }
21
+ export interface SimplifiedProductOption {
22
+ translations?: {
23
+ key: string;
24
+ value: string;
25
+ }[];
26
+ values: string[];
27
+ id: string;
28
+ name: string;
29
+ position: number;
30
+ }
1
31
  export interface SimplifiedProduct {
2
32
  id: string;
3
33
  variantId?: string;
4
34
  title: string;
5
- shortDescription: string;
6
- formattedPrice: string;
7
- imageUrl: string;
35
+ descriptionHtml?: string;
36
+ featuredImage?: {
37
+ url?: string;
38
+ } | null;
39
+ totalInventory: number;
40
+ variants: SimplifiedProductVariant[];
41
+ options?: SimplifiedProductOption[];
42
+ handle: string;
8
43
  }
9
44
  //# sourceMappingURL=product.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"product.d.ts","sourceRoot":"","sources":["../../src/types/product.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"product.d.ts","sourceRoot":"","sources":["../../src/types/product.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,KAAK,CAAC,EAAE;QACN,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,GAAG,IAAI,CAAC;IACT,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,YAAY,CAAC,EAAE;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;CACL;AAED,MAAM,WAAW,uBAAuB;IACtC,YAAY,CAAC,EAAE;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,GAAG,IAAI,CAAC;IACT,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,wBAAwB,EAAE,CAAC;IACrC,OAAO,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;CAChB"}
@@ -2,6 +2,7 @@ export interface DetailedLocaleInfo {
2
2
  language: string;
3
3
  countryCode: string;
4
4
  formatted: string;
5
+ locale: string;
5
6
  }
6
7
  export declare const getDetailedLocaleInfo: (locale: string) => DetailedLocaleInfo | null;
7
8
  //# sourceMappingURL=localization.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"localization.d.ts","sourceRoot":"","sources":["../../src/utils/localization.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,qBAAqB,GAChC,QAAQ,MAAM,KACb,kBAAkB,GAAG,IAqBvB,CAAC"}
1
+ {"version":3,"file":"localization.d.ts","sourceRoot":"","sources":["../../src/utils/localization.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,qBAAqB,GAChC,QAAQ,MAAM,KACb,kBAAkB,GAAG,IAsBvB,CAAC"}
@@ -12,6 +12,7 @@ export const getDetailedLocaleInfo = (locale) => {
12
12
  language: languageName,
13
13
  countryCode,
14
14
  formatted: `${language}-${countryCode}`,
15
+ locale
15
16
  };
16
17
  }
17
18
  catch (e) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@askdialog/dialog-sdk",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "private": false,
5
5
  "description": "Dialog SDK",
6
6
  "main": "dist/index.js",