@gooddata/sdk-pluggable-application-model 11.28.0-alpha.2 → 11.28.0-alpha.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/esm/index.d.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * @packageDocumentation
5
5
  */
6
- export { type EmbeddingMode, type IOrganization, type IOrganizationPermissions, type IPlatformContext, type IPlatformContextV1, type IPluggableApplicationNavigation, PantherTier, isPlatformContextV1, } from "./platformContext.js";
6
+ export { type EmbeddingMode, type IApiTokenAuthCredentials, type IAuthCredentials, type IContextDeferredAuthCredentials, type IJwtAuthCredentials, type IOrganization, type IOrganizationPermissions, type IPlatformContext, type IPlatformContextV1, type IPluggableApplicationNavigation, PantherTier, isPlatformContextV1, } from "./platformContext.js";
7
7
  export { type ILocale } from "@gooddata/sdk-model";
8
8
  export { type IAppInstance, type IPluggableApp, type IPluggableApplicationMountHandle, type IPluggableApplicationMountOptions, type IPluggableAppEvent, type IPluggableAppTelemetryCallbacks, type ITelemetryEventOptions, type PluggableApplicationMount, type TelemetryChannel, } from "./mount.js";
9
9
  export { type IShellUiModule, type IShellUiMountHandle, type IShellUiMountOptions, type ShellUiMount, } from "./shellUi.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH,OAAO,EACH,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,+BAA+B,EACpC,WAAW,EACX,mBAAmB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EACH,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EACtC,KAAK,kBAAkB,EACvB,KAAK,+BAA+B,EACpC,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,GACxB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACH,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,YAAY,GACpB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH,OAAO,EACH,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,+BAA+B,EACpC,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,+BAA+B,EACpC,WAAW,EACX,mBAAmB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EACH,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EACtC,KAAK,kBAAkB,EACvB,KAAK,+BAA+B,EACpC,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,GACxB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACH,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,YAAY,GACpB,MAAM,cAAc,CAAC"}
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,oDAAoD;AAEpD;;;;GAIG;AAEH,OAAO,EAOH,WAAW,EACX,mBAAmB,GACtB,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,oDAAoD;AAEpD;;;;GAIG;AAEH,OAAO,EAWH,WAAW,EACX,mBAAmB,GACtB,MAAM,sBAAsB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type IAnalyticalBackend, type IUserSettings } from "@gooddata/sdk-backend-spi";
1
+ import { type IUserSettings } from "@gooddata/sdk-backend-spi";
2
2
  import { type ApplicationScope, type IEntitlementDescriptor, type ILocale, type ITheme, type IUser, type IWhiteLabeling, type IWorkspacePermissions, type ObjRef } from "@gooddata/sdk-model";
3
3
  /**
4
4
  * Pluggable application embedding mode.
@@ -53,14 +53,69 @@ export interface IPluggableApplicationNavigation {
53
53
  go(to: string): void;
54
54
  openApp(id: string, path?: string): void;
55
55
  }
56
+ /**
57
+ * Cookie / session-based authentication — no explicit credentials required.
58
+ *
59
+ * @alpha
60
+ */
61
+ export interface IContextDeferredAuthCredentials {
62
+ type: "contextDeferred";
63
+ /**
64
+ * Optional external identity-provider identifier for SSO flows.
65
+ * When building a backend with `ContextDeferredAuthProvider`, pass
66
+ * this value to `createNotAuthenticatedHandler` (or equivalent) so
67
+ * the redirect targets the correct IdP login page.
68
+ */
69
+ externalProviderId?: string;
70
+ }
71
+ /**
72
+ * GoodData API-token authentication.
73
+ *
74
+ * @alpha
75
+ */
76
+ export interface IApiTokenAuthCredentials {
77
+ type: "apiToken";
78
+ token: string;
79
+ }
80
+ /**
81
+ * JWT-based authentication.
82
+ *
83
+ * @alpha
84
+ */
85
+ export interface IJwtAuthCredentials {
86
+ type: "jwt";
87
+ token: string;
88
+ secondsBeforeTokenExpirationToCallReminder?: number;
89
+ }
90
+ /**
91
+ * Authentication credentials for building a backend instance.
92
+ *
93
+ * @remarks
94
+ * The shell application determines authentication method and passes the
95
+ * resolved credentials in the platform context. Client applications use
96
+ * them to construct their own backend instance.
97
+ *
98
+ * @alpha
99
+ */
100
+ export type IAuthCredentials = IContextDeferredAuthCredentials | IApiTokenAuthCredentials | IJwtAuthCredentials;
56
101
  /**
57
102
  * Platform context contract version 1.0.
58
103
  *
104
+ * @remarks
105
+ * The shell application populates this context after bootstrapping and
106
+ * passes it to pluggable (client) applications. It intentionally does NOT
107
+ * include a backend instance — client applications create their own using
108
+ * the provided {@link IAuthCredentials} to avoid SDK version desync.
109
+ *
59
110
  * @alpha
60
111
  */
61
112
  export interface IPlatformContextV1 {
62
113
  version: "1.0";
63
- backend: IAnalyticalBackend;
114
+ /**
115
+ * Authentication credentials resolved by the shell.
116
+ * Client applications use these to build their own backend instance.
117
+ */
118
+ auth: IAuthCredentials;
64
119
  user: IUser;
65
120
  organization?: IOrganization;
66
121
  organizationPermissions?: IOrganizationPermissions;
@@ -1 +1 @@
1
- {"version":3,"file":"platformContext.d.ts","sourceRoot":"","sources":["../src/platformContext.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,aAAa,EAAE,MAAM,2BAA2B,CAAC;AACxF,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,MAAM,EACd,MAAM,qBAAqB,CAAC;AAE7B;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzD;;;;GAIG;AACH,oBAAY,WAAW;IACnB,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,IAAI,SAAS;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACrC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;;GAIG;AACH,MAAM,WAAW,+BAA+B;IAC5C,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5C;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,KAAK,CAAC;IAEf,OAAO,EAAE,kBAAkB,CAAC;IAC5B,IAAI,EAAE,KAAK,CAAC;IACZ,YAAY,CAAC,EAAE,aAAa,CAAC;IAE7B,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;IACnD,oBAAoB,CAAC,EAAE,qBAAqB,CAAC;IAE7C,YAAY,CAAC,EAAE,sBAAsB,EAAE,CAAC;IAExC,YAAY,EAAE,aAAa,CAAC;IAE5B,aAAa,EAAE,cAAc,GAAG,SAAS,CAAC;IAC1C,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uBAAuB,CAAC,EAAE,gBAAgB,CAAC;IAE3C,aAAa,EAAE,aAAa,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAElD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,kBAAkB,CAOnF"}
1
+ {"version":3,"file":"platformContext.d.ts","sourceRoot":"","sources":["../src/platformContext.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,MAAM,EACd,MAAM,qBAAqB,CAAC;AAE7B;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzD;;;;GAIG;AACH,oBAAY,WAAW;IACnB,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,IAAI,SAAS;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACrC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;;GAIG;AACH,MAAM,WAAW,+BAA+B;IAC5C,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5C;AAMD;;;;GAIG;AACH,MAAM,WAAW,+BAA+B;IAC5C,IAAI,EAAE,iBAAiB,CAAC;IACxB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACrC,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C,CAAC,EAAE,MAAM,CAAC;CACvD;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,GACtB,+BAA+B,GAC/B,wBAAwB,GACxB,mBAAmB,CAAC;AAM1B;;;;;;;;;;GAUG;AACH,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,KAAK,CAAC;IAEf;;;OAGG;IACH,IAAI,EAAE,gBAAgB,CAAC;IAEvB,IAAI,EAAE,KAAK,CAAC;IACZ,YAAY,CAAC,EAAE,aAAa,CAAC;IAE7B,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;IACnD,oBAAoB,CAAC,EAAE,qBAAqB,CAAC;IAE7C,YAAY,CAAC,EAAE,sBAAsB,EAAE,CAAC;IAExC,YAAY,EAAE,aAAa,CAAC;IAE5B,aAAa,EAAE,cAAc,GAAG,SAAS,CAAC;IAC1C,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uBAAuB,CAAC,EAAE,gBAAgB,CAAC;IAE3C,aAAa,EAAE,aAAa,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAElD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,kBAAkB,CAOnF"}
@@ -1 +1 @@
1
- {"version":3,"file":"platformContext.js","sourceRoot":"","sources":["../src/platformContext.ts"],"names":[],"mappings":"AAAA,gCAAgC;SA0BpB,WAAW;AALvB;;;;GAIG;AACH,IAAY,WAMX;AAND,WAAY,WAAW;IACnB,8BAAe,CAAA;IACf,oCAAqB,CAAA;IACrB,0BAAW,CAAA;IACX,4BAAa,CAAA;IACb,4BAAa,CAAA;AAAC,CAClB,EANY,WAAW,KAAX,WAAW,QAMtB;AA6ED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAgB,EAAiC;IACjF,OAAO,CACH,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,SAAS,IAAI,OAAO;QACnB,OAAiC,CAAC,OAAO,KAAK,KAAK,CACvD,CAAC;AAAA,CACL"}
1
+ {"version":3,"file":"platformContext.js","sourceRoot":"","sources":["../src/platformContext.ts"],"names":[],"mappings":"AAAA,gCAAgC;SA0BpB,WAAW;AALvB;;;;GAIG;AACH,IAAY,WAMX;AAND,WAAY,WAAW;IACnB,8BAAe,CAAA;IACf,oCAAqB,CAAA;IACrB,0BAAW,CAAA;IACX,4BAAa,CAAA;IACb,4BAAa,CAAA;AAAC,CAClB,EANY,WAAW,KAAX,WAAW,QAMtB;AAoJD;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAgB,EAAiC;IACjF,OAAO,CACH,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,SAAS,IAAI,OAAO;QACnB,OAAiC,CAAC,OAAO,KAAK,KAAK,CACvD,CAAC;AAAA,CACL"}
@@ -5,7 +5,6 @@
5
5
  */
6
6
 
7
7
  import { ApplicationScope } from '@gooddata/sdk-model';
8
- import { IAnalyticalBackend } from '@gooddata/sdk-backend-spi';
9
8
  import { IEntitlementDescriptor } from '@gooddata/sdk-model';
10
9
  import { ILocale } from '@gooddata/sdk-model';
11
10
  import { ITheme } from '@gooddata/sdk-model';
@@ -23,6 +22,16 @@ import { PluggableApplicationRegistryItem } from '@gooddata/sdk-model';
23
22
  */
24
23
  export declare type EmbeddingMode = "none" | "iframe" | "export";
25
24
 
25
+ /**
26
+ * GoodData API-token authentication.
27
+ *
28
+ * @alpha
29
+ */
30
+ export declare interface IApiTokenAuthCredentials {
31
+ type: "apiToken";
32
+ token: string;
33
+ }
34
+
26
35
  /**
27
36
  * Mounted application instance.
28
37
  *
@@ -32,6 +41,45 @@ export declare interface IAppInstance extends IPluggableApplicationMountHandle {
32
41
  id: string;
33
42
  }
34
43
 
44
+ /**
45
+ * Authentication credentials for building a backend instance.
46
+ *
47
+ * @remarks
48
+ * The shell application determines authentication method and passes the
49
+ * resolved credentials in the platform context. Client applications use
50
+ * them to construct their own backend instance.
51
+ *
52
+ * @alpha
53
+ */
54
+ export declare type IAuthCredentials = IContextDeferredAuthCredentials | IApiTokenAuthCredentials | IJwtAuthCredentials;
55
+
56
+ /**
57
+ * Cookie / session-based authentication — no explicit credentials required.
58
+ *
59
+ * @alpha
60
+ */
61
+ export declare interface IContextDeferredAuthCredentials {
62
+ type: "contextDeferred";
63
+ /**
64
+ * Optional external identity-provider identifier for SSO flows.
65
+ * When building a backend with `ContextDeferredAuthProvider`, pass
66
+ * this value to `createNotAuthenticatedHandler` (or equivalent) so
67
+ * the redirect targets the correct IdP login page.
68
+ */
69
+ externalProviderId?: string;
70
+ }
71
+
72
+ /**
73
+ * JWT-based authentication.
74
+ *
75
+ * @alpha
76
+ */
77
+ export declare interface IJwtAuthCredentials {
78
+ type: "jwt";
79
+ token: string;
80
+ secondsBeforeTokenExpirationToCallReminder?: number;
81
+ }
82
+
35
83
  export { ILocale }
36
84
 
37
85
  /**
@@ -72,11 +120,21 @@ export declare type IPlatformContext = IPlatformContextV1;
72
120
  /**
73
121
  * Platform context contract version 1.0.
74
122
  *
123
+ * @remarks
124
+ * The shell application populates this context after bootstrapping and
125
+ * passes it to pluggable (client) applications. It intentionally does NOT
126
+ * include a backend instance — client applications create their own using
127
+ * the provided {@link IAuthCredentials} to avoid SDK version desync.
128
+ *
75
129
  * @alpha
76
130
  */
77
131
  export declare interface IPlatformContextV1 {
78
132
  version: "1.0";
79
- backend: IAnalyticalBackend;
133
+ /**
134
+ * Authentication credentials resolved by the shell.
135
+ * Client applications use these to build their own backend instance.
136
+ */
137
+ auth: IAuthCredentials;
80
138
  user: IUser;
81
139
  organization?: IOrganization;
82
140
  organizationPermissions?: IOrganizationPermissions;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-pluggable-application-model",
3
- "version": "11.28.0-alpha.2",
3
+ "version": "11.28.0-alpha.4",
4
4
  "description": "GoodData SDK model contracts for pluggable applications",
5
5
  "license": "MIT",
6
6
  "author": "GoodData Corporation",
@@ -23,8 +23,8 @@
23
23
  "dependencies": {
24
24
  "ts-invariant": "0.10.3",
25
25
  "tslib": "2.8.1",
26
- "@gooddata/sdk-backend-spi": "11.28.0-alpha.2",
27
- "@gooddata/sdk-model": "11.28.0-alpha.2"
26
+ "@gooddata/sdk-model": "11.28.0-alpha.4",
27
+ "@gooddata/sdk-backend-spi": "11.28.0-alpha.4"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@microsoft/api-documenter": "^7.17.0",
@@ -48,8 +48,8 @@
48
48
  "oxlint-tsgolint": "0.11.4",
49
49
  "typescript": "5.9.3",
50
50
  "vitest": "4.1.0",
51
- "@gooddata/oxlint-config": "11.28.0-alpha.2",
52
- "@gooddata/eslint-config": "11.28.0-alpha.2"
51
+ "@gooddata/eslint-config": "11.28.0-alpha.4",
52
+ "@gooddata/oxlint-config": "11.28.0-alpha.4"
53
53
  },
54
54
  "scripts": {
55
55
  "_phase:build": "npm run build",