@jxsuite/studio 5.1.0 → 5.3.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/chunks/{cf-account-picker-qwkm9zrf.js → cf-account-picker-nwnwdm6p.js} +10 -10
- package/dist/chunks/{cf-settings-71bv5zn9.js → cf-settings-adg74qsk.js} +4 -4
- package/dist/chunks/{components-vj72gqtq.js → components-5y78e05d.js} +4 -4
- package/dist/chunks/content-source-4rzvmp0m.js +46 -0
- package/dist/chunks/{convert-to-repeater-n64h8znc.js → convert-to-repeater-jxsv62v7.js} +22 -22
- package/dist/chunks/entry-commands-1wnsqn5d.js +42 -0
- package/dist/chunks/{extension-sections-3hpcambp.js → extension-sections-2mrptyek.js} +27 -27
- package/dist/chunks/{file-ops-8yhd83xr.js → file-ops-knfqshrm.js} +22 -22
- package/dist/chunks/{files-hnxqxtsg.js → files-y6fr4he9.js} +32 -30
- package/dist/chunks/{format-host-779sfp2n.js → format-host-1k4qrcqd.js} +2 -2
- package/dist/chunks/{fs-events-b88z7g4h.js → fs-events-3y6y0nrm.js} +4 -4
- package/dist/chunks/{git-panel-xwj8fpab.js → git-panel-2rkrsjva.js} +23 -22
- package/dist/chunks/grid-view-1p6hsyjx.css +8406 -0
- package/dist/chunks/grid-view-a7b87n2c.js +15322 -0
- package/dist/chunks/{iframe-host-syr0f9sb.js → iframe-host-scpw01h8.js} +13 -13
- package/dist/chunks/{jx-validate-j0wxk72w.js → jx-validate-epp2z3s3.js} +2 -2
- package/dist/chunks/{layers-ff81wthn.js → layers-jnvdbqva.js} +5 -5
- package/dist/chunks/layers-panel-73gfkcga.js +41 -0
- package/dist/chunks/{listbox-6v2ac08j.js → listbox-b7jxnhq1.js} +19 -3
- package/dist/chunks/{media-picker-cqhhxhhe.js → media-picker-f66nav16.js} +13 -13
- package/dist/chunks/menu-1dfhry4s.js +15 -0
- package/dist/chunks/{monaco-buffer-bhy3hb6m.js → monaco-buffer-pykwbm92.js} +3 -3
- package/dist/chunks/{monaco-setup-8r62fj6y.js → monaco-setup-km6abc6q.js} +2 -2
- package/dist/chunks/{notify-628t0anh.js → notify-42gk8ha1.js} +2 -2
- package/dist/chunks/{parse-0zx14y15.js → parse-reg9eevt.js} +2 -2
- package/dist/chunks/publish-panel-z1zd2da1.js +27 -0
- package/dist/chunks/quick-search-zdv7h8ht.js +47 -0
- package/dist/chunks/{references-qvvxej7h.js → references-h69xp9zz.js} +2 -2
- package/dist/chunks/right-panel-889vbnm5.js +45 -0
- package/dist/chunks/{split-g7nm1rgb.js → split-4cz4b6ef.js} +14 -3
- package/dist/chunks/{studio-vfq8qpjt.js → studio-0j7r7s9g.js} +3 -3
- package/dist/chunks/{studio-b4s9eykd.js → studio-151w0xnh.js} +15 -15
- package/dist/chunks/studio-1tbjfqv4.js +146 -0
- package/dist/chunks/{studio-8scdew0e.js → studio-27q131j3.js} +4 -4
- package/dist/chunks/{studio-7r42c6ca.js → studio-3ntvq6cg.js} +5 -5
- package/dist/chunks/{studio-g3jevyjt.js → studio-4c041r8y.js} +2 -2
- package/dist/chunks/{studio-js8nv53n.js → studio-4f3psrk1.js} +14 -14
- package/dist/chunks/{studio-pxbgypmg.js → studio-50wfwy44.js} +17 -14
- package/dist/chunks/{studio-vw7mzp6z.js → studio-6gryj0sg.js} +5 -5
- package/dist/chunks/{studio-e1pgga3k.js → studio-6kvgrkrp.js} +7 -7
- package/dist/chunks/{studio-wqz6dggm.js → studio-7144epdr.js} +9 -9
- package/dist/chunks/{studio-b0k5tqgp.js → studio-7rrb1esn.js} +32 -28
- package/dist/chunks/{studio-38emantv.js → studio-a5h5j33a.js} +19 -5
- package/dist/chunks/{studio-3773086z.js → studio-a65w20ex.js} +4 -4
- package/dist/chunks/{studio-nzzpvzx9.js → studio-ab87phj1.js} +4 -4
- package/dist/chunks/{studio-r6nvacqs.js → studio-b66rsh78.js} +20 -20
- package/dist/chunks/{studio-jxp12rnj.js → studio-b7xacrwe.js} +6 -6
- package/dist/chunks/{studio-6xa21ej9.js → studio-c04nzbby.js} +2 -2
- package/dist/chunks/{studio-try13h8c.js → studio-c0qgc3tn.js} +18 -18
- package/dist/chunks/{studio-tqgryxwg.js → studio-cgprcdxn.js} +7 -7
- package/dist/chunks/{studio-kkqkcp3d.js → studio-d1n2bykn.js} +40 -13
- package/dist/chunks/{studio-p1dw8wfw.js → studio-d8z5bajd.js} +14 -10
- package/dist/chunks/{studio-3rz5md06.js → studio-dd1qqkry.js} +6 -6
- package/dist/chunks/{studio-1z1kcjv4.js → studio-drg8qj9k.js} +11 -11
- package/dist/chunks/{studio-kcgff4r0.js → studio-fgmfksz8.js} +2 -2
- package/dist/chunks/{studio-qk90fgqm.js → studio-fzjx96t2.js} +7 -7
- package/dist/chunks/{studio-a79k90n9.js → studio-g33v4fe9.js} +17 -16
- package/dist/chunks/{studio-k75n7vhp.js → studio-gk2twyh4.js} +74 -36
- package/dist/chunks/{studio-syg2tadj.js → studio-gtfq1dkz.js} +3 -3
- package/dist/chunks/{studio-1knfqgy7.js → studio-j0w60gft.js} +8 -8
- package/dist/chunks/{studio-aj37eer3.js → studio-jt27ta6x.js} +4 -4
- package/dist/chunks/{studio-gb13095a.js → studio-ke09tn9k.js} +59 -20
- package/dist/chunks/{studio-d0300636.js → studio-ks2zzth2.js} +17 -2
- package/dist/chunks/{studio-6ewqv390.js → studio-m1p9b6c3.js} +5 -5
- package/dist/chunks/{studio-qk4bfsq2.js → studio-msc1ee1m.js} +4 -4
- package/dist/chunks/{studio-93zafjcm.js → studio-nfx354t1.js} +10 -10
- package/dist/chunks/{studio-mhhyamxf.js → studio-nsgw7dbk.js} +6 -6
- package/dist/chunks/{studio-qhhm6hbt.js → studio-rtskkm43.js} +4 -4
- package/dist/chunks/studio-t171hxhe.js +23 -0
- package/dist/chunks/{studio-hhvs4sdg.js → studio-vn5hske5.js} +10 -4
- package/dist/chunks/{studio-q3x06vmj.js → studio-wnsyffg1.js} +2 -2
- package/dist/chunks/{studio-5wt9nvhd.js → studio-xajk70w0.js} +29 -42
- package/dist/chunks/{studio-7xnmgv66.js → studio-ye9drbk8.js} +45 -44
- package/dist/chunks/{studio-y9zedyjn.js → studio-z2smx5ce.js} +2 -2
- package/dist/chunks/{studio-sbjyc8bt.js → studio-ze46gzjh.js} +9 -9
- package/dist/chunks/{studio-zdn2g6dt.js → studio-zjjde71a.js} +2 -2
- package/dist/chunks/{workspace-t55jdjbx.js → workspace-np10mayv.js} +18 -10
- package/dist/iframe-entry.js +9 -5
- package/dist/studio.css +1 -2
- package/dist/studio.js +910 -15705
- package/package.json +10 -10
- package/src/files/files.ts +38 -15
- package/src/grid/grid-lazy.ts +59 -0
- package/src/grid/grid-open.ts +20 -3
- package/src/grid/grid-panel.ts +43 -9
- package/src/media/media-open.ts +14 -2
- package/src/panels/chat-panel.ts +40 -5
- package/src/panels/pane-context.ts +5 -4
- package/src/panels/pane-grid.ts +100 -10
- package/src/panels/tab-drop.ts +220 -0
- package/src/panels/tab-strip.ts +235 -30
- package/src/services/ai-models.ts +13 -0
- package/src/services/module-preloads.ts +67 -0
- package/src/studio.ts +16 -6
- package/src/surfaces/commandbar.json +26 -16
- package/src/surfaces/formula-palette.json +8 -7
- package/src/surfaces/formula-palette.ts +10 -6
- package/src/surfaces/palette.json +8 -7
- package/src/surfaces/pane-grid.json +35 -3
- package/src/surfaces/pane-grid.ts +26 -4
- package/src/surfaces/tab-strip.json +16 -39
- package/src/surfaces/tab-strip.ts +76 -12
- package/src/ui/ai-credentials-form.ts +12 -1
- package/src/ui/panel-resize.ts +3 -23
- package/src/ui/virtual-window.ts +57 -4
- package/src/workspace/pane-derive.ts +7 -5
- package/src/workspace/session.ts +3 -3
- package/src/workspace/workspace.ts +160 -43
- package/styles/shell-frame.css +8 -0
- package/styles/shell-frame.json +4 -0
- package/dist/chunks/content-source-5mex4x1h.js +0 -46
- package/dist/chunks/entry-commands-234hjnqw.js +0 -42
- package/dist/chunks/layers-panel-pnnghw12.js +0 -40
- package/dist/chunks/menu-9p2w46gj.js +0 -15
- package/dist/chunks/publish-panel-5zt840sy.js +0 -27
- package/dist/chunks/quick-search-3748564r.js +0 -45
- package/dist/chunks/right-panel-eccz92qt.js +0 -45
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
// src/grid/grid-layout.ts
|
|
2
|
+
var FACETS = ["order", "widths", "hidden", "sort", "groupBy", "filter"];
|
|
3
|
+
var STORAGE_PREFIX = "jx-grid-layout:";
|
|
4
|
+
function storage() {
|
|
5
|
+
try {
|
|
6
|
+
return globalThis.localStorage ?? null;
|
|
7
|
+
} catch {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
function readRecord(gridId) {
|
|
12
|
+
const raw = storage()?.getItem(STORAGE_PREFIX + gridId);
|
|
13
|
+
if (!raw) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
try {
|
|
17
|
+
const parsed = JSON.parse(raw);
|
|
18
|
+
return typeof parsed === "object" && parsed !== null ? parsed : null;
|
|
19
|
+
} catch {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function writeRecord(gridId, record) {
|
|
24
|
+
storage()?.setItem(STORAGE_PREFIX + gridId, JSON.stringify(record));
|
|
25
|
+
}
|
|
26
|
+
function facetsOf(source) {
|
|
27
|
+
const out = {};
|
|
28
|
+
for (const facet of FACETS) {
|
|
29
|
+
if (source[facet] !== undefined) {
|
|
30
|
+
Object.assign(out, { [facet]: source[facet] });
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return out;
|
|
34
|
+
}
|
|
35
|
+
function facetKey(layout) {
|
|
36
|
+
return JSON.stringify(FACETS.map((facet) => layout[facet] ?? null));
|
|
37
|
+
}
|
|
38
|
+
function loadGridLayout(gridId) {
|
|
39
|
+
const record = readRecord(gridId);
|
|
40
|
+
return record ? facetsOf(record) : null;
|
|
41
|
+
}
|
|
42
|
+
function saveGridLayout(gridId, change) {
|
|
43
|
+
const store = storage();
|
|
44
|
+
if (!store) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const record = readRecord(gridId) ?? {};
|
|
48
|
+
const next = { ...record, widths: { ...record.widths, ...change.widths } };
|
|
49
|
+
for (const facet of FACETS) {
|
|
50
|
+
if (facet !== "widths" && change[facet] !== undefined) {
|
|
51
|
+
Object.assign(next, { [facet]: change[facet] });
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
writeRecord(gridId, next);
|
|
55
|
+
}
|
|
56
|
+
function resetGridLayout(gridId) {
|
|
57
|
+
const record = readRecord(gridId);
|
|
58
|
+
if (!record) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
writeRecord(gridId, { active: null, ...record.views ? { views: record.views } : {} });
|
|
62
|
+
}
|
|
63
|
+
function listSavedViews(gridId) {
|
|
64
|
+
const views = readRecord(gridId)?.views;
|
|
65
|
+
return Array.isArray(views) ? views.filter((view) => typeof view?.name === "string") : [];
|
|
66
|
+
}
|
|
67
|
+
function activeViewName(gridId) {
|
|
68
|
+
return readRecord(gridId)?.active ?? null;
|
|
69
|
+
}
|
|
70
|
+
function activeViewModified(gridId) {
|
|
71
|
+
const record = readRecord(gridId);
|
|
72
|
+
const name = record?.active;
|
|
73
|
+
if (!record || !name) {
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
const view = listSavedViews(gridId).find((candidate) => candidate.name === name);
|
|
77
|
+
return view ? facetKey(facetsOf(view)) !== facetKey(facetsOf(record)) : false;
|
|
78
|
+
}
|
|
79
|
+
function saveViewAs(gridId, name) {
|
|
80
|
+
const trimmed = name.trim();
|
|
81
|
+
const store = storage();
|
|
82
|
+
if (trimmed === "" || !store) {
|
|
83
|
+
return null;
|
|
84
|
+
}
|
|
85
|
+
const record = readRecord(gridId) ?? {};
|
|
86
|
+
const view = { name: trimmed, ...facetsOf(record) };
|
|
87
|
+
const views = listSavedViews(gridId).filter((candidate) => candidate.name !== trimmed);
|
|
88
|
+
views.push(view);
|
|
89
|
+
writeRecord(gridId, { ...record, active: trimmed, views });
|
|
90
|
+
return view;
|
|
91
|
+
}
|
|
92
|
+
function applySavedView(gridId, name) {
|
|
93
|
+
const view = listSavedViews(gridId).find((candidate) => candidate.name === name);
|
|
94
|
+
if (!view || !storage()) {
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
const record = readRecord(gridId) ?? {};
|
|
98
|
+
const layout = facetsOf(view);
|
|
99
|
+
writeRecord(gridId, { active: view.name, views: record.views ?? [], ...layout });
|
|
100
|
+
return layout;
|
|
101
|
+
}
|
|
102
|
+
function deleteSavedView(gridId, name) {
|
|
103
|
+
const record = readRecord(gridId);
|
|
104
|
+
if (!record || !storage()) {
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
const views = listSavedViews(gridId);
|
|
108
|
+
const kept = views.filter((candidate) => candidate.name !== name);
|
|
109
|
+
if (kept.length === views.length) {
|
|
110
|
+
return false;
|
|
111
|
+
}
|
|
112
|
+
writeRecord(gridId, {
|
|
113
|
+
...record,
|
|
114
|
+
active: record.active === name ? null : record.active ?? null,
|
|
115
|
+
views: kept
|
|
116
|
+
});
|
|
117
|
+
return true;
|
|
118
|
+
}
|
|
119
|
+
function applyGridLayout(defs, layout) {
|
|
120
|
+
if (!layout) {
|
|
121
|
+
return defs;
|
|
122
|
+
}
|
|
123
|
+
const hidden = new Set(layout.hidden);
|
|
124
|
+
const widened = [];
|
|
125
|
+
for (const def of defs) {
|
|
126
|
+
if (def.field !== undefined && hidden.has(def.field)) {
|
|
127
|
+
continue;
|
|
128
|
+
}
|
|
129
|
+
const width = def.field ? layout.widths?.[def.field] : undefined;
|
|
130
|
+
widened.push(width ? { ...def, width } : def);
|
|
131
|
+
}
|
|
132
|
+
if (!layout.order?.length) {
|
|
133
|
+
return widened;
|
|
134
|
+
}
|
|
135
|
+
const rank = new Map(layout.order.map((field, i) => [field, i]));
|
|
136
|
+
return widened.map((def, index) => ({ def, index })).toSorted((a, b) => {
|
|
137
|
+
const ra = rank.get(a.def.field ?? "") ?? layout.order.length + a.index;
|
|
138
|
+
const rb = rank.get(b.def.field ?? "") ?? layout.order.length + b.index;
|
|
139
|
+
return ra - rb;
|
|
140
|
+
}).map(({ def }) => def);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
export { loadGridLayout, saveGridLayout, resetGridLayout, listSavedViews, activeViewName, activeViewModified, saveViewAs, applySavedView, deleteSavedView, applyGridLayout };
|
|
144
|
+
|
|
145
|
+
//# debugId=C0BEC0EB850BC76E64756E2164756E21
|
|
146
|
+
//# sourceMappingURL=studio-1tbjfqv4.js.map
|
|
@@ -2,13 +2,13 @@ import {
|
|
|
2
2
|
resolveI18n,
|
|
3
3
|
emptyContext,
|
|
4
4
|
activeTab2
|
|
5
|
-
} from "./studio-
|
|
5
|
+
} from "./studio-gk2twyh4.js";
|
|
6
6
|
import {
|
|
7
7
|
projectState
|
|
8
|
-
} from "./studio-
|
|
8
|
+
} from "./studio-m1p9b6c3.js";
|
|
9
9
|
import {
|
|
10
10
|
shell
|
|
11
|
-
} from "./studio-
|
|
11
|
+
} from "./studio-fzjx96t2.js";
|
|
12
12
|
|
|
13
13
|
// src/commands/levels.ts
|
|
14
14
|
var LEVELS = ["application", "project", "document", "selection"];
|
|
@@ -255,4 +255,4 @@ function railPanelSet() {
|
|
|
255
255
|
export { LEVELS, KEY_SCOPES, CATEGORIES, checkRecordPlacements, panelContext, registerPanel, getPanel, listPanels, isPanelVisible, railGroups, railPanelSet };
|
|
256
256
|
|
|
257
257
|
//# debugId=18BC2C98470D23FD64756E2164756E21
|
|
258
|
-
//# sourceMappingURL=studio-
|
|
258
|
+
//# sourceMappingURL=studio-27q131j3.js.map
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
function isJsonObject(value) {
|
|
3
3
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
4
4
|
}
|
|
5
|
-
function
|
|
5
|
+
function isRef(value) {
|
|
6
6
|
return isJsonObject(value) && typeof value.$ref === "string";
|
|
7
7
|
}
|
|
8
8
|
function isFunctionDef(value) {
|
|
@@ -65,7 +65,7 @@ function ensureNestedStyle(style, key) {
|
|
|
65
65
|
return created;
|
|
66
66
|
}
|
|
67
67
|
function isEventBinding(value) {
|
|
68
|
-
return
|
|
68
|
+
return isRef(value) || isFunctionDef(value) || isExpressionDef(value);
|
|
69
69
|
}
|
|
70
70
|
function getEventBinding(node, key) {
|
|
71
71
|
const value = node[key];
|
|
@@ -110,7 +110,7 @@ function isPrivateStateKey(key) {
|
|
|
110
110
|
return key.startsWith("#");
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
-
export { isJsonObject,
|
|
113
|
+
export { isJsonObject, isRef, isFunctionDef, isExpressionDef, isNamedFormulaDef, hasStructuredBody, isPrototypeDef, isServerFnDef, isMappedArray, isTemplateString, bodyReturnsValue, isNestedStyle, getNestedStyle, ensureNestedStyle, isEventBinding, getEventBinding, paramNames, isTagExpression, tagNameCandidates, displayTagName, isPrivateStateKey };
|
|
114
114
|
|
|
115
|
-
//# debugId=
|
|
116
|
-
//# sourceMappingURL=studio-
|
|
115
|
+
//# debugId=BFDCBADF32802FEA64756E2164756E21
|
|
116
|
+
//# sourceMappingURL=studio-3ntvq6cg.js.map
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
} from "./studio-nq5yf5mp.js";
|
|
7
7
|
import {
|
|
8
8
|
projectState
|
|
9
|
-
} from "./studio-
|
|
9
|
+
} from "./studio-m1p9b6c3.js";
|
|
10
10
|
|
|
11
11
|
// src/files/gitignore.ts
|
|
12
12
|
var RE_SPECIAL = /[.*+?^${}()|[\]\\]/;
|
|
@@ -391,4 +391,4 @@ function startFsSync2(ctx) {
|
|
|
391
391
|
export { resetIgnoreCache, ensureIgnoreLayers, isIgnoredEntry, markLocalMutation2, isRecentLocal2, startFsSync2 };
|
|
392
392
|
|
|
393
393
|
//# debugId=021BCC8E71B450F764756E2164756E21
|
|
394
|
-
//# sourceMappingURL=studio-
|
|
394
|
+
//# sourceMappingURL=studio-4c041r8y.js.map
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import {
|
|
2
2
|
intlHelpersClause
|
|
3
|
-
} from "./studio-
|
|
3
|
+
} from "./studio-d1n2bykn.js";
|
|
4
4
|
import {
|
|
5
5
|
LANGUAGE_TAG_PATTERN,
|
|
6
6
|
activeTab2
|
|
7
|
-
} from "./studio-
|
|
7
|
+
} from "./studio-gk2twyh4.js";
|
|
8
8
|
import {
|
|
9
|
-
|
|
9
|
+
isRef,
|
|
10
10
|
isFunctionDef,
|
|
11
11
|
isTemplateString
|
|
12
|
-
} from "./studio-
|
|
12
|
+
} from "./studio-3ntvq6cg.js";
|
|
13
13
|
import {
|
|
14
14
|
reactive
|
|
15
|
-
} from "./studio-
|
|
15
|
+
} from "./studio-d8z5bajd.js";
|
|
16
16
|
import {
|
|
17
17
|
registerSurface,
|
|
18
18
|
mountSurface
|
|
19
|
-
} from "./studio-
|
|
19
|
+
} from "./studio-0j7r7s9g.js";
|
|
20
20
|
import {
|
|
21
21
|
openMenu2
|
|
22
|
-
} from "./studio-
|
|
22
|
+
} from "./studio-jt27ta6x.js";
|
|
23
23
|
import {
|
|
24
24
|
cloneValue2
|
|
25
25
|
} from "./studio-727xh0e3.js";
|
|
@@ -1520,7 +1520,7 @@ var VALUE_SOURCE_HINTS = {
|
|
|
1520
1520
|
template: "Text with ${…} placeholders that fill in from signals."
|
|
1521
1521
|
};
|
|
1522
1522
|
function slotMode(value) {
|
|
1523
|
-
if (
|
|
1523
|
+
if (isRef(value)) {
|
|
1524
1524
|
return "ref";
|
|
1525
1525
|
}
|
|
1526
1526
|
if (isFunctionDef(value)) {
|
|
@@ -2866,7 +2866,7 @@ function asText(value) {
|
|
|
2866
2866
|
return typeof value === "object" ? JSON.stringify(value, null, 2) : String(value);
|
|
2867
2867
|
}
|
|
2868
2868
|
function validateFieldValue(schema, value, isRequired) {
|
|
2869
|
-
if (
|
|
2869
|
+
if (isRef(value)) {
|
|
2870
2870
|
return "";
|
|
2871
2871
|
}
|
|
2872
2872
|
const empty = value === undefined || value === null || value === "";
|
|
@@ -3285,7 +3285,7 @@ function deriveField(prop, ps, args) {
|
|
|
3285
3285
|
plan.commit = "ref";
|
|
3286
3286
|
plan.debounceMs = 0;
|
|
3287
3287
|
row.kind = "pointer";
|
|
3288
|
-
row.value =
|
|
3288
|
+
row.value = isRef(current) ? current.$ref : "";
|
|
3289
3289
|
row.options = sources.map((s) => ({ label: s.label, value: s.value }));
|
|
3290
3290
|
row.hasOptions = row.options.length > 0;
|
|
3291
3291
|
return row;
|
|
@@ -3304,7 +3304,7 @@ function deriveField(prop, ps, args) {
|
|
|
3304
3304
|
row.kind = "control";
|
|
3305
3305
|
return row;
|
|
3306
3306
|
}
|
|
3307
|
-
if (
|
|
3307
|
+
if (isRef(current) && isBindableField(ps)) {
|
|
3308
3308
|
plan.commit = "ref";
|
|
3309
3309
|
plan.debounceMs = 0;
|
|
3310
3310
|
row.kind = "text";
|
|
@@ -3418,7 +3418,7 @@ function deriveCell(prop, rowKey, cellKey, cellSchema, held, args, plan) {
|
|
|
3418
3418
|
row: rowKey,
|
|
3419
3419
|
value: ""
|
|
3420
3420
|
};
|
|
3421
|
-
if (
|
|
3421
|
+
if (isRef(held)) {
|
|
3422
3422
|
cell.value = held.$ref;
|
|
3423
3423
|
plan.refCells?.add(id);
|
|
3424
3424
|
return cell;
|
|
@@ -3501,5 +3501,5 @@ function resolveContextPointer(pointer, opts) {
|
|
|
3501
3501
|
|
|
3502
3502
|
export { REDIRECT_STATUSES, VALUE_SOURCE_LABELS, VALUE_SOURCE_HINTS, slotMode, TAG_EXPRESSION_OPERATORS, capsForPosition, slotCaps, stashSlotValue, hasStashedSlotValue, effectiveSlotMode, slotModeSeed, switchSlotMode, registerFormControl, referenceTarget, mountSchemaForm, resolveContextPointer };
|
|
3503
3503
|
|
|
3504
|
-
//# debugId=
|
|
3505
|
-
//# sourceMappingURL=studio-
|
|
3504
|
+
//# debugId=028D7979B65A1DC964756E2164756E21
|
|
3505
|
+
//# sourceMappingURL=studio-4f3psrk1.js.map
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
reactive
|
|
3
|
-
} from "./studio-
|
|
3
|
+
} from "./studio-d8z5bajd.js";
|
|
4
4
|
import {
|
|
5
5
|
getPlatform2
|
|
6
6
|
} from "./studio-6nzaktvy.js";
|
|
7
7
|
import {
|
|
8
8
|
loadFormats2,
|
|
9
9
|
formatForPath2
|
|
10
|
-
} from "./studio-
|
|
10
|
+
} from "./studio-6gryj0sg.js";
|
|
11
11
|
import {
|
|
12
12
|
projectState
|
|
13
|
-
} from "./studio-
|
|
13
|
+
} from "./studio-m1p9b6c3.js";
|
|
14
14
|
import {
|
|
15
15
|
resolveI18n,
|
|
16
16
|
servedLocaleOfPath,
|
|
@@ -22,20 +22,20 @@ import {
|
|
|
22
22
|
workspace2,
|
|
23
23
|
openTab2,
|
|
24
24
|
activateTab2
|
|
25
|
-
} from "./studio-
|
|
25
|
+
} from "./studio-gk2twyh4.js";
|
|
26
26
|
import {
|
|
27
27
|
registerSurface,
|
|
28
28
|
mountSurface,
|
|
29
29
|
openDialogSurface,
|
|
30
30
|
layerHost2
|
|
31
|
-
} from "./studio-
|
|
31
|
+
} from "./studio-0j7r7s9g.js";
|
|
32
32
|
import {
|
|
33
33
|
errorMessage2
|
|
34
34
|
} from "./studio-yxa81f45.js";
|
|
35
35
|
import {
|
|
36
36
|
markLocalMutation2,
|
|
37
37
|
isRecentLocal2
|
|
38
|
-
} from "./studio-
|
|
38
|
+
} from "./studio-4c041r8y.js";
|
|
39
39
|
import {
|
|
40
40
|
makeGridTabId,
|
|
41
41
|
parseGridTabId,
|
|
@@ -44,16 +44,16 @@ import {
|
|
|
44
44
|
coerceCellInput,
|
|
45
45
|
cellToText,
|
|
46
46
|
createGridController
|
|
47
|
-
} from "./studio-
|
|
47
|
+
} from "./studio-ke09tn9k.js";
|
|
48
48
|
import {
|
|
49
49
|
collectionDirs2,
|
|
50
50
|
createCollectionSource2,
|
|
51
51
|
createPagesSource2
|
|
52
|
-
} from "./studio-
|
|
52
|
+
} from "./studio-j0w60gft.js";
|
|
53
53
|
import {
|
|
54
54
|
MEDIA_EXTENSIONS,
|
|
55
55
|
extensionOf
|
|
56
|
-
} from "./studio-
|
|
56
|
+
} from "./studio-b7xacrwe.js";
|
|
57
57
|
// src/surfaces/grid-open.json
|
|
58
58
|
var grid_open_default = {
|
|
59
59
|
$schema: "https://jxsuite.com/schema/v1",
|
|
@@ -999,10 +999,10 @@ function createLibrarySource(dirs) {
|
|
|
999
999
|
|
|
1000
1000
|
// src/grid/grid-open.ts
|
|
1001
1001
|
var GRID_STUB_DOCUMENT = { children: [], tagName: "div" };
|
|
1002
|
-
async function openCsvGridTab(path) {
|
|
1002
|
+
async function openCsvGridTab(path, opts = {}) {
|
|
1003
1003
|
const existing = workspace2.tabs.get(path);
|
|
1004
1004
|
if (existing) {
|
|
1005
|
-
activateTab2(path);
|
|
1005
|
+
activateTab2(path, { focus: opts.focus !== false });
|
|
1006
1006
|
return existing;
|
|
1007
1007
|
}
|
|
1008
1008
|
try {
|
|
@@ -1014,7 +1014,10 @@ async function openCsvGridTab(path) {
|
|
|
1014
1014
|
document: structuredClone(GRID_STUB_DOCUMENT),
|
|
1015
1015
|
documentPath: path,
|
|
1016
1016
|
id: path,
|
|
1017
|
-
sourceFormat: formatForPath2(path)?.name ?? null
|
|
1017
|
+
sourceFormat: formatForPath2(path)?.name ?? null,
|
|
1018
|
+
...opts.paneId !== undefined && { paneId: opts.paneId },
|
|
1019
|
+
...opts.preview === true && { preview: true },
|
|
1020
|
+
...opts.focus === false && { focus: false }
|
|
1018
1021
|
});
|
|
1019
1022
|
const controller = createGridController(tab, source);
|
|
1020
1023
|
controller.load();
|
|
@@ -1193,5 +1196,5 @@ function registerGridCommands(registry) {
|
|
|
1193
1196
|
|
|
1194
1197
|
export { dataSurfaceAvailable, testConnection, pushSchema, deriveSecretEnvName, parseCsv, createCsvFileSource, LIBRARY_CATEGORIES, LIBRARY_CATEGORY_KEYS, libraryCategory, uploadDirForCategory, scanLibrary, filterLibrary, LIBRARY_LAYOUTS, LIBRARY_LAYOUT_LABELS, PREVIEW_LAYOUTS, projectLocales, libraryLocales, groupByDate, groupByCategory, libraryColumns, createLibrarySource, openCsvGridTab, openLibraryTab, openPagesGrid, openGridSourcePicker, registerGridCommands };
|
|
1195
1198
|
|
|
1196
|
-
//# debugId=
|
|
1197
|
-
//# sourceMappingURL=studio-
|
|
1199
|
+
//# debugId=568206775D45105064756E2164756E21
|
|
1200
|
+
//# sourceMappingURL=studio-50wfwy44.js.map
|
|
@@ -21,7 +21,7 @@ async function applyPendingSchemas() {
|
|
|
21
21
|
}
|
|
22
22
|
_pendingSchemasDirty = false;
|
|
23
23
|
try {
|
|
24
|
-
const { applyProjectSchemas } = await (__preload("
|
|
24
|
+
const { applyProjectSchemas } = await (__preload("km6abc6q"), import("./monaco-setup-km6abc6q.js"));
|
|
25
25
|
applyProjectSchemas(_pendingSchemas);
|
|
26
26
|
} catch {}
|
|
27
27
|
}
|
|
@@ -32,7 +32,7 @@ function loadMonaco() {
|
|
|
32
32
|
_loading ??= (async () => {
|
|
33
33
|
const [monaco] = await Promise.all([
|
|
34
34
|
(__preload("3qhbg51x"), import("./editor-3qhbg51x.js")),
|
|
35
|
-
(__preload("
|
|
35
|
+
(__preload("km6abc6q"), import("./monaco-setup-km6abc6q.js"))
|
|
36
36
|
]);
|
|
37
37
|
_monaco = monaco;
|
|
38
38
|
await applyPendingSchemas();
|
|
@@ -119,12 +119,12 @@ async function shareProjectSchemas(platform) {
|
|
|
119
119
|
schemas = await platform.fetchProjectSchemas?.() ?? null;
|
|
120
120
|
} catch {}
|
|
121
121
|
setProjectSchemasForMonaco(schemas);
|
|
122
|
-
await (__preload("
|
|
122
|
+
await (__preload("epp2z3s3"), import("./jx-validate-epp2z3s3.js")).then(({ applyProjectSchemas }) => applyProjectSchemas(schemas)).catch(() => false);
|
|
123
123
|
}
|
|
124
124
|
function refreshExtensionUi2(platform) {
|
|
125
125
|
shareProjectSchemas(platform);
|
|
126
126
|
loadExtensionCatalog();
|
|
127
|
-
(__preload("
|
|
127
|
+
(__preload("2mrptyek"), import("./extension-sections-2mrptyek.js")).then(({ syncExtensionSettingsSections }) => syncExtensionSettingsSections()).catch(() => {});
|
|
128
128
|
}
|
|
129
129
|
function getFormats2() {
|
|
130
130
|
return _formats;
|
|
@@ -239,4 +239,4 @@ function splitFormatDocument2(format, doc) {
|
|
|
239
239
|
export { loadMonaco, loadedMonaco, mountStillWanted, loadFormats2, refreshFormats2, loadExtensions2, getExtensions2, getExtensionCatalog2, refreshExtensionUi2, getFormats2, formatByExtension2, formatByName2, noFormatError2, formatForPath2, documentExtensions2, defaultContentFormat2, formatParse2, formatSerialize2, splitFormatDocument2 };
|
|
240
240
|
|
|
241
241
|
//# debugId=DC4D74E6C120403064756E2164756E21
|
|
242
|
-
//# sourceMappingURL=studio-
|
|
242
|
+
//# sourceMappingURL=studio-6gryj0sg.js.map
|
|
@@ -4,17 +4,17 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
debouncedStyleCommit,
|
|
6
6
|
renderOnly
|
|
7
|
-
} from "./studio-
|
|
7
|
+
} from "./studio-m1p9b6c3.js";
|
|
8
8
|
import {
|
|
9
9
|
REGION_ATTR,
|
|
10
10
|
overlayRegion,
|
|
11
11
|
registerSurface,
|
|
12
12
|
mountSurface,
|
|
13
13
|
layerHost2
|
|
14
|
-
} from "./studio-
|
|
14
|
+
} from "./studio-0j7r7s9g.js";
|
|
15
15
|
import {
|
|
16
16
|
reactive
|
|
17
|
-
} from "./studio-
|
|
17
|
+
} from "./studio-d8z5bajd.js";
|
|
18
18
|
import {
|
|
19
19
|
IMAGE_EXTENSIONS,
|
|
20
20
|
MEDIA_EXTENSIONS,
|
|
@@ -23,17 +23,17 @@ import {
|
|
|
23
23
|
uploadAssets,
|
|
24
24
|
mediaSiteUrl,
|
|
25
25
|
previewFileSrc
|
|
26
|
-
} from "./studio-
|
|
26
|
+
} from "./studio-b7xacrwe.js";
|
|
27
27
|
import {
|
|
28
28
|
peekMediaMeta,
|
|
29
29
|
seedMediaMeta,
|
|
30
30
|
recordImageSize,
|
|
31
31
|
invalidateMediaMeta,
|
|
32
32
|
mediaMetaSummary
|
|
33
|
-
} from "./studio-
|
|
33
|
+
} from "./studio-gtfq1dkz.js";
|
|
34
34
|
import {
|
|
35
35
|
previewAssetSrc
|
|
36
|
-
} from "./studio-
|
|
36
|
+
} from "./studio-ab87phj1.js";
|
|
37
37
|
import {
|
|
38
38
|
rectOf
|
|
39
39
|
} from "./studio-rs76k67r.js";
|
|
@@ -836,4 +836,4 @@ function unmountMediaPicker2(host) {
|
|
|
836
836
|
export { openPopoverSurface, invalidateMediaCache2, showMediaPickerPopover2, uploadAndAssign2, pickAndUpload2, mountMediaPicker2, unmountMediaPicker2 };
|
|
837
837
|
|
|
838
838
|
//# debugId=9A676D8FC549E4AE64756E2164756E21
|
|
839
|
-
//# sourceMappingURL=studio-
|
|
839
|
+
//# sourceMappingURL=studio-6kvgrkrp.js.map
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
showModal,
|
|
3
3
|
close2,
|
|
4
4
|
activeRegistry
|
|
5
|
-
} from "./studio-
|
|
5
|
+
} from "./studio-d1n2bykn.js";
|
|
6
6
|
import {
|
|
7
7
|
platformSupportsPublish,
|
|
8
8
|
listAccounts2,
|
|
@@ -11,16 +11,16 @@ import {
|
|
|
11
11
|
connectDeploy,
|
|
12
12
|
currentDeploy,
|
|
13
13
|
noteDeployment
|
|
14
|
-
} from "./studio-
|
|
14
|
+
} from "./studio-nsgw7dbk.js";
|
|
15
15
|
import {
|
|
16
16
|
getPlatform2
|
|
17
17
|
} from "./studio-6nzaktvy.js";
|
|
18
18
|
import {
|
|
19
19
|
projectState
|
|
20
|
-
} from "./studio-
|
|
20
|
+
} from "./studio-m1p9b6c3.js";
|
|
21
21
|
import {
|
|
22
22
|
reactive
|
|
23
|
-
} from "./studio-
|
|
23
|
+
} from "./studio-d8z5bajd.js";
|
|
24
24
|
import {
|
|
25
25
|
REGION_ATTR,
|
|
26
26
|
overlayRegion,
|
|
@@ -28,14 +28,14 @@ import {
|
|
|
28
28
|
mountSurface,
|
|
29
29
|
whenReady,
|
|
30
30
|
layerHost2
|
|
31
|
-
} from "./studio-
|
|
31
|
+
} from "./studio-0j7r7s9g.js";
|
|
32
32
|
import {
|
|
33
33
|
getCfToken2,
|
|
34
34
|
setCfToken2
|
|
35
|
-
} from "./studio-
|
|
35
|
+
} from "./studio-c04nzbby.js";
|
|
36
36
|
import {
|
|
37
37
|
resetModelCache
|
|
38
|
-
} from "./studio-
|
|
38
|
+
} from "./studio-vn5hske5.js";
|
|
39
39
|
import {
|
|
40
40
|
__preload
|
|
41
41
|
} from "./studio-5te5tqng.js";
|
|
@@ -1261,7 +1261,7 @@ async function hostedConnect() {
|
|
|
1261
1261
|
if (outcome?.status === "timeout") {
|
|
1262
1262
|
_error = "The Cloudflare window didn't finish. Sign in there, then reconnect — nothing was changed.";
|
|
1263
1263
|
} else if (outcome?.status === "connected" && !outcome.connection.accountId) {
|
|
1264
|
-
const { openCfAccountPicker } = await (__preload("
|
|
1264
|
+
const { openCfAccountPicker } = await (__preload("nwnwdm6p"), import("./cf-account-picker-nwnwdm6p.js"));
|
|
1265
1265
|
await openCfAccountPicker();
|
|
1266
1266
|
}
|
|
1267
1267
|
} catch (error) {
|
|
@@ -1353,4 +1353,4 @@ function openPublishPanel2() {
|
|
|
1353
1353
|
export { seedPublishConnected2, openPublishPanel2 };
|
|
1354
1354
|
|
|
1355
1355
|
//# debugId=6C5ED8D5F4FBF16B64756E2164756E21
|
|
1356
|
-
//# sourceMappingURL=studio-
|
|
1356
|
+
//# sourceMappingURL=studio-7144epdr.js.map
|