ai-publish-sdk 1.7.1 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -63,6 +63,14 @@ interface GetTokenResult {
63
63
  }
64
64
  ```
65
65
 
66
+ ### clearToken(appName)
67
+
68
+ Clear the stored token for an integration — use this to sign the user out of that integration. After calling, the next `getToken(appName, { interactive: true })` will start a fresh authorization flow.
69
+
70
+ ```typescript
71
+ clearToken(appName: IntegrationAppName): Promise<void>
72
+ ```
73
+
66
74
  ### getAllowedModels()
67
75
 
68
76
  Get the list of allowed AI models and the default model.
@@ -88,10 +96,20 @@ generateMessage(prompt: string, options: GenerateMessageOptions): Promise<string
88
96
  interface GenerateMessageOptions {
89
97
  withPageContext?: boolean // include current page content as context
90
98
  systemPrompt?: string // guide AI behavior
91
- model?: string // model name from getAllowedModels()
99
+ model?: string // model name from getAllowedModels(); omit for default
92
100
  }
93
101
  ```
94
102
 
103
+ Example — use a specific model from `getAllowedModels()`:
104
+
105
+ ```typescript
106
+ const { models, defaultModel } = await getAllowedModels()
107
+ const response = await generateMessage('Summarize this page', {
108
+ withPageContext: true,
109
+ model: models[0], // or defaultModel
110
+ })
111
+ ```
112
+
95
113
  ### getBrandingAssets()
96
114
 
97
115
  Get branding assets for white-label styling.
package/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { device, generateMessage, getAllowedModels, getBrandingAssets, getToken, getUserInfo, trackEvent } from './lib/functions';
1
+ export { clearToken, device, generateMessage, getAllowedModels, getBrandingAssets, getToken, getUserInfo, trackEvent } from './lib/functions';
2
2
  export { tcp } from './lib/tcp-socket';
3
3
  export type { TcpSocket } from './lib/tcp-socket';
4
4
  export { setGlobalTimeout, withTimeout } from './lib/rpc-bridge';
package/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let u=15e3;const c=new Map;let i=!1;function d(e){u=e}let a;function f(e,t){a=t;try{return e()}finally{a=void 0}}function m(){i||(i=!0,window.addEventListener("message",e=>{const t=e.data;if(!t?.messageId||!("name"in t))return;const r=c.get(t.messageId);r&&(clearTimeout(r.timer),c.delete(t.messageId),t.error?r.reject(new Error(t.error.message??"RPC error")):r.resolve(t.data))}))}function n(e,t){return m(),new Promise((r,s)=>{const o=crypto.randomUUID(),l=setTimeout(()=>{c.delete(o),s(new Error(`RPC timeout: ${e}`))},a??u);c.set(o,{resolve:r,reject:s,timer:l});const g={action:e,params:t,messageId:o};window.parent.postMessage(g,"*")})}async function v(){return n("getAllowedModels",[])}async function w(e,t){return n("generateMessage",[e,t])}async function y(e,t){return n("getToken",[e,t])}async function p(){return n("getUserInfo",[])}async function S(){return n("getBrandingAssets",[])}async function T(e){return n("tcpConnect",[e])}async function G(e,t){return n("tcpSend",[e,t])}async function M(e,t){return n("tcpReceive",[e,t])}async function b(e){return n("tcpClose",[e])}async function k(e){return n("trackEvent",[e])}const I={getSnapshot:e=>n("deviceGetSnapshot",[e]),getSoftware:()=>n("deviceGetSoftware",[]),getDevice:()=>n("deviceGetDevice",[]),getBrowser:()=>n("deviceGetBrowser",[]),getNetwork:()=>n("deviceGetNetwork",[]),getTabs:()=>n("deviceGetTabs",[]),getSiteStatus:e=>n("deviceGetSiteStatus",[e]),getStatusPage:e=>n("deviceGetStatusPage",[e])},C={async connect(e,t){const r=await T({host:e,port:t});return r===null?null:{send:async s=>(await G(r,{dataBase64:s}))?.bytesSent??null,receive:async()=>(await M(r))?.data??null,close:()=>b(r)}}};exports.device=I;exports.generateMessage=w;exports.getAllowedModels=v;exports.getBrandingAssets=S;exports.getToken=y;exports.getUserInfo=p;exports.setGlobalTimeout=d;exports.tcp=C;exports.trackEvent=k;exports.withTimeout=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let u=15e3;const c=new Map;let i=!1;function d(e){u=e}let a;function f(e,t){a=t;try{return e()}finally{a=void 0}}function m(){i||(i=!0,window.addEventListener("message",e=>{const t=e.data;if(!t?.messageId||!("name"in t))return;const r=c.get(t.messageId);r&&(clearTimeout(r.timer),c.delete(t.messageId),t.error?r.reject(new Error(t.error.message??"RPC error")):r.resolve(t.data))}))}function n(e,t){return m(),new Promise((r,s)=>{const o=crypto.randomUUID(),l=setTimeout(()=>{c.delete(o),s(new Error(`RPC timeout: ${e}`))},a??u);c.set(o,{resolve:r,reject:s,timer:l});const g={action:e,params:t,messageId:o};window.parent.postMessage(g,"*")})}async function v(){return n("getAllowedModels",[])}async function w(e,t){return n("generateMessage",[e,t])}async function y(e,t){return n("getToken",[e,t])}async function p(e){return n("clearToken",[e])}async function T(){return n("getUserInfo",[])}async function S(){return n("getBrandingAssets",[])}async function k(e){return n("tcpConnect",[e])}async function G(e,t){return n("tcpSend",[e,t])}async function M(e,t){return n("tcpReceive",[e,t])}async function b(e){return n("tcpClose",[e])}async function I(e){return n("trackEvent",[e])}const C={getSnapshot:e=>n("deviceGetSnapshot",[e]),getSoftware:()=>n("deviceGetSoftware",[]),getDevice:()=>n("deviceGetDevice",[]),getBrowser:()=>n("deviceGetBrowser",[]),getNetwork:()=>n("deviceGetNetwork",[]),getTabs:()=>n("deviceGetTabs",[]),getSiteStatus:e=>n("deviceGetSiteStatus",[e]),getStatusPage:e=>n("deviceGetStatusPage",[e])},A={async connect(e,t){const r=await k({host:e,port:t});return r===null?null:{send:async s=>(await G(r,{dataBase64:s}))?.bytesSent??null,receive:async()=>(await M(r))?.data??null,close:()=>b(r)}}};exports.clearToken=p;exports.device=C;exports.generateMessage=w;exports.getAllowedModels=v;exports.getBrandingAssets=S;exports.getToken=y;exports.getUserInfo=T;exports.setGlobalTimeout=d;exports.tcp=A;exports.trackEvent=I;exports.withTimeout=f;
package/index.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  let u = 15e3;
2
2
  const c = /* @__PURE__ */ new Map();
3
3
  let i = !1;
4
- function y(e) {
4
+ function p(e) {
5
5
  u = e;
6
6
  }
7
7
  let a;
@@ -41,13 +41,16 @@ async function T() {
41
41
  async function G(e, t) {
42
42
  return n("generateMessage", [e, t]);
43
43
  }
44
- async function C(e, t) {
44
+ async function k(e, t) {
45
45
  return n("getToken", [e, t]);
46
46
  }
47
+ async function C(e) {
48
+ return n("clearToken", [e]);
49
+ }
47
50
  async function I() {
48
51
  return n("getUserInfo", []);
49
52
  }
50
- async function k() {
53
+ async function M() {
51
54
  return n("getBrandingAssets", []);
52
55
  }
53
56
  async function f(e) {
@@ -62,10 +65,10 @@ async function v(e, t) {
62
65
  async function w(e) {
63
66
  return n("tcpClose", [e]);
64
67
  }
65
- async function M(e) {
68
+ async function b(e) {
66
69
  return n("trackEvent", [e]);
67
70
  }
68
- const b = {
71
+ const E = {
69
72
  getSnapshot: (e) => n("deviceGetSnapshot", [e]),
70
73
  getSoftware: () => n("deviceGetSoftware", []),
71
74
  getDevice: () => n("deviceGetDevice", []),
@@ -74,7 +77,7 @@ const b = {
74
77
  getTabs: () => n("deviceGetTabs", []),
75
78
  getSiteStatus: (e) => n("deviceGetSiteStatus", [e]),
76
79
  getStatusPage: (e) => n("deviceGetStatusPage", [e])
77
- }, E = {
80
+ }, P = {
78
81
  /**
79
82
  * Opens a TCP connection and returns a `TcpSocket` wrapper.
80
83
  *
@@ -93,14 +96,15 @@ const b = {
93
96
  }
94
97
  };
95
98
  export {
96
- b as device,
99
+ C as clearToken,
100
+ E as device,
97
101
  G as generateMessage,
98
102
  T as getAllowedModels,
99
- k as getBrandingAssets,
100
- C as getToken,
103
+ M as getBrandingAssets,
104
+ k as getToken,
101
105
  I as getUserInfo,
102
- y as setGlobalTimeout,
103
- E as tcp,
104
- M as trackEvent,
106
+ p as setGlobalTimeout,
107
+ P as tcp,
108
+ b as trackEvent,
105
109
  S as withTimeout
106
110
  };
@@ -2,6 +2,7 @@ import { AllowedModelsInfo, BrandingAssets, BrowserMetrics, DeviceMetrics, Devic
2
2
  export declare function getAllowedModels(): Promise<AllowedModelsInfo>;
3
3
  export declare function generateMessage(prompt: string, options: GenerateMessageOptions): Promise<string | null>;
4
4
  export declare function getToken(appName: IntegrationAppName, options?: GetTokenOptions): Promise<GetTokenResult | null>;
5
+ export declare function clearToken(appName: IntegrationAppName): Promise<void>;
5
6
  export declare function getUserInfo(): Promise<UserInfo | null>;
6
7
  export declare function getBrandingAssets(): Promise<BrandingAssets | null>;
7
8
  export declare function executeScript(code: string): Promise<void>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ai-publish-sdk",
3
- "version": "1.7.1",
3
+ "version": "1.9.0",
4
4
  "module": "./index.mjs",
5
5
  "main": "./index.js",
6
6
  "types": "./index.d.ts",