skybridge 0.0.0-dev.4eb7532 → 0.0.0-dev.5961f4a

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.
Files changed (102) hide show
  1. package/README.md +74 -2
  2. package/dist/src/server/server.d.ts +1 -0
  3. package/dist/src/server/server.js +15 -6
  4. package/dist/src/server/server.js.map +1 -1
  5. package/dist/src/server/templateHelper.d.ts +9 -8
  6. package/dist/src/server/templateHelper.js +0 -8
  7. package/dist/src/server/templateHelper.js.map +1 -1
  8. package/dist/src/server/templates/development.hbs +1 -0
  9. package/dist/src/server/templates/production.hbs +3 -2
  10. package/dist/src/test/widget.test.js +23 -2
  11. package/dist/src/test/widget.test.js.map +1 -1
  12. package/dist/src/web/hooks/index.d.ts +13 -0
  13. package/dist/src/web/hooks/index.js +14 -0
  14. package/dist/src/web/hooks/index.js.map +1 -0
  15. package/dist/src/web/hooks/use-call-tool.d.ts +54 -0
  16. package/dist/src/web/hooks/use-call-tool.js +44 -0
  17. package/dist/src/web/hooks/use-call-tool.js.map +1 -0
  18. package/dist/src/web/hooks/use-call-tool.test.js +66 -0
  19. package/dist/src/web/hooks/use-call-tool.test.js.map +1 -0
  20. package/dist/src/web/hooks/use-display-mode.d.ts +4 -0
  21. package/dist/src/web/hooks/use-display-mode.js +7 -0
  22. package/dist/src/web/hooks/use-display-mode.js.map +1 -0
  23. package/dist/src/web/hooks/use-display-mode.test.d.ts +1 -0
  24. package/dist/src/web/hooks/use-display-mode.test.js +40 -0
  25. package/dist/src/web/hooks/use-display-mode.test.js.map +1 -0
  26. package/dist/src/web/hooks/use-locale.d.ts +1 -0
  27. package/dist/src/web/hooks/use-locale.js +5 -0
  28. package/dist/src/web/hooks/use-locale.js.map +1 -0
  29. package/dist/src/web/hooks/use-locale.test.d.ts +1 -0
  30. package/dist/src/web/hooks/use-locale.test.js +21 -0
  31. package/dist/src/web/hooks/use-locale.test.js.map +1 -0
  32. package/dist/src/web/hooks/use-open-external.d.ts +1 -0
  33. package/dist/src/web/hooks/use-open-external.js +6 -0
  34. package/dist/src/web/hooks/use-open-external.js.map +1 -0
  35. package/dist/src/web/hooks/use-open-external.test.d.ts +1 -0
  36. package/dist/src/web/hooks/use-open-external.test.js +24 -0
  37. package/dist/src/web/hooks/use-open-external.test.js.map +1 -0
  38. package/dist/src/web/{use-openai-global.d.ts → hooks/use-openai-global.d.ts} +1 -1
  39. package/dist/src/web/{use-openai-global.js → hooks/use-openai-global.js} +4 -2
  40. package/dist/src/web/hooks/use-openai-global.js.map +1 -0
  41. package/dist/src/web/hooks/use-request-modal.d.ts +5 -0
  42. package/dist/src/web/hooks/use-request-modal.js +9 -0
  43. package/dist/src/web/hooks/use-request-modal.js.map +1 -0
  44. package/dist/src/web/hooks/use-request-modal.test.d.ts +1 -0
  45. package/dist/src/web/hooks/use-request-modal.test.js +24 -0
  46. package/dist/src/web/hooks/use-request-modal.test.js.map +1 -0
  47. package/dist/src/web/hooks/use-send-follow-up-message.d.ts +1 -0
  48. package/dist/src/web/hooks/use-send-follow-up-message.js +11 -0
  49. package/dist/src/web/hooks/use-send-follow-up-message.js.map +1 -0
  50. package/dist/src/web/hooks/use-theme.d.ts +1 -0
  51. package/dist/src/web/hooks/use-theme.js +5 -0
  52. package/dist/src/web/hooks/use-theme.js.map +1 -0
  53. package/dist/src/web/hooks/use-theme.test.d.ts +1 -0
  54. package/dist/src/web/hooks/use-theme.test.js +26 -0
  55. package/dist/src/web/hooks/use-theme.test.js.map +1 -0
  56. package/dist/src/web/hooks/use-tool-info.d.ts +18 -0
  57. package/dist/src/web/hooks/use-tool-info.js +22 -0
  58. package/dist/src/web/hooks/use-tool-info.js.map +1 -0
  59. package/dist/src/web/hooks/use-tool-info.test.d.ts +1 -0
  60. package/dist/src/web/hooks/use-tool-info.test.js +59 -0
  61. package/dist/src/web/hooks/use-tool-info.test.js.map +1 -0
  62. package/dist/src/web/hooks/use-tool-output.d.ts +4 -0
  63. package/dist/src/web/hooks/use-tool-output.js +9 -0
  64. package/dist/src/web/hooks/use-tool-output.js.map +1 -0
  65. package/dist/src/web/hooks/use-tool-response-metadata.d.ts +4 -0
  66. package/dist/src/web/hooks/use-tool-response-metadata.js +8 -0
  67. package/dist/src/web/hooks/use-tool-response-metadata.js.map +1 -0
  68. package/dist/src/web/hooks/use-user-agent.d.ts +1 -0
  69. package/dist/src/web/hooks/use-user-agent.js +5 -0
  70. package/dist/src/web/hooks/use-user-agent.js.map +1 -0
  71. package/dist/src/web/hooks/use-user-agent.test.d.ts +1 -0
  72. package/dist/src/web/hooks/use-user-agent.test.js +31 -0
  73. package/dist/src/web/hooks/use-user-agent.test.js.map +1 -0
  74. package/dist/src/web/hooks/use-widget-state.d.ts +4 -0
  75. package/dist/src/web/hooks/use-widget-state.js +30 -0
  76. package/dist/src/web/hooks/use-widget-state.js.map +1 -0
  77. package/dist/src/web/hooks/use-widget-state.test.d.ts +1 -0
  78. package/dist/src/web/hooks/use-widget-state.test.js +60 -0
  79. package/dist/src/web/hooks/use-widget-state.test.js.map +1 -0
  80. package/dist/src/web/index.d.ts +1 -3
  81. package/dist/src/web/index.js +1 -3
  82. package/dist/src/web/index.js.map +1 -1
  83. package/dist/src/web/plugin.js +2 -4
  84. package/dist/src/web/plugin.js.map +1 -1
  85. package/dist/src/web/types.d.ts +11 -3
  86. package/dist/src/web/types.js.map +1 -1
  87. package/dist/vitest.config.js +0 -1
  88. package/dist/vitest.config.js.map +1 -1
  89. package/package.json +9 -2
  90. package/dist/src/test/setup.js +0 -9
  91. package/dist/src/test/setup.js.map +0 -1
  92. package/dist/src/web/use-call-tool.d.ts +0 -39
  93. package/dist/src/web/use-call-tool.js +0 -53
  94. package/dist/src/web/use-call-tool.js.map +0 -1
  95. package/dist/src/web/use-openai-global.js.map +0 -1
  96. package/dist/src/web/use-tool-output.d.ts +0 -3
  97. package/dist/src/web/use-tool-output.js +0 -5
  98. package/dist/src/web/use-tool-output.js.map +0 -1
  99. package/dist/src/web/use-tool-response-metadata.d.ts +0 -3
  100. package/dist/src/web/use-tool-response-metadata.js +0 -5
  101. package/dist/src/web/use-tool-response-metadata.js.map +0 -1
  102. /package/dist/src/{test/setup.d.ts → web/hooks/use-call-tool.test.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"vitest.config.js","sourceRoot":"","sources":["../vitest.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,eAAe,YAAY,CAAC;IAC1B,IAAI,EAAE;QACJ,WAAW,EAAE,OAAO;QACpB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,qBAAqB,CAAC;KACpC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"vitest.config.js","sourceRoot":"","sources":["../vitest.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,eAAe,YAAY,CAAC;IAC1B,IAAI,EAAE;QACJ,WAAW,EAAE,OAAO;QACpB,OAAO,EAAE,IAAI;KACd;CACF,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "skybridge",
3
- "version": "0.0.0-dev.4eb7532",
3
+ "version": "0.0.0-dev.5961f4a",
4
4
  "description": "Skybridge is a framework for building ChatGPT apps",
5
5
  "type": "module",
6
6
  "files": [
@@ -19,7 +19,12 @@
19
19
  "scripts": {
20
20
  "build": "tsc && pnpm run build:templates",
21
21
  "build:templates": "cp -r src/server/templates dist/src/server/",
22
- "test": "vitest run --silent"
22
+ "test": "pnpm run test:unit && pnpm run test:type",
23
+ "test:unit": "vitest run --silent",
24
+ "test:type": "tsc --noEmit",
25
+ "docs:dev": "pnpm --filter @skybridge/docs start",
26
+ "docs:build": "pnpm --filter @skybridge/docs build",
27
+ "docs:serve": "pnpm --filter @skybridge/docs serve"
23
28
  },
24
29
  "keywords": [
25
30
  "chatgpt",
@@ -42,6 +47,8 @@
42
47
  "zod": "^3.25.51"
43
48
  },
44
49
  "devDependencies": {
50
+ "@testing-library/dom": "^10.4.1",
51
+ "@testing-library/react": "^16.3.0",
45
52
  "@total-typescript/tsconfig": "^1.0.4",
46
53
  "@types/cors": "^2.8.19",
47
54
  "@types/express": "^5.0.3",
@@ -1,9 +0,0 @@
1
- import { vi } from "vitest";
2
- // Mock console methods to avoid noise in tests
3
- global.console = {
4
- ...console,
5
- error: vi.fn(),
6
- warn: vi.fn(),
7
- log: vi.fn(),
8
- };
9
- //# sourceMappingURL=setup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/test/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE5B,+CAA+C;AAC/C,MAAM,CAAC,OAAO,GAAG;IACf,GAAG,OAAO;IACV,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;IACd,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;IACb,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;CACb,CAAC"}
@@ -1,39 +0,0 @@
1
- import type { CallToolArgs, CallToolResponse } from "./types.js";
2
- export declare const useCallTool: <ToolArgs extends CallToolArgs = null, ToolResponse extends CallToolResponse = CallToolResponse>(name: string) => {
3
- callTool: (toolArgs: ToolArgs) => void;
4
- callToolAsync: (toolArgs: ToolArgs) => Promise<ToolResponse | undefined>;
5
- status: "idle";
6
- response: undefined;
7
- isIdle: true;
8
- isPending: false;
9
- isSuccess: false;
10
- isError: false;
11
- } | {
12
- callTool: (toolArgs: ToolArgs) => void;
13
- callToolAsync: (toolArgs: ToolArgs) => Promise<ToolResponse | undefined>;
14
- status: "pending";
15
- response: undefined;
16
- isIdle: false;
17
- isPending: true;
18
- isSuccess: false;
19
- isError: false;
20
- } | {
21
- callTool: (toolArgs: ToolArgs) => void;
22
- callToolAsync: (toolArgs: ToolArgs) => Promise<ToolResponse | undefined>;
23
- status: "error";
24
- error: unknown;
25
- response: undefined;
26
- isIdle: false;
27
- isPending: false;
28
- isSuccess: false;
29
- isError: true;
30
- } | {
31
- callTool: (toolArgs: ToolArgs) => void;
32
- callToolAsync: (toolArgs: ToolArgs) => Promise<ToolResponse | undefined>;
33
- status: "success";
34
- response: ToolResponse;
35
- isIdle: false;
36
- isPending: false;
37
- isSuccess: true;
38
- isError: false;
39
- };
@@ -1,53 +0,0 @@
1
- import { useState } from "react";
2
- export const useCallTool = (name) => {
3
- const [callToolState, setCallToolState] = useState({
4
- status: "idle",
5
- response: undefined,
6
- isIdle: true,
7
- isPending: false,
8
- isSuccess: false,
9
- isError: false,
10
- });
11
- const callToolAsync = async (toolArgs) => {
12
- setCallToolState({
13
- status: "pending",
14
- response: undefined,
15
- isIdle: false,
16
- isPending: true,
17
- isSuccess: false,
18
- isError: false,
19
- });
20
- try {
21
- const response = await window.openai.callTool(name, toolArgs);
22
- setCallToolState({
23
- status: "success",
24
- response,
25
- isIdle: false,
26
- isPending: false,
27
- isSuccess: true,
28
- isError: false,
29
- });
30
- return response;
31
- }
32
- catch (error) {
33
- setCallToolState({
34
- status: "error",
35
- response: undefined,
36
- error,
37
- isIdle: false,
38
- isPending: false,
39
- isSuccess: false,
40
- isError: true,
41
- });
42
- }
43
- };
44
- const callTool = (toolArgs) => {
45
- void callToolAsync(toolArgs);
46
- };
47
- return {
48
- ...callToolState,
49
- callTool,
50
- callToolAsync,
51
- };
52
- };
53
- //# sourceMappingURL=use-call-tool.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-call-tool.js","sourceRoot":"","sources":["../../../src/web/use-call-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AA4CjC,MAAM,CAAC,MAAM,WAAW,GAAG,CAIzB,IAAY,EACZ,EAAE;IACF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAEhD;QACA,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,IAAI;QACZ,SAAS,EAAE,KAAK;QAChB,SAAS,EAAE,KAAK;QAChB,OAAO,EAAE,KAAK;KACf,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,KAAK,EAAE,QAAkB,EAAE,EAAE;QACjD,gBAAgB,CAAC;YACf,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,KAAK;YACb,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QACH,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAC3C,IAAI,EACJ,QAAQ,CACT,CAAC;YACF,gBAAgB,CAAC;gBACf,MAAM,EAAE,SAAS;gBACjB,QAAQ;gBACR,MAAM,EAAE,KAAK;gBACb,SAAS,EAAE,KAAK;gBAChB,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gBAAgB,CAAC;gBACf,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,SAAS;gBACnB,KAAK;gBACL,MAAM,EAAE,KAAK;gBACb,SAAS,EAAE,KAAK;gBAChB,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,QAAkB,EAAE,EAAE;QACtC,KAAK,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,OAAO;QACL,GAAG,aAAa;QAChB,QAAQ;QACR,aAAa;KACd,CAAC;AACJ,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-openai-global.js","sourceRoot":"","sources":["../../../src/web/use-openai-global.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAsB,MAAM,YAAY,CAAC;AAEzF,MAAM,UAAU,eAAe,CAAgC,GAAM;IACnE,OAAO,oBAAoB,CACzB,CAAC,QAAQ,EAAE,EAAE;QACX,MAAM,eAAe,GAAG,CAAC,KAAsB,EAAE,EAAE;YACjD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO;YACT,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACvD,QAAQ,EAAE,CAAC;QACb,CAAC,CAAC;QAEF,MAAM,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,eAAe,EAAE;YAC/D,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,mBAAmB,CAAC,sBAAsB,EAAE,eAAe,CAAC,CAAC;QACtE,CAAC,CAAC;IACJ,CAAC,EACD,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAC3B,CAAC;AACJ,CAAC"}
@@ -1,3 +0,0 @@
1
- export declare function useToolOutput(): {
2
- [x: string]: unknown;
3
- } | null | undefined;
@@ -1,5 +0,0 @@
1
- import { useOpenAiGlobal } from "./use-openai-global.js";
2
- export function useToolOutput() {
3
- return useOpenAiGlobal("toolOutput");
4
- }
5
- //# sourceMappingURL=use-tool-output.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-tool-output.js","sourceRoot":"","sources":["../../../src/web/use-tool-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,UAAU,aAAa;IAC3B,OAAO,eAAe,CAAC,YAAY,CAAC,CAAC;AACvC,CAAC"}
@@ -1,3 +0,0 @@
1
- export declare function useToolResponseMetadata(): {
2
- [x: string]: unknown;
3
- } | null | undefined;
@@ -1,5 +0,0 @@
1
- import { useOpenAiGlobal } from "./use-openai-global.js";
2
- export function useToolResponseMetadata() {
3
- return useOpenAiGlobal("toolResponseMetadata");
4
- }
5
- //# sourceMappingURL=use-tool-response-metadata.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-tool-response-metadata.js","sourceRoot":"","sources":["../../../src/web/use-tool-response-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,UAAU,uBAAuB;IACrC,OAAO,eAAe,CAAC,sBAAsB,CAAC,CAAC;AACjD,CAAC"}