@sitecore-marketplace-sdk/client 0.1.1 → 0.1.4

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/README.md CHANGED
@@ -1,10 +1,21 @@
1
- # SITECORE MARKETPLACE CLIENT SDK
1
+ # Sitecore Marketplace SDK - `client` package
2
2
 
3
- The Marketplace Client SDK provides a secure, bidirectional communication between a client
4
- application (running inside an iframe) and the host application. Inspired by React Query, the SDK implements a query/mutation API where:
3
+ The `client` package provides secure, bidirectional communication between a Marketplace application (the client) and Sitecore (the host). Sitecore loads the Marketplace app inside a sandboxed [iframe](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe). The iframe and its parent window securely communicate using the web browser's [PostMessage API](https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage).
5
4
 
6
- - **Queries** support one-off data requests as well as subscriptions for live updates.
7
- - **Mutations** trigger state changes or HTTP requests on the host side (with user tokens attached by the Host SDK).
5
+ This package lets you:
6
+ - Make queries. Queries support one-off data requests and subscriptions for live updates. The `client` package lets you query the host's state and environment, and the [context](#query-the-application-context) of your Marketplace app.
7
+ - Perform mutations. Mutations trigger state changes or HTTP requests in Sitecore.
8
+ - Interact with Sitecore APIs to perform actions on behalf of the resources it was granted access to during installation.
9
+
10
+ > [!TIP]
11
+ > Inspired by GraphQL and React Query, the query/mutation API manages internal state, loading status, and error handling.
12
+
13
+ The `client` package is required for all Marketplace apps.
14
+
15
+ ## Prerequisites
16
+ - Node.js 16 or later. Check your installed version by using the `node --version` command.
17
+ - npm 10 or later. Check your installed version by using the `npm --version` command.
18
+ - Access to the Sitecore Cloud Portal.
8
19
 
9
20
  ## Installation
10
21
 
@@ -14,31 +25,29 @@ npm install @sitecore-marketplace-sdk/client
14
25
 
15
26
  ## Initialization
16
27
 
17
- Before you use queries or mutations, you must initialize the Client SDK.
18
-
19
- Example initialization code:
28
+ Before you use queries or mutations, you must initialize the Client SDK:
20
29
 
21
30
  ```typescript
22
31
  import { ClientSDK } from '@sitecore-marketplace-sdk/client';
23
32
 
24
- // Create a configuration object.
33
+ // Create a configuration object:
25
34
  const config = {
26
- origin: 'https://pages.sitecorecloud.io',
27
- target: window.parent,
28
- modules: []
35
+ origin: 'https://pages.sitecorecloud.io', // Where in Sitecore to display the app
36
+ target: window.parent, // To iframe the app
37
+ modules: [] // Extend Client SDK with other modules, such as `XMC`
29
38
  };
30
39
 
31
- // Create a Client SDK instance using the configuration.
32
- // The returned SDK provides a type-safe API based on your resource schema.
40
+ // Create a Client SDK instance using the configuration. The returned SDK provides a type-safe API based on your resource schema:
33
41
  const client = await ClientSDK.init(config);
34
42
  ```
35
43
 
36
44
  ## Usage
37
45
 
38
- ### Query Example
46
+ ### Make a query
39
47
 
40
- The `query` method supports one-off data requests and live subscriptions. The keys follow a dot-notated format derived from your
41
- static JSON schema (for example, `"application.context"`).
48
+ Use the `query` method to make one-off data requests and live subscriptions. Pass a value to the method depending on the data you want to retrieve.
49
+
50
+ For example, pass `'host.state'` to retrieve the status of the host application:
42
51
 
43
52
  ```typescript
44
53
  (async () => {
@@ -49,20 +58,18 @@ static JSON schema (for example, `"application.context"`).
49
58
  console.log(queryResult.isLoading); // false once the request is complete
50
59
  ```
51
60
 
52
- ### Mutation Example
61
+ For an overview of all the possible values, refer to the [`QueryMap` interface](../../docs/client/interfaces/QueryMap.md).
62
+
63
+ ### Perform a mutation
53
64
 
54
- Use the `mutate` method to trigger changes on the host side. The Host SDK (integrated via the internal Core SDK) will attach the required
55
- user token and perform the HTTP request on behalf of the client application.
65
+ Use the `mutate` method to trigger changes in Sitecore (the host). Pass a value to the method depending on the change you want to make.
66
+
67
+ For example, pass `'pages.reloadCanvas'` to reload the XM Cloud page builder canvas:
56
68
 
57
69
  ```typescript
58
70
  (async () => {
59
71
  try {
60
- const mutationResponse = await client.mutate(
61
- 'host.state',
62
- { params: {
63
- newState: 'active'
64
- }}
65
- );
72
+ const mutationResponse = await client.mutate('pages.reloadCanvas');
66
73
  console.log('Mutation response:', mutationResponse);
67
74
  } catch (error) {
68
75
  console.error('Error during mutation:', error);
@@ -70,11 +77,14 @@ user token and perform the HTTP request on behalf of the client application.
70
77
  })();
71
78
  ```
72
79
 
73
- ### Application Context
80
+ For an overview of all the possible values, refer to the [`MutationMap` interface](../../docs/client/interfaces/MutationMap.md).
81
+
82
+ > [!NOTE]
83
+ > Behind the scenes, the Host SDK (integrated via the internal `core` package) attaches the required user token and performs the HTTP request on behalf of the Marketplace app (the client).
74
84
 
75
- This application context provides information about the application, such as its ID, URL, name, type, icon URL, installation ID, and associated resources.
85
+ ### Query the application context
76
86
 
77
- Here is the ApplicationContext data example:
87
+ The application context provides information about your Marketplace app, such as its ID, URL, name, type, icon URL, installation ID, and associated resources:
78
88
 
79
89
  ```javascript
80
90
  {
@@ -98,7 +108,7 @@ Here is the ApplicationContext data example:
98
108
  }
99
109
  ```
100
110
 
101
- To request the application context, you can use the query method with the key 'application.context'. This will return data of type ApplicationContext.
111
+ To retrieve the application context, use the `query` method and pass `'application.context'` to it:
102
112
 
103
113
  ```typescript
104
114
  (async () => {
@@ -107,32 +117,12 @@ To request the application context, you can use the query method with the key 'a
107
117
  })();
108
118
  ```
109
119
 
110
- ## Generated Types & Namespace Mapping
111
-
112
- The Client SDK heavily relies on a generated static contract (based on a JSON schema such as `resources.schema.json`) that defines
113
- available resource namespaces and methods. For example, with a schema structured like:
114
-
115
- ```json
116
- {
117
- "resources": {
118
- "xmc": {
119
- "publishing": {
120
- "status": { "type": "query", ... },
121
- "publish": { "type": "mutation", ... }
122
- }
123
- }
124
- }
125
- }
126
- ```
127
-
128
- The generated client types provide a type-safe interface:
129
-
130
- - `xmc.publishing.status(params)` returns a `Promise<QueryResult<...>>`
131
- - `xmc.publishing.publish(params)` returns a `Promise<MutationResult<...>>`
120
+ ## Documentation
132
121
 
133
- The keys passed to `query` and `mutate` are dot-notated (e.g., `"xmc.publishing.status"`), ensuring that they map directly
134
- to the generated methods and resource definitions.
122
+ For more information, refer to the reference documentation in the `/docs` folder.
135
123
 
136
- ## Additional Information
124
+ ## License
125
+ This package is part of the Sitecore Marketplace SDK, licensed under the Apache 2.0 License. Refer to the [LICENSE](../../LICENSE.MD) file in the repository root.
137
126
 
138
- For more details, please refer to the full documentation in the `/docs` folder or the project documentation.
127
+ ## Status
128
+ The `client` package is actively maintained as part of the Sitecore Marketplace SDK.
package/dist/client.d.ts CHANGED
@@ -13,8 +13,8 @@
13
13
  * });
14
14
  * const { data } = await client.query('host.user');
15
15
  */
16
- import { ClientSDKConfig, MutationOptions, QueryOptions, QueryResult } from './types';
17
- import type { QueryKey, MutationKey, MutationMap, NavbarItemsProps, SDKModule } from './sdk-types';
16
+ import { ClientSDKConfig, ClientSDKInitConfig, MutationOptions, QueryOptions, QueryResult } from './types';
17
+ import type { QueryKey, MutationKey, MutationMap } from './sdk-types';
18
18
  export declare class ClientSDK {
19
19
  private config;
20
20
  private stateManager;
@@ -42,14 +42,7 @@ export declare class ClientSDK {
42
42
  * });
43
43
  * ```
44
44
  */
45
- static init(config: {
46
- origin: string;
47
- target: Window;
48
- timeout?: number;
49
- modules?: SDKModule[];
50
- events?: ClientSDKConfig['events'];
51
- navbarItems?: NavbarItemsProps;
52
- }): Promise<ClientSDK>;
45
+ static init(config: ClientSDKInitConfig): Promise<ClientSDK>;
53
46
  /**
54
47
  * Initializes the client SDK by performing a handshake with the host application.
55
48
  * Must be called after the client script loads (when running inside an iframe).
@@ -89,6 +82,7 @@ export declare class ClientSDK {
89
82
  * ```
90
83
  */
91
84
  query<K extends QueryKey>(key: K, queryOptions?: QueryOptions<K>): Promise<QueryResult<K>>;
85
+ private handleSubscription;
92
86
  private generateKeyWithHash;
93
87
  /**
94
88
  * Executes a mutation against the host application. Mutations trigger host-side state changes or HTTP requests.
@@ -115,8 +109,39 @@ export declare class ClientSDK {
115
109
  logout(): Promise<void>;
116
110
  openProfile(): Promise<void>;
117
111
  navigateToExternalUrl(url: string, newTab?: boolean): Promise<void>;
112
+ /**
113
+ * Sends a route event to consumers without triggering navigation.
114
+ * This method broadcasts route information that can be received by listeners
115
+ * registered to the 'host.route' event.
116
+ *
117
+ * @param route - The route path or identifier to broadcast
118
+ * @returns A Promise that resolves when the event has been sent
119
+ *
120
+ * @example
121
+ * ```typescript
122
+ * // Send a route event with additional context data
123
+ * await client.emitRouteEvent('/products/123');
124
+ */
125
+ emitRouteEvent(route: string): Promise<void>;
126
+ /**
127
+ * Requests the current value from the host application.
128
+ * @returns A Promise resolving to the value returned by the host.
129
+ */
130
+ getValue(): Promise<any>;
131
+ /**
132
+ * Sets a value in the host application.
133
+ * @param value - The value to set.
134
+ * @param canvasReload - Optional flag to trigger canvas reload in the host.
135
+ * @returns A Promise that resolves when the operation is complete.
136
+ */
137
+ setValue(value: string, canvasReload?: boolean): Promise<void>;
138
+ /**
139
+ * Requests the host application to close the app.
140
+ * @returns A Promise that resolves when the operation is complete.
141
+ */
142
+ closeApp(): Promise<void>;
118
143
  private setNavbarItems;
119
- private unsubscribe;
144
+ private _unsubscribe;
120
145
  /**
121
146
  * Cleans up all active subscriptions and resources.
122
147
  * Call this when the SDK instance is no longer needed.
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGtF,OAAO,KAAK,EACV,QAAQ,EAER,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,SAAS,EACV,MAAM,aAAa,CAAC;AAErB,qBAAa,SAAS;IAKR,OAAO,CAAC,MAAM;IAJ1B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAqC;gBAEhC,MAAM,EAAE,eAAe;IAM3C;;;;;;;;;;;;;;;;;;;;OAoBG;WACU,IAAI,CAAC,MAAM,EAAE;QACxB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;QACtB,MAAM,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;QACnC,WAAW,CAAC,EAAE,gBAAgB,CAAC;KAChC,GAAG,OAAO,CAAC,SAAS,CAAC;IAoCtB;;;;OAIG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBjC,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,gBAAgB;IAoBxB,OAAO,CAAC,gBAAgB;IAsBxB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IAEG,KAAK,CAAC,CAAC,SAAS,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YA0ElF,mBAAmB;IAYjC;;;;;;;;;;;;;;;;;;;OAmBG;IACG,MAAM,CAAC,CAAC,SAAS,WAAW,EAChC,GAAG,EAAE,CAAC,EACN,eAAe,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GACnC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAiBxB,MAAM;IA8Bd,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;YASjE,cAAc;IAM5B,OAAO,CAAC,WAAW;IASnB;;;OAGG;IACH,OAAO,IAAI,IAAI;CAOhB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,WAAW,EACZ,MAAM,SAAS,CAAC;AAGjB,OAAO,KAAK,EACV,QAAQ,EAER,WAAW,EACX,WAAW,EAGZ,MAAM,aAAa,CAAC;AAErB,qBAAa,SAAS;IAKR,OAAO,CAAC,MAAM;IAJ1B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAqC;gBAEhC,MAAM,EAAE,eAAe;IAM3C;;;;;;;;;;;;;;;;;;;;OAoBG;WACU,IAAI,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC;IAoClE;;;;OAIG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBjC,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,gBAAgB;IAoBxB,OAAO,CAAC,gBAAgB;IAsBxB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IAEG,KAAK,CAAC,CAAC,SAAS,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAyDhG,OAAO,CAAC,kBAAkB;YA+BZ,mBAAmB;IAYjC;;;;;;;;;;;;;;;;;;;OAmBG;IACG,MAAM,CAAC,CAAC,SAAS,WAAW,EAChC,GAAG,EAAE,CAAC,EACN,eAAe,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GACnC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAiBxB,MAAM;IA4Bd,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAS/E;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUlD;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC;IAI9B;;;;;OAKG;IACG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpE;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YAIjB,cAAc;IAM5B,OAAO,CAAC,YAAY;IASpB;;;OAGG;IACH,OAAO,IAAI,IAAI;CAOhB"}
package/dist/index.cjs.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var e,t=require("@sitecore-marketplace-sdk/core");class s{queryStates=new Map;listeners=new Map;getQueryState(e){return this.queryStates.has(e)||this.queryStates.set(e,{status:"idle",subscriptionCount:0}),this.queryStates.get(e)}getQueryKeys(){return Array.from(this.queryStates.keys())}updateQueryState(e,t){const s={...this.getQueryState(e),...t};this.queryStates.set(e,s);const r={data:s.data,error:s.error,status:s.status,isLoading:"loading"===s.status,isError:"error"===s.status,isSuccess:"success"===s.status,refetch:async()=>{throw new Error("Refetch not implemented")},unsubscribe:s.unsubscribe};this.listeners.get(e)?.forEach((e=>e(r)))}subscribe(e,t){return this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(t),()=>{const s=this.listeners.get(e);s&&(s.delete(t),0===s.size&&this.listeners.delete(e))}}removeQuery(e){this.queryStates.delete(e),this.listeners.delete(e)}getSubscriptionCount(e){return this.getQueryState(e).subscriptionCount}incrementSubscriptionCount(e){const t=this.getQueryState(e);t.subscriptionCount++,this.queryStates.set(e,t)}decrementSubscriptionCount(e){const t=this.getQueryState(e);t.subscriptionCount--,this.queryStates.set(e,t)}}!function(e){e[e.DEBUG=0]="DEBUG",e[e.INFO=1]="INFO",e[e.WARN=2]="WARN",e[e.ERROR=3]="ERROR"}(e||(e={}));const r=new class{level;constructor(t=e.INFO){this.level=t}debug(t,...s){this.level<=e.DEBUG&&console.debug(`DEBUG: ${t}`,...s)}info(t,...s){this.level<=e.INFO&&console.info(`INFO: ${t}`,...s)}warn(t,...s){this.level<=e.WARN&&console.warn(`WARN: ${t}`,...s)}error(t,...s){this.level<=e.ERROR&&console.error(`ERROR: ${t}`,...s)}setLevel(e){this.level=e}}(e.DEBUG);class i{config;stateManager;coreSdk;modules=new Map;constructor(e){this.config=e,this.stateManager=new s,this.coreSdk=new t.CoreSDK(this.config)}static async init(e){const t={target:e.target,targetOrigin:e.origin,selfOrigin:window.location.origin,timeout:e.timeout,events:e.events,navbarItems:e.navbarItems},s=new i(t);if(await s.initialize(),await s.setNavbarItems(e.navbarItems),e.modules)for(const t of e.modules)s.registerModule(t);return window?(r.info("window is available. Assigning client to window"),window.sitecore_marketplace__clientSdk=s):r.info("window is not available. Not assigning client to window"),e.events&&s.registerHandlers(),s}async initialize(){try{this.coreSdk.initialize({type:"client",targetOrigin:this.config.targetOrigin,selfOrigin:this.config.selfOrigin||window.location.origin,version:"1"}),r.info("Client SDK initialized, performing handshake..."),await this.coreSdk.connect(),r.info("Client handshake successful.")}catch(e){throw r.error("Client handshake failed:",e),e}}registerModule(e){this.modules.set(e.namespace,e)}hasModule(e){return this.modules.has(e)}availableModules(){return Array.from(this.modules.keys())}resolveOperation(e){let t=this.coreSdk.request.bind(this.coreSdk),s=e;if(e.includes(".")){const r=e.indexOf("."),i=e.substring(0,r),n=e.substring(r+1),a=this.modules.get(i);a&&(t=a.invokeOperation.bind(a),s=n)}return{request:t,operation:s}}registerHandlers(){if(!this.coreSdk)return;const e=this.config.events||{};this.coreSdk.on("pages.context",(async t=>{r.debug("Received pages.context request:",t),e.onPageContextUpdate?(e.onPageContextUpdate(t),r.debug("Processed pages.context request.")):r.debug("onPageContextUpdate event listener is not set.")})),this.coreSdk.on("host.route",(e=>{this.config.events?.onRouteUpdate&&this.config.events.onRouteUpdate(e.route)}))}async query(e,t){const{request:s,operation:i}=this.resolveOperation(e),{subscribe:n,onSuccess:a,onError:o,params:u,timeoutMs:c}=t||{},h=await this.generateKeyWithHash(e,t);r.debug(`Query (${e}) initiated with params:`,u,`timeoutMs: ${c}`),this.stateManager.updateQueryState(h,{status:"loading"});try{const c=await s(i,u);if(r.info(`Query (${e}) success:`,c),this.stateManager.updateQueryState(h,{status:"success",data:c}),n&&(this.stateManager.subscribe(e,(e=>{e.data&&a?.(e.data),e.error&&o?.(e.error)})),this.stateManager.incrementSubscriptionCount(h),1===this.stateManager.getSubscriptionCount(h))){const t=this.coreSdk.on(e,(e=>{this.stateManager.updateQueryState(h,{status:"success",data:e})}));this.stateManager.updateQueryState(h,{unsubscribe:t})}a?.(c);const d=this.stateManager.getQueryState(h);return{data:d.data,error:void 0,status:d.status,isLoading:"loading"===d.status,isError:!1,isSuccess:!0,refetch:()=>this.query(e,t),unsubscribe:n?()=>this.unsubscribe(h):void 0}}catch(s){return r.error(`Query (${e}) error:`,s),this.stateManager.updateQueryState(h,{status:"error",error:s}),o?.(s),{data:void 0,error:s,status:"error",isLoading:!1,isError:!0,isSuccess:!1,refetch:()=>this.query(e,t),unsubscribe:n?()=>this.unsubscribe(h):void 0}}}async generateKeyWithHash(e,t){const s=(new TextEncoder).encode(JSON.stringify(t||{})),r=await crypto.subtle.digest("SHA-256",s);return`${e}_${Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("")}`}async mutate(e,t){const{request:s,operation:i}=this.resolveOperation(e),{onSuccess:n,onError:a,params:o,timeoutMs:u}=t||{};r.debug(`Mutation (${e}) initiated with params:`,o,`timeoutMs: ${u}`);try{const t=await s(i,o);return r.info(`Mutation (${e}) success:`,t),n?.(t),t}catch(t){throw r.error(`Mutation (${e}) error:`,t),a?.(t),t}}async _fetch(e){const t=new URL(e.url),s=t.pathname+t.search+t.hash,r=e.method||"GET",i=e?.headers?Object.fromEntries(new Headers(e.headers)):void 0,n=await e.arrayBuffer(),a={body:n.byteLength>0?n:void 0,headers:i,method:r,path:s,requiresAuth:!0};return this.coreSdk.request("host.request",a).then((e=>{const t={headers:e.headers||{},status:e.status||200,statusText:e.statusText||""};return new Response(e.body,t)}))}async logout(){await this.coreSdk.request("host.logout")}async openProfile(){await this.coreSdk.request("host.openProfile")}async navigateToExternalUrl(e,t=!0){if(!e)throw new Error("URL is required for navigateToExternalUrl");const s={url:e,newTab:t};await this.coreSdk.request("host.navigateTo.externalUrl",s)}async setNavbarItems(e){e&&await this.coreSdk.request("host.setNavbarItems",e)}unsubscribe(e){const t=this.stateManager.getQueryState(e);this.stateManager.decrementSubscriptionCount(e),0===this.stateManager.getSubscriptionCount(e)&&(t.unsubscribe?.(),this.stateManager.removeQuery(e))}destroy(){const e=this.stateManager.getQueryKeys();for(const t of e)this.unsubscribe(t)}}exports.ClientSDK=i,exports.objectToJsonArrayBuffer=function(e){const t=JSON.stringify(e);return new Uint8Array((new TextEncoder).encode(t)).buffer};
1
+ "use strict";var e,t=require("@sitecore-marketplace-sdk/core");class s{queryStates=new Map;listeners=new Map;getQueryState(e){return this.queryStates.has(e)||this.queryStates.set(e,{status:"idle",subscriptionCount:0}),this.queryStates.get(e)}getQueryKeys(){return Array.from(this.queryStates.keys())}updateQueryState(e,t){const s={...this.getQueryState(e),...t};this.queryStates.set(e,s);const r={data:s.data,error:s.error,status:s.status,isLoading:"loading"===s.status,isError:"error"===s.status,isSuccess:"success"===s.status,refetch:async()=>{throw new Error("Refetch not implemented")},unsubscribe:s.unsubscribe};this.listeners.get(e)?.forEach((e=>e(r)))}subscribe(e,t){return this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(t),()=>{const s=this.listeners.get(e);s&&(s.delete(t),0===s.size&&this.listeners.delete(e))}}removeQuery(e){this.queryStates.delete(e),this.listeners.delete(e)}getSubscriptionCount(e){return this.getQueryState(e).subscriptionCount}incrementSubscriptionCount(e){const t=this.getQueryState(e);t.subscriptionCount++,this.queryStates.set(e,t)}decrementSubscriptionCount(e){const t=this.getQueryState(e);t.subscriptionCount>0&&(t.subscriptionCount--,this.queryStates.set(e,t))}}!function(e){e[e.DEBUG=0]="DEBUG",e[e.INFO=1]="INFO",e[e.WARN=2]="WARN",e[e.ERROR=3]="ERROR"}(e||(e={}));const r=new class{level;constructor(t=e.INFO){this.level=t}debug(t,...s){this.level<=e.DEBUG&&console.debug(`DEBUG: ${t}`,...s)}info(t,...s){this.level<=e.INFO&&console.info(`INFO: ${t}`,...s)}warn(t,...s){this.level<=e.WARN&&console.warn(`WARN: ${t}`,...s)}error(t,...s){this.level<=e.ERROR&&console.error(`ERROR: ${t}`,...s)}setLevel(e){this.level=e}}(e.DEBUG);class i{config;stateManager;coreSdk;modules=new Map;constructor(e){this.config=e,this.stateManager=new s,this.coreSdk=new t.CoreSDK(this.config)}static async init(e){const t={target:e.target||window.parent,targetOrigin:e.origin,selfOrigin:window.location.origin,timeout:e.timeout,events:e.events,navbarItems:e.navbarItems},s=new i(t);if(await s.initialize(),await s.setNavbarItems(e.navbarItems),e.modules)for(const t of e.modules)s.registerModule(t);return window?(r.info("window is available. Assigning client to window"),window.sitecore_marketplace__clientSdk=s):r.info("window is not available. Not assigning client to window"),e.events&&s.registerHandlers(),s}async initialize(){try{this.coreSdk.initialize({type:"client",targetOrigin:this.config.targetOrigin,selfOrigin:this.config.selfOrigin||window.location.origin,version:"1"}),r.info("Client SDK initialized, performing handshake..."),await this.coreSdk.connect(),r.info("Client handshake successful.")}catch(e){throw r.error("Client handshake failed:",e),e}}registerModule(e){this.modules.set(e.namespace,e)}hasModule(e){return this.modules.has(e)}availableModules(){return Array.from(this.modules.keys())}resolveOperation(e,t){let s=this.coreSdk.request.bind(this.coreSdk),r=e+":"+t;if(e.includes(".")){const t=e.indexOf("."),i=e.substring(0,t),n=e.substring(t+1),a=this.modules.get(i);a&&(s=a.invokeOperation.bind(a),r=n)}return{request:s,operation:r}}registerHandlers(){if(!this.coreSdk)return;const e=this.config.events||{};this.coreSdk.on("pages.context",(async t=>{r.debug("Received pages.context request:",t),e.onPageContextUpdate?(e.onPageContextUpdate(t),r.debug("Processed pages.context request.")):r.debug("onPageContextUpdate event listener is not set.")})),this.coreSdk.on("host.route",(e=>{this.config.events?.onRouteUpdate&&this.config.events.onRouteUpdate(e.route)}))}async query(e,t){const{request:s,operation:i}=this.resolveOperation(e,"query"),{subscribe:n,onSuccess:a,onError:o,params:u,timeoutMs:c}=t||{},d=n?e:await this.generateKeyWithHash(e,t);let h;r.debug(`Query (${e}) initiated with params:`,u,`timeoutMs: ${c}`);try{n&&(h=this.handleSubscription(d,a,o)),this.stateManager.updateQueryState(d,{status:"loading"});const c=await s(i,u);r.info(`Query (${e}) success:`,c),this.stateManager.updateQueryState(d,{status:"success",data:c});const l=this.stateManager.getQueryState(d);return{data:l.data,error:void 0,status:l.status,isLoading:"loading"===l.status,isError:!1,isSuccess:!0,refetch:()=>this.query(e,t),unsubscribe:n?h:void 0}}catch(s){return r.error(`Query (${e}) error:`,s),this.stateManager.updateQueryState(d,{status:"error",error:s}),o?.(s),{data:void 0,error:s,status:"error",isLoading:!1,isError:!0,isSuccess:!1,refetch:()=>this.query(e,t),unsubscribe:n?h:void 0}}}handleSubscription(e,t,s){let r=this.stateManager.subscribe(e,(e=>{e.data&&t?.(e.data),e.error&&s?.(e.error)}));if(this.stateManager.incrementSubscriptionCount(e),1===this.stateManager.getSubscriptionCount(e)){const t=this.coreSdk.on(e,(t=>{this.stateManager.updateQueryState(e,{status:"success",data:t})}));this.stateManager.updateQueryState(e,{unsubscribe:t})}return()=>{r?.(),this._unsubscribe(e)}}async generateKeyWithHash(e,t){const s=(new TextEncoder).encode(JSON.stringify(t||{})),r=await crypto.subtle.digest("SHA-256",s);return`${e}_${Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("")}`}async mutate(e,t){const{request:s,operation:i}=this.resolveOperation(e,"mutation"),{onSuccess:n,onError:a,params:o,timeoutMs:u}=t||{};r.debug(`Mutation (${e}) initiated with params:`,o,`timeoutMs: ${u}`);try{const t=await s(i,o);return r.info(`Mutation (${e}) success:`,t),n?.(t),t}catch(t){throw r.error(`Mutation (${e}) error:`,t),a?.(t),t}}async _fetch(e){const t=new URL(e.url),s=t.pathname+t.search+t.hash,r=e.method||"GET",i=e?.headers?Object.fromEntries(new Headers(e.headers)):void 0,n=await e.arrayBuffer(),a={body:n.byteLength>0?n:void 0,headers:i,method:r,path:s,requiresAuth:!0};return this.coreSdk.request("host.request",a).then((e=>{const t={headers:e.headers||{},status:e.status||200,statusText:e.statusText||""};return new Response(e.body,t)}))}async logout(){await this.coreSdk.request("host.logout")}async openProfile(){await this.coreSdk.request("host.openProfile")}async navigateToExternalUrl(e,t=!0){if(!e)throw new Error("URL is required for navigateToExternalUrl");const s={url:e,newTab:t};await this.coreSdk.request("host.navigateTo.externalUrl",s)}async emitRouteEvent(e){if(!e)throw new Error("Route is required for sendRouteEvent");r.debug(`Sending route event: ${e}`);const t={route:e};this.coreSdk.emit("client.route",t)}async getValue(){return this.coreSdk.request("pages.getValue",{})}async setValue(e,t){await this.coreSdk.request("pages.setValue",{value:e,canvasReload:t})}async closeApp(){await this.coreSdk.request("pages.closeApp",{})}async setNavbarItems(e){e&&await this.coreSdk.request("host.setNavbarItems",e)}_unsubscribe(e){const t=this.stateManager.getQueryState(e);this.stateManager.decrementSubscriptionCount(e),0===this.stateManager.getSubscriptionCount(e)&&(t.unsubscribe?.(),this.stateManager.removeQuery(e))}destroy(){const e=this.stateManager.getQueryKeys();for(const t of e)this._unsubscribe(t)}}exports.ClientSDK=i,exports.objectToJsonArrayBuffer=function(e){const t=JSON.stringify(e);return new Uint8Array((new TextEncoder).encode(t)).buffer};
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../src/logger.ts","../src/state.ts","../src/client.ts","../src/utils.ts"],"sourcesContent":[null,null,null,null],"names":["LogLevel","StateManager","queryStates","Map","listeners","getQueryState","key","this","has","set","status","subscriptionCount","get","getQueryKeys","Array","from","keys","updateQueryState","updates","newState","queryResult","data","error","isLoading","isError","isSuccess","refetch","async","Error","unsubscribe","forEach","listener","subscribe","Set","add","delete","size","removeQuery","getSubscriptionCount","incrementSubscriptionCount","state","decrementSubscriptionCount","logger","level","constructor","INFO","debug","message","args","DEBUG","console","info","warn","WARN","ERROR","setLevel","ClientSDK","config","stateManager","coreSdk","modules","CoreSDK","init","coreConfig","target","targetOrigin","origin","selfOrigin","window","location","timeout","events","navbarItems","client","initialize","setNavbarItems","module","registerModule","sitecore_marketplace__clientSdk","registerHandlers","type","version","connect","namespace","hasModule","availableModules","resolveOperation","keyOrOperationKey","request","bind","operation","includes","firstDotIndex","indexOf","substring","operationName","invokeOperation","on","payload","onPageContextUpdate","onRouteUpdate","route","query","queryOptions","onSuccess","onError","params","timeoutMs","hashedKey","generateKeyWithHash","updatedData","undefined","options","TextEncoder","encode","JSON","stringify","hashBuffer","crypto","subtle","digest","Uint8Array","map","byte","toString","padStart","join","mutate","mutationOptions","_fetch","input","url","URL","path","pathname","search","hash","method","headers","Object","fromEntries","Headers","body","arrayBuffer","genericRequest","byteLength","requiresAuth","then","response","statusText","Response","logout","openProfile","navigateToExternalUrl","newTab","destroy","jsonString","buffer"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../src/logger.ts","../src/state.ts","../src/client.ts","../src/utils.ts"],"sourcesContent":[null,null,null,null],"names":["LogLevel","StateManager","queryStates","Map","listeners","getQueryState","key","this","has","set","status","subscriptionCount","get","getQueryKeys","Array","from","keys","updateQueryState","updates","newState","queryResult","data","error","isLoading","isError","isSuccess","refetch","async","Error","unsubscribe","forEach","listener","subscribe","Set","add","delete","size","removeQuery","getSubscriptionCount","incrementSubscriptionCount","state","decrementSubscriptionCount","logger","level","constructor","INFO","debug","message","args","DEBUG","console","info","warn","WARN","ERROR","setLevel","ClientSDK","config","stateManager","coreSdk","modules","CoreSDK","init","coreConfig","target","window","parent","targetOrigin","origin","selfOrigin","location","timeout","events","navbarItems","client","initialize","setNavbarItems","module","registerModule","sitecore_marketplace__clientSdk","registerHandlers","type","version","connect","namespace","hasModule","availableModules","resolveOperation","keyOrOperationKey","request","bind","operation","includes","firstDotIndex","indexOf","substring","operationName","invokeOperation","on","payload","onPageContextUpdate","onRouteUpdate","route","query","queryOptions","onSuccess","onError","params","timeoutMs","hashedKey","generateKeyWithHash","handleSubscription","undefined","stateChangeUnsubscribe","coreUnsubscribe","updatedData","_unsubscribe","options","TextEncoder","encode","JSON","stringify","hashBuffer","crypto","subtle","digest","Uint8Array","map","byte","toString","padStart","join","mutate","mutationOptions","_fetch","input","url","URL","path","pathname","search","hash","method","headers","Object","fromEntries","Headers","body","arrayBuffer","genericRequest","byteLength","requiresAuth","then","response","statusText","Response","logout","openProfile","navigateToExternalUrl","newTab","emitRouteEvent","emit","getValue","setValue","value","canvasReload","closeApp","destroy","jsonString","buffer"],"mappings":"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"}
package/dist/index.esm.js CHANGED
@@ -1,2 +1,2 @@
1
- import{CoreSDK as e}from"@sitecore-marketplace-sdk/core";class t{queryStates=new Map;listeners=new Map;getQueryState(e){return this.queryStates.has(e)||this.queryStates.set(e,{status:"idle",subscriptionCount:0}),this.queryStates.get(e)}getQueryKeys(){return Array.from(this.queryStates.keys())}updateQueryState(e,t){const s={...this.getQueryState(e),...t};this.queryStates.set(e,s);const r={data:s.data,error:s.error,status:s.status,isLoading:"loading"===s.status,isError:"error"===s.status,isSuccess:"success"===s.status,refetch:async()=>{throw new Error("Refetch not implemented")},unsubscribe:s.unsubscribe};this.listeners.get(e)?.forEach((e=>e(r)))}subscribe(e,t){return this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(t),()=>{const s=this.listeners.get(e);s&&(s.delete(t),0===s.size&&this.listeners.delete(e))}}removeQuery(e){this.queryStates.delete(e),this.listeners.delete(e)}getSubscriptionCount(e){return this.getQueryState(e).subscriptionCount}incrementSubscriptionCount(e){const t=this.getQueryState(e);t.subscriptionCount++,this.queryStates.set(e,t)}decrementSubscriptionCount(e){const t=this.getQueryState(e);t.subscriptionCount--,this.queryStates.set(e,t)}}var s;!function(e){e[e.DEBUG=0]="DEBUG",e[e.INFO=1]="INFO",e[e.WARN=2]="WARN",e[e.ERROR=3]="ERROR"}(s||(s={}));const r=new class{level;constructor(e=s.INFO){this.level=e}debug(e,...t){this.level<=s.DEBUG&&console.debug(`DEBUG: ${e}`,...t)}info(e,...t){this.level<=s.INFO&&console.info(`INFO: ${e}`,...t)}warn(e,...t){this.level<=s.WARN&&console.warn(`WARN: ${e}`,...t)}error(e,...t){this.level<=s.ERROR&&console.error(`ERROR: ${e}`,...t)}setLevel(e){this.level=e}}(s.DEBUG);class i{config;stateManager;coreSdk;modules=new Map;constructor(s){this.config=s,this.stateManager=new t,this.coreSdk=new e(this.config)}static async init(e){const t={target:e.target,targetOrigin:e.origin,selfOrigin:window.location.origin,timeout:e.timeout,events:e.events,navbarItems:e.navbarItems},s=new i(t);if(await s.initialize(),await s.setNavbarItems(e.navbarItems),e.modules)for(const t of e.modules)s.registerModule(t);return window?(r.info("window is available. Assigning client to window"),window.sitecore_marketplace__clientSdk=s):r.info("window is not available. Not assigning client to window"),e.events&&s.registerHandlers(),s}async initialize(){try{this.coreSdk.initialize({type:"client",targetOrigin:this.config.targetOrigin,selfOrigin:this.config.selfOrigin||window.location.origin,version:"1"}),r.info("Client SDK initialized, performing handshake..."),await this.coreSdk.connect(),r.info("Client handshake successful.")}catch(e){throw r.error("Client handshake failed:",e),e}}registerModule(e){this.modules.set(e.namespace,e)}hasModule(e){return this.modules.has(e)}availableModules(){return Array.from(this.modules.keys())}resolveOperation(e){let t=this.coreSdk.request.bind(this.coreSdk),s=e;if(e.includes(".")){const r=e.indexOf("."),i=e.substring(0,r),a=e.substring(r+1),n=this.modules.get(i);n&&(t=n.invokeOperation.bind(n),s=a)}return{request:t,operation:s}}registerHandlers(){if(!this.coreSdk)return;const e=this.config.events||{};this.coreSdk.on("pages.context",(async t=>{r.debug("Received pages.context request:",t),e.onPageContextUpdate?(e.onPageContextUpdate(t),r.debug("Processed pages.context request.")):r.debug("onPageContextUpdate event listener is not set.")})),this.coreSdk.on("host.route",(e=>{this.config.events?.onRouteUpdate&&this.config.events.onRouteUpdate(e.route)}))}async query(e,t){const{request:s,operation:i}=this.resolveOperation(e),{subscribe:a,onSuccess:n,onError:o,params:u,timeoutMs:c}=t||{},h=await this.generateKeyWithHash(e,t);r.debug(`Query (${e}) initiated with params:`,u,`timeoutMs: ${c}`),this.stateManager.updateQueryState(h,{status:"loading"});try{const c=await s(i,u);if(r.info(`Query (${e}) success:`,c),this.stateManager.updateQueryState(h,{status:"success",data:c}),a&&(this.stateManager.subscribe(e,(e=>{e.data&&n?.(e.data),e.error&&o?.(e.error)})),this.stateManager.incrementSubscriptionCount(h),1===this.stateManager.getSubscriptionCount(h))){const t=this.coreSdk.on(e,(e=>{this.stateManager.updateQueryState(h,{status:"success",data:e})}));this.stateManager.updateQueryState(h,{unsubscribe:t})}n?.(c);const d=this.stateManager.getQueryState(h);return{data:d.data,error:void 0,status:d.status,isLoading:"loading"===d.status,isError:!1,isSuccess:!0,refetch:()=>this.query(e,t),unsubscribe:a?()=>this.unsubscribe(h):void 0}}catch(s){return r.error(`Query (${e}) error:`,s),this.stateManager.updateQueryState(h,{status:"error",error:s}),o?.(s),{data:void 0,error:s,status:"error",isLoading:!1,isError:!0,isSuccess:!1,refetch:()=>this.query(e,t),unsubscribe:a?()=>this.unsubscribe(h):void 0}}}async generateKeyWithHash(e,t){const s=(new TextEncoder).encode(JSON.stringify(t||{})),r=await crypto.subtle.digest("SHA-256",s);return`${e}_${Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("")}`}async mutate(e,t){const{request:s,operation:i}=this.resolveOperation(e),{onSuccess:a,onError:n,params:o,timeoutMs:u}=t||{};r.debug(`Mutation (${e}) initiated with params:`,o,`timeoutMs: ${u}`);try{const t=await s(i,o);return r.info(`Mutation (${e}) success:`,t),a?.(t),t}catch(t){throw r.error(`Mutation (${e}) error:`,t),n?.(t),t}}async _fetch(e){const t=new URL(e.url),s=t.pathname+t.search+t.hash,r=e.method||"GET",i=e?.headers?Object.fromEntries(new Headers(e.headers)):void 0,a=await e.arrayBuffer(),n={body:a.byteLength>0?a:void 0,headers:i,method:r,path:s,requiresAuth:!0};return this.coreSdk.request("host.request",n).then((e=>{const t={headers:e.headers||{},status:e.status||200,statusText:e.statusText||""};return new Response(e.body,t)}))}async logout(){await this.coreSdk.request("host.logout")}async openProfile(){await this.coreSdk.request("host.openProfile")}async navigateToExternalUrl(e,t=!0){if(!e)throw new Error("URL is required for navigateToExternalUrl");const s={url:e,newTab:t};await this.coreSdk.request("host.navigateTo.externalUrl",s)}async setNavbarItems(e){e&&await this.coreSdk.request("host.setNavbarItems",e)}unsubscribe(e){const t=this.stateManager.getQueryState(e);this.stateManager.decrementSubscriptionCount(e),0===this.stateManager.getSubscriptionCount(e)&&(t.unsubscribe?.(),this.stateManager.removeQuery(e))}destroy(){const e=this.stateManager.getQueryKeys();for(const t of e)this.unsubscribe(t)}}function a(e){const t=JSON.stringify(e);return new Uint8Array((new TextEncoder).encode(t)).buffer}export{i as ClientSDK,a as objectToJsonArrayBuffer};
1
+ import{CoreSDK as e}from"@sitecore-marketplace-sdk/core";class t{queryStates=new Map;listeners=new Map;getQueryState(e){return this.queryStates.has(e)||this.queryStates.set(e,{status:"idle",subscriptionCount:0}),this.queryStates.get(e)}getQueryKeys(){return Array.from(this.queryStates.keys())}updateQueryState(e,t){const s={...this.getQueryState(e),...t};this.queryStates.set(e,s);const r={data:s.data,error:s.error,status:s.status,isLoading:"loading"===s.status,isError:"error"===s.status,isSuccess:"success"===s.status,refetch:async()=>{throw new Error("Refetch not implemented")},unsubscribe:s.unsubscribe};this.listeners.get(e)?.forEach((e=>e(r)))}subscribe(e,t){return this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(t),()=>{const s=this.listeners.get(e);s&&(s.delete(t),0===s.size&&this.listeners.delete(e))}}removeQuery(e){this.queryStates.delete(e),this.listeners.delete(e)}getSubscriptionCount(e){return this.getQueryState(e).subscriptionCount}incrementSubscriptionCount(e){const t=this.getQueryState(e);t.subscriptionCount++,this.queryStates.set(e,t)}decrementSubscriptionCount(e){const t=this.getQueryState(e);t.subscriptionCount>0&&(t.subscriptionCount--,this.queryStates.set(e,t))}}var s;!function(e){e[e.DEBUG=0]="DEBUG",e[e.INFO=1]="INFO",e[e.WARN=2]="WARN",e[e.ERROR=3]="ERROR"}(s||(s={}));const r=new class{level;constructor(e=s.INFO){this.level=e}debug(e,...t){this.level<=s.DEBUG&&console.debug(`DEBUG: ${e}`,...t)}info(e,...t){this.level<=s.INFO&&console.info(`INFO: ${e}`,...t)}warn(e,...t){this.level<=s.WARN&&console.warn(`WARN: ${e}`,...t)}error(e,...t){this.level<=s.ERROR&&console.error(`ERROR: ${e}`,...t)}setLevel(e){this.level=e}}(s.DEBUG);class i{config;stateManager;coreSdk;modules=new Map;constructor(s){this.config=s,this.stateManager=new t,this.coreSdk=new e(this.config)}static async init(e){const t={target:e.target||window.parent,targetOrigin:e.origin,selfOrigin:window.location.origin,timeout:e.timeout,events:e.events,navbarItems:e.navbarItems},s=new i(t);if(await s.initialize(),await s.setNavbarItems(e.navbarItems),e.modules)for(const t of e.modules)s.registerModule(t);return window?(r.info("window is available. Assigning client to window"),window.sitecore_marketplace__clientSdk=s):r.info("window is not available. Not assigning client to window"),e.events&&s.registerHandlers(),s}async initialize(){try{this.coreSdk.initialize({type:"client",targetOrigin:this.config.targetOrigin,selfOrigin:this.config.selfOrigin||window.location.origin,version:"1"}),r.info("Client SDK initialized, performing handshake..."),await this.coreSdk.connect(),r.info("Client handshake successful.")}catch(e){throw r.error("Client handshake failed:",e),e}}registerModule(e){this.modules.set(e.namespace,e)}hasModule(e){return this.modules.has(e)}availableModules(){return Array.from(this.modules.keys())}resolveOperation(e,t){let s=this.coreSdk.request.bind(this.coreSdk),r=e+":"+t;if(e.includes(".")){const t=e.indexOf("."),i=e.substring(0,t),n=e.substring(t+1),a=this.modules.get(i);a&&(s=a.invokeOperation.bind(a),r=n)}return{request:s,operation:r}}registerHandlers(){if(!this.coreSdk)return;const e=this.config.events||{};this.coreSdk.on("pages.context",(async t=>{r.debug("Received pages.context request:",t),e.onPageContextUpdate?(e.onPageContextUpdate(t),r.debug("Processed pages.context request.")):r.debug("onPageContextUpdate event listener is not set.")})),this.coreSdk.on("host.route",(e=>{this.config.events?.onRouteUpdate&&this.config.events.onRouteUpdate(e.route)}))}async query(e,t){const{request:s,operation:i}=this.resolveOperation(e,"query"),{subscribe:n,onSuccess:a,onError:o,params:u,timeoutMs:c}=t||{},d=n?e:await this.generateKeyWithHash(e,t);let h;r.debug(`Query (${e}) initiated with params:`,u,`timeoutMs: ${c}`);try{n&&(h=this.handleSubscription(d,a,o)),this.stateManager.updateQueryState(d,{status:"loading"});const c=await s(i,u);r.info(`Query (${e}) success:`,c),this.stateManager.updateQueryState(d,{status:"success",data:c});const l=this.stateManager.getQueryState(d);return{data:l.data,error:void 0,status:l.status,isLoading:"loading"===l.status,isError:!1,isSuccess:!0,refetch:()=>this.query(e,t),unsubscribe:n?h:void 0}}catch(s){return r.error(`Query (${e}) error:`,s),this.stateManager.updateQueryState(d,{status:"error",error:s}),o?.(s),{data:void 0,error:s,status:"error",isLoading:!1,isError:!0,isSuccess:!1,refetch:()=>this.query(e,t),unsubscribe:n?h:void 0}}}handleSubscription(e,t,s){let r=this.stateManager.subscribe(e,(e=>{e.data&&t?.(e.data),e.error&&s?.(e.error)}));if(this.stateManager.incrementSubscriptionCount(e),1===this.stateManager.getSubscriptionCount(e)){const t=this.coreSdk.on(e,(t=>{this.stateManager.updateQueryState(e,{status:"success",data:t})}));this.stateManager.updateQueryState(e,{unsubscribe:t})}return()=>{r?.(),this._unsubscribe(e)}}async generateKeyWithHash(e,t){const s=(new TextEncoder).encode(JSON.stringify(t||{})),r=await crypto.subtle.digest("SHA-256",s);return`${e}_${Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("")}`}async mutate(e,t){const{request:s,operation:i}=this.resolveOperation(e,"mutation"),{onSuccess:n,onError:a,params:o,timeoutMs:u}=t||{};r.debug(`Mutation (${e}) initiated with params:`,o,`timeoutMs: ${u}`);try{const t=await s(i,o);return r.info(`Mutation (${e}) success:`,t),n?.(t),t}catch(t){throw r.error(`Mutation (${e}) error:`,t),a?.(t),t}}async _fetch(e){const t=new URL(e.url),s=t.pathname+t.search+t.hash,r=e.method||"GET",i=e?.headers?Object.fromEntries(new Headers(e.headers)):void 0,n=await e.arrayBuffer(),a={body:n.byteLength>0?n:void 0,headers:i,method:r,path:s,requiresAuth:!0};return this.coreSdk.request("host.request",a).then((e=>{const t={headers:e.headers||{},status:e.status||200,statusText:e.statusText||""};return new Response(e.body,t)}))}async logout(){await this.coreSdk.request("host.logout")}async openProfile(){await this.coreSdk.request("host.openProfile")}async navigateToExternalUrl(e,t=!0){if(!e)throw new Error("URL is required for navigateToExternalUrl");const s={url:e,newTab:t};await this.coreSdk.request("host.navigateTo.externalUrl",s)}async emitRouteEvent(e){if(!e)throw new Error("Route is required for sendRouteEvent");r.debug(`Sending route event: ${e}`);const t={route:e};this.coreSdk.emit("client.route",t)}async getValue(){return this.coreSdk.request("pages.getValue",{})}async setValue(e,t){await this.coreSdk.request("pages.setValue",{value:e,canvasReload:t})}async closeApp(){await this.coreSdk.request("pages.closeApp",{})}async setNavbarItems(e){e&&await this.coreSdk.request("host.setNavbarItems",e)}_unsubscribe(e){const t=this.stateManager.getQueryState(e);this.stateManager.decrementSubscriptionCount(e),0===this.stateManager.getSubscriptionCount(e)&&(t.unsubscribe?.(),this.stateManager.removeQuery(e))}destroy(){const e=this.stateManager.getQueryKeys();for(const t of e)this._unsubscribe(t)}}function n(e){const t=JSON.stringify(e);return new Uint8Array((new TextEncoder).encode(t)).buffer}export{i as ClientSDK,n as objectToJsonArrayBuffer};
2
2
  //# sourceMappingURL=index.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/state.ts","../src/logger.ts","../src/client.ts","../src/utils.ts"],"sourcesContent":[null,null,null,null],"names":["StateManager","queryStates","Map","listeners","getQueryState","key","this","has","set","status","subscriptionCount","get","getQueryKeys","Array","from","keys","updateQueryState","updates","newState","queryResult","data","error","isLoading","isError","isSuccess","refetch","async","Error","unsubscribe","forEach","listener","subscribe","Set","add","delete","size","removeQuery","getSubscriptionCount","incrementSubscriptionCount","state","decrementSubscriptionCount","LogLevel","logger","level","constructor","INFO","debug","message","args","DEBUG","console","info","warn","WARN","ERROR","setLevel","ClientSDK","config","stateManager","coreSdk","modules","CoreSDK","init","coreConfig","target","targetOrigin","origin","selfOrigin","window","location","timeout","events","navbarItems","client","initialize","setNavbarItems","module","registerModule","sitecore_marketplace__clientSdk","registerHandlers","type","version","connect","namespace","hasModule","availableModules","resolveOperation","keyOrOperationKey","request","bind","operation","includes","firstDotIndex","indexOf","substring","operationName","invokeOperation","on","payload","onPageContextUpdate","onRouteUpdate","route","query","queryOptions","onSuccess","onError","params","timeoutMs","hashedKey","generateKeyWithHash","updatedData","undefined","options","TextEncoder","encode","JSON","stringify","hashBuffer","crypto","subtle","digest","Uint8Array","map","byte","toString","padStart","join","mutate","mutationOptions","_fetch","input","url","URL","path","pathname","search","hash","method","headers","Object","fromEntries","Headers","body","arrayBuffer","genericRequest","byteLength","requiresAuth","then","response","statusText","Response","logout","openProfile","navigateToExternalUrl","newTab","destroy","objectToJsonArrayBuffer","jsonString","buffer"],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/state.ts","../src/logger.ts","../src/client.ts","../src/utils.ts"],"sourcesContent":[null,null,null,null],"names":["StateManager","queryStates","Map","listeners","getQueryState","key","this","has","set","status","subscriptionCount","get","getQueryKeys","Array","from","keys","updateQueryState","updates","newState","queryResult","data","error","isLoading","isError","isSuccess","refetch","async","Error","unsubscribe","forEach","listener","subscribe","Set","add","delete","size","removeQuery","getSubscriptionCount","incrementSubscriptionCount","state","decrementSubscriptionCount","LogLevel","logger","level","constructor","INFO","debug","message","args","DEBUG","console","info","warn","WARN","ERROR","setLevel","ClientSDK","config","stateManager","coreSdk","modules","CoreSDK","init","coreConfig","target","window","parent","targetOrigin","origin","selfOrigin","location","timeout","events","navbarItems","client","initialize","setNavbarItems","module","registerModule","sitecore_marketplace__clientSdk","registerHandlers","type","version","connect","namespace","hasModule","availableModules","resolveOperation","keyOrOperationKey","request","bind","operation","includes","firstDotIndex","indexOf","substring","operationName","invokeOperation","on","payload","onPageContextUpdate","onRouteUpdate","route","query","queryOptions","onSuccess","onError","params","timeoutMs","hashedKey","generateKeyWithHash","handleSubscription","undefined","stateChangeUnsubscribe","coreUnsubscribe","updatedData","_unsubscribe","options","TextEncoder","encode","JSON","stringify","hashBuffer","crypto","subtle","digest","Uint8Array","map","byte","toString","padStart","join","mutate","mutationOptions","_fetch","input","url","URL","path","pathname","search","hash","method","headers","Object","fromEntries","Headers","body","arrayBuffer","genericRequest","byteLength","requiresAuth","then","response","statusText","Response","logout","openProfile","navigateToExternalUrl","newTab","emitRouteEvent","emit","getValue","setValue","value","canvasReload","closeApp","destroy","objectToJsonArrayBuffer","jsonString","buffer"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ApplicationContext, UserInfo } from '@sitecore-marketplace-sdk/core';
1
+ import { ApplicationContext, UserInfo, PagesContextParams } from '@sitecore-marketplace-sdk/core';
2
2
  export type AppType = 'portal' | 'xmc:xmapps' | 'xmc:pages-contextview';
3
3
  export type HostState<T extends AppType = AppType> = T extends 'portal' ? null : T extends 'xmc:xmapps' ? XmcXmAppsHostState : T extends 'xmc:pages-contextview' ? XmcPagesContextViewHostState : never;
4
4
  export interface XmcXmAppsHostState {
@@ -156,6 +156,25 @@ interface PagesContextPageInfo {
156
156
  route?: string;
157
157
  [key: string]: any;
158
158
  }
159
+ interface SiteContext {
160
+ siteInfo: {
161
+ siteId: string;
162
+ name: string;
163
+ displayName: string;
164
+ url: string;
165
+ hosts: {
166
+ id: string;
167
+ name: string;
168
+ languageSettings: {
169
+ defaultLanguage: string;
170
+ [key: string]: any;
171
+ };
172
+ [key: string]: any;
173
+ }[];
174
+ [key: string]: any;
175
+ } | null;
176
+ [key: string]: any;
177
+ }
159
178
  export interface QueryMap {
160
179
  'host.user': {
161
180
  params: void;
@@ -177,6 +196,11 @@ export interface QueryMap {
177
196
  response: ApplicationContext;
178
197
  subscribe: false;
179
198
  };
199
+ 'site.context': {
200
+ params: void;
201
+ response: SiteContext;
202
+ subscribe: false;
203
+ };
180
204
  'host.route': {
181
205
  params: void;
182
206
  response: string;
@@ -184,6 +208,16 @@ export interface QueryMap {
184
208
  };
185
209
  }
186
210
  export interface MutationMap {
211
+ 'pages.reloadCanvas': {
212
+ params: void;
213
+ response: void;
214
+ subscribe: false;
215
+ };
216
+ 'pages.context': {
217
+ params: PagesContextParams;
218
+ response: void;
219
+ subscribe: false;
220
+ };
187
221
  }
188
222
  export type QueryKey = keyof QueryMap;
189
223
  export type MutationKey = keyof MutationMap;
@@ -1 +1 @@
1
- {"version":3,"file":"sdk-types.d.ts","sourceRoot":"","sources":["../src/sdk-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk-types.d.ts","sourceRoot":"","sources":["../src/sdk-types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAExD,UAAU,UAAU,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,SAAS,KAAK,GAAG,KAAK;IAChE,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,SAAS,CAAmE;IAEpF;;OAEG;IACH,aAAa,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,SAAS,KAAK,GAAG,KAAK,EACzD,GAAG,EAAE,MAAM,GACV,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC;IAU5B;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;OAEG;IACH,gBAAgB,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,SAAS,KAAK,GAAG,KAAK,EAC5D,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,GAC1C,IAAI;IAuBP;;OAEG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,GAAG,MAAM,IAAI;IAkBhF;;OAEG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAK9B;;OAEG;IACH,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIzC;;OAEG;IACH,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAM7C;;OAEG;IACH,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAK9C"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAExD,UAAU,UAAU,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,SAAS,KAAK,GAAG,KAAK;IAChE,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,SAAS,CAAmE;IAEpF;;OAEG;IACH,aAAa,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,SAAS,KAAK,GAAG,KAAK,EACzD,GAAG,EAAE,MAAM,GACV,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC;IAU5B;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;OAEG;IACH,gBAAgB,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,SAAS,KAAK,GAAG,KAAK,EAC5D,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,GAC1C,IAAI;IAuBP;;OAEG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,GAAG,MAAM,IAAI;IAkBhF;;OAEG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAK9B;;OAEG;IACH,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIzC;;OAEG;IACH,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAM7C;;OAEG;IACH,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAO9C"}
package/dist/types.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { CoreSDKConfig } from '@sitecore-marketplace-sdk/core';
2
- import { MutationKey, MutationMap, NavbarItemsProps, QueryKey, QueryMap } from './sdk-types';
2
+ import { MutationKey, MutationMap, NavbarItemsProps, QueryKey, QueryMap, SDKModule } from './sdk-types';
3
3
  export type QueryStatus = 'idle' | 'loading' | 'error' | 'success';
4
4
  export interface BaseQueryOptions<TData = unknown, TError extends Error = Error, TParams = {}> {
5
5
  /** Whether to subscribe to updates for this query */
@@ -56,7 +56,7 @@ export interface MutationOptions<K extends MutationKey> extends BaseMutationOpti
56
56
  */
57
57
  export interface ClientSDKConfig extends CoreSDKConfig {
58
58
  /** The origin of the remote endpoint (e.g. client for the host, or host for the client) */
59
- targetOrigin: string;
59
+ targetOrigin?: string;
60
60
  /** Our own origin – this defaults to the value of window.location.origin */
61
61
  selfOrigin: string;
62
62
  /** Events that the SDK can listen for */
@@ -66,4 +66,13 @@ export interface ClientSDKConfig extends CoreSDKConfig {
66
66
  };
67
67
  navbarItems?: NavbarItemsProps;
68
68
  }
69
+ export type ClientSDKInitConfig = {
70
+ origin?: string;
71
+ target: Window;
72
+ timeout?: number;
73
+ modules?: SDKModule[];
74
+ events?: ClientSDKConfig['events'];
75
+ navbarItems?: NavbarItemsProps;
76
+ };
77
+ export { UserInfo, ApplicationContext } from '@sitecore-marketplace-sdk/core';
69
78
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sitecore-marketplace-sdk/client",
3
- "version": "0.1.1",
3
+ "version": "0.1.4",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs.js",
@@ -27,9 +27,9 @@
27
27
  "client"
28
28
  ],
29
29
  "dependencies": {
30
- "@sitecore-marketplace-sdk/core": "0.1.1",
31
30
  "tslib": "^2.8.1",
32
- "uuid": "^11.1.0"
31
+ "uuid": "^11.1.0",
32
+ "@sitecore-marketplace-sdk/core": "0.1.4"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@rollup/plugin-node-resolve": "^16.0.0",
@@ -68,6 +68,7 @@
68
68
  "clean": "rimraf dist tsconfig.tsbuildinfo",
69
69
  "lint": "eslint src --ext .ts",
70
70
  "test": "vitest",
71
- "coverage": "vitest run --coverage"
71
+ "coverage": "vitest run --coverage",
72
+ "generate:docs": "npx typedoc --plugin typedoc-plugin-markdown --outputFileStrategy Members --parametersFormat table --readme none --out ../../docs/client src/index.ts --githubPages false"
72
73
  }
73
74
  }