@octostar/platform-api 0.5.4 → 0.5.5
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/platform-api.d.ts +50 -8
- package/lib/apis.d.ts +4 -1
- package/lib/apis.d.ts.map +1 -1
- package/lib/apis.js +12 -0
- package/lib/apis.js.map +1 -1
- package/lib/constants.d.ts +3 -3
- package/lib/constants.d.ts.map +1 -1
- package/lib/constants.js +9 -4
- package/lib/constants.js.map +1 -1
- package/lib/factory.d.ts.map +1 -1
- package/lib/factory.js +85 -15
- package/lib/factory.js.map +1 -1
- package/lib/index.d.ts +4 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -1
- package/lib/lib/AIClientImpl.d.ts +9 -0
- package/lib/lib/AIClientImpl.d.ts.map +1 -0
- package/lib/lib/AIClientImpl.js +52 -0
- package/lib/lib/AIClientImpl.js.map +1 -0
- package/lib/lib/AsyncServiceLocator.js +2 -1
- package/lib/lib/AsyncServiceLocator.js.map +1 -1
- package/lib/lib/JWTProvider.d.ts +14 -0
- package/lib/lib/JWTProvider.d.ts.map +1 -0
- package/lib/lib/JWTProvider.js +39 -0
- package/lib/lib/JWTProvider.js.map +1 -0
- package/lib/lib/Proxy.d.ts +2 -0
- package/lib/lib/Proxy.d.ts.map +1 -0
- package/lib/lib/Proxy.js +17 -0
- package/lib/lib/Proxy.js.map +1 -0
- package/lib/lib/userWorkspace.d.ts +3 -0
- package/lib/lib/userWorkspace.d.ts.map +1 -0
- package/lib/lib/userWorkspace.js +28 -0
- package/lib/lib/userWorkspace.js.map +1 -0
- package/lib/permissions.d.ts +1 -0
- package/lib/permissions.d.ts.map +1 -1
- package/lib/permissions.js +1 -0
- package/lib/permissions.js.map +1 -1
- package/package.json +2 -2
package/dist/platform-api.d.ts
CHANGED
|
@@ -1,8 +1,15 @@
|
|
|
1
|
+
import { AIClient } from '@octostar/platform-types';
|
|
2
|
+
import { ChatModel } from '@octostar/platform-types';
|
|
1
3
|
import { Concept } from '@octostar/platform-types';
|
|
2
4
|
import { ContextMenuRequest } from '@octostar/platform-types';
|
|
3
5
|
import { Desktop } from '@octostar/platform-types';
|
|
4
6
|
import { Entity } from '@octostar/platform-types';
|
|
7
|
+
import { ExtrasApi } from '@octostar/platform-types';
|
|
5
8
|
import { Ontology } from '@octostar/platform-types';
|
|
9
|
+
import { OsAPIClient } from '@octostar/platform-types';
|
|
10
|
+
import { PromptOptions } from '@octostar/platform-types';
|
|
11
|
+
import { RemoteAppApi } from '@octostar/platform-types';
|
|
12
|
+
import { SavedSearchAPIInterface } from '@octostar/platform-types';
|
|
6
13
|
import { TagWithRelationship } from '@octostar/platform-types';
|
|
7
14
|
import { WorkspaceItem } from '@octostar/platform-types';
|
|
8
15
|
|
|
@@ -25,17 +32,27 @@ export declare abstract class AbstractContextMenu extends HTMLElement {
|
|
|
25
32
|
private publishRequest;
|
|
26
33
|
}
|
|
27
34
|
|
|
35
|
+
export declare class AIClientImpl implements AIClient {
|
|
36
|
+
private osAPIClient;
|
|
37
|
+
private models;
|
|
38
|
+
constructor(osAPIClient: OsAPIClient);
|
|
39
|
+
getChatModels(): Promise<ChatModel[]>;
|
|
40
|
+
prompt(prompt: string, options?: PromptOptions): Promise<string>;
|
|
41
|
+
}
|
|
42
|
+
|
|
28
43
|
/**
|
|
29
44
|
* @beta
|
|
30
45
|
* All permissions.
|
|
31
46
|
*/
|
|
32
47
|
export declare const ALL_PERMISSIONS = "all";
|
|
33
48
|
|
|
49
|
+
export declare const ALL_PERMISSIONS_ARRAY: string[];
|
|
50
|
+
|
|
34
51
|
/**
|
|
35
52
|
* @beta
|
|
36
53
|
* API names.
|
|
37
54
|
*/
|
|
38
|
-
export declare const apiNames: Record<"desktop", "octostar:api-names:desktop"> & Record<"ontology", "octostar:api-names:ontology"> & Record<"context", "octostar:api-names:context">;
|
|
55
|
+
export declare const apiNames: Record<"desktop", "octostar:api-names:desktop"> & Record<"ontology", "octostar:api-names:ontology"> & Record<"context", "octostar:api-names:context"> & Record<"extras", "octostar:api-names:extras"> & Record<"remoteApp", "octostar:api-names:remoteApp"> & Record<"savedSearch", "octostar:api-names:savedSearch">;
|
|
39
56
|
|
|
40
57
|
declare type BasePostResponsePayload<D, E> = {
|
|
41
58
|
data: D;
|
|
@@ -71,7 +88,7 @@ declare type CreateMessageNamesResult<N, M> = M extends readonly [infer F, ...in
|
|
|
71
88
|
* @beta
|
|
72
89
|
* Create a set of message names with a namespace.
|
|
73
90
|
*/
|
|
74
|
-
export declare const createPrefixesConstants: <N extends string, M extends readonly [string, ...string[]]>(namespace: N, messages: M) => CreateMessageNamesResult<N, M>;
|
|
91
|
+
export declare const createPrefixesConstants: <N extends string, M extends readonly [string, ...string[]]>(namespace: N, messages: M, channelId?: string) => CreateMessageNamesResult<N, M>;
|
|
75
92
|
|
|
76
93
|
/**
|
|
77
94
|
* @beta
|
|
@@ -102,6 +119,8 @@ export declare type ErrorPostResponsePayload = BasePostResponsePayload<null, {
|
|
|
102
119
|
message: string;
|
|
103
120
|
}>;
|
|
104
121
|
|
|
122
|
+
export declare const extrasApi: () => EnsureMethodsReturnPromise<ExtrasApi>;
|
|
123
|
+
|
|
105
124
|
/**
|
|
106
125
|
* @beta
|
|
107
126
|
* Get the context API asynchronously.
|
|
@@ -120,6 +139,14 @@ export declare const getDesktopApi: () => Promise<EnsureMethodsReturnPromise<Des
|
|
|
120
139
|
*/
|
|
121
140
|
export declare const getOntologyApi: () => Promise<EnsureMethodsReturnPromise<Ontology>>;
|
|
122
141
|
|
|
142
|
+
export declare const getOrCreateUsersPrivateWorkspaceRecord: (desktop: Desktop, ontology: Ontology) => Promise<WorkspaceItem>;
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* @beta
|
|
146
|
+
* Message names for post messages.
|
|
147
|
+
*/
|
|
148
|
+
export declare const getPostMessageNames: (channelId: string) => Record<"get_api", "octostar:post-messages:get_api">;
|
|
149
|
+
|
|
123
150
|
/**
|
|
124
151
|
* @beta
|
|
125
152
|
* Type representing a message value.
|
|
@@ -128,6 +155,19 @@ export declare type GetRemoteApiParams = {
|
|
|
128
155
|
name: string;
|
|
129
156
|
};
|
|
130
157
|
|
|
158
|
+
export declare class JWTProvider implements TokenProvider {
|
|
159
|
+
private token;
|
|
160
|
+
private decoded;
|
|
161
|
+
private tokenProvider;
|
|
162
|
+
private expiresThreshold;
|
|
163
|
+
constructor(tokenProvider: TokenProvider, expiresThreshold?: number);
|
|
164
|
+
private fetchToken;
|
|
165
|
+
private isExpiredOrExpiringSoon;
|
|
166
|
+
getToken(): Promise<string>;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
export declare const makeProxy: <T extends object>(obj: T, excludeKeys?: (keyof T)[]) => Record<string, any>;
|
|
170
|
+
|
|
131
171
|
declare type MessageValue<N, M> = `${N & string}:${M & string}`;
|
|
132
172
|
|
|
133
173
|
/**
|
|
@@ -258,12 +298,6 @@ export declare class OsTagsContextMenu extends AbstractContextMenu {
|
|
|
258
298
|
private update;
|
|
259
299
|
}
|
|
260
300
|
|
|
261
|
-
/**
|
|
262
|
-
* @beta
|
|
263
|
-
* Message names for post messages.
|
|
264
|
-
*/
|
|
265
|
-
export declare const postMessageNames: Record<"get_api", "octostar:post-messages:get_api">;
|
|
266
|
-
|
|
267
301
|
/**
|
|
268
302
|
* @beta
|
|
269
303
|
* Type representing a POST request.
|
|
@@ -303,6 +337,8 @@ export declare type RemoteApiError = Error & {
|
|
|
303
337
|
originalError: Error;
|
|
304
338
|
};
|
|
305
339
|
|
|
340
|
+
export declare const remoteAppApi: () => EnsureMethodsReturnPromise<RemoteAppApi>;
|
|
341
|
+
|
|
306
342
|
/**
|
|
307
343
|
* @beta
|
|
308
344
|
* Retry a function until it succeeds or the maximum number of attempts is reached.
|
|
@@ -318,6 +354,8 @@ declare type RetryOptions = {
|
|
|
318
354
|
retryInterval?: number;
|
|
319
355
|
};
|
|
320
356
|
|
|
357
|
+
export declare const savedSearchApi: () => EnsureMethodsReturnPromise<SavedSearchAPIInterface>;
|
|
358
|
+
|
|
321
359
|
/**
|
|
322
360
|
* @beta
|
|
323
361
|
* Type representing a POST response payload with a success.
|
|
@@ -338,4 +376,8 @@ export declare class TagDots extends HTMLElement {
|
|
|
338
376
|
render(): Promise<void>;
|
|
339
377
|
}
|
|
340
378
|
|
|
379
|
+
export declare interface TokenProvider {
|
|
380
|
+
getToken(): Promise<string>;
|
|
381
|
+
}
|
|
382
|
+
|
|
341
383
|
export { }
|
package/lib/apis.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Desktop, Ontology } from '@octostar/platform-types';
|
|
1
|
+
import { Desktop, Ontology, ExtrasApi, RemoteAppApi, SavedSearchAPIInterface } from '@octostar/platform-types';
|
|
2
2
|
import { ContextApi, EnsureMethodsReturnPromise } from './types';
|
|
3
3
|
/**
|
|
4
4
|
* @beta
|
|
@@ -6,6 +6,9 @@ import { ContextApi, EnsureMethodsReturnPromise } from './types';
|
|
|
6
6
|
* For asynchronous access, use {@link getDesktopApi}.
|
|
7
7
|
*/
|
|
8
8
|
export declare const desktopApi: () => EnsureMethodsReturnPromise<Desktop>;
|
|
9
|
+
export declare const extrasApi: () => EnsureMethodsReturnPromise<ExtrasApi>;
|
|
10
|
+
export declare const remoteAppApi: () => EnsureMethodsReturnPromise<RemoteAppApi>;
|
|
11
|
+
export declare const savedSearchApi: () => EnsureMethodsReturnPromise<SavedSearchAPIInterface>;
|
|
9
12
|
/**
|
|
10
13
|
* @beta
|
|
11
14
|
* Provides access to the ontology API.
|
package/lib/apis.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apis.d.ts","sourceRoot":"","sources":["../src/apis.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"apis.d.ts","sourceRoot":"","sources":["../src/apis.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,uBAAuB,EACxB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAsCjE;;;;GAIG;AACH,eAAO,MAAM,UAAU,2CACwC,CAAC;AAEhE,eAAO,MAAM,SAAS,6CACwC,CAAC;AAE/D,eAAO,MAAM,YAAY,gDACwC,CAAC;AAElE,eAAO,MAAM,cAAc,2DACwC,CAAC;AAEpE;;;;GAIG;AACH,eAAO,MAAM,WAAW,4CACwC,CAAC;AAEjE;;;;GAIG;AACH,eAAO,MAAM,UAAU,uDACwC,CAAC;AAEhE;;;GAGG;AACH,eAAO,MAAM,aAAa,oDACoB,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,cAAc,qDACqB,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,aAAa,gEACoB,CAAC"}
|
package/lib/apis.js
CHANGED
|
@@ -23,6 +23,15 @@ const apisLocator = AsyncServiceLocator.getInstance('platform-api', {
|
|
|
23
23
|
// TODO: clarify about the context type
|
|
24
24
|
createRemoteApiHandle({
|
|
25
25
|
name: apiNames.context,
|
|
26
|
+
}))
|
|
27
|
+
.registerService('extras', () => createRemoteApiHandle({
|
|
28
|
+
name: apiNames.extras,
|
|
29
|
+
}))
|
|
30
|
+
.registerService('remoteApp', () => createRemoteApiHandle({
|
|
31
|
+
name: apiNames.remoteApp,
|
|
32
|
+
}))
|
|
33
|
+
.registerService('savedSearch', () => createRemoteApiHandle({
|
|
34
|
+
name: apiNames.savedSearch,
|
|
26
35
|
}));
|
|
27
36
|
/**
|
|
28
37
|
* @beta
|
|
@@ -30,6 +39,9 @@ createRemoteApiHandle({
|
|
|
30
39
|
* For asynchronous access, use {@link getDesktopApi}.
|
|
31
40
|
*/
|
|
32
41
|
export const desktopApi = () => forwardCallsToFutureObject(apisLocator.getService('desktop'));
|
|
42
|
+
export const extrasApi = () => forwardCallsToFutureObject(apisLocator.getService('extras'));
|
|
43
|
+
export const remoteAppApi = () => forwardCallsToFutureObject(apisLocator.getService('remoteApp'));
|
|
44
|
+
export const savedSearchApi = () => forwardCallsToFutureObject(apisLocator.getService('savedSearch'));
|
|
33
45
|
/**
|
|
34
46
|
* @beta
|
|
35
47
|
* Provides access to the ontology API.
|
package/lib/apis.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apis.js","sourceRoot":"","sources":["../src/apis.ts"],"names":[],"mappings":";;;;;;;;;
|
|
1
|
+
{"version":3,"file":"apis.js","sourceRoot":"","sources":["../src/apis.ts"],"names":[],"mappings":";;;;;;;;;AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAE9E,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,MAAM,WAAW,GAAG,mBAAmB,CAAC,WAAW,CAAC,cAAc,EAAE;IAClE,KAAK,EAAE,KAAK;CACb,CAAC;KACC,eAAe,CAAC,SAAS,EAAE,GAAG,EAAE,CAC/B,qBAAqB,CAAsC;IACzD,IAAI,EAAE,QAAQ,CAAC,OAAO;CACvB,CAAC,CACH;KACA,eAAe,CAAC,UAAU,EAAE,GAAG,EAAE,CAChC,qBAAqB,CAAuC;IAC1D,IAAI,EAAE,QAAQ,CAAC,QAAQ;CACxB,CAAC,CACH;KACA,eAAe,CAAC,SAAS,EAAE,GAAG,EAAE;AAC/B,uCAAuC;AACvC,qBAAqB,CAAkD;IACrE,IAAI,EAAE,QAAQ,CAAC,OAAO;CACvB,CAAC,CACH;KACA,eAAe,CAAC,QAAQ,EAAE,GAAG,EAAE,CAC9B,qBAAqB,CAAwC;IAC3D,IAAI,EAAE,QAAQ,CAAC,MAAM;CACtB,CAAC,CACH;KACA,eAAe,CAAC,WAAW,EAAE,GAAG,EAAE,CACjC,qBAAqB,CAA2C;IAC9D,IAAI,EAAE,QAAQ,CAAC,SAAS;CACzB,CAAC,CACH;KACA,eAAe,CAAC,aAAa,EAAE,GAAG,EAAE,CACnC,qBAAqB,CAAsD;IACzE,IAAI,EAAE,QAAQ,CAAC,WAAW;CAC3B,CAAC,CACH,CAAC;AAEJ;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE,CAC7B,0BAA0B,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE,CAC5B,0BAA0B,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAC/B,0BAA0B,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;AAElE,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CACjC,0BAA0B,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;AAEpE;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE,CAC9B,0BAA0B,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;AAEjE;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE,CAC7B,0BAA0B,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;AAEhE;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,GAAS,EAAE,kDACtC,OAAA,WAAW,CAAC,UAAU,CAAY,SAAS,CAAC,CAAA,GAAA,CAAC;AAE/C;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,GAAS,EAAE,kDACvC,OAAA,WAAW,CAAC,UAAU,CAAa,UAAU,CAAC,CAAA,GAAA,CAAC;AAEjD;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,GAAS,EAAE,kDACtC,OAAA,WAAW,CAAC,UAAU,CAAY,SAAS,CAAC,CAAA,GAAA,CAAC"}
|
package/lib/constants.d.ts
CHANGED
|
@@ -4,16 +4,16 @@ type CreateMessageNamesResult<N, M> = M extends readonly [infer F, ...infer R] ?
|
|
|
4
4
|
* @beta
|
|
5
5
|
* Create a set of message names with a namespace.
|
|
6
6
|
*/
|
|
7
|
-
export declare const createPrefixesConstants: <N extends string, M extends readonly [string, ...string[]]>(namespace: N, messages: M) => CreateMessageNamesResult<N, M>;
|
|
7
|
+
export declare const createPrefixesConstants: <N extends string, M extends readonly [string, ...string[]]>(namespace: N, messages: M, channelId?: string) => CreateMessageNamesResult<N, M>;
|
|
8
8
|
/**
|
|
9
9
|
* @beta
|
|
10
10
|
* Message names for post messages.
|
|
11
11
|
*/
|
|
12
|
-
export declare const
|
|
12
|
+
export declare const getPostMessageNames: (channelId: string) => Record<"get_api", "octostar:post-messages:get_api">;
|
|
13
13
|
/**
|
|
14
14
|
* @beta
|
|
15
15
|
* API names.
|
|
16
16
|
*/
|
|
17
|
-
export declare const apiNames: Record<"desktop", "octostar:api-names:desktop"> & Record<"ontology", "octostar:api-names:ontology"> & Record<"context", "octostar:api-names:context">;
|
|
17
|
+
export declare const apiNames: Record<"desktop", "octostar:api-names:desktop"> & Record<"ontology", "octostar:api-names:ontology"> & Record<"context", "octostar:api-names:context"> & Record<"extras", "octostar:api-names:extras"> & Record<"remoteApp", "octostar:api-names:remoteApp"> & Record<"savedSearch", "octostar:api-names:savedSearch">;
|
|
18
18
|
export {};
|
|
19
19
|
//# sourceMappingURL=constants.d.ts.map
|
package/lib/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC;AAExD,KAAK,wBAAwB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,GAC1E,MAAM,CAAC,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,GACvE,EAAE,CAAC;AAEP;;;GAGG;AACH,eAAO,MAAM,uBAAuB,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC;AAExD,KAAK,wBAAwB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,GAC1E,MAAM,CAAC,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,GACvE,EAAE,CAAC;AAEP;;;GAGG;AACH,eAAO,MAAM,uBAAuB,sGAMtB,MAAM,mCAWnB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,cAAe,MAAM,wDAKlD,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,QAAQ,uTAWpB,CAAC"}
|
package/lib/constants.js
CHANGED
|
@@ -2,10 +2,12 @@
|
|
|
2
2
|
* @beta
|
|
3
3
|
* Create a set of message names with a namespace.
|
|
4
4
|
*/
|
|
5
|
-
export const createPrefixesConstants = (namespace, messages) => {
|
|
5
|
+
export const createPrefixesConstants = (namespace, messages, channelId) => {
|
|
6
6
|
const result = {};
|
|
7
7
|
messages.forEach(message => {
|
|
8
|
-
result[message] =
|
|
8
|
+
result[message] = channelId
|
|
9
|
+
? `${namespace}:${channelId}:${message}`
|
|
10
|
+
: `${namespace}:${message}`;
|
|
9
11
|
});
|
|
10
12
|
return result;
|
|
11
13
|
};
|
|
@@ -13,7 +15,7 @@ export const createPrefixesConstants = (namespace, messages) => {
|
|
|
13
15
|
* @beta
|
|
14
16
|
* Message names for post messages.
|
|
15
17
|
*/
|
|
16
|
-
export const
|
|
18
|
+
export const getPostMessageNames = (channelId) => createPrefixesConstants('octostar:post-messages', ['get_api'], channelId);
|
|
17
19
|
/**
|
|
18
20
|
* @beta
|
|
19
21
|
* API names.
|
|
@@ -22,7 +24,10 @@ export const apiNames = createPrefixesConstants('octostar:api-names', [
|
|
|
22
24
|
'desktop',
|
|
23
25
|
'ontology',
|
|
24
26
|
'context',
|
|
25
|
-
|
|
27
|
+
'extras',
|
|
28
|
+
'remoteApp',
|
|
29
|
+
'savedSearch',
|
|
30
|
+
], undefined);
|
|
26
31
|
// test
|
|
27
32
|
// const v = messages.get_api;
|
|
28
33
|
//# sourceMappingURL=constants.js.map
|
package/lib/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAIrC,SAAY,EACZ,QAAW,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAIrC,SAAY,EACZ,QAAW,EACX,SAAkB,EACc,EAAE;IAClC,MAAM,MAAM,GAA+C,EAAE,CAAC;IAE9D,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QACzB,MAAM,CAAC,OAAO,CAAC,GAAG,SAAS;YACzB,CAAC,CAAC,GAAG,SAAS,IAAI,SAAS,IAAI,OAAO,EAAE;YACxC,CAAC,CAAC,GAAG,SAAS,IAAI,OAAO,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,OAAO,MAAwC,CAAC;AAClD,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,SAAiB,EAAE,EAAE,CACvD,uBAAuB,CACrB,wBAAwB,EACxB,CAAC,SAAS,CAAU,EACpB,SAAS,CACV,CAAC;AAEJ;;;GAGG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,uBAAuB,CAC7C,oBAAoB,EACpB;IACE,SAAS;IACT,UAAU;IACV,SAAS;IACT,QAAQ;IACR,WAAW;IACX,aAAa;CACL,EACV,SAAS,CACV,CAAC;AAEF,OAAO;AACP,8BAA8B"}
|
package/lib/factory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAGnB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAGnB,MAAM,SAAS,CAAC;AA+JjB,eAAO,MAAM,qBAAqB,6BACxB,kBAAkB,eAmC3B,CAAC;AAEF,eAAO,MAAM,0BAA0B,6BAS/B,CAAC"}
|
package/lib/factory.js
CHANGED
|
@@ -9,9 +9,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
};
|
|
10
10
|
import postRobot from 'post-robot';
|
|
11
11
|
import { retry } from './utils';
|
|
12
|
-
import {
|
|
12
|
+
import { getPostMessageNames } from './constants';
|
|
13
13
|
const hasParent = (window) => window.parent !== window;
|
|
14
|
-
function getOctostarWindow(currentWindow = window, depth = 0) {
|
|
14
|
+
function getOctostarWindow(channelId, currentWindow = window, depth = 0) {
|
|
15
15
|
// Check all iframes in the current window
|
|
16
16
|
let iframes;
|
|
17
17
|
try {
|
|
@@ -24,8 +24,7 @@ function getOctostarWindow(currentWindow = window, depth = 0) {
|
|
|
24
24
|
for (let i = 0; i < iframes.length; i += 1) {
|
|
25
25
|
const iframe = iframes[i];
|
|
26
26
|
if (iframe.getAttribute('data-octostar-iframe') === 'true' &&
|
|
27
|
-
|
|
28
|
-
) {
|
|
27
|
+
iframe.getAttribute('data-octostar-iframe-channel') === channelId) {
|
|
29
28
|
return currentWindow;
|
|
30
29
|
}
|
|
31
30
|
}
|
|
@@ -40,8 +39,7 @@ function getOctostarWindow(currentWindow = window, depth = 0) {
|
|
|
40
39
|
throw new Error('Max depth reached. Octostar window not found.');
|
|
41
40
|
}
|
|
42
41
|
// If not found, continue searching in the parent window
|
|
43
|
-
|
|
44
|
-
return getOctostarWindow(currentWindow.parent, depth + 1);
|
|
42
|
+
return getOctostarWindow(channelId, currentWindow.parent, depth + 1);
|
|
45
43
|
}
|
|
46
44
|
const handlePostResponse = (response) => {
|
|
47
45
|
if (response.data.error) {
|
|
@@ -75,16 +73,88 @@ const createObjectProxy = (value, options) => new Proxy(value, {
|
|
|
75
73
|
return target[prop];
|
|
76
74
|
},
|
|
77
75
|
});
|
|
76
|
+
function tryFetchingFomAttributes(currentWindow) {
|
|
77
|
+
try {
|
|
78
|
+
const iframes = currentWindow.parent.document.getElementsByTagName('iframe');
|
|
79
|
+
// eslint-disable-next-line no-restricted-syntax
|
|
80
|
+
for (const iframe of iframes) {
|
|
81
|
+
if (iframe.contentWindow === currentWindow) {
|
|
82
|
+
const channelId = iframe.getAttribute('data-octostar-iframe-channel');
|
|
83
|
+
if (channelId) {
|
|
84
|
+
console.log(`PostRobot: Setting channelId from iframe attribute ${channelId}`);
|
|
85
|
+
window.octostarChannelId = channelId;
|
|
86
|
+
return channelId;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return undefined;
|
|
91
|
+
}
|
|
92
|
+
catch (e) {
|
|
93
|
+
// Ignore errors, maybe cross-origin iframes
|
|
94
|
+
return undefined;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
function traverseForChannelId(currentWindow = window, depth = 0) {
|
|
98
|
+
// Prevent infinite loops or excessive searching
|
|
99
|
+
if (depth > 25) {
|
|
100
|
+
throw new Error('PostRobot: Max depth reached. octostarChannelId not found.');
|
|
101
|
+
}
|
|
102
|
+
if (currentWindow.octostarChannelId) {
|
|
103
|
+
return currentWindow.octostarChannelId;
|
|
104
|
+
}
|
|
105
|
+
try {
|
|
106
|
+
if (currentWindow.location.search) {
|
|
107
|
+
const urlParams = new URLSearchParams(currentWindow.location.search);
|
|
108
|
+
const channelId = urlParams.get('octostarChannelId');
|
|
109
|
+
if (channelId) {
|
|
110
|
+
console.log(`PostRobot: Setting channelId from queryParams ${channelId}`);
|
|
111
|
+
window.octostarChannelId = channelId;
|
|
112
|
+
return channelId;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
const channelId = tryFetchingFomAttributes(currentWindow);
|
|
117
|
+
if (channelId) {
|
|
118
|
+
return channelId;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return traverseForChannelId(currentWindow.parent, depth + 1);
|
|
122
|
+
}
|
|
123
|
+
catch (e) {
|
|
124
|
+
console.error(e);
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
window.addEventListener('message', event => {
|
|
129
|
+
var _a;
|
|
130
|
+
if (((_a = event.data) === null || _a === void 0 ? void 0 : _a.type) === 'SET_CHANNEL_ID') {
|
|
131
|
+
window.octostarChannelId = event.data.channelId;
|
|
132
|
+
console.log('PostRobot: received channelId', event.data.channelId);
|
|
133
|
+
}
|
|
134
|
+
});
|
|
78
135
|
export const createRemoteApiHandle = (params) => __awaiter(void 0, void 0, void 0, function* () {
|
|
79
|
-
const
|
|
80
|
-
const
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
136
|
+
const channelId = traverseForChannelId();
|
|
137
|
+
const octostarWindow = getOctostarWindow(channelId);
|
|
138
|
+
if (!channelId) {
|
|
139
|
+
console.error('PostRobot: No channelId found', channelId);
|
|
140
|
+
}
|
|
141
|
+
console.log(`PostRobot: Trying to get handle ${channelId}`);
|
|
142
|
+
const topic = getPostMessageNames(channelId).get_api;
|
|
143
|
+
try {
|
|
144
|
+
const response = yield retry(() => postRobot.send(octostarWindow, topic, params), {
|
|
145
|
+
maxAttempts: 5,
|
|
146
|
+
retryInterval: 2000,
|
|
147
|
+
});
|
|
148
|
+
console.log(`PostRobot: Got remote api handle for ${params.name} on ${channelId}`);
|
|
149
|
+
const api = handlePostResponse(response);
|
|
150
|
+
return createObjectProxy(api, {
|
|
151
|
+
name: params.name,
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
catch (e) {
|
|
155
|
+
console.log(`PostRobot: Error while trying to create remote API handle on ${topic}`, e);
|
|
156
|
+
throw e;
|
|
157
|
+
}
|
|
88
158
|
});
|
|
89
159
|
export const forwardCallsToFutureObject = (chain) => new Proxy({}, {
|
|
90
160
|
get: (target, prop) => new Proxy(() => { }, {
|
package/lib/factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAMnC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -4,4 +4,8 @@ export * from './constants';
|
|
|
4
4
|
export * from './utils';
|
|
5
5
|
export * from './permissions';
|
|
6
6
|
export * from './components';
|
|
7
|
+
export * from './lib/JWTProvider';
|
|
8
|
+
export * from './lib/AIClientImpl';
|
|
9
|
+
export * from './lib/Proxy';
|
|
10
|
+
export * from './lib/userWorkspace';
|
|
7
11
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -4,4 +4,8 @@ export * from './constants';
|
|
|
4
4
|
export * from './utils';
|
|
5
5
|
export * from './permissions';
|
|
6
6
|
export * from './components';
|
|
7
|
+
export * from './lib/JWTProvider';
|
|
8
|
+
export * from './lib/AIClientImpl';
|
|
9
|
+
export * from './lib/Proxy';
|
|
10
|
+
export * from './lib/userWorkspace';
|
|
7
11
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { AIClient, ChatModel, OsAPIClient, PromptOptions } from '@octostar/platform-types';
|
|
2
|
+
export declare class AIClientImpl implements AIClient {
|
|
3
|
+
private osAPIClient;
|
|
4
|
+
private models;
|
|
5
|
+
constructor(osAPIClient: OsAPIClient);
|
|
6
|
+
getChatModels(): Promise<ChatModel[]>;
|
|
7
|
+
prompt(prompt: string, options?: PromptOptions): Promise<string>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=AIClientImpl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIClientImpl.d.ts","sourceRoot":"","sources":["../../src/lib/AIClientImpl.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAER,SAAS,EACT,WAAW,EACX,aAAa,EACd,MAAM,0BAA0B,CAAC;AAElC,qBAAa,YAAa,YAAW,QAAQ;IAC3C,OAAO,CAAC,WAAW,CAAc;IAEjC,OAAO,CAAC,MAAM,CAA0B;gBAE5B,WAAW,EAAE,WAAW;IAI9B,aAAa,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IASrC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;CAyBvE"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
export class AIClientImpl {
|
|
11
|
+
constructor(osAPIClient) {
|
|
12
|
+
this.osAPIClient = osAPIClient;
|
|
13
|
+
}
|
|
14
|
+
getChatModels() {
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
if (!this.models) {
|
|
17
|
+
this.models = yield this.osAPIClient.fetchData({
|
|
18
|
+
endpoint: '/api/v1/chat/models',
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
return this.models;
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
prompt(prompt, options) {
|
|
25
|
+
var _a, _b, _c;
|
|
26
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
const model = (options === null || options === void 0 ? void 0 : options.model) || ((_a = (yield this.getChatModels())[0]) === null || _a === void 0 ? void 0 : _a.model_name);
|
|
28
|
+
const enableRag = (_b = options === null || options === void 0 ? void 0 : options.enableRag) !== null && _b !== void 0 ? _b : true; // getPreference is not available to this package.
|
|
29
|
+
// TODO: Streaming is not supported yet.
|
|
30
|
+
const chatMessage = yield this.osAPIClient.fetchData({
|
|
31
|
+
endpoint: '/api/v1/chat',
|
|
32
|
+
method: 'POST',
|
|
33
|
+
headers: {
|
|
34
|
+
'Content-Type': 'application/json',
|
|
35
|
+
},
|
|
36
|
+
body: JSON.stringify({
|
|
37
|
+
model_name: model,
|
|
38
|
+
prompt,
|
|
39
|
+
api_key: (options === null || options === void 0 ? void 0 : options.apiKey) || '',
|
|
40
|
+
streaming: false,
|
|
41
|
+
enable_rag: enableRag,
|
|
42
|
+
cohere_key: (options === null || options === void 0 ? void 0 : options.cohereKey) || '',
|
|
43
|
+
}),
|
|
44
|
+
});
|
|
45
|
+
if ((_c = chatMessage.response) === null || _c === void 0 ? void 0 : _c.content) {
|
|
46
|
+
return chatMessage.response.content;
|
|
47
|
+
}
|
|
48
|
+
return chatMessage.content;
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=AIClientImpl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIClientImpl.js","sourceRoot":"","sources":["../../src/lib/AIClientImpl.ts"],"names":[],"mappings":";;;;;;;;;AAQA,MAAM,OAAO,YAAY;IAKvB,YAAY,WAAwB;QAClC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAEK,aAAa;;YACjB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAChB,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAc;oBAC1D,QAAQ,EAAE,qBAAqB;iBAChC,CAAC,CAAC;aACJ;YACD,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;KAAA;IAEK,MAAM,CAAC,MAAc,EAAE,OAAuB;;;YAClD,MAAM,KAAK,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,MAAI,MAAA,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,UAAU,CAAA,CAAC;YAC5E,MAAM,SAAS,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAI,CAAC,CAAC,kDAAkD;YAEhG,wCAAwC;YACxC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAc;gBAChE,QAAQ,EAAE,cAAc;gBACxB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,UAAU,EAAE,KAAK;oBACjB,MAAM;oBACN,OAAO,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,KAAI,EAAE;oBAC9B,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,SAAS;oBACrB,UAAU,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,KAAI,EAAE;iBACrC,CAAC;aACH,CAAC,CAAC;YACH,IAAI,MAAC,WAAmB,CAAC,QAAQ,0CAAE,OAAO,EAAE;gBAC1C,OAAQ,WAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC;aAC9C;YACD,OAAO,WAAW,CAAC,OAAO,CAAC;;KAC5B;CACF"}
|
|
@@ -22,7 +22,8 @@ export class AsyncServiceLocator {
|
|
|
22
22
|
return this.instances[instanceKey];
|
|
23
23
|
}
|
|
24
24
|
registerService(name, serviceFactory) {
|
|
25
|
-
return new AsyncServiceLocator(Object.assign(Object.assign({}, this.services), { [name]: serviceFactory }), Object.assign(Object.assign({}, this.cache), { [name]: undefined }),
|
|
25
|
+
return new AsyncServiceLocator(Object.assign(Object.assign({}, this.services), { [name]: serviceFactory }), Object.assign(Object.assign({}, this.cache), { [name]: undefined }), // @varun can you fix?
|
|
26
|
+
this.options);
|
|
26
27
|
}
|
|
27
28
|
getService(name) {
|
|
28
29
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsyncServiceLocator.js","sourceRoot":"","sources":["../../src/lib/AsyncServiceLocator.ts"],"names":[],"mappings":";;;;;;;;;AAsBA,MAAM,OAAO,mBAAmB;IAY9B,YACE,QAAW,EACX,KAA2B,EAC3B,OAAmC;QAEnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAID,MAAM,CAAC,WAAW,CAAC,GAAW,EAAE,OAAmC;QACjE,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,GAAG,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAElD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE;YAChC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,mBAAmB,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;SACxE;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAED,eAAe,CACb,IAAO,EACP,cAAiB;QAEjB,OAAO,IAAI,mBAAmB,iCAEvB,IAAI,CAAC,QAAQ,KAChB,CAAC,IAAI,CAAC,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"AsyncServiceLocator.js","sourceRoot":"","sources":["../../src/lib/AsyncServiceLocator.ts"],"names":[],"mappings":";;;;;;;;;AAsBA,MAAM,OAAO,mBAAmB;IAY9B,YACE,QAAW,EACX,KAA2B,EAC3B,OAAmC;QAEnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAID,MAAM,CAAC,WAAW,CAAC,GAAW,EAAE,OAAmC;QACjE,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,GAAG,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAElD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE;YAChC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,mBAAmB,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;SACxE;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAED,eAAe,CACb,IAAO,EACP,cAAiB;QAEjB,OAAO,IAAI,mBAAmB,iCAEvB,IAAI,CAAC,QAAQ,KAChB,CAAC,IAAI,CAAC,EAAE,cAAc,KAExB,gCAAK,IAAI,CAAC,KAAK,KAAE,CAAC,IAAI,CAAC,EAAE,SAAS,GAAS,EAAE,sBAAsB;QACnE,IAAI,CAAC,OAAO,CACb,CAAC;IACJ,CAAC;IAEK,UAAU,CACd,IAAO;;YAGP,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEpC,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,WAAW,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aACtD;YAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;gBAC5C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;aACxC;YAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;KAAA;;AA1CM,6BAAS,GAA4C,EAAE,CAAC;AA6CjE,eAAe;AACf,iDAAiD;AACjD,EAAE;AACF,oBAAoB;AACpB,qBAAqB;AACrB,MAAM;AACN,IAAI;AACJ,EAAE;AACF,gBAAgB;AAChB,iDAAiD;AACjD,EAAE;AACF,uBAAuB;AACvB,sBAAsB;AACtB,MAAM;AACN,EAAE;AACF,oBAAoB;AACpB,sBAAsB;AACtB,MAAM;AACN,IAAI;AACJ,EAAE;AACF,iEAAiE;AACjE,qDAAqD;AACrD,gDAAgD;AAChD,sBAAsB;AACtB,eAAe;AACf,oEAAoE;AACpE,OAAO;AACP,4DAA4D;AAC5D,8DAA8D;AAC9D,EAAE;AACF,sBAAsB;AACtB,0BAA0B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface TokenProvider {
|
|
2
|
+
getToken(): Promise<string>;
|
|
3
|
+
}
|
|
4
|
+
export declare class JWTProvider implements TokenProvider {
|
|
5
|
+
private token;
|
|
6
|
+
private decoded;
|
|
7
|
+
private tokenProvider;
|
|
8
|
+
private expiresThreshold;
|
|
9
|
+
constructor(tokenProvider: TokenProvider, expiresThreshold?: number);
|
|
10
|
+
private fetchToken;
|
|
11
|
+
private isExpiredOrExpiringSoon;
|
|
12
|
+
getToken(): Promise<string>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=JWTProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JWTProvider.d.ts","sourceRoot":"","sources":["../../src/lib/JWTProvider.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC5B,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC7B;AAED,qBAAa,WAAY,YAAW,aAAa;IAC/C,OAAO,CAAC,KAAK,CAAuB;IAEpC,OAAO,CAAC,OAAO,CAAiC;IAEhD,OAAO,CAAC,aAAa,CAAgB;IAErC,OAAO,CAAC,gBAAgB,CAAS;gBAErB,aAAa,EAAE,aAAa,EAAE,gBAAgB,SAAM;YAKlD,UAAU;IAKxB,OAAO,CAAC,uBAAuB;IAQzB,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;CAMlC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
export class JWTProvider {
|
|
11
|
+
constructor(tokenProvider, expiresThreshold = 300) {
|
|
12
|
+
this.token = null;
|
|
13
|
+
this.decoded = null;
|
|
14
|
+
this.tokenProvider = tokenProvider;
|
|
15
|
+
this.expiresThreshold = expiresThreshold;
|
|
16
|
+
}
|
|
17
|
+
fetchToken() {
|
|
18
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
this.token = yield this.tokenProvider.getToken();
|
|
20
|
+
this.decoded = JSON.parse(atob(this.token.split('.')[1])); // Decode the payload
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
isExpiredOrExpiringSoon() {
|
|
24
|
+
if (!this.decoded || !this.decoded.exp) {
|
|
25
|
+
return true; // Treat as expired if there's no expiration time
|
|
26
|
+
}
|
|
27
|
+
const currentTime = Math.floor(Date.now() / 1000);
|
|
28
|
+
return this.decoded.exp < currentTime + this.expiresThreshold;
|
|
29
|
+
}
|
|
30
|
+
getToken() {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
if (!this.token || this.isExpiredOrExpiringSoon()) {
|
|
33
|
+
yield this.fetchToken();
|
|
34
|
+
}
|
|
35
|
+
return this.token;
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=JWTProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JWTProvider.js","sourceRoot":"","sources":["../../src/lib/JWTProvider.ts"],"names":[],"mappings":";;;;;;;;;AAMA,MAAM,OAAO,WAAW;IAStB,YAAY,aAA4B,EAAE,gBAAgB,GAAG,GAAG;QARxD,UAAK,GAAkB,IAAI,CAAC;QAE5B,YAAO,GAA4B,IAAI,CAAC;QAO9C,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAEa,UAAU;;YACtB,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YACjD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB;QAClF,CAAC;KAAA;IAEO,uBAAuB;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;YACtC,OAAO,IAAI,CAAC,CAAC,iDAAiD;SAC/D;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC;IAChE,CAAC;IAEK,QAAQ;;YACZ,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,uBAAuB,EAAE,EAAE;gBACjD,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;aACzB;YACD,OAAO,IAAI,CAAC,KAAM,CAAC;QACrB,CAAC;KAAA;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Proxy.d.ts","sourceRoot":"","sources":["../../src/lib/Proxy.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,SAAS,2DAGnB,OAAO,MAAM,EAAE,GAAG,CAkBpB,CAAC"}
|
package/lib/lib/Proxy.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/* eslint-disable no-restricted-syntax */
|
|
2
|
+
export const makeProxy = (obj, excludeKeys = []) => {
|
|
3
|
+
const proxyObj = {};
|
|
4
|
+
// Get prototype methods
|
|
5
|
+
const proto = Object.getPrototypeOf(obj);
|
|
6
|
+
if (proto) {
|
|
7
|
+
for (const key of Object.getOwnPropertyNames(proto)) {
|
|
8
|
+
if (key !== 'constructor' &&
|
|
9
|
+
typeof proto[key] === 'function' &&
|
|
10
|
+
!excludeKeys.includes(key)) {
|
|
11
|
+
proxyObj[key] = proto[key].bind(obj);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
return proxyObj;
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=Proxy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Proxy.js","sourceRoot":"","sources":["../../src/lib/Proxy.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,GAAM,EACN,cAA2B,EAAE,EACR,EAAE;IACvB,MAAM,QAAQ,GAAwB,EAAE,CAAC;IAEzC,wBAAwB;IACxB,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,KAAK,EAAE;QACT,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAmB,EAAE;YACrE,IACE,GAAG,KAAK,aAAa;gBACrB,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,UAAU;gBAChC,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAC1B;gBACA,QAAQ,CAAC,GAAa,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAChD;SACF;KACF;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userWorkspace.d.ts","sourceRoot":"","sources":["../../src/lib/userWorkspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAK5E,eAAO,MAAM,sCAAsC,YACxC,OAAO,YACN,QAAQ,KACjB,QAAQ,aAAa,CAgBvB,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { v5 as uuidv5 } from 'uuid';
|
|
11
|
+
const NAMESPACE = '9a5e7f16-23c0-49c0-8339-b441d8a84373';
|
|
12
|
+
export const getOrCreateUsersPrivateWorkspaceRecord = (desktop, ontology) => __awaiter(void 0, void 0, void 0, function* () {
|
|
13
|
+
const user = yield desktop.whoami();
|
|
14
|
+
const entity_id = uuidv5(user.username, NAMESPACE);
|
|
15
|
+
const not_in_database = `This entity is not in the database ${Date.now()}`;
|
|
16
|
+
const workspace = yield ontology.getEntity({
|
|
17
|
+
entity_type: 'os_workspace',
|
|
18
|
+
entity_id,
|
|
19
|
+
entity_label: not_in_database,
|
|
20
|
+
});
|
|
21
|
+
if (workspace.entity_label === not_in_database) {
|
|
22
|
+
return desktop.createWorkspace(`${user.username} Workspace`, {
|
|
23
|
+
id: entity_id,
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
return workspace;
|
|
27
|
+
});
|
|
28
|
+
//# sourceMappingURL=userWorkspace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userWorkspace.js","sourceRoot":"","sources":["../../src/lib/userWorkspace.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC,MAAM,SAAS,GAAG,sCAAsC,CAAC;AAEzD,MAAM,CAAC,MAAM,sCAAsC,GAAG,CACpD,OAAgB,EAChB,QAAkB,EACM,EAAE;IAC1B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;IACpC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACnD,MAAM,eAAe,GAAG,sCAAsC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IAE3E,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAgB;QACxD,WAAW,EAAE,cAAc;QAC3B,SAAS;QACT,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;IACH,IAAI,SAAS,CAAC,YAAY,KAAK,eAAe,EAAE;QAC9C,OAAO,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,QAAQ,YAAY,EAAE;YAC3D,EAAE,EAAE,SAAS;SACd,CAAC,CAAC;KACJ;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAA,CAAC"}
|
package/lib/permissions.d.ts
CHANGED
package/lib/permissions.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AACA;;;GAGG;AACH,eAAO,MAAM,wBAAwB,sBAAsB,CAAC;AAE5D;;;GAGG;AACH,eAAO,MAAM,yBAAyB,uBAAuB,CAAC;AAE9D;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AACA;;;GAGG;AACH,eAAO,MAAM,wBAAwB,sBAAsB,CAAC;AAE5D;;;GAGG;AACH,eAAO,MAAM,yBAAyB,uBAAuB,CAAC;AAE9D;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAQ,CAAC;AAErC,eAAO,MAAM,qBAAqB,UAAoB,CAAC"}
|
package/lib/permissions.js
CHANGED
package/lib/permissions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,mBAAmB,CAAC;AAE5D;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,oBAAoB,CAAC;AAE9D;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC"}
|
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,mBAAmB,CAAC;AAE5D;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,oBAAoB,CAAC;AAE9D;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC;AAErC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,eAAe,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@octostar/platform-api",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.5",
|
|
4
4
|
"description": "Provides access to the API exposed by Octostar platform to an application run in an iframe",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"octostar",
|
|
@@ -45,5 +45,5 @@
|
|
|
45
45
|
"publishConfig": {
|
|
46
46
|
"access": "public"
|
|
47
47
|
},
|
|
48
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "f24049c72a3c1068ff312de8da074b271b812f0a"
|
|
49
49
|
}
|