@octonodes/ui-extensions 0.2.16 → 0.2.38

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 (113) hide show
  1. package/README.md +77 -3
  2. package/dist/app/OctonodeAppProvider/AppAccessScreen/AppAccessScreen.d.ts +3 -0
  3. package/dist/app/OctonodeAppProvider/AppAccessScreen/AppAccessScreen.d.ts.map +1 -0
  4. package/dist/app/OctonodeAppProvider/AppAccessScreen/AppAccessScreen.js +17 -0
  5. package/dist/app/OctonodeAppProvider/AppAccessScreen/AppAccessScreen.js.map +1 -0
  6. package/dist/app/OctonodeAppProvider/AppAccessScreen/AppAccessScreen.types.d.ts +4 -0
  7. package/dist/app/OctonodeAppProvider/AppAccessScreen/AppAccessScreen.types.d.ts.map +1 -0
  8. package/dist/app/OctonodeAppProvider/AppAccessScreen/AppAccessScreen.types.js +2 -0
  9. package/dist/app/OctonodeAppProvider/AppAccessScreen/AppAccessScreen.types.js.map +1 -0
  10. package/dist/app/OctonodeAppProvider/AppAccessScreen/constants.d.ts +3 -0
  11. package/dist/app/OctonodeAppProvider/AppAccessScreen/constants.d.ts.map +1 -0
  12. package/dist/app/OctonodeAppProvider/AppAccessScreen/constants.js +15 -0
  13. package/dist/app/OctonodeAppProvider/AppAccessScreen/constants.js.map +1 -0
  14. package/dist/app/OctonodeAppProvider/AppAccessScreen/index.d.ts +3 -0
  15. package/dist/app/OctonodeAppProvider/AppAccessScreen/index.d.ts.map +1 -0
  16. package/dist/app/OctonodeAppProvider/AppAccessScreen/index.js +3 -0
  17. package/dist/app/OctonodeAppProvider/AppAccessScreen/index.js.map +1 -0
  18. package/dist/app/OctonodeAppProvider/OctonodeAppProvider.d.ts +4 -0
  19. package/dist/app/OctonodeAppProvider/OctonodeAppProvider.d.ts.map +1 -0
  20. package/dist/app/OctonodeAppProvider/OctonodeAppProvider.js +20 -0
  21. package/dist/app/OctonodeAppProvider/OctonodeAppProvider.js.map +1 -0
  22. package/dist/app/OctonodeAppProvider/OctonodeAppProvider.types.d.ts +12 -0
  23. package/dist/app/OctonodeAppProvider/OctonodeAppProvider.types.d.ts.map +1 -0
  24. package/dist/app/OctonodeAppProvider/OctonodeAppProvider.types.js +2 -0
  25. package/dist/app/OctonodeAppProvider/OctonodeAppProvider.types.js.map +1 -0
  26. package/dist/app/OctonodeAppProvider/constants.d.ts +3 -0
  27. package/dist/app/OctonodeAppProvider/constants.d.ts.map +1 -0
  28. package/dist/app/OctonodeAppProvider/constants.js +2 -0
  29. package/dist/app/OctonodeAppProvider/constants.js.map +1 -0
  30. package/dist/app/OctonodeAppProvider/context.d.ts +3 -0
  31. package/dist/app/OctonodeAppProvider/context.d.ts.map +1 -0
  32. package/dist/app/OctonodeAppProvider/context.js +4 -0
  33. package/dist/app/OctonodeAppProvider/context.js.map +1 -0
  34. package/dist/app/OctonodeAppProvider/index.d.ts +4 -0
  35. package/dist/app/OctonodeAppProvider/index.d.ts.map +1 -0
  36. package/dist/app/OctonodeAppProvider/index.js +4 -0
  37. package/dist/app/OctonodeAppProvider/index.js.map +1 -0
  38. package/dist/app/hosted.d.ts.map +1 -1
  39. package/dist/app/hosted.js +19 -2
  40. package/dist/app/hosted.js.map +1 -1
  41. package/dist/app/index.d.ts +4 -4
  42. package/dist/app/index.d.ts.map +1 -1
  43. package/dist/app/index.js +7 -6
  44. package/dist/app/index.js.map +1 -1
  45. package/dist/app/project.d.ts +2 -3
  46. package/dist/app/project.d.ts.map +1 -1
  47. package/dist/app/project.js.map +1 -1
  48. package/dist/app/server.d.ts.map +1 -1
  49. package/dist/app/server.js.map +1 -1
  50. package/dist/app/types.d.ts +10 -4
  51. package/dist/app/types.d.ts.map +1 -1
  52. package/dist/constants.d.ts +9 -0
  53. package/dist/constants.d.ts.map +1 -0
  54. package/dist/constants.js +53 -0
  55. package/dist/constants.js.map +1 -0
  56. package/dist/contributions.d.ts +5 -0
  57. package/dist/contributions.d.ts.map +1 -0
  58. package/dist/contributions.js +71 -0
  59. package/dist/contributions.js.map +1 -0
  60. package/dist/contributions.types.d.ts +93 -0
  61. package/dist/contributions.types.d.ts.map +1 -0
  62. package/dist/contributions.types.js +2 -0
  63. package/dist/contributions.types.js.map +1 -0
  64. package/dist/hooks/general/useExtension.d.ts +3 -0
  65. package/dist/hooks/general/useExtension.d.ts.map +1 -0
  66. package/dist/hooks/general/useExtension.js +7 -0
  67. package/dist/hooks/general/useExtension.js.map +1 -0
  68. package/dist/hooks/general/useHostedApp.d.ts +9 -0
  69. package/dist/hooks/general/useHostedApp.d.ts.map +1 -0
  70. package/dist/hooks/general/useHostedApp.js +53 -0
  71. package/dist/hooks/general/useHostedApp.js.map +1 -0
  72. package/dist/hooks/general/useOctonodeApp.d.ts +3 -0
  73. package/dist/hooks/general/useOctonodeApp.d.ts.map +1 -0
  74. package/dist/hooks/general/useOctonodeApp.js +10 -0
  75. package/dist/hooks/general/useOctonodeApp.js.map +1 -0
  76. package/dist/hooks/types.d.ts +9 -0
  77. package/dist/hooks/types.d.ts.map +1 -0
  78. package/dist/hooks/types.js +2 -0
  79. package/dist/hooks/types.js.map +1 -0
  80. package/dist/index.d.ts +17 -58
  81. package/dist/index.d.ts.map +1 -1
  82. package/dist/index.js +13 -9
  83. package/dist/index.js.map +1 -1
  84. package/dist/locales/de.json +22 -0
  85. package/dist/locales/en.json +22 -0
  86. package/dist/locales/es.json +22 -0
  87. package/dist/locales/fr.json +22 -0
  88. package/dist/locales/index.d.ts +113 -0
  89. package/dist/locales/index.d.ts.map +1 -0
  90. package/dist/locales/index.js +8 -0
  91. package/dist/locales/index.js.map +1 -0
  92. package/dist/locales/ja.json +22 -0
  93. package/dist/react/index.d.ts +25 -0
  94. package/dist/react/index.d.ts.map +1 -0
  95. package/dist/react/index.js +134 -0
  96. package/dist/react/index.js.map +1 -0
  97. package/dist/react.d.ts +2 -0
  98. package/dist/react.d.ts.map +1 -1
  99. package/dist/react.js +16 -4
  100. package/dist/react.js.map +1 -1
  101. package/dist/targets.d.ts +2 -0
  102. package/dist/targets.d.ts.map +1 -0
  103. package/dist/targets.js +46 -0
  104. package/dist/targets.js.map +1 -0
  105. package/dist/testing.d.ts +2 -2
  106. package/dist/testing.d.ts.map +1 -1
  107. package/dist/testing.js +1 -1
  108. package/dist/testing.js.map +1 -1
  109. package/dist/types.d.ts +87 -0
  110. package/dist/types.d.ts.map +1 -0
  111. package/dist/types.js +2 -0
  112. package/dist/types.js.map +1 -0
  113. package/package.json +10 -3
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/app/server.ts"],"names":[],"mappings":"AAAA,mGAAmG;AACnG,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAC;AAK3D,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAGtB;IAFlB,YACE,OAAe,EACC,MAAc;QAE9B,KAAK,CAAC,OAAO,CAAC,CAAC;QAFC,WAAM,GAAN,MAAM,CAAQ;QAG9B,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAAa,EACb,OAA+D;IAE/D,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,eAAe,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;IACvG,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClH,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,MAAM,OAAO,GAAe,KAAK,EAAK,SAA8C,EAAE,IAAc,EAAc,EAAE;QAClH,MAAM,IAAI,GACR,SAAS,KAAK,SAAS;YACrB,CAAC,CAAC,2BAA2B;YAC7B,CAAC,CAAC,SAAS,KAAK,MAAM;gBACpB,CAAC,CAAC,wBAAwB;gBAC1B,CAAC,CAAC,8BAA8B,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;YAChD,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;YACnC,MAAM,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;YAChD,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,KAAK,EAAE;gBAChC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;aAC3E;YACD,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;SACnE,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG;YACjD,MAAM,IAAI,eAAe,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;QAC/E,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,MAAM,IAAI,eAAe,CAAC,gCAAgC,QAAQ,CAAC,MAAM,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjH,OAAO,QAAQ,CAAC,IAAI,EAAgB,CAAC;IACvC,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAM3B,SAAS,CAAC,CAAC;IACd,IAAI,QAAQ,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK;QAAE,MAAM,IAAI,eAAe,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;IAC3G,OAAO,UAAU,CAAC,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACtF,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/app/server.ts"],"names":[],"mappings":"AAAA,mGAAmG;AACnG,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAGtB;IAFlB,YACE,OAAe,EACC,MAAc;QAE9B,KAAK,CAAC,OAAO,CAAC,CAAC;QAFC,WAAM,GAAN,MAAM,CAAQ;QAG9B,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAAa,EACb,OAA+D;IAE/D,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,eAAe,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;IACvG,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClH,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,MAAM,OAAO,GAAe,KAAK,EAAK,SAA8C,EAAE,IAAc,EAAc,EAAE;QAClH,MAAM,IAAI,GACR,SAAS,KAAK,SAAS;YACrB,CAAC,CAAC,2BAA2B;YAC7B,CAAC,CAAC,SAAS,KAAK,MAAM;gBACpB,CAAC,CAAC,wBAAwB;gBAC1B,CAAC,CAAC,8BAA8B,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;YAChD,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;YACnC,MAAM,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;YAChD,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,KAAK,EAAE;gBAChC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;aAC3E;YACD,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;SACnE,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG;YACjD,MAAM,IAAI,eAAe,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;QAC/E,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,MAAM,IAAI,eAAe,CAAC,gCAAgC,QAAQ,CAAC,MAAM,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjH,OAAO,QAAQ,CAAC,IAAI,EAAgB,CAAC;IACvC,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAM3B,SAAS,CAAC,CAAC;IACd,IAAI,QAAQ,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK;QAAE,MAAM,IAAI,eAAe,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;IAC3G,OAAO,UAAU,CAAC,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACtF,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { AppSession } from "../index.js";
1
+ import type { AppSession } from "../types.js";
2
2
  export type HostedAppState = {
3
3
  embedded: boolean;
4
4
  status: "connecting" | "ready" | "standalone" | "expired";
@@ -6,12 +6,17 @@ export type HostedAppState = {
6
6
  expiresAt?: number;
7
7
  path: string;
8
8
  };
9
+ export type HostedAppNavigationItem = {
10
+ label: string;
11
+ path: string;
12
+ };
9
13
  export type HostedApp = {
10
14
  getSnapshot(): HostedAppState;
11
15
  subscribe(listener: () => void): () => void;
12
16
  navigate(path: string, options?: {
13
17
  replace?: boolean;
14
18
  }): void;
19
+ setNavigation(items: HostedAppNavigationItem[]): void;
15
20
  fetch(input: string, init?: RequestInit): Promise<Response>;
16
21
  dispose(): void;
17
22
  };
@@ -68,19 +73,20 @@ export type AppContext = {
68
73
  };
69
74
  export type AppBridgeRequest = {
70
75
  octonode: "ui-extension";
71
- apiVersion: "1";
76
+ apiVersion: "1" | "2";
72
77
  type: "app-request";
73
78
  requestId: string;
74
- operation: "context" | "data" | "workflow.run";
79
+ operation: "context" | "data" | "workflow.run" | "host";
75
80
  body?: unknown;
76
81
  };
77
82
  export type AppBridgeResponse = {
78
83
  octonode: "ui-extension";
79
- apiVersion: "1";
84
+ apiVersion: "1" | "2";
80
85
  type: "app-response";
81
86
  requestId: string;
82
87
  ok: boolean;
83
88
  value?: unknown;
84
89
  error?: string;
85
90
  };
91
+ export type AppRequest = <T>(operation: Exclude<AppBridgeRequest["operation"], "host">, body?: unknown) => Promise<T>;
86
92
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/app/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/app/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export declare const UI_EXTENSION_API_VERSION: "1";
2
+ export declare const APP_EXTENSION_API_VERSION: "2";
3
+ export declare const MAX_NODES = 100;
4
+ export declare const MAX_DEPTH = 10;
5
+ export declare const MAX_TEXT = 4000;
6
+ export declare const INPUT_NAME: RegExp;
7
+ export declare const APP_EXTENSION_TARGETS: readonly ["app.page", "workspace.block", "shell.panel", "shell.dock", "project.tab", "project.overview.block", "workflow.tab", "workflow.inspector.block", "node.view", "node.inspector.tab", "node.inspector.block", "task.space.view", "task.details.tab", "task.details.block", "task.card.badge", "document.tab", "document.panel", "editor.panel", "git.diff.panel", "table.view", "execution.details.block", "app.settings.section", "project.settings.section", "project.action", "file.action", "editor.action", "editor.selection-action", "workflow.action", "workflow.canvas.action", "workflow.selection-action", "workflow.edge.action", "node.action", "task.space.action", "task.action", "document.action", "document.selection-action", "document.block.action", "document.slash-command", "document.review.action", "git.diff.action", "table.action", "execution.action"];
8
+ export declare const UI_EXTENSION_TARGETS: readonly ["node.inspector.inputs", "app.page", "workspace.block", "shell.panel", "shell.dock", "project.tab", "project.overview.block", "workflow.tab", "workflow.inspector.block", "node.view", "node.inspector.tab", "node.inspector.block", "task.space.view", "task.details.tab", "task.details.block", "task.card.badge", "document.tab", "document.panel", "editor.panel", "git.diff.panel", "table.view", "execution.details.block", "app.settings.section", "project.settings.section", "project.action", "file.action", "editor.action", "editor.selection-action", "workflow.action", "workflow.canvas.action", "workflow.selection-action", "workflow.edge.action", "node.action", "task.space.action", "task.action", "document.action", "document.selection-action", "document.block.action", "document.slash-command", "document.review.action", "git.diff.action", "table.action", "execution.action"];
9
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,wBAAwB,EAAG,GAAY,CAAC;AAErD,eAAO,MAAM,yBAAyB,EAAG,GAAY,CAAC;AAEtD,eAAO,MAAM,SAAS,MAAM,CAAC;AAE7B,eAAO,MAAM,SAAS,KAAK,CAAC;AAE5B,eAAO,MAAM,QAAQ,OAAQ,CAAC;AAE9B,eAAO,MAAM,UAAU,QAAiC,CAAC;AAEzD,eAAO,MAAM,qBAAqB,81BA4CxB,CAAC;AAEX,eAAO,MAAM,oBAAoB,u3BAA+D,CAAC"}
@@ -0,0 +1,53 @@
1
+ // Generated from packages/ui-extensions/src/constants.ts. Do not edit; run the Octonode SDK sync.
2
+ export const UI_EXTENSION_API_VERSION = "1";
3
+ export const APP_EXTENSION_API_VERSION = "2";
4
+ export const MAX_NODES = 100;
5
+ export const MAX_DEPTH = 10;
6
+ export const MAX_TEXT = 4_000;
7
+ export const INPUT_NAME = /^[a-zA-Z0-9][a-zA-Z0-9_.-]*$/;
8
+ export const APP_EXTENSION_TARGETS = [
9
+ "app.page",
10
+ "workspace.block",
11
+ "shell.panel",
12
+ "shell.dock",
13
+ "project.tab",
14
+ "project.overview.block",
15
+ "workflow.tab",
16
+ "workflow.inspector.block",
17
+ "node.view",
18
+ "node.inspector.tab",
19
+ "node.inspector.block",
20
+ "task.space.view",
21
+ "task.details.tab",
22
+ "task.details.block",
23
+ "task.card.badge",
24
+ "document.tab",
25
+ "document.panel",
26
+ "editor.panel",
27
+ "git.diff.panel",
28
+ "table.view",
29
+ "execution.details.block",
30
+ "app.settings.section",
31
+ "project.settings.section",
32
+ "project.action",
33
+ "file.action",
34
+ "editor.action",
35
+ "editor.selection-action",
36
+ "workflow.action",
37
+ "workflow.canvas.action",
38
+ "workflow.selection-action",
39
+ "workflow.edge.action",
40
+ "node.action",
41
+ "task.space.action",
42
+ "task.action",
43
+ "document.action",
44
+ "document.selection-action",
45
+ "document.block.action",
46
+ "document.slash-command",
47
+ "document.review.action",
48
+ "git.diff.action",
49
+ "table.action",
50
+ "execution.action",
51
+ ];
52
+ export const UI_EXTENSION_TARGETS = ["node.inspector.inputs", ...APP_EXTENSION_TARGETS];
53
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAY,CAAC;AAErD,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAY,CAAC;AAEtD,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC;AAE7B,MAAM,CAAC,MAAM,SAAS,GAAG,EAAE,CAAC;AAE5B,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC;AAE9B,MAAM,CAAC,MAAM,UAAU,GAAG,8BAA8B,CAAC;AAEzD,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,UAAU;IACV,iBAAiB;IACjB,aAAa;IACb,YAAY;IACZ,aAAa;IACb,wBAAwB;IACxB,cAAc;IACd,0BAA0B;IAC1B,WAAW;IACX,oBAAoB;IACpB,sBAAsB;IACtB,iBAAiB;IACjB,kBAAkB;IAClB,oBAAoB;IACpB,iBAAiB;IACjB,cAAc;IACd,gBAAgB;IAChB,cAAc;IACd,gBAAgB;IAChB,YAAY;IACZ,yBAAyB;IACzB,sBAAsB;IACtB,0BAA0B;IAE1B,gBAAgB;IAChB,aAAa;IACb,eAAe;IACf,yBAAyB;IACzB,iBAAiB;IACjB,wBAAwB;IACxB,2BAA2B;IAC3B,sBAAsB;IACtB,aAAa;IACb,mBAAmB;IACnB,aAAa;IACb,iBAAiB;IACjB,2BAA2B;IAC3B,uBAAuB;IACvB,wBAAwB;IACxB,wBAAwB;IACxB,iBAAiB;IACjB,cAAc;IACd,kBAAkB;CACV,CAAC;AAEX,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,uBAAuB,EAAE,GAAG,qBAAqB,CAAU,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { ActionDefinition, AppExtensionTarget, ExtensionApi } from "./contributions.types.js";
2
+ export declare function extensionApi(target: AppExtensionTarget): ExtensionApi;
3
+ export declare function defineAction(target: AppExtensionTarget, handler: ActionDefinition["handler"]): ActionDefinition;
4
+ export declare function startAction(definition: ActionDefinition): void;
5
+ //# sourceMappingURL=contributions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contributions.d.ts","sourceRoot":"","sources":["../src/contributions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EAEb,MAAM,0BAA0B,CAAC;AASlC,wBAAgB,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,YAAY,CAkBrE;AACD,wBAAgB,YAAY,CAAC,MAAM,EAAE,kBAAkB,EAAE,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,GAAG,gBAAgB,CAE/G;AACD,wBAAgB,WAAW,CAAC,UAAU,EAAE,gBAAgB,GAAG,IAAI,CA8C9D"}
@@ -0,0 +1,71 @@
1
+ // Generated from packages/ui-extensions/src/contributions.ts. Do not edit; run the Octonode SDK sync.
2
+ import { request } from "./app/index.js";
3
+ import { getAppSession } from "./index.js";
4
+ function environment(target) {
5
+ getAppSession();
6
+ const value = globalThis.__octonodeExtension;
7
+ if (!value || value.target !== target)
8
+ throw new Error("Extension target context unavailable");
9
+ return value;
10
+ }
11
+ export function extensionApi(target) {
12
+ const value = environment(target);
13
+ return {
14
+ target,
15
+ context: value.context,
16
+ i18n: { t: (key) => value.translations[key] ?? key },
17
+ ui: {
18
+ openPanel: (id) => request("host", { command: "panel.open", id }),
19
+ openAssistant: (suggestion) => request("host", { command: "assistant.open", suggestion }),
20
+ },
21
+ tabs: {
22
+ undo: (scope, revision) => request("host", { command: "layout.undo", scope, revision }),
23
+ list: () => request("host", { command: "layout.list" }),
24
+ update: (scope, revision, items) => request("host", { command: "layout.update", scope, revision, items }),
25
+ },
26
+ edits: { propose: (input) => request("host", { command: "edit.propose", ...input }) },
27
+ };
28
+ }
29
+ export function defineAction(target, handler) {
30
+ return { kind: "action", target, handler };
31
+ }
32
+ export function startAction(definition) {
33
+ const value = environment(definition.target);
34
+ if (!value.invocationId)
35
+ throw new Error("Actions require host invocation");
36
+ const controller = new AbortController();
37
+ addEventListener("pagehide", () => controller.abort(), { once: true });
38
+ const api = {
39
+ ...extensionApi(definition.target),
40
+ signal: controller.signal,
41
+ invocationId: value.invocationId,
42
+ };
43
+ parent.postMessage({
44
+ octonode: "ui-extension",
45
+ apiVersion: "2",
46
+ type: "render",
47
+ target: definition.target,
48
+ tree: { type: "node-form", children: [] },
49
+ }, "*");
50
+ Promise.resolve()
51
+ .then(() => definition.handler(api))
52
+ .then(() => {
53
+ parent.postMessage({
54
+ octonode: "ui-extension",
55
+ apiVersion: "2",
56
+ type: "action-complete",
57
+ target: definition.target,
58
+ invocationId: value.invocationId,
59
+ }, "*");
60
+ })
61
+ .catch(() => {
62
+ parent.postMessage({
63
+ octonode: "ui-extension",
64
+ apiVersion: "2",
65
+ type: "error",
66
+ target: definition.target,
67
+ message: "Extension action failed",
68
+ }, "*");
69
+ });
70
+ }
71
+ //# sourceMappingURL=contributions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contributions.js","sourceRoot":"","sources":["../src/contributions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ import type { APP_EXTENSION_TARGETS } from "./constants.js";
2
+ export type AppExtensionTarget = (typeof APP_EXTENSION_TARGETS)[number];
3
+ export type ExtensionContext = Readonly<{
4
+ projectId?: string;
5
+ worktreeId?: string;
6
+ workflowId?: string;
7
+ nodeId?: string;
8
+ nodeKind?: string;
9
+ edgeId?: string;
10
+ executionId?: string;
11
+ taskSpaceId?: string;
12
+ itemId?: string;
13
+ documentId?: string;
14
+ documentFormat?: "markdown" | "html" | "latex";
15
+ tableId?: string;
16
+ rowId?: string;
17
+ filePath?: string;
18
+ revision?: string | number;
19
+ draftRevision?: number;
20
+ selectedIds?: readonly string[];
21
+ canvas?: {
22
+ x: number;
23
+ y: number;
24
+ };
25
+ readOnly: boolean;
26
+ tasks?: readonly {
27
+ itemId: string;
28
+ taskSpaceId: string;
29
+ revision: number;
30
+ }[];
31
+ nodes?: readonly {
32
+ id: string;
33
+ kind?: string;
34
+ label?: string;
35
+ }[];
36
+ selection?: {
37
+ start: number;
38
+ end: number;
39
+ };
40
+ }>;
41
+ export type ExtensionApi = {
42
+ readonly target: AppExtensionTarget;
43
+ readonly context: ExtensionContext;
44
+ i18n: {
45
+ t(key: string): string;
46
+ };
47
+ ui: {
48
+ openPanel(id: string): Promise<void>;
49
+ openAssistant(suggestion?: string): Promise<void>;
50
+ };
51
+ edits: {
52
+ propose(input: {
53
+ resource: "file" | "document";
54
+ baseRevision: string;
55
+ draftRevision: number;
56
+ content: string;
57
+ mode: "append" | "replace" | "replace-selection";
58
+ }): Promise<void>;
59
+ };
60
+ tabs: {
61
+ undo(scope: string, revision: string): Promise<void>;
62
+ list(): Promise<{
63
+ scope: string;
64
+ revision: string;
65
+ items: {
66
+ id: string;
67
+ label?: string;
68
+ pinned?: boolean;
69
+ }[];
70
+ }[]>;
71
+ update(scope: string, revision: string, items: {
72
+ id: string;
73
+ label?: string;
74
+ pinned?: boolean;
75
+ }[]): Promise<void>;
76
+ };
77
+ };
78
+ export type ActionApi = ExtensionApi & {
79
+ signal: AbortSignal;
80
+ invocationId: string;
81
+ };
82
+ export type ActionDefinition = {
83
+ kind: "action";
84
+ target: AppExtensionTarget;
85
+ handler(api: ActionApi): Promise<void> | void;
86
+ };
87
+ export type ExtensionEnvironment = {
88
+ target: AppExtensionTarget;
89
+ context: ExtensionContext;
90
+ translations: Readonly<Record<string, string>>;
91
+ invocationId?: string;
92
+ };
93
+ //# sourceMappingURL=contributions.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contributions.types.d.ts","sourceRoot":"","sources":["../src/contributions.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=contributions.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contributions.types.js","sourceRoot":"","sources":["../src/contributions.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import type { AppExtensionTarget } from "../../contributions.types.js";
2
+ export declare function useExtension(target: AppExtensionTarget): import("../../contributions.types.js").ExtensionApi;
3
+ //# sourceMappingURL=useExtension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useExtension.d.ts","sourceRoot":"","sources":["../../../src/hooks/general/useExtension.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,wBAAgB,YAAY,CAAC,MAAM,EAAE,kBAAkB,uDAEtD"}
@@ -0,0 +1,7 @@
1
+ // Generated from packages/ui-extensions/src/hooks/general/useExtension.ts. Do not edit; run the Octonode SDK sync.
2
+ import { useMemo } from "react";
3
+ import { extensionApi } from "../../contributions.js";
4
+ export function useExtension(target) {
5
+ return useMemo(() => extensionApi(target), [target]);
6
+ }
7
+ //# sourceMappingURL=useExtension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useExtension.js","sourceRoot":"","sources":["../../../src/hooks/general/useExtension.ts"],"names":[],"mappings":"AAAA,mHAAmH;AACnH,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGtD,MAAM,UAAU,YAAY,CAAC,MAA0B;IACrD,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AACvD,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { HostedApp, HostedAppNavigationItem, HostedAppState } from "../../app/types.js";
2
+ import type { VerifiedHostedContext } from "../types.js";
3
+ export declare function useHostedApp(navigation: HostedAppNavigationItem[]): {
4
+ bridge: HostedApp | undefined;
5
+ session: HostedAppState | undefined;
6
+ verified: VerifiedHostedContext | undefined;
7
+ error: boolean;
8
+ };
9
+ //# sourceMappingURL=useHostedApp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useHostedApp.d.ts","sourceRoot":"","sources":["../../../src/hooks/general/useHostedApp.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC7F,OAAO,KAAK,EAAyB,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEhF,wBAAgB,YAAY,CAAC,UAAU,EAAE,uBAAuB,EAAE;;;;;EA+CjE"}
@@ -0,0 +1,53 @@
1
+ // Generated from packages/ui-extensions/src/hooks/general/useHostedApp.ts. Do not edit; run the Octonode SDK sync.
2
+ import { useEffect, useState } from "react";
3
+ import { connectHostedApp } from "../../app/hosted.js";
4
+ export function useHostedApp(navigation) {
5
+ const [bridge, setBridge] = useState();
6
+ const [session, setSession] = useState();
7
+ const [verified, setVerified] = useState();
8
+ const [error, setError] = useState(false);
9
+ useEffect(() => {
10
+ try {
11
+ const app = connectHostedApp();
12
+ setBridge(app);
13
+ setSession(app.getSnapshot());
14
+ const unsubscribe = app.subscribe(() => setSession(app.getSnapshot()));
15
+ return () => {
16
+ unsubscribe();
17
+ app.dispose();
18
+ };
19
+ }
20
+ catch {
21
+ setError(true);
22
+ }
23
+ }, []);
24
+ useEffect(() => {
25
+ bridge?.setNavigation(navigation);
26
+ }, [bridge, navigation]);
27
+ useEffect(() => {
28
+ if (!bridge || session?.status !== "ready" || !session.token)
29
+ return;
30
+ const token = session.token;
31
+ const controller = new AbortController();
32
+ bridge
33
+ .fetch("/api/context", { signal: controller.signal })
34
+ .then(async (response) => {
35
+ if (!response.ok)
36
+ throw new Error("Workspace access could not be verified");
37
+ const context = (await response.json());
38
+ if (!context.workspace?.kind || !context.workspace.id)
39
+ throw new Error("Missing workspace scope");
40
+ if (!controller.signal.aborted) {
41
+ setVerified({ token, workspace: context.workspace });
42
+ setError(false);
43
+ }
44
+ })
45
+ .catch(() => {
46
+ if (!controller.signal.aborted)
47
+ setError(true);
48
+ });
49
+ return () => controller.abort();
50
+ }, [bridge, session?.status, session?.token]);
51
+ return { bridge, session, verified, error };
52
+ }
53
+ //# sourceMappingURL=useHostedApp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useHostedApp.js","sourceRoot":"","sources":["../../../src/hooks/general/useHostedApp.ts"],"names":[],"mappings":"AAAA,mHAAmH;AACnH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAIvD,MAAM,UAAU,YAAY,CAAC,UAAqC;IAChE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,EAAa,CAAC;IAClD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAAkB,CAAC;IACzD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAyB,CAAC;IAClE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,gBAAgB,EAAE,CAAC;YAC/B,SAAS,CAAC,GAAG,CAAC,CAAC;YACf,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;YAC9B,MAAM,WAAW,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACvE,OAAO,GAAG,EAAE;gBACV,WAAW,EAAE,CAAC;gBACd,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,CAAC,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAEzB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,MAAM,IAAI,OAAO,EAAE,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,OAAO;QACrE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM;aACH,KAAK,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;aACpD,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;YACvB,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC5E,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA0B,CAAC;YACjE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAClG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC/B,WAAW,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;gBACrD,QAAQ,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO;gBAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QACL,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IAE9C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { OctonodeAppContext } from "../../app/OctonodeAppProvider/OctonodeAppProvider.types.js";
2
+ export declare function useOctonodeApp(): OctonodeAppContext;
3
+ //# sourceMappingURL=useOctonodeApp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOctonodeApp.d.ts","sourceRoot":"","sources":["../../../src/hooks/general/useOctonodeApp.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4DAA4D,CAAC;AAGrG,wBAAgB,cAAc,IAAI,kBAAkB,CAInD"}
@@ -0,0 +1,10 @@
1
+ // Generated from packages/ui-extensions/src/hooks/general/useOctonodeApp.ts. Do not edit; run the Octonode SDK sync.
2
+ import { useContext } from "react";
3
+ import { Context } from "../../app/OctonodeAppProvider/context.js";
4
+ export function useOctonodeApp() {
5
+ const context = useContext(Context);
6
+ if (!context)
7
+ throw new Error("useOctonodeApp requires OctonodeAppProvider");
8
+ return context;
9
+ }
10
+ //# sourceMappingURL=useOctonodeApp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOctonodeApp.js","sourceRoot":"","sources":["../../../src/hooks/general/useOctonodeApp.ts"],"names":[],"mappings":"AAAA,qHAAqH;AACrH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAAE,OAAO,EAAE,MAAM,0CAA0C,CAAC;AAEnE,MAAM,UAAU,cAAc;IAC5B,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAC7E,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { OctonodeAppContext } from "../app/OctonodeAppProvider/OctonodeAppProvider.types.js";
2
+ export interface VerifiedHostedContext {
3
+ token: string;
4
+ workspace: OctonodeAppContext["workspace"];
5
+ }
6
+ export interface HostedContextResponse {
7
+ workspace?: OctonodeAppContext["workspace"];
8
+ }
9
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yDAAyD,CAAC;AAElG,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;CAC7C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":""}
package/dist/index.d.ts CHANGED
@@ -1,64 +1,23 @@
1
- export declare const UI_EXTENSION_API_VERSION: "1";
2
- export declare const UI_EXTENSION_TARGETS: readonly ["node.inspector.inputs", "app.page", "workspace.block"];
3
- export type UiExtensionTarget = (typeof UI_EXTENSION_TARGETS)[number];
4
- export type UiExtensionTree = {
5
- type: "text";
6
- value: string;
1
+ import type { AppSession, UiExtensionErrorMessage, UiExtensionRenderMessage, UiExtensionTarget } from "./types.js";
2
+ export { APP_EXTENSION_TARGETS } from "./constants.js";
3
+ export { defineAction, extensionApi, startAction } from "./contributions.js";
4
+ export type { ActionApi, ActionDefinition, AppExtensionTarget, ExtensionApi, ExtensionContext, ExtensionEnvironment, } from "./contributions.types.js";
5
+ export declare function validateExtensionMessage(value: unknown, expectedTarget: UiExtensionTarget, expectedVersion?: "1" | "2"): {
6
+ message: UiExtensionErrorMessage;
7
+ inputNames: never[];
7
8
  } | {
8
- type: "button";
9
- id: string;
10
- label: string;
11
- disabled: boolean;
12
- } | {
13
- type: "text-field";
14
- id: string;
15
- label: string;
16
- value: string;
17
- disabled: boolean;
18
- } | {
19
- type: "node-form";
20
- children: UiExtensionTree[];
21
- } | {
22
- type: "section";
23
- title: string;
24
- children: UiExtensionTree[];
25
- } | {
26
- type: "input-field";
27
- name: string;
28
- appearance?: "single-line" | "multiline";
29
- };
30
- export interface UiExtensionRenderMessage {
31
- octonode: "ui-extension";
32
- apiVersion: typeof UI_EXTENSION_API_VERSION;
33
- type: "render";
34
- target: UiExtensionTarget;
35
- tree: UiExtensionTree;
36
- }
37
- export interface UiExtensionErrorMessage {
38
- octonode: "ui-extension";
39
- apiVersion: typeof UI_EXTENSION_API_VERSION;
40
- type: "error";
41
- target: UiExtensionTarget;
42
- message: string;
43
- }
44
- export type UiExtensionMessage = UiExtensionRenderMessage | UiExtensionErrorMessage;
45
- export declare function validateExtensionMessage(value: unknown, expectedTarget: UiExtensionTarget): {
46
- message: UiExtensionMessage;
9
+ message: UiExtensionRenderMessage;
47
10
  inputNames: string[];
48
11
  } | null;
49
- export interface AppSession {
50
- configuration: Readonly<Record<string, string>>;
51
- token: string;
52
- expiresAt: number;
53
- appId: string;
54
- installationId: string;
55
- workspace: {
56
- kind: "user" | "team" | "org";
57
- id: string;
58
- };
59
- projectId?: string;
60
- version: string;
61
- }
62
12
  /** Available only inside an installed app extension. Send this bearer to your own backend for verification. */
63
13
  export declare function getAppSession(): AppSession;
14
+ export type { UiExtensionTarget } from "./types.js";
15
+ export type { UiExtensionTree } from "./types.js";
16
+ export type { UiExtensionRenderMessage } from "./types.js";
17
+ export type { UiExtensionErrorMessage } from "./types.js";
18
+ export type { UiExtensionMessage } from "./types.js";
19
+ export type { AppSession } from "./types.js";
20
+ export { UI_EXTENSION_API_VERSION } from "./constants.js";
21
+ export { APP_EXTENSION_API_VERSION } from "./constants.js";
22
+ export { UI_EXTENSION_TARGETS } from "./constants.js";
64
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,wBAAwB,EAAG,GAAY,CAAC;AACrD,eAAO,MAAM,oBAAoB,mEAAoE,CAAC;AAEtG,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,GAChE;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,GACnF;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,eAAe,EAAE,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,eAAe,EAAE,CAAA;CAAE,GAC/D;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,aAAa,GAAG,WAAW,CAAA;CAAE,CAAC;AAEpF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,cAAc,CAAC;IACzB,UAAU,EAAE,OAAO,wBAAwB,CAAC;IAC5C,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,iBAAiB,CAAC;IAC1B,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,cAAc,CAAC;IACzB,UAAU,EAAE,OAAO,wBAAwB,CAAC;IAC5C,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,kBAAkB,GAAG,wBAAwB,GAAG,uBAAuB,CAAC;AAOpF,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,EACd,cAAc,EAAE,iBAAiB,GAChC;IAAE,OAAO,EAAE,kBAAkB,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,IAAI,CAwD9D;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AACD,+GAA+G;AAC/G,wBAAgB,aAAa,IAAI,UAAU,CAI1C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,UAAU,EACV,uBAAuB,EAEvB,wBAAwB,EACxB,iBAAiB,EAElB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC7E,YAAY,EACV,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAElC,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,EACd,cAAc,EAAE,iBAAiB,EACjC,eAAe,GAAE,GAAG,GAAG,GAAS;aAYJ,uBAAuB;;;aAkDzB,wBAAwB;;SAEnD;AAED,+GAA+G;AAC/G,wBAAgB,aAAa,IAAI,UAAU,CAI1C;AAED,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,YAAY,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE3D,YAAY,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAE1D,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC"}