@loopstack/loopstack-studio 0.23.1 → 0.24.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.
Files changed (62) hide show
  1. package/dist/api/index.js +12 -10
  2. package/dist/api/secrets.js +16 -0
  3. package/dist/components/dynamic-form/ArrayController.js +68 -64
  4. package/dist/components/dynamic-form/Form.js +46 -40
  5. package/dist/components/dynamic-form/FormElement.js +1 -1
  6. package/dist/components/dynamic-form/FormElementHeader.js +2 -2
  7. package/dist/components/dynamic-form/ObjectController.js +24 -21
  8. package/dist/components/dynamic-form/fields/BaseFieldWrapper.js +1 -1
  9. package/dist/components/dynamic-form/fields/InputField.js +20 -19
  10. package/dist/components/dynamic-form/fields/RadioField.js +18 -18
  11. package/dist/components/dynamic-form/fields/SelectField.js +19 -19
  12. package/dist/components/dynamic-form/fields/TextareaField.js +17 -17
  13. package/dist/components/layout/MainLayout.js +18 -31
  14. package/dist/components/layout/StudioSidebar.js +168 -108
  15. package/dist/components/page/PageBreadcrumbs.js +79 -32
  16. package/dist/components/ui-widgets/UiWidget.js +36 -27
  17. package/dist/components/ui-widgets/widgets/SecretInput.js +42 -0
  18. package/dist/features/code-explorer/components/FileContentViewer.js +47 -30
  19. package/dist/features/documents/components/DocumentList.js +5 -1
  20. package/dist/features/documents/renderers/AiMessage.js +11 -11
  21. package/dist/features/documents/renderers/DocumentFormRenderer.js +17 -11
  22. package/dist/features/workbench/components/WorkbenchFilesPanel.js +32 -25
  23. package/dist/features/workbench/components/WorkbenchFloatingPanel.js +57 -49
  24. package/dist/features/workbench/components/WorkbenchIconSidebar.js +46 -34
  25. package/dist/features/workbench/components/WorkbenchSecretsPanel.js +182 -0
  26. package/dist/features/workbench/providers/RemoteFileExplorerProvider.js +132 -117
  27. package/dist/hooks/index.js +1 -1
  28. package/dist/hooks/query-keys.js +41 -34
  29. package/dist/hooks/useSecrets.js +69 -0
  30. package/dist/index.d.ts +43 -0
  31. package/dist/index.js +2 -2
  32. package/dist/pages/DashboardPage.js +87 -35
  33. package/dist/pages/EmbedWorkbenchPage.js +43 -39
  34. package/dist/types/ai.types.js +13 -0
  35. package/package.json +2 -3
  36. package/dist/node_modules/@ai-sdk/provider/dist/index.js +0 -65
  37. package/dist/node_modules/@ai-sdk/provider-utils/dist/index.js +0 -1008
  38. package/dist/node_modules/ai/dist/index.js +0 -1083
  39. package/dist/node_modules/zod/v3/ZodError.js +0 -79
  40. package/dist/node_modules/zod/v3/errors.js +0 -6
  41. package/dist/node_modules/zod/v3/helpers/errorUtil.js +0 -5
  42. package/dist/node_modules/zod/v3/helpers/parseUtil.js +0 -90
  43. package/dist/node_modules/zod/v3/helpers/util.js +0 -72
  44. package/dist/node_modules/zod/v3/locales/en.js +0 -58
  45. package/dist/node_modules/zod/v3/types.js +0 -2425
  46. package/dist/node_modules/zod/v4/classic/errors.js +0 -21
  47. package/dist/node_modules/zod/v4/classic/iso.js +0 -29
  48. package/dist/node_modules/zod/v4/classic/parse.js +0 -4
  49. package/dist/node_modules/zod/v4/classic/schemas.js +0 -392
  50. package/dist/node_modules/zod/v4/core/api.js +0 -532
  51. package/dist/node_modules/zod/v4/core/checks.js +0 -283
  52. package/dist/node_modules/zod/v4/core/core.js +0 -44
  53. package/dist/node_modules/zod/v4/core/doc.js +0 -21
  54. package/dist/node_modules/zod/v4/core/errors.js +0 -40
  55. package/dist/node_modules/zod/v4/core/json-schema-processors.js +0 -305
  56. package/dist/node_modules/zod/v4/core/parse.js +0 -66
  57. package/dist/node_modules/zod/v4/core/regexes.js +0 -28
  58. package/dist/node_modules/zod/v4/core/registries.js +0 -38
  59. package/dist/node_modules/zod/v4/core/schemas.js +0 -863
  60. package/dist/node_modules/zod/v4/core/to-json-schema.js +0 -220
  61. package/dist/node_modules/zod/v4/core/util.js +0 -267
  62. package/dist/node_modules/zod/v4/core/versions.js +0 -6
@@ -1,66 +0,0 @@
1
- import { $ZodAsyncError, config } from "./core.js";
2
- import { captureStackTrace, finalizeIssue } from "./util.js";
3
- import { $ZodError, $ZodRealError } from "./errors.js";
4
- const _parse = (p) => (m, h, g, _) => {
5
- let v = g ? Object.assign(g, { async: !1 }) : { async: !1 }, y = m._zod.run({
6
- value: h,
7
- issues: []
8
- }, v);
9
- if (y instanceof Promise) throw new $ZodAsyncError();
10
- if (y.issues.length) {
11
- let e = new (_?.Err ?? p)(y.issues.map((e) => finalizeIssue(e, v, config())));
12
- throw captureStackTrace(e, _?.callee), e;
13
- }
14
- return y.value;
15
- }, _parseAsync = (e) => async (p, m, h, g) => {
16
- let _ = h ? Object.assign(h, { async: !0 }) : { async: !0 }, v = p._zod.run({
17
- value: m,
18
- issues: []
19
- }, _);
20
- if (v instanceof Promise && (v = await v), v.issues.length) {
21
- let p = new (g?.Err ?? e)(v.issues.map((e) => finalizeIssue(e, _, config())));
22
- throw captureStackTrace(p, g?.callee), p;
23
- }
24
- return v.value;
25
- }, _safeParse = (d) => (m, h, g) => {
26
- let _ = g ? {
27
- ...g,
28
- async: !1
29
- } : { async: !1 }, v = m._zod.run({
30
- value: h,
31
- issues: []
32
- }, _);
33
- if (v instanceof Promise) throw new $ZodAsyncError();
34
- return v.issues.length ? {
35
- success: !1,
36
- error: new (d ?? $ZodError)(v.issues.map((e) => finalizeIssue(e, _, config())))
37
- } : {
38
- success: !0,
39
- data: v.value
40
- };
41
- }, safeParse = /* @__PURE__ */ _safeParse($ZodRealError), _safeParseAsync = (e) => async (d, p, m) => {
42
- let h = m ? Object.assign(m, { async: !0 }) : { async: !0 }, g = d._zod.run({
43
- value: p,
44
- issues: []
45
- }, h);
46
- return g instanceof Promise && (g = await g), g.issues.length ? {
47
- success: !1,
48
- error: new e(g.issues.map((e) => finalizeIssue(e, h, config())))
49
- } : {
50
- success: !0,
51
- data: g.value
52
- };
53
- }, safeParseAsync = /* @__PURE__ */ _safeParseAsync($ZodRealError), _encode = (e) => (u, d, f) => {
54
- let p = f ? Object.assign(f, { direction: "backward" }) : { direction: "backward" };
55
- return _parse(e)(u, d, p);
56
- }, _decode = (e) => (u, d, f) => _parse(e)(u, d, f), _encodeAsync = (e) => async (u, d, f) => {
57
- let p = f ? Object.assign(f, { direction: "backward" }) : { direction: "backward" };
58
- return _parseAsync(e)(u, d, p);
59
- }, _decodeAsync = (e) => async (u, d, f) => _parseAsync(e)(u, d, f), _safeEncode = (e) => (u, d, f) => {
60
- let p = f ? Object.assign(f, { direction: "backward" }) : { direction: "backward" };
61
- return _safeParse(e)(u, d, p);
62
- }, _safeDecode = (e) => (u, d, f) => _safeParse(e)(u, d, f), _safeEncodeAsync = (e) => async (u, d, f) => {
63
- let p = f ? Object.assign(f, { direction: "backward" }) : { direction: "backward" };
64
- return _safeParseAsync(e)(u, d, p);
65
- }, _safeDecodeAsync = (e) => async (u, d, f) => _safeParseAsync(e)(u, d, f);
66
- export { _decode, _decodeAsync, _encode, _encodeAsync, _parse, _parseAsync, _safeDecode, _safeDecodeAsync, _safeEncode, _safeEncodeAsync, _safeParse, _safeParseAsync, safeParse, safeParseAsync };
@@ -1,28 +0,0 @@
1
- const cuid = /^[cC][^\s-]{8,}$/, cuid2 = /^[0-9a-z]+$/, ulid = /^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/, xid = /^[0-9a-vA-V]{20}$/, ksuid = /^[A-Za-z0-9]{27}$/, nanoid = /^[a-zA-Z0-9_-]{21}$/, duration = /^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/, guid = /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/, uuid = (e) => e ? /* @__PURE__ */ RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`) : /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/, email = /^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;
2
- var _emoji = "^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";
3
- function emoji() {
4
- return new RegExp(_emoji, "u");
5
- }
6
- const ipv4 = /^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/, ipv6 = /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/, cidrv4 = /^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/, cidrv6 = /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/, base64 = /^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/, base64url = /^[A-Za-z0-9_-]*$/, e164 = /^\+[1-9]\d{6,14}$/;
7
- var dateSource = "(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))";
8
- const date = /* @__PURE__ */ RegExp(`^${dateSource}$`);
9
- function timeSource(e) {
10
- let O = "(?:[01]\\d|2[0-3]):[0-5]\\d";
11
- return typeof e.precision == "number" ? e.precision === -1 ? `${O}` : e.precision === 0 ? `${O}:[0-5]\\d` : `${O}:[0-5]\\d\\.\\d{${e.precision}}` : `${O}(?::[0-5]\\d(?:\\.\\d+)?)?`;
12
- }
13
- function time(e) {
14
- return /* @__PURE__ */ RegExp(`^${timeSource(e)}$`);
15
- }
16
- function datetime(e) {
17
- let O = timeSource({ precision: e.precision }), k = ["Z"];
18
- e.local && k.push(""), e.offset && k.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");
19
- let A = `${O}(?:${k.join("|")})`;
20
- return /* @__PURE__ */ RegExp(`^${dateSource}T(?:${A})$`);
21
- }
22
- const string = (e) => {
23
- let O = e ? `[\\s\\S]{${e?.minimum ?? 0},${e?.maximum ?? ""}}` : "[\\s\\S]*";
24
- return /* @__PURE__ */ RegExp(`^${O}$`);
25
- }, integer = /^-?\d+$/, number = /^-?\d+(?:\.\d+)?$/, boolean = /^(?:true|false)$/i;
26
- var _null = /^null$/i;
27
- const lowercase = /^[^A-Z]*$/, uppercase = /^[^a-z]*$/;
28
- export { _null, base64, base64url, boolean, cidrv4, cidrv6, cuid, cuid2, date, datetime, duration, e164, email, emoji, guid, integer, ipv4, ipv6, ksuid, lowercase, nanoid, number, string, time, ulid, uppercase, uuid, xid };
@@ -1,38 +0,0 @@
1
- var _a, $ZodRegistry = class {
2
- constructor() {
3
- this._map = /* @__PURE__ */ new WeakMap(), this._idmap = /* @__PURE__ */ new Map();
4
- }
5
- add(e, ...t) {
6
- let n = t[0];
7
- return this._map.set(e, n), n && typeof n == "object" && "id" in n && this._idmap.set(n.id, e), this;
8
- }
9
- clear() {
10
- return this._map = /* @__PURE__ */ new WeakMap(), this._idmap = /* @__PURE__ */ new Map(), this;
11
- }
12
- remove(e) {
13
- let t = this._map.get(e);
14
- return t && typeof t == "object" && "id" in t && this._idmap.delete(t.id), this._map.delete(e), this;
15
- }
16
- get(e) {
17
- let t = e._zod.parent;
18
- if (t) {
19
- let n = { ...this.get(t) ?? {} };
20
- delete n.id;
21
- let r = {
22
- ...n,
23
- ...this._map.get(e)
24
- };
25
- return Object.keys(r).length ? r : void 0;
26
- }
27
- return this._map.get(e);
28
- }
29
- has(e) {
30
- return this._map.has(e);
31
- }
32
- };
33
- function registry() {
34
- return new $ZodRegistry();
35
- }
36
- (_a = globalThis).__zod_globalRegistry ?? (_a.__zod_globalRegistry = registry());
37
- const globalRegistry = globalThis.__zod_globalRegistry;
38
- export { globalRegistry };