@tai42/studio-sdk 7.1.0 → 8.0.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/dist/index.d.ts +2 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -4
- package/dist/index.js.map +1 -1
- package/dist/jq.d.ts +23 -0
- package/dist/jq.d.ts.map +1 -0
- package/dist/jq.js +22 -0
- package/dist/jq.js.map +1 -0
- package/dist/plugin/registry.d.ts.map +1 -1
- package/dist/plugin/registry.js +1 -39
- package/dist/plugin/registry.js.map +1 -1
- package/dist/plugin/types.d.ts +0 -31
- package/dist/plugin/types.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/index.ts +12 -19
- package/src/jq.ts +39 -0
- package/src/plugin/registry.ts +1 -50
- package/src/plugin/types.ts +0 -32
- package/dist/expression/ExpressionField.d.ts +0 -140
- package/dist/expression/ExpressionField.d.ts.map +0 -1
- package/dist/expression/ExpressionField.js +0 -88
- package/dist/expression/ExpressionField.js.map +0 -1
- package/dist/expression/context.d.ts +0 -50
- package/dist/expression/context.d.ts.map +0 -1
- package/dist/expression/context.js +0 -53
- package/dist/expression/context.js.map +0 -1
- package/dist/expression/types.d.ts +0 -157
- package/dist/expression/types.d.ts.map +0 -1
- package/dist/expression/types.js +0 -11
- package/dist/expression/types.js.map +0 -1
- package/src/expression/ExpressionField.tsx +0 -330
- package/src/expression/context.tsx +0 -83
- package/src/expression/types.ts +0 -164
package/dist/index.d.ts
CHANGED
|
@@ -21,12 +21,8 @@ import './components/components.css';
|
|
|
21
21
|
export type { PluginContext, PluginEntry, ToolPanelProps, PluginPageProps, PluginPageParamsSchema, SettingsTabProps, ToolPanelContribution, PageContribution, RegisteredPage, SettingsTabContribution, RegisteredSettingsTab, NavEntryContribution, NavEntrySection, RegisteredNavEntry, PluginContributions, RequiredCapabilities, } from './plugin/types';
|
|
22
22
|
export { STUDIO_PLUGIN_API_VERSION, checkPluginApiVersion } from './plugin/version';
|
|
23
23
|
export type { VersionGateResult } from './plugin/version';
|
|
24
|
-
export {
|
|
25
|
-
export type {
|
|
26
|
-
export { ExpressionEditorsProvider, useExpressionEditor } from './expression/context';
|
|
27
|
-
export type { ExpressionEditorsProviderProps } from './expression/context';
|
|
28
|
-
export { ExpressionField, ExpressionEditorLauncher } from './expression/ExpressionField';
|
|
29
|
-
export type { ExpressionFieldProps, ExpressionEditorLauncherProps, ExpressionControlProps, } from './expression/ExpressionField';
|
|
24
|
+
export { JqField, JQEditorDialog, JqEditorDialog, preloadJq, installDefaultJqWorker } from './jq';
|
|
25
|
+
export type { JqFieldProps, JQEditorDialogProps, JqEditorDialogProps, ExpressionLanguage, JqInputKey, JqInputShapeDescriptor, SampleInputProvider, ServerValidationResult, ServerValidateHook, JqFieldDeclaration, } from './jq';
|
|
30
26
|
export { ApiProvider, useApi } from './hooks/useApi';
|
|
31
27
|
export type { ApiClient } from './hooks/useApi';
|
|
32
28
|
export { UnauthorizedProvider, useOnUnauthorized } from './hooks/useUnauthorized';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAQH,OAAO,yBAAyB,CAAC;AACjC,OAAO,wBAAwB,CAAC;AAChC,OAAO,6BAA6B,CAAC;AAGrC,YAAY,EACV,aAAa,EACb,WAAW,EACX,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACpF,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAG1D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -26,10 +26,8 @@ import './components/tokens.css';
|
|
|
26
26
|
import './components/fonts.css';
|
|
27
27
|
import './components/components.css';
|
|
28
28
|
export { STUDIO_PLUGIN_API_VERSION, checkPluginApiVersion } from './plugin/version';
|
|
29
|
-
// --
|
|
30
|
-
export {
|
|
31
|
-
export { ExpressionEditorsProvider, useExpressionEditor } from './expression/context';
|
|
32
|
-
export { ExpressionField, ExpressionEditorLauncher } from './expression/ExpressionField';
|
|
29
|
+
// -- jq fields (re-exported from @tai42/jq-studio; the platform owns no jq code) --
|
|
30
|
+
export { JqField, JQEditorDialog, JqEditorDialog, preloadJq, installDefaultJqWorker } from './jq';
|
|
33
31
|
// -- Hooks -------------------------------------------------------------------
|
|
34
32
|
export { ApiProvider, useApi } from './hooks/useApi';
|
|
35
33
|
export { UnauthorizedProvider, useOnUnauthorized } from './hooks/useUnauthorized';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,kFAAkF;AAClF,+EAA+E;AAC/E,4EAA4E;AAC5E,iFAAiF;AACjF,iFAAiF;AACjF,+EAA+E;AAC/E,qEAAqE;AACrE,OAAO,yBAAyB,CAAC;AACjC,OAAO,wBAAwB,CAAC;AAChC,OAAO,6BAA6B,CAAC;AAqBrC,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAGpF,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/jq.d.ts
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The SDK's jq surface — a THIN re-export of `@tai42/jq-studio`, the standalone,
|
|
3
|
+
* embeddable visual jq editor. There is no tai42-owned jq component: the platform
|
|
4
|
+
* owns zero jq code. This module exists only so a feature package (which depends
|
|
5
|
+
* on `@tai42/studio-sdk` alone, never on `@tai42/jq-studio` directly) can reach
|
|
6
|
+
* the drop-in `JqField`, the lower-level `JqEditorDialog`, the agnostic
|
|
7
|
+
* field-declaration contract, and the runtime loader/worker helpers.
|
|
8
|
+
*
|
|
9
|
+
* BUNDLE + WORKER SHARING. A plugin bundle externalises `@tai42/studio-sdk`, so
|
|
10
|
+
* the SDK — and the one copy of `@tai42/jq-studio` it carries — ships once for the
|
|
11
|
+
* whole deployment. A plugin that renders `JqField` shares the host's single jq
|
|
12
|
+
* runtime, its single primitives injection (see the host's `PrimitivesProvider`
|
|
13
|
+
* wiring), and the single worker the host installs at boot
|
|
14
|
+
* ({@link installDefaultJqWorker}); it never bundles its own.
|
|
15
|
+
*
|
|
16
|
+
* The host app injects the SDK's design-system primitives into jq-studio ONCE at
|
|
17
|
+
* the root through jq-studio's `PrimitivesProvider` and installs the shared worker
|
|
18
|
+
* there, so every `JqField` — host feature or plugin — paints in the SDK design
|
|
19
|
+
* system and evaluates off the main thread with no per-site wiring.
|
|
20
|
+
*/
|
|
21
|
+
export { JqField, JQEditorDialog, JqEditorDialog, preloadJq, installDefaultJqWorker, } from '@tai42/jq-studio';
|
|
22
|
+
export type { JqFieldProps, JQEditorDialogProps, JqEditorDialogProps, ExpressionLanguage, JqInputKey, JqInputShapeDescriptor, SampleInputProvider, ServerValidationResult, ServerValidateHook, JqFieldDeclaration, } from '@tai42/jq-studio';
|
|
23
|
+
//# sourceMappingURL=jq.d.ts.map
|
package/dist/jq.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jq.d.ts","sourceRoot":"","sources":["../src/jq.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,EACd,SAAS,EACT,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC"}
|
package/dist/jq.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The SDK's jq surface — a THIN re-export of `@tai42/jq-studio`, the standalone,
|
|
3
|
+
* embeddable visual jq editor. There is no tai42-owned jq component: the platform
|
|
4
|
+
* owns zero jq code. This module exists only so a feature package (which depends
|
|
5
|
+
* on `@tai42/studio-sdk` alone, never on `@tai42/jq-studio` directly) can reach
|
|
6
|
+
* the drop-in `JqField`, the lower-level `JqEditorDialog`, the agnostic
|
|
7
|
+
* field-declaration contract, and the runtime loader/worker helpers.
|
|
8
|
+
*
|
|
9
|
+
* BUNDLE + WORKER SHARING. A plugin bundle externalises `@tai42/studio-sdk`, so
|
|
10
|
+
* the SDK — and the one copy of `@tai42/jq-studio` it carries — ships once for the
|
|
11
|
+
* whole deployment. A plugin that renders `JqField` shares the host's single jq
|
|
12
|
+
* runtime, its single primitives injection (see the host's `PrimitivesProvider`
|
|
13
|
+
* wiring), and the single worker the host installs at boot
|
|
14
|
+
* ({@link installDefaultJqWorker}); it never bundles its own.
|
|
15
|
+
*
|
|
16
|
+
* The host app injects the SDK's design-system primitives into jq-studio ONCE at
|
|
17
|
+
* the root through jq-studio's `PrimitivesProvider` and installs the shared worker
|
|
18
|
+
* there, so every `JqField` — host feature or plugin — paints in the SDK design
|
|
19
|
+
* system and evaluates off the main thread with no per-site wiring.
|
|
20
|
+
*/
|
|
21
|
+
export { JqField, JQEditorDialog, JqEditorDialog, preloadJq, installDefaultJqWorker, } from '@tai42/jq-studio';
|
|
22
|
+
//# sourceMappingURL=jq.js.map
|
package/dist/jq.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jq.js","sourceRoot":"","sources":["../src/jq.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,EACd,SAAS,EACT,sBAAsB,GACvB,MAAM,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/plugin/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAIV,mBAAmB,EACnB,WAAW,EAMZ,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/plugin/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAIV,mBAAmB,EACnB,WAAW,EAMZ,MAAM,SAAS,CAAC;AAOjB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAkHpF;AAED,wEAAwE;AACxE,wBAAgB,gBAAgB,IAAI,mBAAmB,CAEtD;AAED,2DAA2D;AAC3D,wBAAgB,oBAAoB,IAAI,IAAI,CAK3C"}
|
package/dist/plugin/registry.js
CHANGED
|
@@ -1,14 +1,7 @@
|
|
|
1
|
-
import { EXPRESSION_EDITOR_CONTRACT_VERSION, } from '../expression/types';
|
|
2
1
|
const toolPanels = new Map();
|
|
3
2
|
const pages = [];
|
|
4
3
|
const settingsTabs = [];
|
|
5
4
|
const navEntries = [];
|
|
6
|
-
// `let`, never mutated in place: {@link ExpressionEditorsProvider} memoizes its
|
|
7
|
-
// context value on this map's IDENTITY, so committing an editor must turn the
|
|
8
|
-
// identity over — otherwise a field mounted on a core route (which never waits
|
|
9
|
-
// for the plugin load pass) would keep the stale empty map and never grow its
|
|
10
|
-
// launcher. The commit path below reassigns; nothing calls `.set` on it.
|
|
11
|
-
let expressionEditors = new Map();
|
|
12
5
|
/**
|
|
13
6
|
* Load one plugin: call its `register` entry with a context bound to `pluginId`,
|
|
14
7
|
* then commit everything it staged into the global registry.
|
|
@@ -35,7 +28,6 @@ export async function loadPlugin(pluginId, entry) {
|
|
|
35
28
|
const stagedSettingsTabs = [];
|
|
36
29
|
const stagedTabIds = new Set();
|
|
37
30
|
const stagedNavEntries = [];
|
|
38
|
-
const stagedExpressionEditors = new Map();
|
|
39
31
|
let sealed = false;
|
|
40
32
|
const context = {
|
|
41
33
|
registerPage(contribution) {
|
|
@@ -86,30 +78,6 @@ export async function loadPlugin(pluginId, entry) {
|
|
|
86
78
|
}
|
|
87
79
|
stagedNavEntries.push({ ...contribution, pluginId });
|
|
88
80
|
},
|
|
89
|
-
registerExpressionEditor(contribution) {
|
|
90
|
-
if (sealed) {
|
|
91
|
-
throw new Error('registration is closed: a plugin must register during register(), not after it resolves');
|
|
92
|
-
}
|
|
93
|
-
// Contract-version mismatch is a LOUD per-plugin registration error, never a
|
|
94
|
-
// silent skip: an editor built against a different props contract would mount
|
|
95
|
-
// with the wrong props, so it is rejected during register() and becomes this
|
|
96
|
-
// plugin's error card. Checked before the duplicate guard so a mismatched
|
|
97
|
-
// contribution never claims a language.
|
|
98
|
-
if (contribution.contractVersion !== EXPRESSION_EDITOR_CONTRACT_VERSION) {
|
|
99
|
-
throw new Error(`plugin “${pluginId}” registered an expression editor for “${contribution.language}” ` +
|
|
100
|
-
`targeting contract v${String(contribution.contractVersion)} but this host is ` +
|
|
101
|
-
`v${String(EXPRESSION_EDITOR_CONTRACT_VERSION)} — the editor must be rebuilt`);
|
|
102
|
-
}
|
|
103
|
-
// A language is a GLOBAL key: at most one editor across the deployment. A
|
|
104
|
-
// second contribution for a language already staged or committed (by this
|
|
105
|
-
// plugin or another) would leave one editor unreachable — fail loudly, as
|
|
106
|
-
// registerToolPanel does for a tool name.
|
|
107
|
-
if (stagedExpressionEditors.has(contribution.language) ||
|
|
108
|
-
expressionEditors.has(contribution.language)) {
|
|
109
|
-
throw new Error(`an expression editor is already registered for language ${contribution.language}`);
|
|
110
|
-
}
|
|
111
|
-
stagedExpressionEditors.set(contribution.language, contribution);
|
|
112
|
-
},
|
|
113
81
|
};
|
|
114
82
|
try {
|
|
115
83
|
await entry(context);
|
|
@@ -146,15 +114,10 @@ export async function loadPlugin(pluginId, entry) {
|
|
|
146
114
|
for (const navEntry of stagedNavEntries) {
|
|
147
115
|
navEntries.push(navEntry);
|
|
148
116
|
}
|
|
149
|
-
if (stagedExpressionEditors.size > 0) {
|
|
150
|
-
// Reassign (see the declaration): identity turnover is what re-notifies
|
|
151
|
-
// mounted ExpressionFields when the load pass commits an editor.
|
|
152
|
-
expressionEditors = new Map([...expressionEditors, ...stagedExpressionEditors]);
|
|
153
|
-
}
|
|
154
117
|
}
|
|
155
118
|
/** The shell reads this after loading every installed plugin bundle. */
|
|
156
119
|
export function getContributions() {
|
|
157
|
-
return { toolPanels, pages, settingsTabs, navEntries
|
|
120
|
+
return { toolPanels, pages, settingsTabs, navEntries };
|
|
158
121
|
}
|
|
159
122
|
/** Tests reset the module-level registry between cases. */
|
|
160
123
|
export function __resetContributions() {
|
|
@@ -162,6 +125,5 @@ export function __resetContributions() {
|
|
|
162
125
|
pages.length = 0;
|
|
163
126
|
settingsTabs.length = 0;
|
|
164
127
|
navEntries.length = 0;
|
|
165
|
-
expressionEditors = new Map();
|
|
166
128
|
}
|
|
167
129
|
//# sourceMappingURL=registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/plugin/registry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/plugin/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/plugin/types.d.ts
CHANGED
|
@@ -21,7 +21,6 @@
|
|
|
21
21
|
* (a) and (b) still bind it.
|
|
22
22
|
*/
|
|
23
23
|
import type { ComponentType } from 'react';
|
|
24
|
-
import type { ExpressionEditorContribution } from '../expression/types';
|
|
25
24
|
/**
|
|
26
25
|
* A capability requirement a contribution may declare. `routes` is a list of
|
|
27
26
|
* route-path prefixes (anyOf semantics, the same evaluator the shell nav uses):
|
|
@@ -179,19 +178,6 @@ export interface PluginContributions {
|
|
|
179
178
|
readonly pages: readonly RegisteredPage[];
|
|
180
179
|
readonly settingsTabs: readonly RegisteredSettingsTab[];
|
|
181
180
|
readonly navEntries: readonly RegisteredNavEntry[];
|
|
182
|
-
/**
|
|
183
|
-
* The contributed expression editors, keyed by {@link ExpressionLanguage}. A
|
|
184
|
-
* language maps to at MOST one editor across the whole deployment — the registry
|
|
185
|
-
* rejects a second contribution for a language it already holds — so a field
|
|
186
|
-
* resolves its editor by language with no ambiguity. The shell reads this map and
|
|
187
|
-
* feeds it to `ExpressionEditorsProvider`; the plugin surface reaches it only
|
|
188
|
-
* through `useExpressionEditor`, never by enumerating this map.
|
|
189
|
-
*
|
|
190
|
-
* Optional in the TYPE (this host always provides it): a contributions object
|
|
191
|
-
* built against the pre-expression shape — an older host, a test double —
|
|
192
|
-
* remains a valid `PluginContributions`. Readers fall back to an empty map.
|
|
193
|
-
*/
|
|
194
|
-
readonly expressionEditors?: ReadonlyMap<string, ExpressionEditorContribution>;
|
|
195
181
|
}
|
|
196
182
|
/**
|
|
197
183
|
* The registration surface a plugin receives in its `register(context)` entry.
|
|
@@ -216,23 +202,6 @@ export interface PluginContext {
|
|
|
216
202
|
* registers (a nav entry with no page is a dead link and is rejected loudly).
|
|
217
203
|
*/
|
|
218
204
|
registerNavEntry(contribution: NavEntryContribution): void;
|
|
219
|
-
/**
|
|
220
|
-
* Register the visual editor for one {@link ExpressionLanguage}, which every
|
|
221
|
-
* `ExpressionField` authoring that language then offers. A language is a GLOBAL
|
|
222
|
-
* key — at most one editor across the deployment — so a second contribution for a
|
|
223
|
-
* language already registered (by this plugin or another) is rejected loudly, as
|
|
224
|
-
* a duplicate tool panel is. A contribution whose `contractVersion` is not the
|
|
225
|
-
* host's {@link EXPRESSION_EDITOR_CONTRACT_VERSION} is likewise rejected loudly
|
|
226
|
-
* during registration — never silently skipped — so an editor built against an
|
|
227
|
-
* incompatible props contract is a visible per-plugin error, not a blank field.
|
|
228
|
-
*
|
|
229
|
-
* This method is OPTIONAL/ADDITIVE — optional in the TYPE too, so a plugin
|
|
230
|
-
* written against this SDK still typechecks against an older host context and
|
|
231
|
-
* a test double of the pre-expression context stays a valid `PluginContext`.
|
|
232
|
-
* Plugins feature-detect (`typeof context.registerExpressionEditor ===
|
|
233
|
-
* 'function'`) and no-op gracefully on hosts that predate the extension point.
|
|
234
|
-
*/
|
|
235
|
-
registerExpressionEditor?(contribution: ExpressionEditorContribution): void;
|
|
236
205
|
}
|
|
237
206
|
/**
|
|
238
207
|
* A plugin bundle's entry: the default plugin API. The host imports the bundle,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/plugin/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/plugin/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tai42/studio-sdk",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "8.0.0",
|
|
4
4
|
"description": "The Studio plugin contract, shared UI components, and hooks that every feature builds on.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "tai42 <oss@tai42.ai>",
|
|
@@ -90,7 +90,8 @@
|
|
|
90
90
|
"@radix-ui/react-select": "^2.3.2",
|
|
91
91
|
"@radix-ui/react-tabs": "^1.1.16",
|
|
92
92
|
"@radix-ui/react-tooltip": "^1.2.11",
|
|
93
|
-
"@tai42/
|
|
93
|
+
"@tai42/jq-studio": "^0.1.0",
|
|
94
|
+
"@tai42/api-client": "8.0.0"
|
|
94
95
|
},
|
|
95
96
|
"scripts": {
|
|
96
97
|
"build": "tsc -b tsconfig.build.json && node scripts/copy-assets.mjs",
|
package/src/index.ts
CHANGED
|
@@ -48,27 +48,20 @@ export type {
|
|
|
48
48
|
export { STUDIO_PLUGIN_API_VERSION, checkPluginApiVersion } from './plugin/version';
|
|
49
49
|
export type { VersionGateResult } from './plugin/version';
|
|
50
50
|
|
|
51
|
-
// --
|
|
52
|
-
export {
|
|
51
|
+
// -- jq fields (re-exported from @tai42/jq-studio; the platform owns no jq code) --
|
|
52
|
+
export { JqField, JQEditorDialog, JqEditorDialog, preloadJq, installDefaultJqWorker } from './jq';
|
|
53
53
|
export type {
|
|
54
|
+
JqFieldProps,
|
|
55
|
+
JQEditorDialogProps,
|
|
56
|
+
JqEditorDialogProps,
|
|
54
57
|
ExpressionLanguage,
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
ExpressionEditorContribution,
|
|
63
|
-
} from './expression/types';
|
|
64
|
-
export { ExpressionEditorsProvider, useExpressionEditor } from './expression/context';
|
|
65
|
-
export type { ExpressionEditorsProviderProps } from './expression/context';
|
|
66
|
-
export { ExpressionField, ExpressionEditorLauncher } from './expression/ExpressionField';
|
|
67
|
-
export type {
|
|
68
|
-
ExpressionFieldProps,
|
|
69
|
-
ExpressionEditorLauncherProps,
|
|
70
|
-
ExpressionControlProps,
|
|
71
|
-
} from './expression/ExpressionField';
|
|
58
|
+
JqInputKey,
|
|
59
|
+
JqInputShapeDescriptor,
|
|
60
|
+
SampleInputProvider,
|
|
61
|
+
ServerValidationResult,
|
|
62
|
+
ServerValidateHook,
|
|
63
|
+
JqFieldDeclaration,
|
|
64
|
+
} from './jq';
|
|
72
65
|
|
|
73
66
|
// -- Hooks -------------------------------------------------------------------
|
|
74
67
|
export { ApiProvider, useApi } from './hooks/useApi';
|
package/src/jq.ts
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The SDK's jq surface — a THIN re-export of `@tai42/jq-studio`, the standalone,
|
|
3
|
+
* embeddable visual jq editor. There is no tai42-owned jq component: the platform
|
|
4
|
+
* owns zero jq code. This module exists only so a feature package (which depends
|
|
5
|
+
* on `@tai42/studio-sdk` alone, never on `@tai42/jq-studio` directly) can reach
|
|
6
|
+
* the drop-in `JqField`, the lower-level `JqEditorDialog`, the agnostic
|
|
7
|
+
* field-declaration contract, and the runtime loader/worker helpers.
|
|
8
|
+
*
|
|
9
|
+
* BUNDLE + WORKER SHARING. A plugin bundle externalises `@tai42/studio-sdk`, so
|
|
10
|
+
* the SDK — and the one copy of `@tai42/jq-studio` it carries — ships once for the
|
|
11
|
+
* whole deployment. A plugin that renders `JqField` shares the host's single jq
|
|
12
|
+
* runtime, its single primitives injection (see the host's `PrimitivesProvider`
|
|
13
|
+
* wiring), and the single worker the host installs at boot
|
|
14
|
+
* ({@link installDefaultJqWorker}); it never bundles its own.
|
|
15
|
+
*
|
|
16
|
+
* The host app injects the SDK's design-system primitives into jq-studio ONCE at
|
|
17
|
+
* the root through jq-studio's `PrimitivesProvider` and installs the shared worker
|
|
18
|
+
* there, so every `JqField` — host feature or plugin — paints in the SDK design
|
|
19
|
+
* system and evaluates off the main thread with no per-site wiring.
|
|
20
|
+
*/
|
|
21
|
+
export {
|
|
22
|
+
JqField,
|
|
23
|
+
JQEditorDialog,
|
|
24
|
+
JqEditorDialog,
|
|
25
|
+
preloadJq,
|
|
26
|
+
installDefaultJqWorker,
|
|
27
|
+
} from '@tai42/jq-studio';
|
|
28
|
+
export type {
|
|
29
|
+
JqFieldProps,
|
|
30
|
+
JQEditorDialogProps,
|
|
31
|
+
JqEditorDialogProps,
|
|
32
|
+
ExpressionLanguage,
|
|
33
|
+
JqInputKey,
|
|
34
|
+
JqInputShapeDescriptor,
|
|
35
|
+
SampleInputProvider,
|
|
36
|
+
ServerValidationResult,
|
|
37
|
+
ServerValidateHook,
|
|
38
|
+
JqFieldDeclaration,
|
|
39
|
+
} from '@tai42/jq-studio';
|
package/src/plugin/registry.ts
CHANGED
|
@@ -18,21 +18,11 @@ import type {
|
|
|
18
18
|
SettingsTabContribution,
|
|
19
19
|
ToolPanelContribution,
|
|
20
20
|
} from './types';
|
|
21
|
-
import {
|
|
22
|
-
EXPRESSION_EDITOR_CONTRACT_VERSION,
|
|
23
|
-
type ExpressionEditorContribution,
|
|
24
|
-
} from '../expression/types';
|
|
25
21
|
|
|
26
22
|
const toolPanels = new Map<string, ToolPanelContribution>();
|
|
27
23
|
const pages: RegisteredPage[] = [];
|
|
28
24
|
const settingsTabs: RegisteredSettingsTab[] = [];
|
|
29
25
|
const navEntries: RegisteredNavEntry[] = [];
|
|
30
|
-
// `let`, never mutated in place: {@link ExpressionEditorsProvider} memoizes its
|
|
31
|
-
// context value on this map's IDENTITY, so committing an editor must turn the
|
|
32
|
-
// identity over — otherwise a field mounted on a core route (which never waits
|
|
33
|
-
// for the plugin load pass) would keep the stale empty map and never grow its
|
|
34
|
-
// launcher. The commit path below reassigns; nothing calls `.set` on it.
|
|
35
|
-
let expressionEditors = new Map<string, ExpressionEditorContribution>();
|
|
36
26
|
|
|
37
27
|
/**
|
|
38
28
|
* Load one plugin: call its `register` entry with a context bound to `pluginId`,
|
|
@@ -60,7 +50,6 @@ export async function loadPlugin(pluginId: string, entry: PluginEntry): Promise<
|
|
|
60
50
|
const stagedSettingsTabs: RegisteredSettingsTab[] = [];
|
|
61
51
|
const stagedTabIds = new Set<string>();
|
|
62
52
|
const stagedNavEntries: RegisteredNavEntry[] = [];
|
|
63
|
-
const stagedExpressionEditors = new Map<string, ExpressionEditorContribution>();
|
|
64
53
|
let sealed = false;
|
|
65
54
|
|
|
66
55
|
const context: PluginContext = {
|
|
@@ -128,38 +117,6 @@ export async function loadPlugin(pluginId: string, entry: PluginEntry): Promise<
|
|
|
128
117
|
}
|
|
129
118
|
stagedNavEntries.push({ ...contribution, pluginId });
|
|
130
119
|
},
|
|
131
|
-
registerExpressionEditor(contribution: ExpressionEditorContribution): void {
|
|
132
|
-
if (sealed) {
|
|
133
|
-
throw new Error(
|
|
134
|
-
'registration is closed: a plugin must register during register(), not after it resolves',
|
|
135
|
-
);
|
|
136
|
-
}
|
|
137
|
-
// Contract-version mismatch is a LOUD per-plugin registration error, never a
|
|
138
|
-
// silent skip: an editor built against a different props contract would mount
|
|
139
|
-
// with the wrong props, so it is rejected during register() and becomes this
|
|
140
|
-
// plugin's error card. Checked before the duplicate guard so a mismatched
|
|
141
|
-
// contribution never claims a language.
|
|
142
|
-
if (contribution.contractVersion !== EXPRESSION_EDITOR_CONTRACT_VERSION) {
|
|
143
|
-
throw new Error(
|
|
144
|
-
`plugin “${pluginId}” registered an expression editor for “${contribution.language}” ` +
|
|
145
|
-
`targeting contract v${String(contribution.contractVersion)} but this host is ` +
|
|
146
|
-
`v${String(EXPRESSION_EDITOR_CONTRACT_VERSION)} — the editor must be rebuilt`,
|
|
147
|
-
);
|
|
148
|
-
}
|
|
149
|
-
// A language is a GLOBAL key: at most one editor across the deployment. A
|
|
150
|
-
// second contribution for a language already staged or committed (by this
|
|
151
|
-
// plugin or another) would leave one editor unreachable — fail loudly, as
|
|
152
|
-
// registerToolPanel does for a tool name.
|
|
153
|
-
if (
|
|
154
|
-
stagedExpressionEditors.has(contribution.language) ||
|
|
155
|
-
expressionEditors.has(contribution.language)
|
|
156
|
-
) {
|
|
157
|
-
throw new Error(
|
|
158
|
-
`an expression editor is already registered for language ${contribution.language}`,
|
|
159
|
-
);
|
|
160
|
-
}
|
|
161
|
-
stagedExpressionEditors.set(contribution.language, contribution);
|
|
162
|
-
},
|
|
163
120
|
};
|
|
164
121
|
|
|
165
122
|
try {
|
|
@@ -201,16 +158,11 @@ export async function loadPlugin(pluginId: string, entry: PluginEntry): Promise<
|
|
|
201
158
|
for (const navEntry of stagedNavEntries) {
|
|
202
159
|
navEntries.push(navEntry);
|
|
203
160
|
}
|
|
204
|
-
if (stagedExpressionEditors.size > 0) {
|
|
205
|
-
// Reassign (see the declaration): identity turnover is what re-notifies
|
|
206
|
-
// mounted ExpressionFields when the load pass commits an editor.
|
|
207
|
-
expressionEditors = new Map([...expressionEditors, ...stagedExpressionEditors]);
|
|
208
|
-
}
|
|
209
161
|
}
|
|
210
162
|
|
|
211
163
|
/** The shell reads this after loading every installed plugin bundle. */
|
|
212
164
|
export function getContributions(): PluginContributions {
|
|
213
|
-
return { toolPanels, pages, settingsTabs, navEntries
|
|
165
|
+
return { toolPanels, pages, settingsTabs, navEntries };
|
|
214
166
|
}
|
|
215
167
|
|
|
216
168
|
/** Tests reset the module-level registry between cases. */
|
|
@@ -219,5 +171,4 @@ export function __resetContributions(): void {
|
|
|
219
171
|
pages.length = 0;
|
|
220
172
|
settingsTabs.length = 0;
|
|
221
173
|
navEntries.length = 0;
|
|
222
|
-
expressionEditors = new Map();
|
|
223
174
|
}
|
package/src/plugin/types.ts
CHANGED
|
@@ -22,8 +22,6 @@
|
|
|
22
22
|
*/
|
|
23
23
|
import type { ComponentType } from 'react';
|
|
24
24
|
|
|
25
|
-
import type { ExpressionEditorContribution } from '../expression/types';
|
|
26
|
-
|
|
27
25
|
/**
|
|
28
26
|
* A capability requirement a contribution may declare. `routes` is a list of
|
|
29
27
|
* route-path prefixes (anyOf semantics, the same evaluator the shell nav uses):
|
|
@@ -195,19 +193,6 @@ export interface PluginContributions {
|
|
|
195
193
|
readonly pages: readonly RegisteredPage[];
|
|
196
194
|
readonly settingsTabs: readonly RegisteredSettingsTab[];
|
|
197
195
|
readonly navEntries: readonly RegisteredNavEntry[];
|
|
198
|
-
/**
|
|
199
|
-
* The contributed expression editors, keyed by {@link ExpressionLanguage}. A
|
|
200
|
-
* language maps to at MOST one editor across the whole deployment — the registry
|
|
201
|
-
* rejects a second contribution for a language it already holds — so a field
|
|
202
|
-
* resolves its editor by language with no ambiguity. The shell reads this map and
|
|
203
|
-
* feeds it to `ExpressionEditorsProvider`; the plugin surface reaches it only
|
|
204
|
-
* through `useExpressionEditor`, never by enumerating this map.
|
|
205
|
-
*
|
|
206
|
-
* Optional in the TYPE (this host always provides it): a contributions object
|
|
207
|
-
* built against the pre-expression shape — an older host, a test double —
|
|
208
|
-
* remains a valid `PluginContributions`. Readers fall back to an empty map.
|
|
209
|
-
*/
|
|
210
|
-
readonly expressionEditors?: ReadonlyMap<string, ExpressionEditorContribution>;
|
|
211
196
|
}
|
|
212
197
|
|
|
213
198
|
/**
|
|
@@ -233,23 +218,6 @@ export interface PluginContext {
|
|
|
233
218
|
* registers (a nav entry with no page is a dead link and is rejected loudly).
|
|
234
219
|
*/
|
|
235
220
|
registerNavEntry(contribution: NavEntryContribution): void;
|
|
236
|
-
/**
|
|
237
|
-
* Register the visual editor for one {@link ExpressionLanguage}, which every
|
|
238
|
-
* `ExpressionField` authoring that language then offers. A language is a GLOBAL
|
|
239
|
-
* key — at most one editor across the deployment — so a second contribution for a
|
|
240
|
-
* language already registered (by this plugin or another) is rejected loudly, as
|
|
241
|
-
* a duplicate tool panel is. A contribution whose `contractVersion` is not the
|
|
242
|
-
* host's {@link EXPRESSION_EDITOR_CONTRACT_VERSION} is likewise rejected loudly
|
|
243
|
-
* during registration — never silently skipped — so an editor built against an
|
|
244
|
-
* incompatible props contract is a visible per-plugin error, not a blank field.
|
|
245
|
-
*
|
|
246
|
-
* This method is OPTIONAL/ADDITIVE — optional in the TYPE too, so a plugin
|
|
247
|
-
* written against this SDK still typechecks against an older host context and
|
|
248
|
-
* a test double of the pre-expression context stays a valid `PluginContext`.
|
|
249
|
-
* Plugins feature-detect (`typeof context.registerExpressionEditor ===
|
|
250
|
-
* 'function'`) and no-op gracefully on hosts that predate the extension point.
|
|
251
|
-
*/
|
|
252
|
-
registerExpressionEditor?(contribution: ExpressionEditorContribution): void;
|
|
253
221
|
}
|
|
254
222
|
|
|
255
223
|
/**
|