@jxsuite/studio 2.2.2 → 2.4.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/data/css-meta.json +1487 -0
- package/data/elements-meta.json +370 -0
- package/data/html-meta.json +366 -0
- package/data/stylebook-meta.json +200 -0
- package/data/webdata.json +1621 -0
- package/dist/chunks/{Overlay.dev-ymy3et3y.js → Overlay.dev-d2ajy6sj.js} +7 -7
- package/dist/chunks/{content-source-r2n7v682.js → content-source-jrvn5vwy.js} +13 -12
- package/dist/chunks/{convert-to-repeater-cnpyvj74.js → convert-to-repeater-109dwcj7.js} +12 -11
- package/dist/chunks/{extension-sections-vpcm4jvx.js → extension-sections-2zjyty05.js} +17 -16
- package/dist/chunks/{files-zeg88k2d.js → files-jdbtammm.js} +18 -19
- package/dist/chunks/{format-host-taymsw55.js → format-host-kq6963gs.js} +2 -2
- package/dist/chunks/{git-panel-qp4rrwr9.js → git-panel-2stf3ahg.js} +12 -11
- package/dist/chunks/{layers-panel-kj93w2zg.js → layers-panel-a8wjsdjj.js} +15 -14
- package/dist/chunks/{monaco-setup-xy3bs05d.js → monaco-setup-a5wkmbgh.js} +6 -3
- package/dist/chunks/{publish-panel-6qz6kp41.js → publish-panel-2we6smjv.js} +6 -6
- package/dist/chunks/{quick-search-9wwa09hh.js → quick-search-hmpwdgys.js} +19 -18
- package/dist/chunks/right-panel-hn3y3j0j.js +38 -0
- package/dist/chunks/{sp-overlay.dev-h6kdx076.js → sp-overlay.dev-s18hymn9.js} +8 -8
- package/dist/chunks/sp-progress-circle.dev-0zxcyz3r.js +15 -0
- package/dist/chunks/sp-tooltip.dev-5c6d1kjz.js +15 -0
- package/dist/chunks/{studio-753znj4c.js → studio-0evba9z5.js} +5 -5
- package/dist/chunks/{studio-qhh8r5fz.js → studio-102jzb8r.js} +4 -4
- package/dist/chunks/{studio-22xr4q8q.js → studio-1dgqagzz.js} +18 -29
- package/dist/chunks/{studio-6f0am8f2.js → studio-2w11grav.js} +2 -2
- package/dist/chunks/{studio-pv8m0h4a.js → studio-377bbhtz.js} +28 -23
- package/dist/chunks/{studio-6zzbyx17.js → studio-53dn6e6t.js} +2 -2
- package/dist/chunks/studio-53n8bp04.js +16 -0
- package/dist/chunks/{studio-tqemhphj.js → studio-6gcrk1bq.js} +4 -4
- package/dist/chunks/{studio-3z8jjm2p.js → studio-7ejemhej.js} +3 -3
- package/dist/chunks/{studio-nqq8jk8f.js → studio-8x4399kc.js} +14 -14
- package/dist/chunks/{studio-rgwcpast.js → studio-ay8wcr2b.js} +2 -2
- package/dist/chunks/{studio-xmvbhg31.js → studio-c31yb4t6.js} +2 -2
- package/dist/chunks/{studio-5kt960pk.js → studio-ddgrc5hs.js} +133 -147
- package/dist/chunks/{studio-zqv3w24n.js → studio-eqyybj2e.js} +5 -5
- package/dist/chunks/{studio-p471gg5n.js → studio-kvfx9z2c.js} +7 -3
- package/dist/chunks/{studio-8sdyjfd6.js → studio-kwavhmdr.js} +2 -2
- package/dist/chunks/{studio-300zsz1k.js → studio-ky68mp85.js} +6 -6
- package/dist/chunks/{studio-x0et2z9g.js → studio-ng5gbxkj.js} +15 -15
- package/dist/chunks/{studio-hekaagev.js → studio-q07vj7p9.js} +17 -17
- package/dist/chunks/{studio-fys6z73y.js → studio-qd4k0h80.js} +7 -7
- package/dist/chunks/{studio-yphy4z9m.js → studio-rdsvb808.js} +5 -5
- package/dist/chunks/{studio-g8t7g0gp.js → studio-tqr02xaa.js} +3 -3
- package/dist/chunks/{studio-ckwz4d3x.js → studio-twsafr1e.js} +2 -2
- package/dist/chunks/{studio-qrsfh1w7.js → studio-tzx3xmvx.js} +5 -5
- package/dist/chunks/{studio-6a0h7sne.js → studio-vhk5fmfv.js} +2 -2
- package/dist/chunks/{studio-hrajjyt2.js → studio-wdt9y92a.js} +2 -2
- package/dist/chunks/{studio-r8vx7bkz.js → studio-wxthr2x1.js} +14 -13
- package/dist/chunks/{studio-yz9s88s0.js → studio-yk7037sg.js} +40 -14
- package/dist/chunks/{studio-1kgfcv7s.js → studio-yz06mkfj.js} +12 -11
- package/dist/codicon.ttf +0 -0
- package/dist/iframe-entry.js +14 -3
- package/dist/manifest.json +82 -0
- package/dist/studio.js +247 -106
- package/index.html +0 -50
- package/package.json +16 -9
- package/src/canvas/canvas-live-render.ts +2 -4
- package/src/canvas/canvas-origin.ts +25 -0
- package/src/canvas/iframe-entry.ts +5 -0
- package/src/canvas/iframe-host.ts +45 -4
- package/src/content/entry-editor.ts +2 -1
- package/src/editor/context-menu.ts +13 -2
- package/src/editor/slash-menu.ts +26 -11
- package/src/files/files.ts +11 -23
- package/src/grid/grid-panel.ts +27 -6
- package/src/hosting/document.ts +109 -0
- package/src/hosting/layout.ts +211 -0
- package/src/hosting/stage.ts +166 -0
- package/src/hosting/tsconfig.json +18 -0
- package/src/panels/ai-chat/chat-view.ts +25 -14
- package/src/panels/git-panel.ts +17 -14
- package/src/panels/head-panel.ts +32 -14
- package/src/panels/imports-panel.ts +32 -13
- package/src/panels/layers-panel.ts +9 -1
- package/src/panels/panel-registry.ts +0 -1
- package/src/panels/properties-panel.ts +3 -3
- package/src/panels/settings-pane.ts +1 -1
- package/src/panels/style-panel.ts +3 -3
- package/src/panels/stylebook-panel.ts +10 -1
- package/src/panels/toolbar.ts +1 -1
- package/src/platforms/cloud.ts +9 -0
- package/src/services/ai-models.ts +14 -1
- package/src/services/bundle-base.ts +69 -0
- package/src/services/monaco-setup.ts +19 -13
- package/src/shell/tree.ts +155 -0
- package/src/shell.ts +0 -2
- package/src/studio.ts +22 -2
- package/src/types.ts +32 -0
- package/src/ui/ai-managed-connect.ts +18 -3
- package/src/ui/regions.ts +10 -45
- package/styles/overlays.css +35 -0
- package/styles/shell.css +7 -0
- package/dist/chunks/2020-xp8vnwma.js.map +0 -24
- package/dist/chunks/Overlay.dev-ymy3et3y.js.map +0 -9
- package/dist/chunks/adapter-jkcyhgtr.js.map +0 -9
- package/dist/chunks/cf-settings-g5fbf2zp.js.map +0 -9
- package/dist/chunks/components-z6cnkyy1.js.map +0 -9
- package/dist/chunks/content-source-r2n7v682.js.map +0 -9
- package/dist/chunks/convert-to-repeater-cnpyvj74.js.map +0 -10
- package/dist/chunks/editor-cptq5jp1.js.map +0 -9
- package/dist/chunks/extension-sections-vpcm4jvx.js.map +0 -11
- package/dist/chunks/files-zeg88k2d.js.map +0 -9
- package/dist/chunks/flow-qbfgrpeh.js.map +0 -12
- package/dist/chunks/focus-trap.esm-ggawf1hy.js.map +0 -11
- package/dist/chunks/focus-visible-6eg70z18.js.map +0 -10
- package/dist/chunks/format-host-taymsw55.js.map +0 -9
- package/dist/chunks/git-panel-qp4rrwr9.js.map +0 -9
- package/dist/chunks/index-nj44jpzj.js.map +0 -14
- package/dist/chunks/index-zqxmqxmh.js.map +0 -9
- package/dist/chunks/javascript-q8kpmfah.js.map +0 -11
- package/dist/chunks/jsonMode-dkr040ga.js.map +0 -18
- package/dist/chunks/jx-validate-jj9rnt4n.js.map +0 -9
- package/dist/chunks/layers-panel-kj93w2zg.js.map +0 -9
- package/dist/chunks/monaco-binding-rj6xpx9y.js.map +0 -10
- package/dist/chunks/monaco-setup-xy3bs05d.js.map +0 -15
- package/dist/chunks/publish-panel-6qz6kp41.js.map +0 -9
- package/dist/chunks/quick-search-9wwa09hh.js.map +0 -9
- package/dist/chunks/right-panel-faf816ch.js +0 -37
- package/dist/chunks/right-panel-faf816ch.js.map +0 -9
- package/dist/chunks/section-registry-sx1ykvkw.js.map +0 -9
- package/dist/chunks/sp-overlay.dev-h6kdx076.js.map +0 -9
- package/dist/chunks/sp-popover.dev-dj9x7e7a.js.map +0 -9
- package/dist/chunks/sp-progress-circle.dev-0fpvhm52.js +0 -15
- package/dist/chunks/sp-progress-circle.dev-0fpvhm52.js.map +0 -9
- package/dist/chunks/sp-tooltip.dev-rvepkw4r.js +0 -15
- package/dist/chunks/sp-tooltip.dev-rvepkw4r.js.map +0 -9
- package/dist/chunks/sp-tray.dev-64v4pxw8.js.map +0 -12
- package/dist/chunks/studio-0a5qrh01.js.map +0 -9
- package/dist/chunks/studio-0rqqhrdy.js.map +0 -12
- package/dist/chunks/studio-18j3bmcz.js.map +0 -10
- package/dist/chunks/studio-1kgfcv7s.js.map +0 -13
- package/dist/chunks/studio-22xr4q8q.js.map +0 -13
- package/dist/chunks/studio-300zsz1k.js.map +0 -39
- package/dist/chunks/studio-3fk1ac9z.js.map +0 -12
- package/dist/chunks/studio-3n4ndrzh.js.map +0 -41
- package/dist/chunks/studio-3z8jjm2p.js.map +0 -13
- package/dist/chunks/studio-4mqb9a0j.js.map +0 -14
- package/dist/chunks/studio-4q0wznzf.js.map +0 -73
- package/dist/chunks/studio-5ehhackm.js.map +0 -10
- package/dist/chunks/studio-5kt960pk.js.map +0 -38
- package/dist/chunks/studio-5x5774ak.js.map +0 -10
- package/dist/chunks/studio-685s0ytq.js.map +0 -76
- package/dist/chunks/studio-6a0h7sne.js.map +0 -15
- package/dist/chunks/studio-6f0am8f2.js.map +0 -10
- package/dist/chunks/studio-6kv3apa9.js.map +0 -10
- package/dist/chunks/studio-6zzbyx17.js.map +0 -12
- package/dist/chunks/studio-753znj4c.js.map +0 -16
- package/dist/chunks/studio-7afd21nw.js.map +0 -10
- package/dist/chunks/studio-8jpzqk5s.js.map +0 -10
- package/dist/chunks/studio-8q517dfr.js.map +0 -10
- package/dist/chunks/studio-8sdyjfd6.js.map +0 -10
- package/dist/chunks/studio-a0tswy0w.js.map +0 -9
- package/dist/chunks/studio-a7pzveq1.js.map +0 -11
- package/dist/chunks/studio-ahnzd9rg.js.map +0 -10
- package/dist/chunks/studio-b9b6t1dg.js.map +0 -651
- package/dist/chunks/studio-bw5dz6km.js.map +0 -21
- package/dist/chunks/studio-cjm7fdjf.js.map +0 -14
- package/dist/chunks/studio-ckwz4d3x.js.map +0 -12
- package/dist/chunks/studio-d1ks410h.js.map +0 -10
- package/dist/chunks/studio-dg7zyt5x.js.map +0 -10
- package/dist/chunks/studio-fys6z73y.js.map +0 -10
- package/dist/chunks/studio-g1wdche0.js.map +0 -56
- package/dist/chunks/studio-g8t7g0gp.js.map +0 -10
- package/dist/chunks/studio-h4rxscfc.js.map +0 -10
- package/dist/chunks/studio-hekaagev.js.map +0 -18
- package/dist/chunks/studio-hrajjyt2.js.map +0 -10
- package/dist/chunks/studio-nqq8jk8f.js.map +0 -14
- package/dist/chunks/studio-p471gg5n.js.map +0 -14
- package/dist/chunks/studio-pv8m0h4a.js.map +0 -98
- package/dist/chunks/studio-qhh8r5fz.js.map +0 -13
- package/dist/chunks/studio-qrsfh1w7.js.map +0 -41
- package/dist/chunks/studio-r8vx7bkz.js.map +0 -235
- package/dist/chunks/studio-rgwcpast.js.map +0 -12
- package/dist/chunks/studio-s519zc99.js.map +0 -10
- package/dist/chunks/studio-sas7mt3k.js.map +0 -10
- package/dist/chunks/studio-t5wqwzdh.js.map +0 -10
- package/dist/chunks/studio-tqemhphj.js.map +0 -11
- package/dist/chunks/studio-tr20m8g8.js.map +0 -9
- package/dist/chunks/studio-tvgyw9xw.js.map +0 -14
- package/dist/chunks/studio-x0et2z9g.js.map +0 -32
- package/dist/chunks/studio-xm3dbxvn.js.map +0 -19
- package/dist/chunks/studio-xmvbhg31.js.map +0 -10
- package/dist/chunks/studio-ynxwkrzd.js.map +0 -246
- package/dist/chunks/studio-yphy4z9m.js.map +0 -10
- package/dist/chunks/studio-yz9s88s0.js.map +0 -54
- package/dist/chunks/studio-z6nw2ek2.js.map +0 -10
- package/dist/chunks/studio-zqv3w24n.js.map +0 -11
- package/dist/chunks/tsMode-76kr53q0.js.map +0 -13
- package/dist/chunks/ws-client-6shc5rze.js.map +0 -12
package/dist/studio.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
seedPublishConnected
|
|
3
|
-
} from "./chunks/studio-
|
|
4
|
-
import"./chunks/studio-
|
|
3
|
+
} from "./chunks/studio-tqr02xaa.js";
|
|
4
|
+
import"./chunks/studio-wdt9y92a.js";
|
|
5
5
|
import {
|
|
6
6
|
ElementResolutionController,
|
|
7
7
|
FocusVisiblePolyfillMixin,
|
|
@@ -20,10 +20,10 @@ import {
|
|
|
20
20
|
isIPhone,
|
|
21
21
|
isWebKit,
|
|
22
22
|
randomID
|
|
23
|
-
} from "./chunks/studio-
|
|
23
|
+
} from "./chunks/studio-tzx3xmvx.js";
|
|
24
24
|
import {
|
|
25
25
|
DependencyManagerController
|
|
26
|
-
} from "./chunks/studio-
|
|
26
|
+
} from "./chunks/studio-7ejemhej.js";
|
|
27
27
|
import {
|
|
28
28
|
Popover
|
|
29
29
|
} from "./chunks/studio-3fk1ac9z.js";
|
|
@@ -31,12 +31,12 @@ import {
|
|
|
31
31
|
LanguageResolutionController,
|
|
32
32
|
ProgressCircle,
|
|
33
33
|
languageResolverUpdatedSymbol
|
|
34
|
-
} from "./chunks/studio-
|
|
34
|
+
} from "./chunks/studio-vhk5fmfv.js";
|
|
35
35
|
import"./chunks/studio-ahnzd9rg.js";
|
|
36
36
|
import {
|
|
37
37
|
until,
|
|
38
38
|
when
|
|
39
|
-
} from "./chunks/studio-
|
|
39
|
+
} from "./chunks/studio-ay8wcr2b.js";
|
|
40
40
|
import {
|
|
41
41
|
IS_MOBILE,
|
|
42
42
|
IS_TOUCH_DEVICE,
|
|
@@ -67,7 +67,7 @@ import {
|
|
|
67
67
|
registerStyleCommands,
|
|
68
68
|
render as render3,
|
|
69
69
|
setInspectorTab
|
|
70
|
-
} from "./chunks/studio-
|
|
70
|
+
} from "./chunks/studio-8x4399kc.js";
|
|
71
71
|
import {
|
|
72
72
|
CommandUnavailableError,
|
|
73
73
|
chordFromEvent,
|
|
@@ -99,7 +99,7 @@ import {
|
|
|
99
99
|
showSlashMenu,
|
|
100
100
|
showSlashMenuAtRect,
|
|
101
101
|
suppressBlockActionBar
|
|
102
|
-
} from "./chunks/studio-
|
|
102
|
+
} from "./chunks/studio-377bbhtz.js";
|
|
103
103
|
import {
|
|
104
104
|
addableContexts,
|
|
105
105
|
defaultCommands,
|
|
@@ -111,7 +111,7 @@ import {
|
|
|
111
111
|
tokenLabel,
|
|
112
112
|
transposeStylebookStyle,
|
|
113
113
|
writeTokenOverride
|
|
114
|
-
} from "./chunks/studio-
|
|
114
|
+
} from "./chunks/studio-yz06mkfj.js";
|
|
115
115
|
import {
|
|
116
116
|
DERIVE_PRESETS,
|
|
117
117
|
JxColorPopover,
|
|
@@ -144,7 +144,7 @@ import {
|
|
|
144
144
|
spNumberField,
|
|
145
145
|
spTextArea,
|
|
146
146
|
spTextField
|
|
147
|
-
} from "./chunks/studio-
|
|
147
|
+
} from "./chunks/studio-ng5gbxkj.js";
|
|
148
148
|
import {
|
|
149
149
|
LitElement,
|
|
150
150
|
css
|
|
@@ -160,7 +160,7 @@ import {
|
|
|
160
160
|
import {
|
|
161
161
|
initQuickSearch,
|
|
162
162
|
openQuickSearch
|
|
163
|
-
} from "./chunks/studio-
|
|
163
|
+
} from "./chunks/studio-qd4k0h80.js";
|
|
164
164
|
import {
|
|
165
165
|
addRecentProject,
|
|
166
166
|
clearRecentProjects,
|
|
@@ -186,12 +186,11 @@ import {
|
|
|
186
186
|
reloadFileInTab,
|
|
187
187
|
removeRecentProject,
|
|
188
188
|
renderFilesTemplate,
|
|
189
|
-
seedEntry
|
|
190
|
-
|
|
191
|
-
} from "./chunks/studio-22xr4q8q.js";
|
|
189
|
+
seedEntry
|
|
190
|
+
} from "./chunks/studio-1dgqagzz.js";
|
|
192
191
|
import {
|
|
193
192
|
computeWindow
|
|
194
|
-
} from "./chunks/studio-
|
|
193
|
+
} from "./chunks/studio-kwavhmdr.js";
|
|
195
194
|
import {
|
|
196
195
|
autoSyncProjectOnOpen,
|
|
197
196
|
cleanupGitPanel,
|
|
@@ -212,13 +211,13 @@ import {
|
|
|
212
211
|
registerSourceControlCommands,
|
|
213
212
|
renderGitPanel,
|
|
214
213
|
stripRange
|
|
215
|
-
} from "./chunks/studio-
|
|
214
|
+
} from "./chunks/studio-q07vj7p9.js";
|
|
216
215
|
import {
|
|
217
216
|
createPanelScheduler
|
|
218
217
|
} from "./chunks/studio-8jpzqk5s.js";
|
|
219
218
|
import {
|
|
220
219
|
selectContributedEntry
|
|
221
|
-
} from "./chunks/studio-
|
|
220
|
+
} from "./chunks/studio-rdsvb808.js";
|
|
222
221
|
import {
|
|
223
222
|
notifySettingsDocument,
|
|
224
223
|
onSettingsDocumentChanged,
|
|
@@ -239,7 +238,7 @@ import {
|
|
|
239
238
|
renderForm,
|
|
240
239
|
renderProvenanceChip,
|
|
241
240
|
resolveContextPointer
|
|
242
|
-
} from "./chunks/studio-
|
|
241
|
+
} from "./chunks/studio-ky68mp85.js";
|
|
243
242
|
import {
|
|
244
243
|
validateDoc,
|
|
245
244
|
validateProjectConfig
|
|
@@ -264,10 +263,10 @@ import {
|
|
|
264
263
|
registerGridCommands,
|
|
265
264
|
scanLibrary,
|
|
266
265
|
uploadDirForCategory
|
|
267
|
-
} from "./chunks/studio-
|
|
266
|
+
} from "./chunks/studio-0evba9z5.js";
|
|
268
267
|
import {
|
|
269
268
|
live
|
|
270
|
-
} from "./chunks/studio-
|
|
269
|
+
} from "./chunks/studio-c31yb4t6.js";
|
|
271
270
|
import {
|
|
272
271
|
negotiateCollab
|
|
273
272
|
} from "./chunks/studio-dg7zyt5x.js";
|
|
@@ -308,8 +307,8 @@ import {
|
|
|
308
307
|
setIncludeDrafts,
|
|
309
308
|
startFsSync,
|
|
310
309
|
writesForTurn
|
|
311
|
-
} from "./chunks/studio-
|
|
312
|
-
import"./chunks/studio-
|
|
310
|
+
} from "./chunks/studio-wxthr2x1.js";
|
|
311
|
+
import"./chunks/studio-2w11grav.js";
|
|
313
312
|
import"./chunks/studio-bw5dz6km.js";
|
|
314
313
|
import {
|
|
315
314
|
UPLOAD_ACCEPT,
|
|
@@ -317,18 +316,18 @@ import {
|
|
|
317
316
|
isImage,
|
|
318
317
|
setMediaChangedHandler,
|
|
319
318
|
uploadAssets
|
|
320
|
-
} from "./chunks/studio-
|
|
319
|
+
} from "./chunks/studio-102jzb8r.js";
|
|
321
320
|
import {
|
|
322
321
|
beginActivity,
|
|
323
322
|
registerActivityPanel,
|
|
324
323
|
showProgressModal
|
|
325
|
-
} from "./chunks/studio-
|
|
324
|
+
} from "./chunks/studio-eqyybj2e.js";
|
|
326
325
|
import {
|
|
327
326
|
currentDeploy,
|
|
328
327
|
latestDeployment,
|
|
329
328
|
noteDeployment,
|
|
330
329
|
platformSupportsPublish
|
|
331
|
-
} from "./chunks/studio-
|
|
330
|
+
} from "./chunks/studio-53dn6e6t.js";
|
|
332
331
|
import {
|
|
333
332
|
CATEGORIES,
|
|
334
333
|
SPAN_FULL_RENDER,
|
|
@@ -440,7 +439,7 @@ import {
|
|
|
440
439
|
timeSpan,
|
|
441
440
|
timeSpanAsync,
|
|
442
441
|
updateActivePanelHeaders
|
|
443
|
-
} from "./chunks/studio-
|
|
442
|
+
} from "./chunks/studio-yk7037sg.js";
|
|
444
443
|
import {
|
|
445
444
|
BOTTOM_TAB_IDS,
|
|
446
445
|
BUFFER_COMMIT,
|
|
@@ -607,19 +606,21 @@ import {
|
|
|
607
606
|
updateSiteConfig,
|
|
608
607
|
view,
|
|
609
608
|
workspace
|
|
610
|
-
} from "./chunks/studio-
|
|
609
|
+
} from "./chunks/studio-ddgrc5hs.js";
|
|
611
610
|
import {
|
|
612
611
|
classMap,
|
|
613
612
|
ifDefined,
|
|
614
613
|
styleMap
|
|
615
|
-
} from "./chunks/studio-
|
|
614
|
+
} from "./chunks/studio-twsafr1e.js";
|
|
616
615
|
import {
|
|
617
616
|
AsyncDirective,
|
|
617
|
+
Directive,
|
|
618
618
|
PartType,
|
|
619
|
+
createRef,
|
|
619
620
|
directive,
|
|
620
621
|
ref,
|
|
621
622
|
repeat
|
|
622
|
-
} from "./chunks/studio-
|
|
623
|
+
} from "./chunks/studio-kvfx9z2c.js";
|
|
623
624
|
import {
|
|
624
625
|
html,
|
|
625
626
|
noChange,
|
|
@@ -668,7 +669,7 @@ import {
|
|
|
668
669
|
mountStillWanted,
|
|
669
670
|
refreshExtensionUi,
|
|
670
671
|
refreshFormats
|
|
671
|
-
} from "./chunks/studio-
|
|
672
|
+
} from "./chunks/studio-6gcrk1bq.js";
|
|
672
673
|
import {
|
|
673
674
|
getPlatform,
|
|
674
675
|
hasPlatform,
|
|
@@ -682,6 +683,9 @@ import {
|
|
|
682
683
|
} from "./chunks/studio-h4rxscfc.js";
|
|
683
684
|
import"./chunks/studio-t5wqwzdh.js";
|
|
684
685
|
import"./chunks/studio-tr20m8g8.js";
|
|
686
|
+
import {
|
|
687
|
+
setBundleBase
|
|
688
|
+
} from "./chunks/studio-53n8bp04.js";
|
|
685
689
|
import {
|
|
686
690
|
__require
|
|
687
691
|
} from "./chunks/studio-a0tswy0w.js";
|
|
@@ -729,6 +733,32 @@ function attachCursorStyles(awareness, doc) {
|
|
|
729
733
|
};
|
|
730
734
|
}
|
|
731
735
|
|
|
736
|
+
// ../../node_modules/lit-html/development/directives/guard.js
|
|
737
|
+
var initialValue = {};
|
|
738
|
+
|
|
739
|
+
class GuardDirective extends Directive {
|
|
740
|
+
constructor() {
|
|
741
|
+
super(...arguments);
|
|
742
|
+
this._previousValue = initialValue;
|
|
743
|
+
}
|
|
744
|
+
render(_value, f) {
|
|
745
|
+
return f();
|
|
746
|
+
}
|
|
747
|
+
update(_part, [value, f]) {
|
|
748
|
+
if (Array.isArray(value)) {
|
|
749
|
+
if (Array.isArray(this._previousValue) && this._previousValue.length === value.length && value.every((v, i) => v === this._previousValue[i])) {
|
|
750
|
+
return noChange;
|
|
751
|
+
}
|
|
752
|
+
} else if (this._previousValue === value) {
|
|
753
|
+
return noChange;
|
|
754
|
+
}
|
|
755
|
+
this._previousValue = Array.isArray(value) ? Array.from(value) : value;
|
|
756
|
+
const r = this.render(value, f);
|
|
757
|
+
return r;
|
|
758
|
+
}
|
|
759
|
+
}
|
|
760
|
+
var guard = directive(GuardDirective);
|
|
761
|
+
|
|
732
762
|
// ../../node_modules/tabulator-tables/dist/js/tabulator_esm.mjs
|
|
733
763
|
class CoreFeature {
|
|
734
764
|
constructor(table) {
|
|
@@ -3706,11 +3736,11 @@ var Edit$1 = class Edit {
|
|
|
3706
3736
|
}
|
|
3707
3737
|
_deprecatedOptionsCheck() {}
|
|
3708
3738
|
_initializeValue() {
|
|
3709
|
-
var
|
|
3710
|
-
if (typeof
|
|
3711
|
-
|
|
3739
|
+
var initialValue2 = this.cell.getValue();
|
|
3740
|
+
if (typeof initialValue2 === "undefined" && typeof this.params.defaultValue !== "undefined") {
|
|
3741
|
+
initialValue2 = this.params.defaultValue;
|
|
3712
3742
|
}
|
|
3713
|
-
this.initialValues = this.params.multiselect ?
|
|
3743
|
+
this.initialValues = this.params.multiselect ? initialValue2 : [initialValue2];
|
|
3714
3744
|
if (this.isFilter) {
|
|
3715
3745
|
this.input.value = this.initialValues ? this.initialValues.join(",") : "";
|
|
3716
3746
|
this.headerFilterInitialListGen();
|
|
@@ -4452,7 +4482,7 @@ var Edit$1 = class Edit {
|
|
|
4452
4482
|
this._focusItem(item);
|
|
4453
4483
|
}
|
|
4454
4484
|
_resolveValue(blur) {
|
|
4455
|
-
var output,
|
|
4485
|
+
var output, initialValue2;
|
|
4456
4486
|
if (this.popup) {
|
|
4457
4487
|
this.popup.hide(true);
|
|
4458
4488
|
}
|
|
@@ -4472,9 +4502,9 @@ var Edit$1 = class Edit {
|
|
|
4472
4502
|
} else if (this.isFilter && this.focusedItem && this.focusedItem.selected) {
|
|
4473
4503
|
output = this.focusedItem.value;
|
|
4474
4504
|
} else {
|
|
4475
|
-
|
|
4476
|
-
if (
|
|
4477
|
-
output =
|
|
4505
|
+
initialValue2 = Array.isArray(this.initialValues) ? this.initialValues[0] : this.initialValues;
|
|
4506
|
+
if (initialValue2 === null || typeof initialValue2 === "undefined" || initialValue2 === "") {
|
|
4507
|
+
output = initialValue2;
|
|
4478
4508
|
} else {
|
|
4479
4509
|
output = this.params.emptyValue;
|
|
4480
4510
|
}
|
|
@@ -6255,9 +6285,9 @@ class Filter extends Module {
|
|
|
6255
6285
|
};
|
|
6256
6286
|
this.generateHeaderFilterElement(column);
|
|
6257
6287
|
}
|
|
6258
|
-
generateHeaderFilterElement(column,
|
|
6288
|
+
generateHeaderFilterElement(column, initialValue2, reinitialize) {
|
|
6259
6289
|
var self = this, success = column.modules.filter.success, field = column.getField(), filterElement, editor, editorElement, cellWrapper, typingTimer, searchTrigger, params, onRenderedCallback;
|
|
6260
|
-
column.modules.filter.value =
|
|
6290
|
+
column.modules.filter.value = initialValue2;
|
|
6261
6291
|
function cancel() {}
|
|
6262
6292
|
function onRendered(callback) {
|
|
6263
6293
|
onRenderedCallback = callback;
|
|
@@ -6307,7 +6337,7 @@ class Filter extends Module {
|
|
|
6307
6337
|
if (editor) {
|
|
6308
6338
|
cellWrapper = {
|
|
6309
6339
|
getValue: function() {
|
|
6310
|
-
return typeof
|
|
6340
|
+
return typeof initialValue2 !== "undefined" ? initialValue2 : "";
|
|
6311
6341
|
},
|
|
6312
6342
|
getField: function() {
|
|
6313
6343
|
return column.definition.field;
|
|
@@ -13522,8 +13552,8 @@ class InternalEventBus {
|
|
|
13522
13552
|
subscribed(key) {
|
|
13523
13553
|
return this.events[key] && this.events[key].length;
|
|
13524
13554
|
}
|
|
13525
|
-
_chain(key, args,
|
|
13526
|
-
var value =
|
|
13555
|
+
_chain(key, args, initialValue2, fallback) {
|
|
13556
|
+
var value = initialValue2;
|
|
13527
13557
|
if (!Array.isArray(args)) {
|
|
13528
13558
|
args = [args];
|
|
13529
13559
|
}
|
|
@@ -15759,7 +15789,7 @@ function toolbarTpl(controller, panel) {
|
|
|
15759
15789
|
size="s"
|
|
15760
15790
|
quiet
|
|
15761
15791
|
placeholder="Filter rows"
|
|
15762
|
-
.value=${layout?.filter ?? ""}
|
|
15792
|
+
.value=${live(layout?.filter ?? "")}
|
|
15763
15793
|
@input=${(e) => {
|
|
15764
15794
|
const term = e.target.value;
|
|
15765
15795
|
saveGridLayout(gridId, { filter: term });
|
|
@@ -16055,7 +16085,10 @@ function shellTpl(controller, panel, onHost) {
|
|
|
16055
16085
|
return html`
|
|
16056
16086
|
<div class="jx-grid">
|
|
16057
16087
|
${toolbarTpl(controller, panel)}
|
|
16058
|
-
|
|
16088
|
+
${guard([controller.source.id], () => html`<div
|
|
16089
|
+
class="jx-grid-host"
|
|
16090
|
+
${ref((el) => onHost(el))}
|
|
16091
|
+
></div>`)}
|
|
16059
16092
|
</div>
|
|
16060
16093
|
`;
|
|
16061
16094
|
}
|
|
@@ -16076,12 +16109,12 @@ function renderGridMode(surface, tab) {
|
|
|
16076
16109
|
}
|
|
16077
16110
|
const scope = effectScope();
|
|
16078
16111
|
const local = reactive({ views: 0 });
|
|
16079
|
-
const
|
|
16112
|
+
const engine = controller;
|
|
16080
16113
|
let hostEl = null;
|
|
16081
16114
|
const panel = {
|
|
16082
16115
|
applyLayout(layout) {
|
|
16083
|
-
|
|
16084
|
-
|
|
16116
|
+
engine.setSort(layout?.sort ?? null);
|
|
16117
|
+
engine.setGrouping(layout?.groupBy ?? null);
|
|
16085
16118
|
panel.remount();
|
|
16086
16119
|
panel.view?.setSearch(layout?.filter ?? "");
|
|
16087
16120
|
panel.bump();
|
|
@@ -16091,7 +16124,7 @@ function renderGridMode(surface, tab) {
|
|
|
16091
16124
|
},
|
|
16092
16125
|
remount() {
|
|
16093
16126
|
panel.view?.destroy();
|
|
16094
|
-
panel.view = hostEl ? createGridView(hostEl,
|
|
16127
|
+
panel.view = hostEl ? createGridView(hostEl, engine) : null;
|
|
16095
16128
|
},
|
|
16096
16129
|
paneId,
|
|
16097
16130
|
scope,
|
|
@@ -16774,7 +16807,7 @@ function entryIdsFor(collection) {
|
|
|
16774
16807
|
if (known) {
|
|
16775
16808
|
return known;
|
|
16776
16809
|
}
|
|
16777
|
-
const pending = import("./chunks/content-source-
|
|
16810
|
+
const pending = import("./chunks/content-source-jrvn5vwy.js").then((m) => m.listCollectionEntryIds(collection));
|
|
16778
16811
|
entryIdCache.set(collection, pending);
|
|
16779
16812
|
return pending;
|
|
16780
16813
|
}
|
|
@@ -16954,7 +16987,7 @@ function headerTpl(tab, collection) {
|
|
|
16954
16987
|
<sp-switch
|
|
16955
16988
|
size="s"
|
|
16956
16989
|
class="entry-draft-switch"
|
|
16957
|
-
|
|
16990
|
+
.checked=${live(draft)}
|
|
16958
16991
|
title=${DRAFT_MEANING}
|
|
16959
16992
|
@change=${(e) => setEntryDraft(tab, e.target.checked)}
|
|
16960
16993
|
>Draft</sp-switch
|
|
@@ -17035,7 +17068,7 @@ function renderEntryMode(surface, tab) {
|
|
|
17035
17068
|
});
|
|
17036
17069
|
}
|
|
17037
17070
|
async function openEntryEditor(path) {
|
|
17038
|
-
const { openFileInTab: openFileInTab2 } = await import("./chunks/files-
|
|
17071
|
+
const { openFileInTab: openFileInTab2 } = await import("./chunks/files-jdbtammm.js");
|
|
17039
17072
|
await openFileInTab2(path);
|
|
17040
17073
|
for (const [id, tab] of workspace.tabs.entries()) {
|
|
17041
17074
|
if (tab.documentPath !== path) {
|
|
@@ -17096,7 +17129,7 @@ async function createEntry(collectionName) {
|
|
|
17096
17129
|
});
|
|
17097
17130
|
return null;
|
|
17098
17131
|
}
|
|
17099
|
-
const { createFileIn: createFileIn2 } = await import("./chunks/files-
|
|
17132
|
+
const { createFileIn: createFileIn2 } = await import("./chunks/files-jdbtammm.js");
|
|
17100
17133
|
const created = await createFileIn2({
|
|
17101
17134
|
content,
|
|
17102
17135
|
dir: collection.dir,
|
|
@@ -19531,6 +19564,9 @@ function cleanupGoogleFontPreconnects(head) {
|
|
|
19531
19564
|
}
|
|
19532
19565
|
|
|
19533
19566
|
// src/panels/head-panel.ts
|
|
19567
|
+
var _addTag = createRef();
|
|
19568
|
+
var _addAttr = createRef();
|
|
19569
|
+
var _addVal = createRef();
|
|
19534
19570
|
var layoutEntries = null;
|
|
19535
19571
|
async function loadLayoutEntries() {
|
|
19536
19572
|
try {
|
|
@@ -20033,7 +20069,7 @@ function renderHeadTemplate({
|
|
|
20033
20069
|
|
|
20034
20070
|
<!-- Add custom tag form -->
|
|
20035
20071
|
<div class="head-add-form">
|
|
20036
|
-
<sp-picker size="s" label="Tag" class="head-add-tag"
|
|
20072
|
+
<sp-picker size="s" label="Tag" class="head-add-tag" ${ref(_addTag)}>
|
|
20037
20073
|
<sp-menu-item value="meta">meta</sp-menu-item>
|
|
20038
20074
|
<sp-menu-item value="link">link</sp-menu-item>
|
|
20039
20075
|
<sp-menu-item value="script">script</sp-menu-item>
|
|
@@ -20042,28 +20078,30 @@ function renderHeadTemplate({
|
|
|
20042
20078
|
placeholder="Attribute (e.g. name)"
|
|
20043
20079
|
size="s"
|
|
20044
20080
|
class="head-add-attr"
|
|
20081
|
+
${ref(_addAttr)}
|
|
20082
|
+
></sp-textfield>
|
|
20083
|
+
<sp-textfield
|
|
20084
|
+
placeholder="Value"
|
|
20085
|
+
size="s"
|
|
20086
|
+
class="head-add-val"
|
|
20087
|
+
${ref(_addVal)}
|
|
20045
20088
|
></sp-textfield>
|
|
20046
|
-
<sp-textfield placeholder="Value" size="s" class="head-add-val"></sp-textfield>
|
|
20047
20089
|
<sp-action-button
|
|
20048
20090
|
quiet
|
|
20049
20091
|
size="xs"
|
|
20050
20092
|
title="Add tag"
|
|
20051
|
-
@click=${(
|
|
20052
|
-
const
|
|
20053
|
-
const
|
|
20054
|
-
const
|
|
20055
|
-
const valField = form?.querySelector(".head-add-val");
|
|
20056
|
-
const tagName = tagPicker?.value || "meta";
|
|
20057
|
-
const attrKey = attrField?.value?.trim();
|
|
20058
|
-
const attrVal = valField?.value?.trim();
|
|
20093
|
+
@click=${() => {
|
|
20094
|
+
const tagName = _addTag.value?.value || "meta";
|
|
20095
|
+
const attrKey = _addAttr.value?.value?.trim();
|
|
20096
|
+
const attrVal = _addVal.value?.value?.trim();
|
|
20059
20097
|
if (!attrKey || !attrVal) {
|
|
20060
20098
|
return;
|
|
20061
20099
|
}
|
|
20062
|
-
if (
|
|
20063
|
-
|
|
20100
|
+
if (_addAttr.value) {
|
|
20101
|
+
_addAttr.value.value = "";
|
|
20064
20102
|
}
|
|
20065
|
-
if (
|
|
20066
|
-
|
|
20103
|
+
if (_addVal.value) {
|
|
20104
|
+
_addVal.value.value = "";
|
|
20067
20105
|
}
|
|
20068
20106
|
const entry = { attributes: {}, tagName };
|
|
20069
20107
|
if (tagName === "meta") {
|
|
@@ -21932,6 +21970,8 @@ function registerI18nPanel() {
|
|
|
21932
21970
|
}
|
|
21933
21971
|
|
|
21934
21972
|
// src/panels/imports-panel.ts
|
|
21973
|
+
var _addName = createRef();
|
|
21974
|
+
var _addPath = createRef();
|
|
21935
21975
|
function groupByPackage() {
|
|
21936
21976
|
const groups = new Map;
|
|
21937
21977
|
for (const comp of componentRegistry) {
|
|
@@ -22002,23 +22042,34 @@ function renderSiteLevelImports(renderLeftPanel) {
|
|
|
22002
22042
|
message: "Imported modules give this project extra kinds of data — " + "a content collection, a CMS, an API client. Name one below."
|
|
22003
22043
|
})}
|
|
22004
22044
|
<div class="import-add-form">
|
|
22005
|
-
<sp-textfield
|
|
22006
|
-
|
|
22045
|
+
<sp-textfield
|
|
22046
|
+
placeholder="Name"
|
|
22047
|
+
size="s"
|
|
22048
|
+
class="import-add-name"
|
|
22049
|
+
${ref(_addName)}
|
|
22050
|
+
></sp-textfield>
|
|
22051
|
+
<sp-textfield
|
|
22052
|
+
placeholder="Path"
|
|
22053
|
+
size="s"
|
|
22054
|
+
class="import-add-path"
|
|
22055
|
+
${ref(_addPath)}
|
|
22056
|
+
></sp-textfield>
|
|
22007
22057
|
<sp-action-button
|
|
22008
22058
|
quiet
|
|
22009
22059
|
size="xs"
|
|
22010
22060
|
title="Add import"
|
|
22011
|
-
@click=${async (
|
|
22012
|
-
const
|
|
22013
|
-
const
|
|
22014
|
-
const pathField = form?.querySelector(".import-add-path");
|
|
22015
|
-
const name = nameField?.value?.trim();
|
|
22016
|
-
const path = pathField?.value?.trim();
|
|
22061
|
+
@click=${async () => {
|
|
22062
|
+
const name = _addName.value?.value?.trim();
|
|
22063
|
+
const path = _addPath.value?.value?.trim();
|
|
22017
22064
|
if (!name || !path) {
|
|
22018
22065
|
return;
|
|
22019
22066
|
}
|
|
22020
|
-
|
|
22021
|
-
|
|
22067
|
+
if (_addName.value) {
|
|
22068
|
+
_addName.value.value = "";
|
|
22069
|
+
}
|
|
22070
|
+
if (_addPath.value) {
|
|
22071
|
+
_addPath.value.value = "";
|
|
22072
|
+
}
|
|
22022
22073
|
const updated = { ...siteImports, [name]: path };
|
|
22023
22074
|
await updateSiteConfig({ imports: updated });
|
|
22024
22075
|
renderLeftPanel();
|
|
@@ -22159,9 +22210,9 @@ function renderDocumentLevelImports({
|
|
|
22159
22210
|
const importedRefs = new Set(refEntries.map((e) => e.$ref));
|
|
22160
22211
|
const availableComponents = componentRegistry.filter((c) => c.source !== "npm" && c.path != null && !importedRefs.has(`./${c.path}`) && !importedRefs.has(c.path));
|
|
22161
22212
|
const packageGroups = groupByPackage();
|
|
22162
|
-
const removeRef = (
|
|
22213
|
+
const removeRef = (elementRef) => {
|
|
22163
22214
|
applyMutation((doc) => {
|
|
22164
|
-
doc.$elements = removeElementRef(doc.$elements ?? [],
|
|
22215
|
+
doc.$elements = removeElementRef(doc.$elements ?? [], elementRef);
|
|
22165
22216
|
});
|
|
22166
22217
|
renderLeftPanel();
|
|
22167
22218
|
};
|
|
@@ -22298,7 +22349,7 @@ function groupProblems(records = problems) {
|
|
|
22298
22349
|
return groups;
|
|
22299
22350
|
}
|
|
22300
22351
|
function openProblemPath(path) {
|
|
22301
|
-
import("./chunks/files-
|
|
22352
|
+
import("./chunks/files-jdbtammm.js").then((m) => m.openFileInTab(path));
|
|
22302
22353
|
}
|
|
22303
22354
|
function actionTpl(record) {
|
|
22304
22355
|
const id = record.action;
|
|
@@ -27213,6 +27264,7 @@ var cache2 = null;
|
|
|
27213
27264
|
var proxyConfigured = false;
|
|
27214
27265
|
var proxyManaged = false;
|
|
27215
27266
|
var proxyDefaultModel = "";
|
|
27267
|
+
var proxyCode;
|
|
27216
27268
|
var proxyProbe = null;
|
|
27217
27269
|
var probeListeners = new Set;
|
|
27218
27270
|
function invalidateModelCache() {
|
|
@@ -27220,6 +27272,7 @@ function invalidateModelCache() {
|
|
|
27220
27272
|
proxyConfigured = false;
|
|
27221
27273
|
proxyManaged = false;
|
|
27222
27274
|
proxyDefaultModel = "";
|
|
27275
|
+
proxyCode = undefined;
|
|
27223
27276
|
proxyProbe = null;
|
|
27224
27277
|
}
|
|
27225
27278
|
function ensureProxyProbe(onSettled) {
|
|
@@ -27241,6 +27294,9 @@ function isProxyConfigured() {
|
|
|
27241
27294
|
function isManagedProxy() {
|
|
27242
27295
|
return proxyManaged;
|
|
27243
27296
|
}
|
|
27297
|
+
function proxyStateCode() {
|
|
27298
|
+
return proxyCode;
|
|
27299
|
+
}
|
|
27244
27300
|
function siblingRoute(chatUrl, segment) {
|
|
27245
27301
|
let url;
|
|
27246
27302
|
try {
|
|
@@ -27275,6 +27331,7 @@ async function fetchAvailableModels(opts = {}) {
|
|
|
27275
27331
|
proxyConfigured = data.configured === true;
|
|
27276
27332
|
proxyManaged = data.managed === true;
|
|
27277
27333
|
proxyDefaultModel = data.defaultModel ?? "";
|
|
27334
|
+
proxyCode = data.code;
|
|
27278
27335
|
cache2 = (data.models || []).map((m) => ({ id: m.id, name: m.name || m.id }));
|
|
27279
27336
|
return cache2;
|
|
27280
27337
|
}
|
|
@@ -27439,17 +27496,22 @@ function createManagedConnect(opts) {
|
|
|
27439
27496
|
if (!canOffer()) {
|
|
27440
27497
|
return nothing;
|
|
27441
27498
|
}
|
|
27499
|
+
const lapsed = proxyStateCode() === "cf_reconnect_required";
|
|
27500
|
+
const busyLabel = lapsed ? "Reconnecting…" : "Connecting…";
|
|
27442
27501
|
return html`
|
|
27443
|
-
<div class="ai-managed-connect">
|
|
27444
|
-
<div
|
|
27502
|
+
<div class="ai-managed-connect" data-jx-recommended="cloudflare">
|
|
27503
|
+
<div class="ai-managed-connect-lede">
|
|
27504
|
+
${lapsed ? "Your Cloudflare connection has expired. Reconnect to keep using the assistant." : "Recommended — run the assistant on Workers AI in your own Cloudflare account. No API key to create, copy or rotate."}
|
|
27505
|
+
</div>
|
|
27445
27506
|
<sp-button
|
|
27446
27507
|
size="s"
|
|
27508
|
+
variant="accent"
|
|
27447
27509
|
?disabled=${busy}
|
|
27448
27510
|
@click=${() => {
|
|
27449
27511
|
connect();
|
|
27450
27512
|
}}
|
|
27451
27513
|
>
|
|
27452
|
-
${busy ? "
|
|
27514
|
+
${busy ? busyLabel : lapsed ? "Reconnect Cloudflare" : "Connect Cloudflare"}
|
|
27453
27515
|
</sp-button>
|
|
27454
27516
|
${connectError ? html`<div class="ai-managed-connect-error">${connectError}</div>` : nothing}
|
|
27455
27517
|
<div class="ai-managed-connect-divider">— or bring your own key —</div>
|
|
@@ -28849,6 +28911,7 @@ function createCloudPlatform(project) {
|
|
|
28849
28911
|
id: "cloud",
|
|
28850
28912
|
projectRoot: root,
|
|
28851
28913
|
canvasUrl: "/canvas.html",
|
|
28914
|
+
...base ? { documentBaseUrl: `${base}/raw/` } : {},
|
|
28852
28915
|
openProjectPicker: "repo-list",
|
|
28853
28916
|
createDestination: "repo",
|
|
28854
28917
|
async activate() {
|
|
@@ -35549,8 +35612,8 @@ class TruncatedValueTooltipController {
|
|
|
35549
35612
|
return;
|
|
35550
35613
|
}
|
|
35551
35614
|
await Promise.all([
|
|
35552
|
-
import("./chunks/sp-overlay.dev-
|
|
35553
|
-
import("./chunks/sp-tooltip.dev-
|
|
35615
|
+
import("./chunks/sp-overlay.dev-s18hymn9.js"),
|
|
35616
|
+
import("./chunks/sp-tooltip.dev-5c6d1kjz.js")
|
|
35554
35617
|
]);
|
|
35555
35618
|
this._tooltipDepsLoaded = true;
|
|
35556
35619
|
Promise.resolve().then(() => {
|
|
@@ -36523,7 +36586,7 @@ class MenuItem extends LikeAnchor(ObserveSlotText(ObserveSlotPresence(Focusable,
|
|
|
36523
36586
|
}
|
|
36524
36587
|
this.dependencyManager.add("sp-overlay");
|
|
36525
36588
|
this.dependencyManager.add("sp-popover");
|
|
36526
|
-
import("./chunks/sp-overlay.dev-
|
|
36589
|
+
import("./chunks/sp-overlay.dev-s18hymn9.js");
|
|
36527
36590
|
import("./chunks/sp-popover.dev-dj9x7e7a.js");
|
|
36528
36591
|
return html`
|
|
36529
36592
|
<sp-overlay
|
|
@@ -45588,7 +45651,7 @@ class PickerBase extends SizedMixin(ExpandableElement, {
|
|
|
45588
45651
|
`;
|
|
45589
45652
|
}
|
|
45590
45653
|
renderLoader() {
|
|
45591
|
-
import("./chunks/sp-progress-circle.dev-
|
|
45654
|
+
import("./chunks/sp-progress-circle.dev-0zxcyz3r.js");
|
|
45592
45655
|
return html`
|
|
45593
45656
|
<sp-progress-circle
|
|
45594
45657
|
size="s"
|
|
@@ -45669,7 +45732,7 @@ class PickerBase extends SizedMixin(ExpandableElement, {
|
|
|
45669
45732
|
var _a;
|
|
45670
45733
|
const container = this.renderContainer(menu);
|
|
45671
45734
|
this.dependencyManager.add("sp-overlay");
|
|
45672
|
-
import("./chunks/sp-overlay.dev-
|
|
45735
|
+
import("./chunks/sp-overlay.dev-s18hymn9.js");
|
|
45673
45736
|
return html`
|
|
45674
45737
|
<sp-overlay
|
|
45675
45738
|
@slottable-request=${this.handleSlottableRequest}
|
|
@@ -46239,7 +46302,7 @@ class Picker extends SizedMixin(ExpandableElement, {
|
|
|
46239
46302
|
`;
|
|
46240
46303
|
}
|
|
46241
46304
|
renderLoader() {
|
|
46242
|
-
import("./chunks/sp-progress-circle.dev-
|
|
46305
|
+
import("./chunks/sp-progress-circle.dev-0zxcyz3r.js");
|
|
46243
46306
|
return html`
|
|
46244
46307
|
<sp-progress-circle
|
|
46245
46308
|
size="s"
|
|
@@ -46320,7 +46383,7 @@ class Picker extends SizedMixin(ExpandableElement, {
|
|
|
46320
46383
|
var _a;
|
|
46321
46384
|
const container = this.renderContainer(menu);
|
|
46322
46385
|
this.dependencyManager.add("sp-overlay");
|
|
46323
|
-
import("./chunks/sp-overlay.dev-
|
|
46386
|
+
import("./chunks/sp-overlay.dev-s18hymn9.js");
|
|
46324
46387
|
return html`
|
|
46325
46388
|
<sp-overlay
|
|
46326
46389
|
@slottable-request=${this.handleSlottableRequest}
|
|
@@ -46934,7 +46997,7 @@ class Combobox extends Textfield {
|
|
|
46934
46997
|
`;
|
|
46935
46998
|
}
|
|
46936
46999
|
renderLoader() {
|
|
46937
|
-
import("./chunks/sp-progress-circle.dev-
|
|
47000
|
+
import("./chunks/sp-progress-circle.dev-0zxcyz3r.js");
|
|
46938
47001
|
return html`
|
|
46939
47002
|
<sp-progress-circle
|
|
46940
47003
|
size="s"
|
|
@@ -58528,9 +58591,9 @@ function renderDefsEditor(container) {
|
|
|
58528
58591
|
|
|
58529
58592
|
// src/version.ts
|
|
58530
58593
|
var APP_NAME = "Jx Studio";
|
|
58531
|
-
var VERSION = "2.
|
|
58532
|
-
var BUILD_DATE = "2026-08-
|
|
58533
|
-
var GIT_COMMIT = "
|
|
58594
|
+
var VERSION = "2.4.0";
|
|
58595
|
+
var BUILD_DATE = "2026-08-23T19:11:17.175Z";
|
|
58596
|
+
var GIT_COMMIT = "bea72f9";
|
|
58534
58597
|
var LINKS = {
|
|
58535
58598
|
github: "https://github.com/jxsuite/jx",
|
|
58536
58599
|
docs: "https://github.com/jxsuite/jx#readme",
|
|
@@ -58543,7 +58606,7 @@ var _container2 = null;
|
|
|
58543
58606
|
var _packages = null;
|
|
58544
58607
|
var _latest = new Map;
|
|
58545
58608
|
var _busy = false;
|
|
58546
|
-
var
|
|
58609
|
+
var _addName2 = "";
|
|
58547
58610
|
function latestFor(p2) {
|
|
58548
58611
|
if (p2.name.startsWith(JXSUITE_PREFIX) && isComparable(VERSION) && isUpgrade(p2.version, VERSION)) {
|
|
58549
58612
|
return VERSION;
|
|
@@ -58586,13 +58649,13 @@ async function withBusy(fn) {
|
|
|
58586
58649
|
}
|
|
58587
58650
|
}
|
|
58588
58651
|
async function onAdd() {
|
|
58589
|
-
const name =
|
|
58652
|
+
const name = _addName2.trim();
|
|
58590
58653
|
if (!name) {
|
|
58591
58654
|
return;
|
|
58592
58655
|
}
|
|
58593
58656
|
await withBusy(async () => {
|
|
58594
58657
|
await getPlatform().addPackage(name);
|
|
58595
|
-
|
|
58658
|
+
_addName2 = "";
|
|
58596
58659
|
notify.success(`Added ${name}.`);
|
|
58597
58660
|
});
|
|
58598
58661
|
}
|
|
@@ -58698,10 +58761,10 @@ function render11() {
|
|
|
58698
58761
|
<sp-textfield
|
|
58699
58762
|
size="s"
|
|
58700
58763
|
placeholder="package-name"
|
|
58701
|
-
.value=${
|
|
58764
|
+
.value=${_addName2}
|
|
58702
58765
|
?disabled=${_busy}
|
|
58703
58766
|
@input=${(e20) => {
|
|
58704
|
-
|
|
58767
|
+
_addName2 = e20.target.value;
|
|
58705
58768
|
}}
|
|
58706
58769
|
></sp-textfield>
|
|
58707
58770
|
<sp-action-button size="s" ?disabled=${_busy} @click=${onAdd}>
|
|
@@ -58742,7 +58805,7 @@ function render11() {
|
|
|
58742
58805
|
function renderDependenciesEditor(container) {
|
|
58743
58806
|
_container2 = container;
|
|
58744
58807
|
_packages = null;
|
|
58745
|
-
|
|
58808
|
+
_addName2 = "";
|
|
58746
58809
|
render11();
|
|
58747
58810
|
load();
|
|
58748
58811
|
}
|
|
@@ -59607,7 +59670,7 @@ async function openProjectSettings(section) {
|
|
|
59607
59670
|
showSettingsDocument();
|
|
59608
59671
|
notifySettingsDocument();
|
|
59609
59672
|
try {
|
|
59610
|
-
const { syncExtensionSettingsSections } = await import("./chunks/extension-sections-
|
|
59673
|
+
const { syncExtensionSettingsSections } = await import("./chunks/extension-sections-2zjyty05.js");
|
|
59611
59674
|
await syncExtensionSettingsSections();
|
|
59612
59675
|
} catch (error) {
|
|
59613
59676
|
notify.warn(`Could not load extension settings sections — ${errorMessage(error)}`, {
|
|
@@ -60231,7 +60294,7 @@ function publishCommands() {
|
|
|
60231
60294
|
name: "set_up_publishing"
|
|
60232
60295
|
},
|
|
60233
60296
|
run: async () => {
|
|
60234
|
-
const { openPublishPanel } = await import("./chunks/publish-panel-
|
|
60297
|
+
const { openPublishPanel } = await import("./chunks/publish-panel-2we6smjv.js");
|
|
60235
60298
|
openPublishPanel();
|
|
60236
60299
|
},
|
|
60237
60300
|
title: "Set Up Publishing"
|
|
@@ -60953,7 +61016,7 @@ function i18nCommands() {
|
|
|
60953
61016
|
});
|
|
60954
61017
|
return;
|
|
60955
61018
|
}
|
|
60956
|
-
const { openFileInTab: openFileInTab2 } = await import("./chunks/files-
|
|
61019
|
+
const { openFileInTab: openFileInTab2 } = await import("./chunks/files-jdbtammm.js");
|
|
60957
61020
|
await openFileInTab2(path);
|
|
60958
61021
|
},
|
|
60959
61022
|
title: "Open Translation"
|
|
@@ -61000,7 +61063,7 @@ function i18nCommands() {
|
|
|
61000
61063
|
return;
|
|
61001
61064
|
}
|
|
61002
61065
|
const cut = path.lastIndexOf("/");
|
|
61003
|
-
const { createFileIn: createFileIn2, openFileInTab: openFileInTab2 } = await import("./chunks/files-
|
|
61066
|
+
const { createFileIn: createFileIn2, openFileInTab: openFileInTab2 } = await import("./chunks/files-jdbtammm.js");
|
|
61004
61067
|
const created = await createFileIn2({
|
|
61005
61068
|
content,
|
|
61006
61069
|
dir: cut === -1 ? "." : path.slice(0, cut),
|
|
@@ -61058,7 +61121,85 @@ function registerI18nCommands(registry) {
|
|
|
61058
61121
|
registry.registerAll(i18nCommands());
|
|
61059
61122
|
}
|
|
61060
61123
|
|
|
61124
|
+
// src/shell/tree.ts
|
|
61125
|
+
function mountInto(host, tpl) {
|
|
61126
|
+
host.textContent = "";
|
|
61127
|
+
delete host["_$litPart$"];
|
|
61128
|
+
render2(tpl, host);
|
|
61129
|
+
}
|
|
61130
|
+
function overlayLayers() {
|
|
61131
|
+
return html`
|
|
61132
|
+
<!-- The four overlay layers, in stacking order. Their z-indices were inline style
|
|
61133
|
+
attributes, which put the one piece of ordering the whole overlay system depends on
|
|
61134
|
+
outside the reach of check-styles.ts's stacking rule — the check that exists because a
|
|
61135
|
+
blocking progress modal once shipped above its own scrim with no reachable exit. They are
|
|
61136
|
+
classes in styles/overlays.css now, and the toast host is ABOVE the dialog host because
|
|
61137
|
+
an operation started from a dialog reports its outcome to the person still looking at
|
|
61138
|
+
it. -->
|
|
61139
|
+
<div id="layer-popover" class="jx-layer jx-layer--popover"></div>
|
|
61140
|
+
<div id="layer-modal" class="jx-layer jx-layer--modal"></div>
|
|
61141
|
+
<div id="layer-dialog" class="jx-layer jx-layer--dialog"></div>
|
|
61142
|
+
<!-- role="status" sits on the HOST, so a stack of toasts is announced as one live region
|
|
61143
|
+
rather than one region per notification. It carries its region id whether or not a toast
|
|
61144
|
+
has ever been raised: a region that only exists once something has gone wrong is one a
|
|
61145
|
+
screenshot cannot address and focus cannot be moved into. -->
|
|
61146
|
+
<div
|
|
61147
|
+
id="layer-toast"
|
|
61148
|
+
class="jx-layer jx-layer--toast"
|
|
61149
|
+
role="status"
|
|
61150
|
+
aria-live="polite"
|
|
61151
|
+
data-jx-region="overlay.toasts"
|
|
61152
|
+
></div>
|
|
61153
|
+
`;
|
|
61154
|
+
}
|
|
61155
|
+
function shellTree() {
|
|
61156
|
+
return html`
|
|
61157
|
+
<div id="app">
|
|
61158
|
+
<div id="toolbar" data-jx-region="commandbar"></div>
|
|
61159
|
+
<!-- The PANE GRID (studio.md §18.1). One cell per pane, each holding that pane's own strip,
|
|
61160
|
+
jump bar, chrome layer and stage — the four surfaces that used to be flat siblings of
|
|
61161
|
+
THIS grid, which is to say application rows that only ever described one pane. There is
|
|
61162
|
+
nothing to see here in markup: panels/pane-grid.ts reconciles the cells against
|
|
61163
|
+
workspace.panes, because how many there are is a fact about the workspace and a
|
|
61164
|
+
single div can only ever be one of them. -->
|
|
61165
|
+
<div id="pane-grid"></div>
|
|
61166
|
+
<div id="activity-bar" data-jx-region="rail"></div>
|
|
61167
|
+
<div id="left-panel" data-jx-region="navigator"></div>
|
|
61168
|
+
<div id="resize-left" class="resize-handle"></div>
|
|
61169
|
+
<!-- The Bottom dock (⌘J). It sits in the PANE's column, under the stage and above the
|
|
61170
|
+
status bar, so opening it never narrows the Navigator or the Inspector (studio.md §12
|
|
61171
|
+
region ⑪). Its handle resizes on the other axis; panels/bottom-dock.ts stamps
|
|
61172
|
+
dock.bottom on this host while it is open, and nothing while it is closed. -->
|
|
61173
|
+
<div id="resize-bottom" class="resize-handle resize-handle-row"></div>
|
|
61174
|
+
<div id="bottom-dock"></div>
|
|
61175
|
+
<div id="resize-right" class="resize-handle"></div>
|
|
61176
|
+
<!-- The Inspector dock. Four tabs — Content · Style · Logic · Assistant (studio.md §12
|
|
61177
|
+
region ⑨) — all inside this one host. -->
|
|
61178
|
+
<div id="right-panel" data-jx-region="inspector"></div>
|
|
61179
|
+
<!-- The app's only status channel: announce what lands in it (studio.md §12 region ⑫). -->
|
|
61180
|
+
<div id="statusbar" role="status" aria-live="polite" data-jx-region="statusbar"></div>
|
|
61181
|
+
</div>
|
|
61182
|
+
${overlayLayers()}
|
|
61183
|
+
`;
|
|
61184
|
+
}
|
|
61185
|
+
function mountShellTree(host = document.body) {
|
|
61186
|
+
mountInto(themeHost(host), shellTree());
|
|
61187
|
+
}
|
|
61188
|
+
function themeHost(host) {
|
|
61189
|
+
const existing = host.querySelector?.("sp-theme");
|
|
61190
|
+
if (existing) {
|
|
61191
|
+
return existing;
|
|
61192
|
+
}
|
|
61193
|
+
const theme = document.createElement("sp-theme");
|
|
61194
|
+
theme.setAttribute("color", "dark");
|
|
61195
|
+
theme.setAttribute("scale", "medium");
|
|
61196
|
+
theme.setAttribute("system", "spectrum");
|
|
61197
|
+
host.append(theme);
|
|
61198
|
+
return theme;
|
|
61199
|
+
}
|
|
61200
|
+
|
|
61061
61201
|
// src/studio.ts
|
|
61202
|
+
setBundleBase(import.meta.url);
|
|
61062
61203
|
var derivationDeps = {
|
|
61063
61204
|
fileExists: async (path) => {
|
|
61064
61205
|
try {
|
|
@@ -61121,6 +61262,7 @@ if (!hasPlatform()) {
|
|
|
61121
61262
|
registerPlatform(resolveDefaultPlatform());
|
|
61122
61263
|
}
|
|
61123
61264
|
mountResizeEdges();
|
|
61265
|
+
mountShellTree();
|
|
61124
61266
|
initShellRefs();
|
|
61125
61267
|
mountShell();
|
|
61126
61268
|
mount8(toolbarEl, {
|
|
@@ -61337,7 +61479,6 @@ mount10({
|
|
|
61337
61479
|
setGitDiffState: (state2) => {
|
|
61338
61480
|
shell.git.diffState = state2;
|
|
61339
61481
|
},
|
|
61340
|
-
setupTreeKeyboard,
|
|
61341
61482
|
webdata: webdata_default
|
|
61342
61483
|
});
|
|
61343
61484
|
registerRenderer("leftPanel", () => render10());
|
|
@@ -61735,5 +61876,5 @@ export {
|
|
|
61735
61876
|
hasUnsavedTabs
|
|
61736
61877
|
};
|
|
61737
61878
|
|
|
61738
|
-
//# debugId=
|
|
61879
|
+
//# debugId=5769FAD30A86F19564756E2164756E21
|
|
61739
61880
|
//# sourceMappingURL=studio.js.map
|