@jxsuite/studio 6.1.1 → 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/README.md +5 -5
- package/dist/chunks/2020-5wtzce5g.js +4 -0
- package/dist/chunks/{action-group-2mqby73c.js → action-group-4aan7g6g.js} +3 -3
- package/dist/chunks/adapter-5tphg7xe.js +4 -0
- package/dist/chunks/add-new-flow-psym14sn.js +4 -0
- package/dist/chunks/cf-account-picker-haqazq5r.js +4 -0
- package/dist/chunks/cf-settings-h2wrh6hq.js +4 -0
- package/dist/chunks/color-area-6rbra5dy.js +4 -0
- package/dist/chunks/color-field-gy56c94g.js +4 -0
- package/dist/chunks/color-m7r1vk54.js +4 -0
- package/dist/chunks/color-slider-sqqdyf6c.js +4 -0
- package/dist/chunks/combobox-72h32ejk.js +4 -0
- package/dist/chunks/components-r22xca09.js +4 -0
- package/dist/chunks/content-source-mmppmcyg.js +4 -0
- package/dist/chunks/convert-to-repeater-he70fc2b.js +4 -0
- package/dist/chunks/dialog-c4x05vyx.js +4 -0
- package/dist/chunks/editor-ccd9jwsa.js +4 -0
- package/dist/chunks/entry-commands-6qxz9e8p.js +4 -0
- package/dist/chunks/extension-sections-0egb88dm.js +4 -0
- package/dist/chunks/file-ops-qnab36ek.js +4 -0
- package/dist/chunks/files-rcn56qvm.js +4 -0
- package/dist/chunks/format-host-yxz0kjjs.js +4 -0
- package/dist/chunks/fs-events-d1qxq4z4.js +4 -0
- package/dist/chunks/grid-open-4z1g062t.js +4 -0
- package/dist/chunks/grid-view-qg1b5eqx.js +51 -0
- package/dist/chunks/icons-63bjtbs7.js +4 -0
- package/dist/chunks/iframe-entry-2zggzajv.js +5 -0
- package/dist/chunks/iframe-entry-76j8vwwx.js +5 -0
- package/dist/chunks/iframe-entry-99nr5zfb.js +5 -0
- package/dist/chunks/iframe-entry-pkgmcgp0.js +5 -0
- package/dist/chunks/iframe-host-ssv7kyj0.js +4 -0
- package/dist/chunks/{index-2veqmnhr.js → index-32eqzv1k.js} +3 -3
- package/dist/chunks/index-f0jn7nnp.js +4 -0
- package/dist/chunks/{javascript-8nbvs12s.js → javascript-pjp734q4.js} +3 -3
- package/dist/chunks/jsonMode-njkvsa02.js +13 -0
- package/dist/chunks/jx-validate-ttasrbh7.js +4 -0
- package/dist/chunks/layers-bgyr11tr.js +4 -0
- package/dist/chunks/layers-panel-7ez66zeq.js +4 -0
- package/dist/chunks/listbox-c421cf8c.js +4 -0
- package/dist/chunks/lit-html-v9gh687x.js +4 -0
- package/dist/chunks/media-library-sq468wts.js +4 -0
- package/dist/chunks/media-picker-shfe59pt.js +4 -0
- package/dist/chunks/menu-bdpzbfvs.js +4 -0
- package/dist/chunks/monaco-binding-vq1hgnn0.js +4 -0
- package/dist/chunks/monaco-buffer-3afgwvbp.js +4 -0
- package/dist/chunks/monaco-setup-xrd2cbkp.js +4 -0
- package/dist/chunks/notify-kzrjr3fv.js +4 -0
- package/dist/chunks/number-field-y62xq0ty.js +4 -0
- package/dist/chunks/parse-v77xtwv7.js +4 -0
- package/dist/chunks/platform-7v4rtd7m.js +4 -0
- package/dist/chunks/popover-b89sfej7.js +4 -0
- package/dist/chunks/publish-panel-2z9gw8ee.js +4 -0
- package/dist/chunks/publish-quick-qx2455cj.js +4 -0
- package/dist/chunks/publish-workspace-wrc1dgwx.js +4 -0
- package/dist/chunks/quick-search-n0t0eqxb.js +4 -0
- package/dist/chunks/references-9547rg5s.js +4 -0
- package/dist/chunks/right-panel-wsgnr9pn.js +4 -0
- package/dist/chunks/select-rzds841e.js +4 -0
- package/dist/chunks/source-control-kwktr9y6.js +4 -0
- package/dist/chunks/split-c9zfdgxf.js +4 -0
- package/dist/chunks/studio-03ct6yfv.js +9 -0
- package/dist/chunks/studio-07rcfje3.js +5 -0
- package/dist/chunks/studio-3e54qh39.js +7 -0
- package/dist/chunks/studio-3exxhz5g.js +5 -0
- package/dist/chunks/studio-3q40e3rj.js +5 -0
- package/dist/chunks/studio-3qeh9t0h.js +6 -0
- package/dist/chunks/studio-3qqjeep5.js +6 -0
- package/dist/chunks/studio-43sd2mam.js +4 -0
- package/dist/chunks/studio-4hp8pkyt.js +5 -0
- package/dist/chunks/studio-58xg6j2q.js +9 -0
- package/dist/chunks/studio-5g0rprdt.js +7 -0
- package/dist/chunks/studio-6m380wp7.js +5 -0
- package/dist/chunks/studio-80jyh1xh.js +4 -0
- package/dist/chunks/studio-83mk4bgg.js +9 -0
- package/dist/chunks/{studio-kggey1jt.js → studio-881z1xrx.js} +4 -4
- package/dist/chunks/studio-8m0y2qe7.js +5 -0
- package/dist/chunks/studio-8tr6cfrc.js +5 -0
- package/dist/chunks/studio-8vcvfs7r.js +6 -0
- package/dist/chunks/studio-9tmebf0s.js +5 -0
- package/dist/chunks/studio-a2bvaptz.js +5 -0
- package/dist/chunks/studio-b7y5mr30.js +5 -0
- package/dist/chunks/studio-bavb31r0.js +5 -0
- package/dist/chunks/studio-bbe4c90a.js +5 -0
- package/dist/chunks/studio-c05wdnt3.js +5 -0
- package/dist/chunks/studio-ccv2svc6.js +5 -0
- package/dist/chunks/studio-d5grtb9e.js +16 -0
- package/dist/chunks/studio-df0baea9.js +5 -0
- package/dist/chunks/studio-dgk4dqtx.js +7 -0
- package/dist/chunks/studio-e1g64q43.js +5 -0
- package/dist/chunks/studio-ed1hp6zf.js +6 -0
- package/dist/chunks/studio-ed3xx40h.js +7 -0
- package/dist/chunks/studio-f14e1zdj.js +5 -0
- package/dist/chunks/studio-fbhxxc5f.js +5 -0
- package/dist/chunks/studio-fyh0jc96.js +5 -0
- package/dist/chunks/studio-gcxk20n7.js +5 -0
- package/dist/chunks/studio-jaaz8ce9.js +5 -0
- package/dist/chunks/{studio-8grwxtqk.js → studio-jcnsdaep.js} +4 -4
- package/dist/chunks/studio-jsgf2q5k.js +7 -0
- package/dist/chunks/{studio-1q1sh2ax.js → studio-k3xxbagr.js} +3 -3
- package/dist/chunks/studio-k7evxqh4.js +5 -0
- package/dist/chunks/studio-kt3pjkwd.js +5 -0
- package/dist/chunks/studio-m8g16bgz.js +5 -0
- package/dist/chunks/studio-mn0476ag.js +5 -0
- package/dist/chunks/studio-mx1smyq0.js +5 -0
- package/dist/chunks/studio-n0c5h6mf.js +5 -0
- package/dist/chunks/{studio-rv11kfwa.js → studio-nh6d342n.js} +7 -7
- package/dist/chunks/studio-nqxqf8p2.js +4 -0
- package/dist/chunks/studio-p4nrkvqr.js +5 -0
- package/dist/chunks/{studio-h46vtzk8.js → studio-pbxa5fpc.js} +4 -4
- package/dist/chunks/studio-pgmvdv7z.js +7 -0
- package/dist/chunks/studio-ph84avkf.js +5 -0
- package/dist/chunks/{studio-wszjyh0j.js → studio-q0mvbaq6.js} +4 -4
- package/dist/chunks/studio-q0tccd43.js +5 -0
- package/dist/chunks/studio-q7rtx6zq.js +14 -0
- package/dist/chunks/{studio-pre0skq6.js → studio-qgh13jtz.js} +4 -4
- package/dist/chunks/studio-qmn1xc24.js +5 -0
- package/dist/chunks/studio-qwdqwkj0.js +5 -0
- package/dist/chunks/{studio-t6b6qe31.js → studio-r5qy30vx.js} +4 -4
- package/dist/chunks/studio-rj9eamf8.js +5 -0
- package/dist/chunks/studio-rptgsk96.js +5 -0
- package/dist/chunks/studio-rthyg42z.js +928 -0
- package/dist/chunks/studio-s19tp1xr.js +5 -0
- package/dist/chunks/studio-s32578pn.js +5 -0
- package/dist/chunks/studio-svb7yyve.js +5 -0
- package/dist/chunks/studio-syreb644.js +5 -0
- package/dist/chunks/studio-tf9jryb1.js +10 -0
- package/dist/chunks/studio-tfkznv39.js +5 -0
- package/dist/chunks/studio-tft6r105.js +5 -0
- package/dist/chunks/studio-txf2kysx.js +5 -0
- package/dist/chunks/studio-v8867ddv.js +12 -0
- package/dist/chunks/studio-vxq7fcvv.js +5 -0
- package/dist/chunks/studio-w4rz9hdk.js +5 -0
- package/dist/chunks/studio-wbcjbhy1.js +9 -0
- package/dist/chunks/studio-wc649wss.js +5 -0
- package/dist/chunks/studio-wys23mxz.js +5 -0
- package/dist/chunks/studio-x1x167jh.js +5 -0
- package/dist/chunks/studio-x9hsze61.js +5 -0
- package/dist/chunks/studio-y0n7yxea.js +9 -0
- package/dist/chunks/studio-y3ahhdpx.js +5 -0
- package/dist/chunks/studio-z97c48fk.js +5 -0
- package/dist/chunks/studio-zat62m0c.js +5 -0
- package/dist/chunks/studio-zcd2e7yz.js +5 -0
- package/dist/chunks/studio-zz9qe3rw.js +64 -0
- package/dist/chunks/swatch-group-ewh24n1f.js +4 -0
- package/dist/chunks/tabs-f5cw3tgp.js +4 -0
- package/dist/chunks/textfield-wewc8rq2.js +4 -0
- package/dist/chunks/toast-1gv0h53h.js +4 -0
- package/dist/chunks/toast-host-1yg5ar8d.js +4 -0
- package/dist/chunks/{toolbar-2nnzqhrj.js → toolbar-44cm5cta.js} +3 -3
- package/dist/chunks/tooltip-yypz28gq.js +4 -0
- package/dist/chunks/tree-9xa4hm7n.js +4 -0
- package/dist/chunks/tsMode-epyfz1hv.js +14 -0
- package/dist/chunks/workspace-dz7nxfhv.js +4 -0
- package/dist/chunks/workspace-home-xsd7hkjw.js +4 -0
- package/dist/chunks/ws-client-bv552sfx.js +4 -0
- package/dist/iframe-entry.js +20 -16
- package/dist/manifest.json +77 -63
- package/dist/studio.js +106 -107
- package/dist/workers/ts.worker.js +3 -3
- package/package.json +17 -16
- package/src/about/about-modal.ts +4 -3
- package/src/account/action-flow.ts +45 -38
- package/src/account-status.ts +7 -2
- package/src/browse/component-examples.ts +272 -0
- package/src/browse/library-commands.ts +64 -104
- package/src/browse/library-layouts.ts +270 -53
- package/src/browse/library-model.ts +194 -134
- package/src/browse/library-pane.ts +748 -440
- package/src/browse/library-preview.ts +161 -26
- package/src/browse/library-source.ts +308 -41
- package/src/browse/preview-root.ts +78 -0
- package/src/browse/preview-style.ts +155 -0
- package/src/canvas/asset-refs.ts +40 -10
- package/src/canvas/asset-resolve.ts +19 -23
- package/src/canvas/canvas-helpers.ts +7 -6
- package/src/canvas/canvas-live-render.ts +260 -77
- package/src/canvas/canvas-origin.ts +37 -12
- package/src/canvas/canvas-page-context.ts +112 -0
- package/src/canvas/canvas-patcher.ts +30 -30
- package/src/canvas/canvas-perf.ts +11 -5
- package/src/canvas/canvas-render.ts +175 -148
- package/src/canvas/canvas-surface.ts +5 -3
- package/src/canvas/canvas-utils.ts +147 -61
- package/src/canvas/dialog-path.ts +9 -4
- package/src/canvas/dialog-state.ts +1 -2
- package/src/canvas/diff-marks.ts +9 -16
- package/src/canvas/diff-toolbar.ts +8 -7
- package/src/canvas/edit-width-drag.ts +4 -1
- package/src/canvas/edit-width.ts +1 -3
- package/src/canvas/iframe-channel.ts +27 -13
- package/src/canvas/iframe-drop.ts +120 -12
- package/src/canvas/iframe-editable-root.ts +29 -16
- package/src/canvas/iframe-entry.ts +104 -75
- package/src/canvas/iframe-eval.ts +73 -49
- package/src/canvas/iframe-host.ts +269 -158
- package/src/canvas/iframe-inline-edit.ts +49 -30
- package/src/canvas/iframe-insert.ts +5 -4
- package/src/canvas/iframe-interaction.ts +30 -25
- package/src/canvas/iframe-keys.ts +11 -0
- package/src/canvas/iframe-overlay.ts +1 -1
- package/src/canvas/iframe-patch.ts +25 -21
- package/src/canvas/iframe-position.ts +12 -6
- package/src/canvas/iframe-protocol.ts +36 -21
- package/src/canvas/iframe-render.ts +84 -35
- package/src/canvas/iframe-slash.ts +24 -11
- package/src/canvas/iframe-subtree.ts +10 -3
- package/src/canvas/npm-modules.ts +22 -0
- package/src/canvas/path-mapping.ts +19 -12
- package/src/canvas/popover-path.ts +7 -3
- package/src/canvas/popover-state.ts +1 -2
- package/src/canvas/preview-navigate.ts +16 -0
- package/src/canvas/repeater-sources.ts +200 -0
- package/src/canvas/serialize-scope.ts +13 -5
- package/src/canvas/stage-scrollbar.ts +7 -2
- package/src/canvas/surface-registry.ts +27 -3
- package/src/collab/collab-commands.ts +7 -2
- package/src/collab/collab-session.ts +84 -45
- package/src/collab/collab-state.ts +4 -3
- package/src/collab/monaco-binding.ts +16 -13
- package/src/collab/monaco-cursors.ts +5 -2
- package/src/commands/app-commands.ts +16 -6
- package/src/commands/budget.ts +13 -11
- package/src/commands/command-args.ts +103 -71
- package/src/commands/context.ts +55 -28
- package/src/commands/defaults.ts +69 -45
- package/src/commands/keymap.ts +56 -43
- package/src/commands/levels.ts +14 -8
- package/src/commands/live-context.ts +9 -7
- package/src/commands/reference.ts +2 -1
- package/src/commands/registry.ts +22 -11
- package/src/commands/run-reported.ts +15 -10
- package/src/component-props.ts +46 -30
- package/src/content/collection-match.ts +11 -9
- package/src/content/collection-pages.ts +412 -0
- package/src/content/content-collections.ts +270 -0
- package/src/content/draft-state.ts +4 -3
- package/src/content/entry-commands.ts +54 -62
- package/src/content/entry-editor.ts +137 -32
- package/src/content/entry-fields.ts +25 -8
- package/src/content/entry-inspector.ts +225 -0
- package/src/content/entry-model.ts +38 -15
- package/src/content/entry-open.ts +80 -0
- package/src/content/entry-summaries.ts +440 -0
- package/src/content/file-record-ids.ts +80 -0
- package/src/content/file-records.ts +125 -0
- package/src/content/page-summaries.ts +129 -0
- package/src/content/record-entry.ts +201 -0
- package/src/content/writing-banner.ts +177 -0
- package/src/create/add-new-commands.ts +185 -0
- package/src/create/add-new-flow.ts +1116 -0
- package/src/create/add-new.ts +1014 -0
- package/src/create/element-name.ts +121 -0
- package/src/editor/canvas-context-menu.ts +1 -2
- package/src/editor/canvas-slash-bridge.ts +3 -6
- package/src/editor/content-slice.ts +16 -14
- package/src/editor/context-menu.ts +35 -22
- package/src/editor/convert-targets.ts +30 -35
- package/src/editor/convert-to-component.ts +78 -48
- package/src/editor/convert-to-repeater.ts +34 -22
- package/src/editor/editable-tags.ts +17 -2
- package/src/editor/file-drop-action.ts +29 -22
- package/src/editor/inline-edit-apply.ts +79 -17
- package/src/editor/inline-edit.ts +76 -50
- package/src/editor/inline-format.ts +59 -56
- package/src/editor/inline-link.ts +40 -15
- package/src/editor/insert-component.ts +91 -0
- package/src/editor/insert-zone-action.ts +14 -5
- package/src/editor/merge-tags.ts +58 -19
- package/src/editor/repeater-scope.ts +39 -28
- package/src/editor/shortcuts.ts +76 -42
- package/src/editor/slash-menu.ts +52 -14
- package/src/files/asset-versions.ts +4 -4
- package/src/files/components.ts +89 -20
- package/src/files/elements.ts +5 -6
- package/src/files/file-ops.ts +92 -41
- package/src/files/files.ts +248 -239
- package/src/files/fs-events.ts +18 -7
- package/src/files/media-meta.ts +97 -2
- package/src/files/media-paths.ts +3 -0
- package/src/files/media-types.ts +55 -0
- package/src/files/media-upload.ts +209 -52
- package/src/files/new-file-name.ts +156 -0
- package/src/files/serialize-document.ts +15 -5
- package/src/format/constraints.ts +1 -1
- package/src/format/convert-file.ts +27 -13
- package/src/format/format-choices.ts +2 -1
- package/src/format/format-host.ts +91 -50
- package/src/github/github-auth-status.ts +27 -3
- package/src/github/github-auth.ts +21 -11
- package/src/github/github-publish.ts +28 -23
- package/src/grid/cell-editors.ts +46 -31
- package/src/grid/cell-popovers.ts +5 -3
- package/src/grid/edit-buffer.ts +10 -9
- package/src/grid/grid-controller.ts +25 -23
- package/src/grid/grid-layout.ts +21 -5
- package/src/grid/grid-open.ts +3 -33
- package/src/grid/grid-panel.ts +65 -6
- package/src/grid/grid-reveal.ts +34 -0
- package/src/grid/grid-source.ts +9 -31
- package/src/grid/grid-view.ts +45 -23
- package/src/grid/redirects-grid.ts +14 -5
- package/src/grid/redirects.ts +16 -14
- package/src/grid/schema-columns.ts +25 -19
- package/src/grid/sources/connector-source.ts +47 -20
- package/src/grid/sources/content-source.ts +100 -31
- package/src/grid/sources/csv-file-source.ts +2 -2
- package/src/grid/tabulator-tables.d.ts +61 -34
- package/src/hosting/document.ts +2 -2
- package/src/hosting/stage.ts +7 -7
- package/src/i18n/i18n-commands.ts +3 -3
- package/src/media/media-commands.ts +181 -0
- package/src/media/media-library-model.ts +232 -0
- package/src/media/media-library.ts +1283 -0
- package/src/media/media-pane.ts +51 -20
- package/src/new-project/add-repo-modal.ts +20 -19
- package/src/new-project/import-tab.ts +10 -14
- package/src/new-project/location-fields.ts +2 -1
- package/src/new-project/new-project-modal.ts +12 -9
- package/src/packages/jxsuite-update.ts +4 -3
- package/src/packages/pull-package-sync.ts +26 -25
- package/src/page-params.ts +97 -68
- package/src/panels/activity-panel.ts +38 -14
- package/src/panels/ai-chat/attached-context.ts +13 -7
- package/src/panels/ai-chat/chat-markdown.ts +8 -8
- package/src/panels/ai-chat/chat-view.ts +80 -73
- package/src/panels/ai-chat/composer.ts +30 -33
- package/src/panels/ai-chat/sessions-view.ts +1 -2
- package/src/panels/ai-panel.ts +23 -20
- package/src/panels/block-action-bar.ts +57 -46
- package/src/panels/bottom-dock.ts +5 -3
- package/src/panels/canvas-dnd-bridge.ts +36 -26
- package/src/panels/chat-panel.ts +6 -6
- package/src/panels/collections-panel.ts +306 -0
- package/src/panels/component-preview.ts +35 -13
- package/src/panels/data-explorer.ts +63 -26
- package/src/panels/data-grid.ts +18 -11
- package/src/panels/dnd.ts +115 -138
- package/src/panels/editors.ts +52 -21
- package/src/panels/elements-panel.ts +19 -5
- package/src/panels/empty-state.ts +2 -2
- package/src/panels/events-panel.ts +84 -69
- package/src/panels/formula-workspace.ts +78 -54
- package/src/panels/frontmatter-fields.ts +33 -28
- package/src/panels/git-diff-open.ts +10 -6
- package/src/panels/head-panel.ts +488 -202
- package/src/panels/i18n-panel.ts +20 -12
- package/src/panels/imports-panel.ts +25 -47
- package/src/panels/jump-bar.ts +75 -31
- package/src/panels/layers-panel.ts +130 -101
- package/src/panels/left-panel.ts +25 -11
- package/src/panels/navigator-panels.ts +23 -11
- package/src/panels/pane-context.ts +140 -49
- package/src/panels/pane-grid.ts +55 -26
- package/src/panels/panel-registry.ts +36 -46
- package/src/panels/properties-panel.ts +182 -124
- package/src/panels/quick-search.ts +53 -31
- package/src/panels/right-panel.ts +201 -45
- package/src/panels/seo-modal.ts +54 -125
- package/src/panels/settings-menu.ts +63 -61
- package/src/panels/settings-pane.ts +268 -162
- package/src/panels/signals-panel.ts +156 -135
- package/src/panels/site-model.ts +367 -0
- package/src/panels/site-panel.ts +638 -0
- package/src/panels/statement-editor.ts +230 -140
- package/src/panels/style-panel.ts +253 -206
- package/src/panels/style-utils.ts +114 -51
- package/src/panels/stylebook-doc.ts +195 -60
- package/src/panels/stylebook-layers-panel.ts +48 -89
- package/src/panels/stylebook-panel.ts +60 -27
- package/src/panels/styles-panel.ts +327 -0
- package/src/panels/tab-drop.ts +27 -11
- package/src/panels/tab-strip.ts +143 -49
- package/src/platform-errors.ts +57 -43
- package/src/platform.ts +59 -31
- package/src/platforms/cloud.ts +373 -176
- package/src/platforms/default-platform.ts +14 -8
- package/src/platforms/devserver.ts +180 -142
- package/src/platforms/read-batcher.ts +16 -8
- package/src/project-list.ts +2 -1
- package/src/publish/deploy-checklist.ts +20 -9
- package/src/publish/pages-service.ts +66 -27
- package/src/publish/publish-changes.ts +491 -0
- package/src/publish/publish-commands.ts +88 -22
- package/src/publish/publish-ids.ts +49 -0
- package/src/publish/publish-panel.ts +10 -6
- package/src/publish/publish-quick.ts +148 -0
- package/src/publish/publish-workspace.ts +926 -0
- package/src/publish/source-control.ts +907 -0
- package/src/recent-projects.ts +15 -8
- package/src/resize-edges.ts +26 -36
- package/src/services/a11y-report.ts +26 -19
- package/src/services/agent-seed.ts +23 -11
- package/src/services/ai-ask.ts +9 -12
- package/src/services/ai-command-tools.ts +68 -62
- package/src/services/ai-import-tools.ts +80 -67
- package/src/services/ai-models.ts +17 -13
- package/src/services/ai-project-tools.ts +68 -32
- package/src/services/ai-session-store.ts +19 -10
- package/src/services/ai-system-prompt.ts +46 -20
- package/src/services/ai-tools.ts +71 -27
- package/src/services/ai-write-report.ts +20 -12
- package/src/services/ai-writes.ts +4 -4
- package/src/services/automation.ts +74 -51
- package/src/services/cem-export.ts +149 -58
- package/src/services/cf-settings.ts +4 -4
- package/src/services/clock.ts +6 -1
- package/src/services/code-services.ts +37 -31
- package/src/services/connection.ts +2 -2
- package/src/services/context-manager.ts +14 -10
- package/src/services/context-resolver.ts +20 -8
- package/src/services/data-service.ts +19 -15
- package/src/services/directory-picker.ts +20 -14
- package/src/services/document-assistant.ts +39 -19
- package/src/services/gated-registry.ts +10 -6
- package/src/services/harness/chat-reducer.ts +23 -1
- package/src/services/import-client.ts +91 -38
- package/src/services/import-seed.ts +8 -2
- package/src/services/jx-validate.ts +28 -31
- package/src/services/live-preview.ts +0 -0
- package/src/services/live-surfaces.ts +6 -3
- package/src/services/model-uri.ts +10 -2
- package/src/services/module-preloads.ts +12 -8
- package/src/services/monaco-buffer.ts +43 -24
- package/src/services/monaco-lazy.ts +7 -8
- package/src/services/monaco-setup.ts +23 -16
- package/src/services/notify.ts +44 -17
- package/src/services/popover-report.ts +25 -10
- package/src/services/preview-eval.ts +20 -8
- package/src/services/profile.ts +13 -6
- package/src/services/project-path.ts +13 -10
- package/src/services/references.ts +0 -0
- package/src/services/render-critic.ts +29 -9
- package/src/services/settings/definitions.ts +25 -14
- package/src/services/settings/kernel.ts +13 -4
- package/src/services/settings/write-queue.ts +9 -9
- package/src/services/token-lint.ts +12 -10
- package/src/services/tool-executor.ts +17 -5
- package/src/services/tool-outcomes.ts +44 -24
- package/src/services/trusted-types.ts +24 -7
- package/src/settings/contexts-section.ts +11 -8
- package/src/settings/contributed-section.ts +128 -70
- package/src/settings/css-vars-editor.ts +119 -32
- package/src/settings/defs-editor.ts +38 -35
- package/src/settings/developer-panels.ts +43 -0
- package/src/settings/extension-rows.ts +16 -8
- package/src/settings/extension-sections.ts +42 -14
- package/src/settings/extensions-section.ts +4 -1
- package/src/settings/general-settings.ts +101 -28
- package/src/settings/locales-section.ts +20 -12
- package/src/settings/preferences-dialog.ts +17 -7
- package/src/settings/preferences-keymap.ts +7 -5
- package/src/settings/preferences-sections.ts +11 -5
- package/src/settings/project-sections.ts +28 -11
- package/src/settings/schema-field-ui.ts +12 -1
- package/src/settings/section-registry.ts +116 -11
- package/src/settings/settings-dialog.ts +192 -0
- package/src/settings/settings-document.ts +186 -166
- package/src/shell/tree.ts +6 -5
- package/src/shell.ts +536 -477
- package/src/site-context.ts +101 -32
- package/src/state.ts +68 -57
- package/src/store.ts +54 -34
- package/src/studio.ts +219 -116
- package/src/style/live-preview.ts +1 -1
- package/src/style/project-styles.ts +40 -7
- package/src/style/stylebook-specimens.ts +89 -0
- package/src/style/stylebook-target.ts +26 -0
- package/src/style/tag-inheritance.ts +105 -0
- package/src/style/token-ref.ts +5 -4
- package/src/style/variables-focus.ts +61 -0
- package/src/style/variables-view.ts +235 -0
- package/src/surfaces/about.ts +18 -19
- package/src/surfaces/add-new.json +1482 -0
- package/src/surfaces/add-new.ts +325 -0
- package/src/surfaces/add-repo.ts +17 -19
- package/src/surfaces/ai-chat.ts +33 -38
- package/src/surfaces/ai-credentials-form.ts +6 -16
- package/src/surfaces/ai-managed-connect.ts +3 -4
- package/src/surfaces/ai-model-picker.ts +3 -5
- package/src/surfaces/block-action-bar.ts +22 -11
- package/src/surfaces/boot-failure.json +4 -3
- package/src/surfaces/boot-failure.ts +4 -5
- package/src/surfaces/bottom-dock.json +1 -1
- package/src/surfaces/bottom-dock.ts +9 -18
- package/src/surfaces/canvas-stage.json +30 -19
- package/src/surfaces/canvas-stage.ts +17 -16
- package/src/surfaces/cf-account-picker.ts +17 -18
- package/src/surfaces/collections-panel.json +615 -0
- package/src/surfaces/collections-panel.ts +168 -0
- package/src/surfaces/commandbar.json +241 -96
- package/src/surfaces/commandbar.ts +145 -105
- package/src/surfaces/convert-repeater.ts +17 -19
- package/src/surfaces/data-actions.ts +9 -7
- package/src/surfaces/dialog.ts +26 -28
- package/src/surfaces/diff-toolbar.ts +9 -7
- package/src/surfaces/empty-state.json +1 -1
- package/src/surfaces/empty-state.ts +7 -10
- package/src/surfaces/entry-editor.json +136 -0
- package/src/surfaces/entry-editor.ts +35 -11
- package/src/surfaces/entry-inspector.json +371 -0
- package/src/surfaces/entry-inspector.ts +143 -0
- package/src/surfaces/expression-editor.ts +11 -25
- package/src/surfaces/files-panel.ts +27 -14
- package/src/surfaces/formula-palette.ts +4 -5
- package/src/surfaces/github-auth.ts +16 -20
- package/src/surfaces/github-publish.ts +17 -22
- package/src/surfaces/grid-cell.ts +30 -31
- package/src/surfaces/grid-open.ts +10 -14
- package/src/surfaces/grid-panel.ts +13 -9
- package/src/surfaces/grid-replace.ts +13 -13
- package/src/surfaces/grid-views.ts +15 -18
- package/src/surfaces/inspector-dock.json +162 -14
- package/src/surfaces/inspector-dock.ts +59 -31
- package/src/surfaces/jump-bar.ts +5 -6
- package/src/surfaces/jxsuite-update.ts +16 -22
- package/src/surfaces/library-pane.json +670 -437
- package/src/surfaces/library-pane.ts +111 -77
- package/src/surfaces/logic-panel.ts +17 -30
- package/src/surfaces/logic-workspace.ts +13 -15
- package/src/surfaces/media-browser.json +62 -6
- package/src/surfaces/media-browser.ts +26 -11
- package/src/surfaces/media-field.json +1 -1
- package/src/surfaces/media-field.ts +4 -5
- package/src/surfaces/media-library.json +1586 -0
- package/src/surfaces/media-library.ts +282 -0
- package/src/surfaces/media-pane.ts +8 -7
- package/src/surfaces/media-pick-dialog.json +71 -0
- package/src/surfaces/media-pick-dialog.ts +132 -0
- package/src/surfaces/menu.ts +47 -23
- package/src/surfaces/navigator-dock.ts +11 -12
- package/src/surfaces/new-project.ts +27 -26
- package/src/surfaces/pane-context.json +144 -77
- package/src/surfaces/pane-context.ts +44 -25
- package/src/surfaces/pane-grid.ts +15 -10
- package/src/surfaces/panel-activity.ts +5 -6
- package/src/surfaces/panel-data.ts +3 -4
- package/src/surfaces/panel-deploy-checklist.json +12 -6
- package/src/surfaces/panel-deploy-checklist.ts +8 -7
- package/src/surfaces/panel-elements.ts +5 -7
- package/src/surfaces/panel-i18n.ts +5 -7
- package/src/surfaces/panel-imports.ts +6 -13
- package/src/surfaces/panel-outline.ts +25 -19
- package/src/surfaces/panel-page.json +72 -2
- package/src/surfaces/panel-page.ts +49 -25
- package/src/surfaces/panel-problems.ts +5 -7
- package/src/surfaces/panel-signals.json +1 -1
- package/src/surfaces/panel-signals.ts +25 -39
- package/src/surfaces/panel-stylebook-layers.json +71 -204
- package/src/surfaces/panel-stylebook-layers.ts +5 -29
- package/src/surfaces/preferences.json +120 -48
- package/src/surfaces/preferences.ts +29 -11
- package/src/surfaces/progress-modal.ts +15 -9
- package/src/surfaces/properties-panel.json +1 -1
- package/src/surfaces/properties-panel.ts +20 -42
- package/src/surfaces/publish-quick.json +428 -0
- package/src/surfaces/publish-quick.ts +165 -0
- package/src/surfaces/publish-workspace.json +2892 -0
- package/src/surfaces/publish-workspace.ts +391 -0
- package/src/surfaces/publish.ts +18 -18
- package/src/surfaces/push-plan.ts +7 -8
- package/src/surfaces/rail.json +1 -159
- package/src/surfaces/rail.ts +22 -79
- package/src/surfaces/reference-field.ts +11 -15
- package/src/surfaces/schema-builder.ts +16 -22
- package/src/surfaces/schema-form.json +10 -2
- package/src/surfaces/schema-form.ts +17 -25
- package/src/surfaces/secret-field.ts +9 -6
- package/src/surfaces/seo.json +1 -1
- package/src/surfaces/seo.ts +21 -15
- package/src/surfaces/settings-contexts.ts +9 -7
- package/src/surfaces/settings-contributed.json +5 -5
- package/src/surfaces/settings-contributed.ts +32 -12
- package/src/surfaces/settings-css-vars.json +44 -36
- package/src/surfaces/settings-css-vars.ts +82 -16
- package/src/surfaces/settings-defs.json +2 -2
- package/src/surfaces/settings-defs.ts +17 -21
- package/src/surfaces/settings-deploy.json +2 -15
- package/src/surfaces/settings-deploy.ts +9 -16
- package/src/surfaces/settings-dialog.json +51 -0
- package/src/surfaces/settings-dialog.ts +169 -0
- package/src/surfaces/settings-extensions.ts +5 -6
- package/src/surfaces/settings-head.ts +33 -39
- package/src/surfaces/settings-locales.ts +8 -20
- package/src/surfaces/settings-overview.json +3 -3
- package/src/surfaces/settings-overview.ts +14 -8
- package/src/surfaces/settings-packages.ts +8 -7
- package/src/surfaces/settings-pane.json +269 -46
- package/src/surfaces/settings-pane.ts +88 -36
- package/src/surfaces/settings-rawjson.ts +5 -6
- package/src/surfaces/shell.json +2 -1
- package/src/surfaces/shell.ts +1 -2
- package/src/surfaces/site-panel.json +1029 -0
- package/src/surfaces/site-panel.ts +233 -0
- package/src/surfaces/slash-menu.json +63 -21
- package/src/surfaces/slash-menu.ts +42 -9
- package/src/surfaces/statements.ts +13 -18
- package/src/surfaces/statusbar.ts +56 -29
- package/src/surfaces/style-panel.ts +18 -31
- package/src/surfaces/stylebook-chrome.ts +3 -5
- package/src/surfaces/styles-panel.json +735 -0
- package/src/surfaces/styles-panel.ts +195 -0
- package/src/surfaces/styles-variables.json +149 -0
- package/src/surfaces/styles-variables.ts +145 -0
- package/src/surfaces/tab-strip.json +4 -4
- package/src/surfaces/tab-strip.ts +14 -13
- package/src/surfaces/target-line.ts +6 -7
- package/src/surfaces/welcome.ts +6 -8
- package/src/surfaces/writing-banner.json +94 -0
- package/src/surfaces/writing-banner.ts +80 -0
- package/src/tabs/bare-repeaters.ts +101 -0
- package/src/tabs/patch-ops.ts +4 -3
- package/src/tabs/project-config.ts +32 -21
- package/src/tabs/selection.ts +36 -8
- package/src/tabs/tab.ts +99 -48
- package/src/tabs/transact.ts +98 -53
- package/src/types.ts +53 -43
- package/src/ui/ai-credentials-form.ts +10 -13
- package/src/ui/ai-model-picker.ts +3 -3
- package/src/ui/cf-account-picker.ts +7 -9
- package/src/ui/color-selector.ts +9 -5
- package/src/ui/dynamic-slot.ts +7 -8
- package/src/ui/expression-editor.ts +112 -105
- package/src/ui/form-controls.ts +104 -56
- package/src/ui/formula-catalog.ts +239 -230
- package/src/ui/formula-chips.ts +33 -18
- package/src/ui/layers.ts +57 -31
- package/src/ui/media-picker.ts +300 -47
- package/src/ui/popover-surface.ts +20 -12
- package/src/ui/progress-modal.ts +13 -8
- package/src/ui/regions.ts +14 -12
- package/src/ui/schema-form.ts +372 -97
- package/src/ui/surface.ts +71 -8
- package/src/ui/timing.ts +9 -0
- package/src/ui/value-source.ts +44 -31
- package/src/ui/virtual-window.ts +29 -3
- package/src/utils/base64.ts +6 -4
- package/src/utils/edit-display.ts +366 -111
- package/src/utils/element-selectors.ts +3 -2
- package/src/utils/google-fonts.ts +15 -14
- package/src/utils/inherited-style.ts +18 -20
- package/src/utils/link-target.ts +1 -1
- package/src/utils/local-day.ts +18 -0
- package/src/utils/preview-format.ts +25 -3
- package/src/utils/strip-events.ts +49 -22
- package/src/utils/studio-utils.ts +29 -14
- package/src/view.ts +2 -3
- package/src/workspace/pane-derive.ts +14 -16
- package/src/workspace/session.ts +81 -50
- package/src/workspace/tab-workspace.ts +137 -0
- package/src/workspace/workspace-back.ts +189 -0
- package/src/workspace/workspace-home.ts +133 -0
- package/src/workspace/workspace-ids.ts +129 -0
- package/src/workspace/workspace-switch.ts +372 -0
- package/src/workspace/workspace.ts +165 -47
- package/styles/shell-frame.css +30 -7
- package/styles/shell-frame.json +15 -3
- package/dist/chunks/2020-va2wwra4.js +0 -4
- package/dist/chunks/adapter-f93pafd7.js +0 -4
- package/dist/chunks/cf-account-picker-af1h381v.js +0 -4
- package/dist/chunks/cf-settings-125tdm0w.js +0 -4
- package/dist/chunks/color-area-jqhna8zy.js +0 -4
- package/dist/chunks/color-field-embq5ctg.js +0 -4
- package/dist/chunks/color-fpezvnkt.js +0 -4
- package/dist/chunks/color-slider-1qmw7wqy.js +0 -4
- package/dist/chunks/combobox-773hdzyj.js +0 -4
- package/dist/chunks/components-ax2f1fnn.js +0 -4
- package/dist/chunks/content-source-108aqtk1.js +0 -4
- package/dist/chunks/convert-to-repeater-ry5rmppr.js +0 -4
- package/dist/chunks/dialog-mtm9fq5t.js +0 -4
- package/dist/chunks/editor-pfgdmkb0.js +0 -4
- package/dist/chunks/entry-commands-t0k1q0kx.js +0 -4
- package/dist/chunks/extension-sections-6mwh2hf8.js +0 -4
- package/dist/chunks/file-ops-meej5mqf.js +0 -4
- package/dist/chunks/files-44vp8a2s.js +0 -4
- package/dist/chunks/format-host-7q1petb9.js +0 -4
- package/dist/chunks/fs-events-h2mwnxaz.js +0 -4
- package/dist/chunks/git-panel-zngbymvd.js +0 -4
- package/dist/chunks/grid-view-sx9vynsp.js +0 -51
- package/dist/chunks/icons-p44xhjf0.js +0 -4
- package/dist/chunks/iframe-entry-f7mqjwpm.js +0 -5
- package/dist/chunks/iframe-entry-haw7jkvz.js +0 -5
- package/dist/chunks/iframe-entry-z6qrytv3.js +0 -5
- package/dist/chunks/iframe-host-qk3ycq87.js +0 -4
- package/dist/chunks/index-wkyfjeqz.js +0 -4
- package/dist/chunks/jsonMode-s8kt9dsj.js +0 -13
- package/dist/chunks/jx-validate-psgd7vsx.js +0 -4
- package/dist/chunks/layers-panel-1kq2jyfk.js +0 -4
- package/dist/chunks/layers-xd92fg8d.js +0 -4
- package/dist/chunks/listbox-s8fkmnq8.js +0 -4
- package/dist/chunks/lit-html-ac4cwwr4.js +0 -4
- package/dist/chunks/media-picker-0svzkdyb.js +0 -4
- package/dist/chunks/menu-37d07z9m.js +0 -4
- package/dist/chunks/menu-5c55ea3d.js +0 -4
- package/dist/chunks/monaco-binding-z6r70pdt.js +0 -4
- package/dist/chunks/monaco-buffer-fz6gq5y7.js +0 -4
- package/dist/chunks/monaco-setup-q4axkgj7.js +0 -4
- package/dist/chunks/notify-0xgtn8q1.js +0 -4
- package/dist/chunks/number-field-gw7sq8rn.js +0 -4
- package/dist/chunks/parse-897fvqah.js +0 -4
- package/dist/chunks/platform-v1qctbe6.js +0 -4
- package/dist/chunks/popover-8htra4er.js +0 -4
- package/dist/chunks/publish-panel-ym1fmgq5.js +0 -4
- package/dist/chunks/quick-search-a54e6t5n.js +0 -4
- package/dist/chunks/references-gmqp82fs.js +0 -4
- package/dist/chunks/right-panel-v7t9awbk.js +0 -4
- package/dist/chunks/section-registry-vhyf3zsr.js +0 -4
- package/dist/chunks/select-n3v7gwas.js +0 -4
- package/dist/chunks/split-pff8f3ze.js +0 -4
- package/dist/chunks/studio-0bhx5hz6.js +0 -5
- package/dist/chunks/studio-0k1ddnyy.js +0 -6
- package/dist/chunks/studio-1b04pd0j.js +0 -64
- package/dist/chunks/studio-4dwbj6gb.js +0 -5
- package/dist/chunks/studio-4tanh828.js +0 -5
- package/dist/chunks/studio-55h4mstj.js +0 -4
- package/dist/chunks/studio-5tnvjkz4.js +0 -5
- package/dist/chunks/studio-60dqgb0c.js +0 -5
- package/dist/chunks/studio-61dp09qg.js +0 -9
- package/dist/chunks/studio-63epcrj2.js +0 -5
- package/dist/chunks/studio-74k29dy9.js +0 -5
- package/dist/chunks/studio-7vg6jcd3.js +0 -5
- package/dist/chunks/studio-7zx31knw.js +0 -9
- package/dist/chunks/studio-8bxk97km.js +0 -5
- package/dist/chunks/studio-933e30n4.js +0 -5
- package/dist/chunks/studio-98wnwhbg.js +0 -5
- package/dist/chunks/studio-9mccjwjh.js +0 -14
- package/dist/chunks/studio-a2ke1e4t.js +0 -5
- package/dist/chunks/studio-e3a2a6v3.js +0 -4
- package/dist/chunks/studio-e81q1vb9.js +0 -5
- package/dist/chunks/studio-epgrmqqm.js +0 -5
- package/dist/chunks/studio-ery42sqr.js +0 -4
- package/dist/chunks/studio-g1shz58g.js +0 -5
- package/dist/chunks/studio-gf0fz03c.js +0 -5
- package/dist/chunks/studio-gjtpe62q.js +0 -6
- package/dist/chunks/studio-gkskhg7m.js +0 -5
- package/dist/chunks/studio-gx4dnjzd.js +0 -5
- package/dist/chunks/studio-j03zga3y.js +0 -9
- package/dist/chunks/studio-jhpxeckz.js +0 -5
- package/dist/chunks/studio-k01r7ykp.js +0 -5
- package/dist/chunks/studio-kk7h30ne.js +0 -7
- package/dist/chunks/studio-kt1zqney.js +0 -5
- package/dist/chunks/studio-m3cwhvye.js +0 -5
- package/dist/chunks/studio-mcayt6hz.js +0 -5
- package/dist/chunks/studio-myjcghv3.js +0 -5
- package/dist/chunks/studio-n8bxwc3y.js +0 -4
- package/dist/chunks/studio-ngm8gvpb.js +0 -5
- package/dist/chunks/studio-nj5a01jy.js +0 -928
- package/dist/chunks/studio-pcgz8heb.js +0 -5
- package/dist/chunks/studio-qcsq0t15.js +0 -5
- package/dist/chunks/studio-qkstvve9.js +0 -5
- package/dist/chunks/studio-qv1pwd3c.js +0 -5
- package/dist/chunks/studio-rc6dvxjb.js +0 -7
- package/dist/chunks/studio-s8dmmz66.js +0 -5
- package/dist/chunks/studio-sp5xzbj4.js +0 -6
- package/dist/chunks/studio-szsjbj0g.js +0 -5
- package/dist/chunks/studio-t1xzawhr.js +0 -16
- package/dist/chunks/studio-tdcprbqb.js +0 -5
- package/dist/chunks/studio-vrmcjf9g.js +0 -7
- package/dist/chunks/studio-vyc0b4he.js +0 -10
- package/dist/chunks/studio-w0cgf6jg.js +0 -5
- package/dist/chunks/studio-w3hskzqk.js +0 -5
- package/dist/chunks/studio-xgrgcdyh.js +0 -9
- package/dist/chunks/studio-xz2yxfcb.js +0 -5
- package/dist/chunks/studio-y6n42tgs.js +0 -5
- package/dist/chunks/studio-yb560vxr.js +0 -5
- package/dist/chunks/studio-yn9f8vtx.js +0 -5
- package/dist/chunks/studio-yw05w8f0.js +0 -7
- package/dist/chunks/studio-z16sgavc.js +0 -5
- package/dist/chunks/studio-zey7zsdw.js +0 -12
- package/dist/chunks/studio-zyqn40w4.js +0 -5
- package/dist/chunks/swatch-group-8qh9a3bm.js +0 -4
- package/dist/chunks/tabs-jwthg40w.js +0 -4
- package/dist/chunks/textfield-spy3hc77.js +0 -4
- package/dist/chunks/toast-4d35zd64.js +0 -4
- package/dist/chunks/toast-host-8sjmfed3.js +0 -4
- package/dist/chunks/tooltip-fd6g9xy3.js +0 -4
- package/dist/chunks/tree-h19v1jfz.js +0 -4
- package/dist/chunks/tsMode-2frah6h1.js +0 -14
- package/dist/chunks/workspace-zt81g1ms.js +0 -4
- package/dist/chunks/ws-client-n2bh4hkf.js +0 -4
- package/src/panels/frontmatter-panel.ts +0 -701
- package/src/panels/git-panel.ts +0 -1120
- package/src/surfaces/doc-header.json +0 -776
- package/src/surfaces/doc-header.ts +0 -231
- package/src/surfaces/git-panel.json +0 -1880
- package/src/surfaces/git-panel.ts +0 -272
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{yo,qn,jn,Vi,n0,X,yt,pi,wo,Fe,lc,e,b,rn,Do,i1,As,oa,He,N,d,i,ce,un,I,o,Xr,No,Hv,ye,Ge,hn,sa,q,s,t,F,_,Fh,pM,jh,Ut,Je,Ha,fM,Ao,Ms,Yt,uc,qi,Ar,fi,l0,Ce,aa,se,tg,hc,lf,Uv,f,Rn,W,ni,j,c1,Pe,mr,B,c,ig,at,Ft,Ke,gi,k,gn,w,Re,ue,A,ie,Ee,Et,Dn,dt,J,Ue,Te,L,og,M,G,ht,l,Oi,Kn,Ki,Cn,lt,Bn,tn,Ji,bs,Mi,Ze,nn,U,gr,Po,K,O,fe,re,xt,xe,ut,f1,zh,ee,y,z,uu,Xv,wf,Zi,zn,Pi,a,br,ua,Ef,E0,C1,Ti,It,r,Be,UM,yc,Yh,wt,co,me,de,On,A1,YM,ZM,Zh,yd,Rf,Mn,pa,bu,t2,Va,En,Pn,_c,uo,Cg,F1,kg,Ne,n2,Tg,$l,an,Br,ma,Kt,Il,Z1,X1,G0,by,Q1,yr,ga,wu,$g,Af,Of,os,ep,jI,Ii,vi,ct,Mf,np,Rl,wy,Pf,Cs,Wn}from"./studio-rthyg42z.js";import{zt,Iv,Rh,VC,UC,qC,Rv,Dv,mI,GC,sd,sM,e0,Dh,fl,Nv,Km,KC,JC,gI,bI,YC,vI,Nh,t0,ZC,XC,Jm,Av,Ym,Ov,QC,Ro,Mv,yI,Ah,Is}from"./studio-zz9qe3rw.js";class ot extends Cn{constructor(){super({id:"diffEditor.toggleCollapseUnchangedRegions",title:b(101,"Toggle Collapse Unchanged Regions"),icon:_.map,toggled:L.has("config.diffEditor.hideUnchangedRegions.enabled"),precondition:L.has("isInDiffEditor"),menu:{when:L.has("isInDiffEditor"),id:l.EditorTitle,order:22,group:"navigation"}})}run(m,...n){let u=m.get(re),h=!u.getValue("diffEditor.hideUnchangedRegions.enabled");u.updateValue("diffEditor.hideUnchangedRegions.enabled",h)}}class bo extends Cn{constructor(){super({id:"diffEditor.toggleShowMovedCodeBlocks",title:b(102,"Toggle Show Moved Code Blocks"),precondition:L.has("isInDiffEditor")})}run(m,...n){let u=m.get(re),h=!u.getValue("diffEditor.experimental.showMoves");u.updateValue("diffEditor.experimental.showMoves",h)}}class tt extends Cn{constructor(){super({id:"diffEditor.toggleUseInlineViewWhenSpaceIsLimited",title:b(103,"Toggle Use Inline View When Space Is Limited"),precondition:L.has("isInDiffEditor")})}run(m,...n){let u=m.get(re),h=!u.getValue("diffEditor.useInlineViewWhenSpaceIsLimited");u.updateValue("diffEditor.useInlineViewWhenSpaceIsLimited",h)}}var eo=b(104,"Diff Editor");class it extends gr{constructor(){super({id:"diffEditor.switchSide",title:b(105,"Switch Side"),icon:_.arrowSwap,precondition:L.has("isInDiffEditor"),f1:!0,category:eo})}runEditorCommand(m,n,u){let h=De(m);if(h instanceof Rl)if(u&&u.dryRun)return{destinationSelection:h.mapToOtherSide().destinationSelection};else h.switchSide();return}}class rt extends gr{constructor(){super({id:"diffEditor.exitCompareMove",title:b(106,"Exit Compare Move"),icon:_.close,precondition:r.comparingMovedCode,f1:!1,category:eo,keybinding:{weight:1e4,primary:9}})}runEditorCommand(m,n,...u){let h=De(m);if(h instanceof Rl)h.exitCompareMove()}}class nt extends gr{constructor(){super({id:"diffEditor.collapseAllUnchangedRegions",title:b(107,"Collapse All Unchanged Regions"),icon:_.fold,precondition:L.has("isInDiffEditor"),f1:!0,category:eo})}runEditorCommand(m,n,...u){let h=De(m);if(h instanceof Rl)h.collapseAllUnchangedRegions()}}class st extends gr{constructor(){super({id:"diffEditor.showAllUnchangedRegions",title:b(108,"Show All Unchanged Regions"),icon:_.unfold,precondition:L.has("isInDiffEditor"),f1:!0,category:eo})}runEditorCommand(m,n,...u){let h=De(m);if(h instanceof Rl)h.showAllUnchangedRegions()}}class oo extends Cn{constructor(){super({id:"diffEditor.revert",title:b(109,"Revert"),f1:!0,category:eo,precondition:L.has("isInDiffEditor")})}run(m,n){return n?this.runViaToolbarContext(m,n):this.runViaCursorOrSelection(m)}runViaCursorOrSelection(m){let n=De(m);if(n instanceof Rl)n.revertFocusedRangeMappings();return}runViaToolbarContext(m,n){let u=$r(m,n.originalUri,n.modifiedUri);if(u instanceof Rl)u.revertRangeMappings(n.mapping.innerChanges??[]);return}}var Ni=b(110,"Accessible Diff Viewer");class Oe extends Cn{static{this.id="editor.action.accessibleDiffViewer.next"}constructor(){super({id:Oe.id,title:b(111,"Go to Next Difference"),category:Ni,precondition:L.has("isInDiffEditor"),keybinding:{primary:65,weight:100},f1:!0})}run(m){De(m)?.accessibleDiffViewerNext()}}class to extends Cn{static{this.id="editor.action.accessibleDiffViewer.prev"}constructor(){super({id:to.id,title:b(112,"Go to Previous Difference"),category:Ni,precondition:L.has("isInDiffEditor"),keybinding:{primary:1089,weight:100},f1:!0})}run(m){De(m)?.accessibleDiffViewerPrev()}}function $r(m,n,u){return m.get(Ee).listDiffEditors().find((p)=>{let v=p.getModifiedEditor(),x=p.getOriginalEditor();return v&&v.getModel()?.uri.toString()===u.toString()&&x&&x.getModel()?.uri.toString()===n.toString()})||null}function De(m){let u=m.get(Ee).listDiffEditors(),h=Ft();if(h){for(let g of u)if(g.getContainerDomNode().contains(h))return g}return null}lt(ot);lt(bo);lt(tt);Kn.appendMenuItem(l.EditorTitle,{command:{id:new bo().desc.id,title:e(135,"Show Moved Code Blocks"),icon:_.move,toggled:og.create("config.diffEditor.experimental.showMoves",!0),precondition:L.has("isInDiffEditor")},order:10,group:"1_diff",when:L.has("isInDiffEditor")});lt(oo);for(let m of[{icon:_.arrowRight,key:r.diffEditorInlineMode.toNegated()},{icon:_.discard,key:r.diffEditorInlineMode}])Kn.appendMenuItem(l.DiffEditorHunkToolbar,{command:{id:new oo().desc.id,title:e(136,"Revert Block"),icon:m.icon},when:L.and(r.diffEditorModifiedWritable,m.key),order:5,group:"primary"}),Kn.appendMenuItem(l.DiffEditorSelectionToolbar,{command:{id:new oo().desc.id,title:e(137,"Revert Selection"),icon:m.icon},when:L.and(r.diffEditorModifiedWritable,m.key),order:5,group:"primary"});lt(it);lt(rt);lt(nt);lt(st);Kn.appendMenuItem(l.EditorTitle,{command:{id:Oe.id,title:e(138,"Open Accessible Diff Viewer"),precondition:L.has("isInDiffEditor")},order:10,group:"2_diff",when:L.and(r.accessibleDiffViewerVisible.negate(),L.has("isInDiffEditor"))});Te.registerCommandAlias("editor.action.diffReview.next",Oe.id);lt(Oe);Te.registerCommandAlias("editor.action.diffReview.prev",to.id);lt(to);var Jr=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},en=function(m,n){return function(u,h){n(u,h,m)}},mt,vo=new M("selectionAnchorSet",!1),ke=class m{static{mt=this}static{this.ID="editor.contrib.selectionAnchorController"}static get(n){return n.getContribution(mt.ID)}constructor(n,u){this.editor=n,this.selectionAnchorSetContextKey=vo.bindTo(u),this.modelChangeListener=n.onDidChangeModel(()=>this.selectionAnchorSetContextKey.reset())}setSelectionAnchor(){if(this.editor.hasModel()){let n=this.editor.getPosition();this.editor.changeDecorations((u)=>{if(this.decorationId)u.removeDecoration(this.decorationId);this.decorationId=u.addDecoration(F.fromPositions(n,n),{description:"selection-anchor",stickiness:1,hoverMessage:new Mn().appendText(e(849,"Selection Anchor")),className:"selection-anchor"})}),this.selectionAnchorSetContextKey.set(!!this.decorationId),zn(e(850,"Anchor set at {0}:{1}",n.lineNumber,n.column))}}goToSelectionAnchor(){if(this.editor.hasModel()&&this.decorationId){let n=this.editor.getModel().getDecorationRange(this.decorationId);if(n)this.editor.setPosition(n.getStartPosition())}}selectFromAnchorToCursor(){if(this.editor.hasModel()&&this.decorationId){let n=this.editor.getModel().getDecorationRange(this.decorationId);if(n){let u=this.editor.getPosition();this.editor.setSelection(F.fromPositions(n.getStartPosition(),u)),this.cancelSelectionAnchor()}}}cancelSelectionAnchor(){if(this.decorationId){let n=this.decorationId;this.editor.changeDecorations((u)=>{u.removeDecoration(n),this.decorationId=void 0}),this.selectionAnchorSetContextKey.set(!1)}}dispose(){this.cancelSelectionAnchor(),this.modelChangeListener.dispose()}};ke=mt=Jr([en(1,G)],ke);class ji extends U{constructor(){super({id:"editor.action.setSelectionAnchor",label:b(851,"Set Selection Anchor"),precondition:void 0,kbOpts:{kbExpr:r.editorTextFocus,primary:hn(2089,2080),weight:100}})}async run(m,n){ke.get(n)?.setSelectionAnchor()}}class Fi extends U{constructor(){super({id:"editor.action.goToSelectionAnchor",label:b(852,"Go to Selection Anchor"),precondition:vo})}async run(m,n){ke.get(n)?.goToSelectionAnchor()}}class Hi extends U{constructor(){super({id:"editor.action.selectFromAnchorToCursor",label:b(853,"Select from Anchor to Cursor"),precondition:vo,kbOpts:{kbExpr:r.editorTextFocus,primary:hn(2089,2089),weight:100}})}async run(m,n){ke.get(n)?.selectFromAnchorToCursor()}}class Bi extends U{constructor(){super({id:"editor.action.cancelSelectionAnchor",label:b(854,"Cancel Selection Anchor"),precondition:vo,kbOpts:{kbExpr:r.editorTextFocus,primary:9,weight:100}})}async run(m,n){ke.get(n)?.cancelSelectionAnchor()}}fe(ke.ID,ke,4);O(ji);O(Fi);O(Hi);O(Bi);class pt{constructor(m,n){this._selection=m,this._isMovingLeft=n}getEditOperations(m,n){if(this._selection.startLineNumber!==this._selection.endLineNumber||this._selection.isEmpty())return;let u=this._selection.startLineNumber,h=this._selection.startColumn,g=this._selection.endColumn;if(this._isMovingLeft&&h===1)return;if(!this._isMovingLeft&&g===m.getLineMaxColumn(u))return;if(this._isMovingLeft){let p=new t(u,h-1,u,h),v=m.getValueInRange(p);n.addEditOperation(p,null),n.addEditOperation(new t(u,g,u,g),v)}else{let p=new t(u,g,u,g+1),v=m.getValueInRange(p);n.addEditOperation(p,null),n.addEditOperation(new t(u,h,u,h),v)}}computeCursorState(m,n){if(this._isMovingLeft)return new F(this._selection.startLineNumber,this._selection.startColumn-1,this._selection.endLineNumber,this._selection.endColumn-1);else return new F(this._selection.startLineNumber,this._selection.startColumn+1,this._selection.endLineNumber,this._selection.endColumn+1)}}class gt extends U{constructor(m,n){super(n);this.left=m}run(m,n){if(!n.hasModel())return;let u=[],h=n.getSelections();for(let g of h)u.push(new pt(g,this.left));n.pushUndoStop(),n.executeCommands(this.id,u),n.pushUndoStop()}}class Wi extends gt{constructor(){super(!0,{id:"editor.action.moveCarretLeftAction",label:b(861,"Move Selected Text Left"),precondition:r.writable})}}class Ui extends gt{constructor(){super(!1,{id:"editor.action.moveCarretRightAction",label:b(862,"Move Selected Text Right"),precondition:r.writable})}}O(Wi);O(Ui);class Qi extends U{constructor(){super({id:"editor.action.transposeLetters",label:b(863,"Transpose Letters"),precondition:r.writable,kbOpts:{kbExpr:r.textInputFocus,primary:0,mac:{primary:306},weight:100}})}run(m,n){if(!n.hasModel())return;let u=n.getModel(),h=[],g=n.getSelections();for(let p of g){if(!p.isEmpty())continue;let{startLineNumber:v,startColumn:x}=p,C=u.getLineMaxColumn(v);if(v===1&&(x===1||x===2&&C===2))continue;let S=x===C?p.getPosition():It.rightPosition(u,p.getPosition().lineNumber,p.getPosition().column),D=It.leftPosition(u,S),E=It.leftPosition(u,D),T=u.getValueInRange(t.fromPositions(E,D)),R=u.getValueInRange(t.fromPositions(D,S)),P=t.fromPositions(E,S);h.push(new Ti(P,R+T))}if(h.length>0)n.pushUndoStop(),n.executeCommands(this.id,h),n.pushUndoStop()}}O(Qi);class Le{constructor(){this.lenses=[]}static{this.Empty=new Le}dispose(){this._store?.dispose()}get isDisposed(){return this._store?.isDisposed??!1}add(m,n){if(oa(m))this._store??=new d,this._store.add(m);for(let u of m.lenses)this.lenses.push({symbol:u,provider:n})}}async function ft(m,n,u){let h=m.ordered(n),g=new Map,p=new Le,v=h.map(async(x,C)=>{g.set(x,C);try{let S=await Promise.resolve(x.provideCodeLenses(n,u));if(S)p.add(S,x)}catch(S){yt(S)}});if(await Promise.all(v),u.isCancellationRequested)return p.dispose(),Le.Empty;return p.lenses=p.lenses.sort((x,C)=>{if(x.symbol.range.startLineNumber<C.symbol.range.startLineNumber)return-1;else if(x.symbol.range.startLineNumber>C.symbol.range.startLineNumber)return 1;else if(g.get(x.provider)<g.get(C.provider))return-1;else if(g.get(x.provider)>g.get(C.provider))return 1;else if(x.symbol.range.startColumn<C.symbol.range.startColumn)return-1;else if(x.symbol.range.startColumn>C.symbol.range.startColumn)return 1;else return 0}),p}Te.registerCommand("_executeCodeLensProvider",function(m,...n){let[u,h]=n;Fe(q.isUri(u)),Fe(typeof h==="number"||!h);let{codeLensProvider:g}=m.get(z),p=m.get(Et).getModel(u);if(!p)throw wo();let v=[],x=new d;return ft(g,p,ye.None).then((C)=>{x.add(C);let S=[];for(let D of C.lenses)if(h===void 0||h===null||Boolean(D.symbol.command))v.push(D.symbol);else if(h-- >0&&D.provider.resolveCodeLens)S.push(Promise.resolve(D.provider.resolveCodeLens(p,D.symbol,ye.None)).then((E)=>v.push(E||D.symbol)));return Promise.all(S)}).then(()=>v).finally(()=>{setTimeout(()=>x.dispose(),100)})});var on=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},sn=function(m,n){return function(u,h){n(u,h,m)}},kt=ie("ICodeLensCache");class bt{constructor(m,n){this.lineCount=m,this.data=n}}var vt=class m{constructor(n){this._fakeProvider=new class{provideCodeLenses(){throw Error("not supported")}},this._cache=new Ji(20,0.75);let u="codelens/cache";ig(Je,()=>n.remove(u,1));let h="codelens/cache2",g=n.get(h,1,"{}");this._deserialize(g);let p=I.filter(n.onWillSaveState,(v)=>v.reason===_c.SHUTDOWN);I.once(p)((v)=>{n.store(h,this._serialize(),1,1)})}put(n,u){let h=u.lenses.map((v)=>({range:v.symbol.range,command:v.symbol.command&&{id:"",title:v.symbol.command?.title}})),g=new Le;g.add({lenses:h},this._fakeProvider);let p=new bt(n.getLineCount(),g);this._cache.set(n.uri.toString(),p)}get(n){let u=this._cache.get(n.uri.toString());return u&&u.lineCount===n.getLineCount()?u.data:void 0}delete(n){this._cache.delete(n.uri.toString())}_serialize(){let n=Object.create(null);for(let[u,h]of this._cache){let g=new Set;for(let p of h.data.lenses)g.add(p.symbol.range.startLineNumber);n[u]={lineCount:h.lineCount,lines:[...g.values()]}}return JSON.stringify(n)}_deserialize(n){try{let u=JSON.parse(n);for(let h in u){let g=u[h],p=[];for(let x of g.lines)p.push({range:new t(x,1,x,11)});let v=new Le;v.add({lenses:p},this._fakeProvider),this._cache.set(h,new bt(g.lineCount,v))}}catch{}}};vt=on([sn(0,Pn)],vt);xe(kt,vt,1);class Yi{constructor(m,n,u){this.afterColumn=1073741824,this.afterLineNumber=m,this.heightInPx=n,this._onHeight=u,this.suppressMouseDown=!0,this.domNode=document.createElement("div")}onComputedHeight(m){if(this._lastHeight===void 0)this._lastHeight=m;else if(this._lastHeight!==m)this._lastHeight=m,this._onHeight()}isVisible(){return this._lastHeight!==0&&this.domNode.hasAttribute("monaco-visible-view-zone")}}class xo{static{this._idPool=0}constructor(m,n){this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this._commands=new Map,this._isEmpty=!0,this._editor=m,this._id=`codelens.widget-${xo._idPool++}`,this.updatePosition(n),this._domNode=document.createElement("span"),this._domNode.className="codelens-decoration"}withCommands(m,n){this._commands.clear();let u=[],h=!1;for(let g=0;g<m.length;g++){let p=m[g];if(!p)continue;if(h=!0,p.command){let v=pa(p.command.title.trim());if(p.command.id){let x=`c${xo._idPool++}`;u.push(w("a",{id:x,title:p.command.tooltip,role:"button"},...v)),this._commands.set(x,p.command)}else u.push(w("span",{title:p.command.tooltip},...v));if(g+1<m.length)u.push(w("span",void 0," | "))}}if(!h)gn(this._domNode,w("span",void 0,"no commands"));else{if(gn(this._domNode,...u),this._isEmpty&&n)this._domNode.classList.add("fadein");this._isEmpty=!1}}getCommand(m){return m.parentElement===this._domNode?this._commands.get(m.id):void 0}getId(){return this._id}getDomNode(){return this._domNode}updatePosition(m){let n=this._editor.getModel().getLineFirstNonWhitespaceColumn(m);this._widgetPosition={position:{lineNumber:m,column:n},preference:[1]}}getPosition(){return this._widgetPosition||null}}class io{constructor(){this._removeDecorations=[],this._addDecorations=[],this._addDecorationsCallbacks=[]}addDecoration(m,n){this._addDecorations.push(m),this._addDecorationsCallbacks.push(n)}removeDecoration(m){this._removeDecorations.push(m)}commit(m){let n=m.deltaDecorations(this._removeDecorations,this._addDecorations);for(let u=0,h=n.length;u<h;u++)this._addDecorationsCallbacks[u](n[u])}}var Gi=de.register({collapseOnReplaceEdit:!0,description:"codelens"});class ko{constructor(m,n,u,h,g,p){this._isDisposed=!1,this._editor=n,this._data=m,this._decorationIds=[];let v,x=[];if(this._data.forEach((C,S)=>{if(C.symbol.command)x.push(C.symbol);if(u.addDecoration({range:C.symbol.range,options:Gi},(D)=>this._decorationIds[S]=D),!v)v=t.lift(C.symbol.range);else v=t.plusRange(v,C.symbol.range)}),this._viewZone=new Yi(v.startLineNumber-1,g,p),this._viewZoneId=h.addZone(this._viewZone),x.length>0)this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(x,!1)}_createContentWidgetIfNecessary(){if(!this._contentWidget)this._contentWidget=new xo(this._editor,this._viewZone.afterLineNumber+1),this._editor.addContentWidget(this._contentWidget);else this._editor.layoutContentWidget(this._contentWidget)}dispose(m,n){if(this._decorationIds.forEach(m.removeDecoration,m),this._decorationIds=[],n?.removeZone(this._viewZoneId),this._contentWidget)this._editor.removeContentWidget(this._contentWidget),this._contentWidget=void 0;this._isDisposed=!0}isDisposed(){return this._isDisposed}isValid(){return this._decorationIds.some((m,n)=>{let u=this._editor.getModel().getDecorationRange(m),h=this._data[n].symbol;return!!(u&&t.isEmpty(h.range)===u.isEmpty())})}updateCodeLensSymbols(m,n){this._decorationIds.forEach(n.removeDecoration,n),this._decorationIds=[],this._data=m,this._data.forEach((u,h)=>{n.addDecoration({range:u.symbol.range,options:Gi},(g)=>this._decorationIds[h]=g)})}updateHeight(m,n){if(this._viewZone.heightInPx=m,n.layoutZone(this._viewZoneId),this._contentWidget)this._editor.layoutContentWidget(this._contentWidget)}computeIfNecessary(m){if(!this._viewZone.isVisible())return null;for(let n=0;n<this._decorationIds.length;n++){let u=m.getDecorationRange(this._decorationIds[n]);if(u)this._data[n].symbol.range=u}return this._data}updateCommands(m){this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(m,!0);for(let n=0;n<this._data.length;n++){let u=m[n];if(u){let{symbol:h}=this._data[n];h.command=u.command||h.command}}}getCommand(m){return this._contentWidget?.getCommand(m)}getLineNumber(){let m=this._editor.getModel().getDecorationRange(this._decorationIds[0]);if(m)return m.startLineNumber;return-1}update(m){if(this.isValid()){let n=this._editor.getModel().getDecorationRange(this._decorationIds[0]);if(n){if(this._viewZone.afterLineNumber=n.startLineNumber-1,m.layoutZone(this._viewZoneId),this._contentWidget)this._contentWidget.updatePosition(n.startLineNumber),this._editor.layoutContentWidget(this._contentWidget)}}}}var cn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},ro=function(m,n){return function(u,h){n(u,h,m)}},no=class m{static{this.ID="css.editor.codeLens"}constructor(n,u,h,g,p,v){this._editor=n,this._languageFeaturesService=u,this._commandService=g,this._notificationService=p,this._codeLensCache=v,this._disposables=new d,this._localToDispose=new d,this._lenses=[],this._oldCodeLensModels=new d,this._provideCodeLensDebounce=h.for(u.codeLensProvider,"CodeLensProvide",{min:250}),this._resolveCodeLensesDebounce=h.for(u.codeLensProvider,"CodeLensResolve",{min:250,salt:"resolve"}),this._resolveCodeLensesScheduler=new Ce(()=>this._resolveCodeLensesInViewport(),this._resolveCodeLensesDebounce.default()),this._disposables.add(this._editor.onDidChangeModel(()=>this._onModelChange())),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>this._onModelChange())),this._disposables.add(this._editor.onDidChangeConfiguration((x)=>{if(x.hasChanged(59)||x.hasChanged(25)||x.hasChanged(24))this._updateLensStyle();if(x.hasChanged(23))this._onModelChange()})),this._disposables.add(u.codeLensProvider.onDidChange(this._onModelChange,this)),this._onModelChange(),this._updateLensStyle()}dispose(){this._localDispose(),this._localToDispose.dispose(),this._disposables.dispose(),this._resolveCodeLensesScheduler.dispose(),this._oldCodeLensModels.dispose(),this._currentCodeLensModel?.dispose()}_getLayoutInfo(){let n=Math.max(1.3,this._editor.getOption(75)/this._editor.getOption(61)),u=this._editor.getOption(25);if(!u||u<5)u=this._editor.getOption(61)*0.9|0;return{fontSize:u,codeLensHeight:u*n|0}}_updateLensStyle(){let{codeLensHeight:n,fontSize:u}=this._getLayoutInfo(),h=this._editor.getOption(24),g=this._editor.getOption(59),{style:p}=this._editor.getContainerDomNode();if(p.setProperty("--vscode-editorCodeLens-lineHeight",`${n}px`),p.setProperty("--vscode-editorCodeLens-fontSize",`${u}px`),p.setProperty("--vscode-editorCodeLens-fontFeatureSettings",g.fontFeatureSettings),h)p.setProperty("--vscode-editorCodeLens-fontFamily",h),p.setProperty("--vscode-editorCodeLens-fontFamilyDefault",No.fontFamily);this._editor.changeViewZones((v)=>{for(let x of this._lenses)x.updateHeight(n,v)})}_localDispose(){this._getCodeLensModelPromise?.cancel(),this._getCodeLensModelPromise=void 0,this._resolveCodeLensesPromise?.cancel(),this._resolveCodeLensesPromise=void 0,this._localToDispose.clear(),this._oldCodeLensModels.clear(),this._currentCodeLensModel?.dispose()}_onModelChange(){this._localDispose();let n=this._editor.getModel();if(!n)return;if(!this._editor.getOption(23)||n.isTooLargeForTokenization())return;let u=this._codeLensCache.get(n);if(u)this._renderCodeLensSymbols(u);if(!this._languageFeaturesService.codeLensProvider.has(n)){if(u)fi(()=>{let g=this._codeLensCache.get(n);if(u===g)this._codeLensCache.delete(n),this._onModelChange()},30000,this._localToDispose);return}for(let g of this._languageFeaturesService.codeLensProvider.all(n))if(typeof g.onDidChange==="function"){let p=g.onDidChange(()=>h.schedule());this._localToDispose.add(p)}let h=new Ce(()=>{let g=Date.now();this._getCodeLensModelPromise?.cancel(),this._getCodeLensModelPromise=Yt((p)=>ft(this._languageFeaturesService.codeLensProvider,n,p)),this._getCodeLensModelPromise.then((p)=>{if(this._currentCodeLensModel)this._oldCodeLensModels.add(this._currentCodeLensModel);this._currentCodeLensModel=p,this._codeLensCache.put(n,p);let v=this._provideCodeLensDebounce.update(n,Date.now()-g);h.delay=v,this._renderCodeLensSymbols(p),this._resolveCodeLensesInViewportSoon()},X)},this._provideCodeLensDebounce.get(n));this._localToDispose.add(h),this._localToDispose.add(N(()=>this._resolveCodeLensesScheduler.cancel())),this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._editor.changeDecorations((g)=>{this._editor.changeViewZones((p)=>{let v=[],x=-1;this._lenses.forEach((S)=>{if(!S.isValid()||x===S.getLineNumber())v.push(S);else S.update(p),x=S.getLineNumber()});let C=new io;v.forEach((S)=>{S.dispose(C,p),this._lenses.splice(this._lenses.indexOf(S),1)}),C.commit(g)})}),h.schedule(),this._resolveCodeLensesScheduler.cancel(),this._resolveCodeLensesPromise?.cancel(),this._resolveCodeLensesPromise=void 0})),this._localToDispose.add(this._editor.onDidFocusEditorText(()=>{h.schedule()})),this._localToDispose.add(this._editor.onDidBlurEditorText(()=>{h.cancel()})),this._localToDispose.add(this._editor.onDidScrollChange((g)=>{if(g.scrollTopChanged&&this._lenses.length>0)this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(this._editor.onDidLayoutChange(()=>{this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(N(()=>{if(this._editor.getModel()){let g=os.capture(this._editor);this._editor.changeDecorations((p)=>{this._editor.changeViewZones((v)=>{this._disposeAllLenses(p,v)})}),g.restore(this._editor)}else this._disposeAllLenses(void 0,void 0)})),this._localToDispose.add(this._editor.onMouseDown((g)=>{if(g.target.type!==9)return;let p=g.target.element;if(p?.tagName==="SPAN")p=p.parentElement;if(p?.tagName==="A")for(let v of this._lenses){let x=v.getCommand(p);if(x){this._commandService.executeCommand(x.id,...x.arguments||[]).catch((C)=>this._notificationService.error(C));break}}})),h.schedule()}_disposeAllLenses(n,u){let h=new io;for(let g of this._lenses)g.dispose(h,u);if(n)h.commit(n);this._lenses.length=0}_renderCodeLensSymbols(n){if(!this._editor.hasModel())return;let u=this._editor.getModel().getLineCount(),h=[],g;for(let x of n.lenses){let C=x.symbol.range.startLineNumber;if(C<1||C>u)continue;else if(g&&g[g.length-1].symbol.range.startLineNumber===C)g.push(x);else g=[x],h.push(g)}if(!h.length&&!this._lenses.length)return;let p=os.capture(this._editor),v=this._getLayoutInfo();this._editor.changeDecorations((x)=>{this._editor.changeViewZones((C)=>{let S=new io,D=0,E=0;while(E<h.length&&D<this._lenses.length){let T=h[E][0].symbol.range.startLineNumber,R=this._lenses[D].getLineNumber();if(R<T)this._lenses[D].dispose(S,C),this._lenses.splice(D,1);else if(R===T)this._lenses[D].updateCodeLensSymbols(h[E],S),E++,D++;else this._lenses.splice(D,0,new ko(h[E],this._editor,S,C,v.codeLensHeight,()=>this._resolveCodeLensesInViewportSoon())),D++,E++}while(D<this._lenses.length)this._lenses[D].dispose(S,C),this._lenses.splice(D,1);while(E<h.length)this._lenses.push(new ko(h[E],this._editor,S,C,v.codeLensHeight,()=>this._resolveCodeLensesInViewportSoon())),E++;S.commit(x)})}),p.restore(this._editor)}_resolveCodeLensesInViewportSoon(){if(this._editor.getModel())this._resolveCodeLensesScheduler.schedule()}_resolveCodeLensesInViewport(){this._resolveCodeLensesPromise?.cancel(),this._resolveCodeLensesPromise=void 0;let n=this._editor.getModel();if(!n)return;let u=[],h=[];if(this._lenses.forEach((v)=>{let x=v.computeIfNecessary(n);if(x)u.push(x),h.push(v)}),u.length===0){this._oldCodeLensModels.clear();return}let g=Date.now(),p=Yt((v)=>{let x=u.map((C,S)=>{let D=Array(C.length),E=C.map((T,R)=>{if(!T.symbol.command&&typeof T.provider.resolveCodeLens==="function")return Promise.resolve(T.provider.resolveCodeLens(n,T.symbol,v)).then((P)=>{D[R]=P},yt);else return D[R]=T.symbol,Promise.resolve(void 0)});return Promise.all(E).then(()=>{if(!v.isCancellationRequested&&!h[S].isDisposed())h[S].updateCommands(D)})});return Promise.all(x)});this._resolveCodeLensesPromise=p,this._resolveCodeLensesPromise.then(()=>{let v=this._resolveCodeLensesDebounce.update(n,Date.now()-g);if(this._resolveCodeLensesScheduler.delay=v,this._currentCodeLensModel)this._codeLensCache.put(n,this._currentCodeLensModel);if(this._oldCodeLensModels.clear(),p===this._resolveCodeLensesPromise)this._resolveCodeLensesPromise=void 0},(v)=>{if(X(v),p===this._resolveCodeLensesPromise)this._resolveCodeLensesPromise=void 0})}async getModel(){return await this._getCodeLensModelPromise,await this._resolveCodeLensesPromise,!this._currentCodeLensModel?.isDisposed?this._currentCodeLensModel:void 0}};no=cn([ro(1,z),ro(2,uo),ro(3,Ue),ro(4,wt),ro(5,kt)],no);fe(no.ID,no,1);O(class m extends U{constructor(){super({id:"codelens.showLensesInCurrentLine",precondition:r.hasCodeLensProvider,label:b(935,"Show CodeLens Commands for Current Line")})}async run(n,u){if(!u.hasModel())return;let h=n.get(En),g=n.get(Ue),p=n.get(wt),v=u.getSelection().positionLineNumber,x=u.getContribution(no.ID);if(!x)return;let C=await x.getModel();if(!C)return;let S=[];for(let T of C.lenses)if(T.symbol.command&&T.symbol.range.startLineNumber===v)S.push({label:T.symbol.command.title,command:T.symbol.command});if(S.length===0)return;let D=await h.pick(S,{canPickMany:!1,placeHolder:e(934,"Select a command")});if(!D)return;let E=D.command;if(C.isDisposed){let R=(await x.getModel())?.lenses.find((P)=>P.symbol.range.startLineNumber===v&&P.symbol.command?.title===E.title);if(!R||!R.symbol.command)return;E=R.symbol.command}try{await g.executeCommand(E.id,...E.arguments||[])}catch(T){p.error(T)}}});class _o extends i{static{this.ID="editor.contrib.colorContribution"}constructor(m){super();this._editor=m,this._register(m.onMouseDown((n)=>this.onMouseDown(n)))}dispose(){super.dispose()}onMouseDown(m){let n=this._editor.getOption(169);if(n!=="click"&&n!=="clickAndHover")return;if(!QC(m))return;let u=this._editor.getContribution(Ro.ID);if(!u)return;if(u.isColorPickerVisible)return;let h=m.target.range;if(!h)return;let g=new t(h.startLineNumber,h.startColumn+1,h.endLineNumber,h.endColumn+1);u.showContentHover(g,1,1,!1)}}var dn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},ln=function(m,n){return function(u,h){n(u,h,m)}};class _t{constructor(m,n,u,h){this.owner=m,this.range=n,this.model=u,this.provider=h}static fromBaseColor(m,n){return new _t(m,n.range,n.model,n.provider)}}class Xi extends i{constructor(m,n,u,h){super();let g=m.getModel(),p=u.model;this.color=u.model.color,this.colorPicker=this._register(new t0(n.fragment,p,m.getOption(164),h,"standalone")),this._register(p.onColorFlushed((v)=>{this.color=v})),this._register(p.onDidChangeColor((v)=>{Jm(g,p,v,u.range,u)})),this._register(m.onDidChangeModelContent((v)=>{n.hide(),m.focus()})),Jm(g,p,this.color,u.range,u)}}var Co=class m{constructor(n,u){this._editor=n,this._themeService=u}async createColorHover(n,u,h){if(!this._editor.hasModel())return null;if(!Nh.get(this._editor))return null;let p=await JC(h,this._editor.getModel(),ye.None),v=null,x=null;for(let T of p){let R=T.colorInfo;if(t.containsRange(R.range,n.range))v=R,x=T.provider}let C=v??n,S=x??u,D=!!v;return{colorHover:_t.fromBaseColor(this,await ZC(this._editor.getModel(),C,S)),foundInEditor:D}}async updateEditorModel(n,u){if(!this._editor.hasModel())return;let h=n.model,g=new t(n.range.startLineNumber,n.range.startColumn,n.range.endLineNumber,n.range.endColumn);if(this._color)await Jm(this._editor.getModel(),h,this._color,g,n),g=XC(this._editor,g,h,u)}renderHoverParts(n,u){if(u.length===0||!this._editor.hasModel())return;return this._setMinimumDimensions(n),this._renderedParts=new Xi(this._editor,n,u[0],this._themeService),this._renderedParts}_setMinimumDimensions(n){let u=this._editor.getOption(75)+8;n.setMinimumDimensions(new at(302,u))}get _color(){return this._renderedParts?.color}};Co=dn([ln(1,Be)],Co);var mn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},so=function(m,n){return function(u,h){n(u,h,m)}},Ct;class er{constructor(m,n){this.value=m,this.foundInEditor=n}}var $i=8,pn=22,So=class m extends i{static{Ct=this}static{this.ID="editor.contrib.standaloneColorPickerWidget"}constructor(n,u,h,g,p,v,x,C){super();this._editor=n,this._standaloneColorPickerVisible=u,this._standaloneColorPickerFocused=h,this._keybindingService=p,this._languageFeaturesService=v,this._editorWorkerService=x,this._hoverService=C,this.allowEditorOverflow=!0,this._position=void 0,this._body=document.createElement("div"),this._colorHover=null,this._selectionSetInEditor=!1,this._onResult=this._register(new o),this.onResult=this._onResult.event,this._renderedHoverParts=this._register(new ce),this._renderedStatusBar=this._register(new ce),this._standaloneColorPickerVisible.set(!0),this._standaloneColorPickerParticipant=g.createInstance(Co,this._editor),this._position=this._editor._getViewModel()?.getPrimaryCursorState().modelState.position;let S=this._editor.getSelection();this._selections=this._editor.getSelections()??[];let D=S?{startLineNumber:S.startLineNumber,startColumn:S.startColumn,endLineNumber:S.endLineNumber,endColumn:S.endColumn}:{startLineNumber:0,endLineNumber:0,endColumn:0,startColumn:0},E=this._register(gi(this._body));this._register(E.onDidBlur((T)=>{this.hide()})),this._register(E.onDidFocus((T)=>{this.focus()})),this._register(this._editor.onDidChangeCursorPosition(()=>{if(!this._selectionSetInEditor)this.hide();else this._selectionSetInEditor=!1;this._selections=this._editor.getSelections()??[]})),this._register(this._editor.onMouseMove((T)=>{let R=T.target.element?.classList;if(R&&R.contains("colorpicker-color-decoration"))this.hide()})),this._register(this.onResult((T)=>{this._render(T.value,T.foundInEditor)})),this._start(D),this._body.style.zIndex="50",this._editor.addContentWidget(this)}updateEditor(){if(this._colorHover)this._standaloneColorPickerParticipant.updateEditorModel(this._colorHover,this._selections)}getId(){return Ct.ID}getDomNode(){return this._body}getPosition(){if(!this._position)return null;let n=this._editor.getOption(69).above;return{position:this._position,secondaryPosition:this._position,preference:n?[1,2]:[2,1],positionAffinity:2}}hide(){this.dispose(),this._standaloneColorPickerVisible.set(!1),this._standaloneColorPickerFocused.set(!1),this._editor.removeContentWidget(this),this._editor.focus()}focus(){this._standaloneColorPickerFocused.set(!0),this._body.focus()}async _start(n){let u=await this._computeAsync(n);if(!u)return;this._onResult.fire(new er(u.result,u.foundInEditor))}async _computeAsync(n){if(!this._editor.hasModel())return null;let u={range:n,color:{red:0,green:0,blue:0,alpha:1}},h=await this._standaloneColorPickerParticipant.createColorHover(u,new Km(this._editorWorkerService),this._languageFeaturesService.colorProvider);if(!h)return null;return{result:h.colorHover,foundInEditor:h.foundInEditor}}_render(n,u){let h=document.createDocumentFragment();this._renderedStatusBar.value=this._register(new Nv(this._keybindingService,this._hoverService));let g={fragment:h,statusBar:this._renderedStatusBar.value,onContentsChanged:()=>{},setMinimumDimensions:()=>{},hide:()=>this.hide(),focus:()=>this.focus()};if(this._colorHover=n,this._renderedHoverParts.value=this._standaloneColorPickerParticipant.renderHoverParts(g,[n]),!this._renderedHoverParts.value){this._renderedStatusBar.clear(),this._renderedHoverParts.clear();return}let p=this._renderedHoverParts.value.colorPicker;this._body.classList.add("standalone-colorpicker-body"),this._body.style.maxHeight=Math.max(this._editor.getLayoutInfo().height/4,250)+"px",this._body.style.maxWidth=Math.max(this._editor.getLayoutInfo().width*0.66,500)+"px",this._body.tabIndex=0,this._body.appendChild(h),p.layout();let v=p.body,x=v.saturationBox.domNode.clientWidth,C=v.domNode.clientWidth-x-pn-$i,S=p.body.enterButton;S?.onClicked(()=>{this.updateEditor(),this.hide()});let D=p.header,E=D.pickedColorNode;E.style.width=x+$i+"px";let T=D.originalColorNode;if(T.style.width=C+"px",p.header.closeButton?.onClicked(()=>{this.hide()}),u){if(S)S.button.textContent="Replace";this._selectionSetInEditor=!0,this._editor.setSelection(n.range)}this._editor.layoutContentWidget(this)}};So=Ct=mn([so(3,A),so(4,me),so(5,z),so(6,Pi),so(7,On)],So);var fn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},or=function(m,n){return function(u,h){n(u,h,m)}},St,be=class m extends i{static{St=this}static{this.ID="editor.contrib.standaloneColorPickerController"}constructor(n,u,h){super();this._editor=n,this._instantiationService=h,this._standaloneColorPickerWidget=null,this._standaloneColorPickerVisible=r.standaloneColorPickerVisible.bindTo(u),this._standaloneColorPickerFocused=r.standaloneColorPickerFocused.bindTo(u)}showOrFocus(){if(!this._editor.hasModel())return;if(!this._standaloneColorPickerVisible.get())this._standaloneColorPickerWidget=this._instantiationService.createInstance(So,this._editor,this._standaloneColorPickerVisible,this._standaloneColorPickerFocused);else if(!this._standaloneColorPickerFocused.get())this._standaloneColorPickerWidget?.focus()}hide(){this._standaloneColorPickerFocused.set(!1),this._standaloneColorPickerVisible.set(!1),this._standaloneColorPickerWidget?.hide(),this._editor.focus()}insertColor(){this._standaloneColorPickerWidget?.updateEditor(),this.hide()}static get(n){return n.getContribution(St.ID)}};be=St=fn([or(1,G),or(2,A)],be);class Mt extends gr{constructor(){super({id:"editor.action.showOrFocusStandaloneColorPicker",title:{...b(940,"Show or Focus Standalone Color Picker"),mnemonicTitle:e(939,"&&Show or Focus Standalone Color Picker")},precondition:void 0,menu:[{id:l.CommandPalette}],metadata:{description:b(941,"Show or focus a standalone color picker which uses the default color provider. It displays hex/rgb/hsl colors.")}})}runEditorCommand(m,n){be.get(n)?.showOrFocus()}}class Dt extends U{constructor(){super({id:"editor.action.hideColorPicker",label:b(942,"Hide the Color Picker"),precondition:r.standaloneColorPickerVisible.isEqualTo(!0),kbOpts:{primary:9,weight:100},metadata:{description:b(943,"Hide the standalone color picker.")}})}run(m,n){be.get(n)?.hide()}}class Lt extends U{constructor(){super({id:"editor.action.insertColorWithStandaloneColorPicker",label:b(944,"Insert Color with Standalone Color Picker"),precondition:r.standaloneColorPickerFocused.isEqualTo(!0),kbOpts:{primary:3,weight:100},metadata:{description:b(945,"Insert hex/rgb/hsl colors with the focused standalone color picker.")}})}run(m,n){be.get(n)?.insertColor()}}O(Dt);O(Lt);lt(Mt);fe(_o.ID,_o,2);fe(be.ID,be,1);fe(Nh.ID,Nh,1);Il(KC);fl.register(Av);Te.registerCommand("_executeDocumentColorProvider",function(m,...n){let[u]=n;if(!(u instanceof q))throw wo();let{model:h,colorProviderRegistry:g,defaultColorDecoratorsEnablement:p}=vI(m,u);return YC(new gI,g,h,ye.None,p)});Te.registerCommand("_executeColorPresentationProvider",function(m,...n){let[u,h]=n;if(!h)return;let{uri:g,range:p}=h;if(!(g instanceof q)||!Array.isArray(u)||u.length!==4||!t.isIRange(p))throw wo();let{model:v,colorProviderRegistry:x,defaultColorDecoratorsEnablement:C}=vI(m,g),[S,D,E,T]=u;return YC(new bI({range:p,color:{red:S,green:D,blue:E,alpha:T}}),x,v,ye.None,C)});var bn="editor.action.pasteAs";fe(sd.ID,sd,0);Il(UC);K(new class extends nn{constructor(){super({id:mI,precondition:GC,kbOpts:{weight:100,primary:2137}})}runEditorCommand(m,n){return sd.get(n)?.changePasteType()}});K(new class extends nn{constructor(){super({id:"editor.hidePasteWidget",precondition:GC,kbOpts:{weight:100,primary:9}})}runEditorCommand(m,n){sd.get(n)?.clearWidgets()}});O(class m extends U{static{this.argsSchema={oneOf:[{type:"object",required:["kind"],properties:{kind:{type:"string",description:e(967,`The kind of the paste edit to try pasting with.
|
|
2
|
+
If there are multiple edits for this kind, the editor will show a picker. If there are no edits of this kind, the editor will show an error message.`)}}},{type:"object",required:["preferences"],properties:{preferences:{type:"array",description:e(968,`List of preferred paste edit kind to try applying.
|
|
3
|
+
The first edit matching the preferences will be applied.`),items:{type:"string"}}}}]}}constructor(){super({id:bn,label:b(969,"Paste As..."),precondition:r.writable,metadata:{description:"Paste as",args:[{name:"args",schema:m.argsSchema}]},canTriggerInlineEdits:!0})}run(n,u,h){let g;if(h){if("kind"in h)g={only:new zt(h.kind)};else if("preferences"in h)g={preferences:h.preferences.map((p)=>new zt(p))}}return sd.get(u)?.pasteAs(g)}});O(class extends U{constructor(){super({id:"editor.action.pasteAsText",label:b(970,"Paste as Text"),precondition:r.writable,canTriggerInlineEdits:!0})}run(m,n){return sd.get(n)?.pasteAs({providerId:Rh.id})}});class Tt{constructor(){this._dragOperations=new Map}removeDragOperationTransfer(m){if(m&&this._dragOperations.has(m)){let n=this._dragOperations.get(m);return this._dragOperations.delete(m),n}return}}class Io{constructor(m){this.identifier=m}}var At=ie("treeViewsDndService");xe(At,Tt,1);var vn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},Mo=function(m,n){return function(u,h){n(u,h,m)}},ve,wn="editor.dropIntoEditor.preferences",Rt="editor.changeDropType",Lo=new M("dropWidgetVisible",!1,e(988,"Whether the drop widget is showing")),Ae=class m extends i{static{ve=this}static{this.ID="editor.contrib.dropIntoEditorController"}static get(n){return n.getContribution(ve.ID)}constructor(n,u,h,g,p){super();this._configService=h,this._languageFeaturesService=g,this._treeViewsDragAndDropService=p,this.treeItemsTransfer=E0.getInstance(),this._dropProgressManager=this._register(u.createInstance(Iv,"dropIntoEditor",n)),this._postDropWidgetManager=this._register(u.createInstance(Dv,"dropIntoEditor",n,Lo,{id:Rt,label:e(989,"Show drop options...")},()=>ve._configureDefaultAction?[ve._configureDefaultAction]:[])),this._register(n.onDropIntoEditor((v)=>this.onDropIntoEditor(n,v.position,v.event)))}clearWidgets(){this._postDropWidgetManager.clear()}changeDropType(){this._postDropWidgetManager.tryShowSelector()}async onDropIntoEditor(n,u,h){if(!h.dataTransfer||!n.hasModel())return;ve._currentDropOperation?.cancel(),n.focus(),n.setPosition(u);let g=Yt(async(p)=>{let v=new d,x=v.add(new Cs(n,1,void 0,p));try{let C=await this.extractDataTransferData(h);if(C.size===0||x.token.isCancellationRequested)return;let S=n.getModel();if(!S)return;let D=this._languageFeaturesService.documentDropEditProvider.ordered(S).filter((T)=>{if(!T.dropMimeTypes)return!0;return T.dropMimeTypes.some((R)=>C.matches(R))}),E=v.add(await this.getDropEdits(D,S,u,C,x.token));if(x.token.isCancellationRequested)return;if(E.edits.length){let T=this.getInitialActiveEditIndex(S,E.edits),R=n.getOption(43).showDropSelector==="afterDrop";await this._postDropWidgetManager.applyEditAndShowIfNeeded([t.fromPositions(u)],{activeEditIndex:T,allEdits:E.edits},R,async(P)=>P,p)}}finally{if(v.dispose(),ve._currentDropOperation===g)ve._currentDropOperation=void 0}});this._dropProgressManager.showWhile(u,e(990,"Running drop handlers. Click to cancel"),g,{cancel:()=>g.cancel()}),ve._currentDropOperation=g}async getDropEdits(n,u,h,g,p){let v=new d,x=await uc(Promise.all(n.map(async(S)=>{try{let D=await S.provideDocumentDropEdits(u,h,g,p);if(D)v.add(D);return D?.edits.map((E)=>({...E,providerId:S.id}))}catch(D){if(!pi(D))console.error(D);console.error(D)}return})),p),C=yo(x??[]).flat();return{edits:qC(C),dispose:()=>v.dispose()}}getInitialActiveEditIndex(n,u){let h=this._configService.getValue(wn,{resource:n.uri});for(let g of Array.isArray(h)?h:[]){let p=new zt(g),v=u.findIndex((x)=>x.kind&&p.contains(x.kind));if(v>=0)return v}return 0}async extractDataTransferData(n){if(!n.dataTransfer)return new Ef;let u=C1(n.dataTransfer);if(this.treeItemsTransfer.hasData(Io.prototype)){let h=this.treeItemsTransfer.getData(Io.prototype);if(Array.isArray(h))for(let g of h){let p=await this._treeViewsDragAndDropService.removeDragOperationTransfer(g.identifier);if(p)for(let[v,x]of p)u.replace(v,x)}}return u}};Ae=ve=vn([Mo(1,A),Mo(2,re),Mo(3,z),Mo(4,At)],Ae);fe(Ae.ID,Ae,2);Il(VC);K(new class extends nn{constructor(){super({id:Rt,precondition:Lo,kbOpts:{weight:100,primary:2137}})}runEditorCommand(m,n,u){Ae.get(n)?.changeDropType()}});K(new class extends nn{constructor(){super({id:"editor.hideDropWidget",precondition:Lo,kbOpts:{weight:100,primary:9}})}runEditorCommand(m,n,u){Ae.get(n)?.clearWidgets()}});class tr extends U{constructor(){super({id:"editor.action.fontZoomIn",label:b(1069,"Increase Editor Font Size"),precondition:void 0})}run(m,n){Xr.setZoomLevel(Xr.getZoomLevel()+1)}}class ir extends U{constructor(){super({id:"editor.action.fontZoomOut",label:b(1070,"Decrease Editor Font Size"),precondition:void 0})}run(m,n){Xr.setZoomLevel(Xr.getZoomLevel()-1)}}class rr extends U{constructor(){super({id:"editor.action.fontZoomReset",label:b(1071,"Reset Editor Font Size"),precondition:void 0})}run(m,n){Xr.setZoomLevel(0)}}O(tr);O(ir);O(rr);Te.registerCommand("_executeDocumentSymbolProvider",async function(m,...n){let[u]=n;Fe(q.isUri(u));let h=m.get(Ah),p=await m.get(Dn).createModelReference(u);try{return(await h.getOrCreate(p.object.textEditorModel,ye.None)).getTopLevelSymbols()}finally{p.dispose()}});var xn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},nr=function(m,n){return function(u,h){n(u,h,m)}},To=class m extends i{static{this.ID="editor.contrib.markerSelectionStatus"}constructor(n,u,h){super();this._editor=n,this._markerService=h,this._ctxHasDiagnostics=r.selectionHasDiagnostics.bindTo(u),this._store.add(this._editor.onDidChangeCursorSelection(()=>this._update())),this._store.add(this._editor.onDidChangeModel(()=>this._update())),this._store.add(this._markerService.onMarkerChanged((g)=>{let p=this._editor.getModel();if(p&&g.some((v)=>bs(v,p.uri)))this._update()})),this._update()}dispose(){this._ctxHasDiagnostics.reset(),super.dispose()}_update(){let n=this._editor.getModel(),u=this._editor.getSelection();if(!n||!u){this._ctxHasDiagnostics.reset();return}let g=this._markerService.read({resource:n.uri,severities:an.Error|an.Warning|an.Info}).some((p)=>t.areIntersecting({startLineNumber:p.startLineNumber,startColumn:p.startColumn,endLineNumber:p.endLineNumber,endColumn:p.endColumn},u));this._ctxHasDiagnostics.set(g)}};To=xn([nr(1,G),nr(2,Br)],To);fe(To.ID,To,1);class sr extends U{constructor(){super({id:"editor.action.debugEditorGpuRenderer",label:b(1159,"Developer: Debug Editor GPU Renderer"),precondition:L.true()})}async run(m,n){let u=m.get(A),g=await m.get(En).pick([{label:e(1156,"Log Texture Atlas Stats"),id:"logTextureAtlasStats"},{label:e(1157,"Save Texture Atlas"),id:"saveTextureAtlas"},{label:e(1158,"Draw Glyph"),id:"drawGlyph"}],{canPickMany:!1});if(!g)return;switch(g.id){case"logTextureAtlasStats":u.invokeFunction((p)=>{let v=p.get(Ze),x=co.atlas;if(!co.atlas){v.error("No texture atlas found");return}let C=x.getStats();v.info(["Texture atlas stats",...C].join(`
|
|
4
|
+
|
|
5
|
+
`))});break;case"saveTextureAtlas":u.invokeFunction(async(p)=>{let v=p.get(ma),x=p.get(yI),C=v.getWorkspace().folders;if(C.length>0){let S=co.atlas,D=[];for(let[E,T]of S.pages.entries())D.push(...[x.writeFile(q.joinPath(C[0].uri,`textureAtlasPage${E}_actual.png`),hc.wrap(new Uint8Array(await(await T.source.convertToBlob()).arrayBuffer()))),x.writeFile(q.joinPath(C[0].uri,`textureAtlasPage${E}_usage.png`),hc.wrap(new Uint8Array(await(await T.getUsagePreview()).arrayBuffer())))]);await Promise.all(D)}});break;case"drawGlyph":u.invokeFunction(async(p)=>{let v=p.get(re),x=p.get(yI),C=p.get(En),D=p.get(ma).getWorkspace().folders;if(D.length===0)return;let E=co.atlas,T=v.getValue("editor.fontFamily"),R=v.getValue("editor.fontSize"),P=new Yh(R,T,Ke().devicePixelRatio,co.decorationStyleCache),H=await C.input({prompt:"Enter a character to draw (prefix with 0x for code point))"});if(!H)return;let V=H.match(/0x(?<codePoint>[0-9a-f]+)/i)?.groups?.codePoint;if(V!==void 0)H=String.fromCodePoint(parseInt(V,16));let Q=0,oe=0,te=E.getGlyph(P,H,Q,oe,0);if(!te)return;let ne=E.pages[te.pageIndex].source.getContext("2d")?.getImageData(te.x,te.y,te.w,te.h);if(!ne)return;let ae=new OffscreenCanvas(ne.width,ne.height);yc(ae.getContext("2d")).putImageData(ne,0,0);let ge=await ae.convertToBlob({type:"image/png"}),$e=q.joinPath(D[0].uri,`glyph_${H}_${Q}_${R}px_${T.replaceAll(/[,\\\/\.'\s]/g,"_")}.png`);await x.writeFile($e,hc.wrap(new Uint8Array(await ge.arrayBuffer())))});break}}}O(sr);fe(Ym.ID,Ym,1);fl.register(Ov);class Pt{constructor(m,n,u){this._editRange=m,this._originalSelection=n,this._text=u}getEditOperations(m,n){n.addTrackedEditOperation(this._editRange,this._text)}computeCursorState(m,n){let h=n.getInverseEditOperations()[0].range;if(!this._originalSelection.isEmpty())return new F(h.endLineNumber,h.endColumn-this._text.length,h.endLineNumber,h.endColumn);return new F(h.endLineNumber,Math.min(this._originalSelection.positionColumn,h.endColumn),h.endLineNumber,Math.min(this._originalSelection.positionColumn,h.endColumn))}}var kn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},yn=function(m,n){return function(u,h){n(u,h,m)}},Eo,qe=class m{static{Eo=this}static{this.ID="editor.contrib.inPlaceReplaceController"}static get(n){return n.getContribution(Eo.ID)}static{this.DECORATION=de.register({description:"in-place-replace",className:"valueSetReplacement"})}constructor(n,u){this.editor=n,this.editorWorkerService=u,this.decorations=this.editor.createDecorationsCollection()}dispose(){}run(n,u){this.currentRequest?.cancel();let h=this.editor.getSelection(),g=this.editor.getModel();if(!g||!h)return;let p=h;if(p.startLineNumber!==p.endLineNumber)return;let v=new Pf(this.editor,5),x=g.uri;if(!this.editorWorkerService.canNavigateValueSet(x))return Promise.resolve(void 0);return this.currentRequest=Yt((C)=>this.editorWorkerService.navigateValueSet(x,p,u)),this.currentRequest.then((C)=>{if(!C||!C.range||!C.value)return;if(!v.validate(this.editor))return;let S=t.lift(C.range),D=C.range,E=C.value.length-(p.endColumn-p.startColumn);if(D={startLineNumber:D.startLineNumber,startColumn:D.startColumn,endLineNumber:D.endLineNumber,endColumn:D.startColumn+C.value.length},E>1)p=new F(p.startLineNumber,p.startColumn,p.endLineNumber,p.endColumn+E-1);let T=new Pt(S,p,C.value);this.editor.pushUndoStop(),this.editor.executeCommand(n,T),this.editor.pushUndoStop(),this.decorations.set([{range:D,options:Eo.DECORATION}]),this.decorationRemover?.cancel(),this.decorationRemover=Ar(350),this.decorationRemover.then(()=>this.decorations.clear()).catch(X)}).catch(X)}};qe=Eo=kn([yn(1,Pi)],qe);class ar extends U{constructor(){super({id:"editor.action.inPlaceReplace.up",label:b(1306,"Replace with Previous Value"),precondition:r.writable,kbOpts:{kbExpr:r.editorTextFocus,primary:3159,weight:100}})}run(m,n){let u=qe.get(n);if(!u)return Promise.resolve(void 0);return u.run(this.id,!1)}}class cr extends U{constructor(){super({id:"editor.action.inPlaceReplace.down",label:b(1307,"Replace with Next Value"),precondition:r.writable,kbOpts:{kbExpr:r.editorTextFocus,primary:3161,weight:100}})}run(m,n){let u=qe.get(n);if(!u)return Promise.resolve(void 0);return u.run(this.id,!0)}}fe(qe.ID,qe,4);O(ar);O(cr);class Ot{constructor(m){this._selection=m,this._selectionId=null}getEditOperations(m,n){let u=_n(m);if(u)n.addEditOperation(u.range,u.text);this._selectionId=n.trackSelection(this._selection)}computeCursorState(m,n){return n.getTrackedSelection(this._selectionId)}}function _n(m){let n=m.getLineCount();return Kt.insert(new s(n,m.getLineMaxColumn(n)),m.getEOL())}class qt extends U{static{this.ID="editor.action.insertFinalNewLine"}constructor(){super({id:qt.ID,label:b(1308,"Insert Final New Line"),precondition:r.writable})}run(m,n,u){let h=n.getSelection();if(h===null)return;let g=new Ot(h);n.pushUndoStop(),n.executeCommands(this.id,[g]),n.pushUndoStop()}}O(qt);var Sn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},zo=function(m,n){return function(u,h){n(u,h,m)}},Oo,dr=new M("LinkedEditingInputVisible",!1),In="linked-editing-decoration",je=class m extends i{static{Oo=this}static{this.ID="editor.contrib.linkedEditing"}static{this.DECORATION=de.register({description:"linked-editing",stickiness:0,className:In})}static get(n){return n.getContribution(Oo.ID)}constructor(n,u,h,g,p){super();this.languageConfigurationService=g,this._syncRangesToken=0,this._localToDispose=this._register(new d),this._editor=n,this._providers=h.linkedEditingRangeProvider,this._enabled=!1,this._visibleContextKey=dr.bindTo(u),this._debounceInformation=p.for(this._providers,"Linked Editing",{max:200}),this._currentDecorations=this._editor.createDecorationsCollection(),this._languageWordPattern=null,this._currentWordPattern=null,this._ignoreChangeEvent=!1,this._localToDispose=this._register(new d),this._rangeUpdateTriggerPromise=null,this._rangeSyncTriggerPromise=null,this._currentRequestCts=null,this._currentRequestPosition=null,this._currentRequestModelVersion=null,this._register(this._editor.onDidChangeModel(()=>this.reinitialize(!0))),this._register(this._editor.onDidChangeConfiguration((v)=>{if(v.hasChanged(78)||v.hasChanged(106))this.reinitialize(!1)})),this._register(this._providers.onDidChange(()=>this.reinitialize(!1))),this._register(this._editor.onDidChangeModelLanguage(()=>this.reinitialize(!0))),this.reinitialize(!0)}reinitialize(n){let u=this._editor.getModel(),h=u!==null&&(this._editor.getOption(78)||this._editor.getOption(106))&&this._providers.has(u);if(h===this._enabled&&!n)return;if(this._enabled=h,this.clearRanges(),this._localToDispose.clear(),!h||u===null)return;this._localToDispose.add(I.runAndSubscribe(u.onDidChangeLanguageConfiguration,()=>{this._languageWordPattern=this.languageConfigurationService.getLanguageConfiguration(u.getLanguageId()).getWordDefinition()}));let g=new qi(this._debounceInformation.get(u)),p=()=>{this._rangeUpdateTriggerPromise=g.trigger(()=>this.updateRanges(),this._debounceDuration??this._debounceInformation.get(u))},v=new qi(0),x=(C)=>{this._rangeSyncTriggerPromise=v.trigger(()=>this._syncRanges(C))};this._localToDispose.add(this._editor.onDidChangeCursorPosition(()=>{p()})),this._localToDispose.add(this._editor.onDidChangeModelContent((C)=>{if(!this._ignoreChangeEvent){if(this._currentDecorations.length>0){let S=this._currentDecorations.getRange(0);if(S&&C.changes.every((D)=>S.intersectRanges(D.range))){x(this._syncRangesToken);return}}}p()})),this._localToDispose.add({dispose:()=>{g.dispose(),v.dispose()}}),this.updateRanges()}_syncRanges(n){if(!this._editor.hasModel()||n!==this._syncRangesToken||this._currentDecorations.length===0)return;let u=this._editor.getModel(),h=this._currentDecorations.getRange(0);if(!h||h.startLineNumber!==h.endLineNumber)return this.clearRanges();let g=u.getValueInRange(h);if(this._currentWordPattern){let v=g.match(this._currentWordPattern);if((v?v[0].length:0)!==g.length)return this.clearRanges()}let p=[];for(let v=1,x=this._currentDecorations.length;v<x;v++){let C=this._currentDecorations.getRange(v);if(!C)continue;if(C.startLineNumber!==C.endLineNumber)p.push({range:C,text:g});else{let S=u.getValueInRange(C),D=g,{startColumn:E,endColumn:T}=C,R=Ao(S,D);E+=R,S=S.substr(R),D=D.substr(R);let P=Ms(S,D);if(T-=P,S=S.substr(0,S.length-P),D=D.substr(0,D.length-P),E!==T||D.length!==0)p.push({range:new t(C.startLineNumber,E,C.endLineNumber,T),text:D})}}if(p.length===0)return;try{this._editor.popUndoStop(),this._ignoreChangeEvent=!0;let v=this._editor._getViewModel().getPrevEditOperationType();this._editor.executeEdits("linkedEditing",p),this._editor._getViewModel().setPrevEditOperationType(v)}finally{this._ignoreChangeEvent=!1}}dispose(){this.clearRanges(),super.dispose()}clearRanges(){if(this._visibleContextKey.set(!1),this._currentDecorations.clear(),this._currentRequestCts)this._currentRequestCts.cancel(),this._currentRequestCts=null,this._currentRequestPosition=null}async updateRanges(n=!1){if(!this._editor.hasModel()){this.clearRanges();return}let u=this._editor.getPosition();if(!this._enabled&&!n||this._editor.getSelections().length>1){this.clearRanges();return}let h=this._editor.getModel(),g=h.getVersionId();if(this._currentRequestPosition&&this._currentRequestModelVersion===g){if(u.equals(this._currentRequestPosition))return;if(this._currentDecorations.length>0){let v=this._currentDecorations.getRange(0);if(v&&v.containsPosition(u))return}}if(!this._currentRequestPosition?.equals(u)){if(!this._currentDecorations.getRange(0)?.containsPosition(u))this.clearRanges()}this._currentRequestPosition=u,this._currentRequestModelVersion=g;let p=this._currentRequestCts=new Ge;try{let v=new un(!1),x=await ur(this._providers,h,u,p.token);if(this._debounceInformation.update(h,v.elapsed()),p!==this._currentRequestCts)return;if(this._currentRequestCts=null,g!==h.getVersionId())return;let C=[];if(x?.ranges)C=x.ranges;this._currentWordPattern=x?.wordPattern||this._languageWordPattern;let S=!1;for(let E=0,T=C.length;E<T;E++)if(t.containsPosition(C[E],u)){if(S=!0,E!==0){let R=C[E];C.splice(E,1),C.unshift(R)}break}if(!S){this.clearRanges();return}let D=C.map((E)=>({range:E,options:Oo.DECORATION}));this._visibleContextKey.set(!0),this._currentDecorations.set(D),this._syncRangesToken++}catch(v){if(!pi(v))X(v);if(this._currentRequestCts===p||!this._currentRequestCts)this.clearRanges()}}};je=Oo=Sn([zo(1,G),zo(2,z),zo(3,ut),zo(4,uo)],je);class lr extends U{constructor(){super({id:"editor.action.linkedEditing",label:b(1342,"Start Linked Editing"),precondition:L.and(r.writable,r.hasRenameProvider),kbOpts:{kbExpr:r.editorTextFocus,primary:3132,weight:100}})}runCommand(m,n){let u=m.get(Ee),[h,g]=Array.isArray(n)&&n||[void 0,void 0];if(q.isUri(h)&&s.isIPosition(g))return u.openCodeEditor({resource:h},u.getActiveCodeEditor()).then((p)=>{if(!p)return;p.setPosition(g),p.invokeWithinContext((v)=>(this.reportTelemetry(v,p),this.run(v,p)))},X);return super.runCommand(m,n)}run(m,n){let u=je.get(n);if(u)return Promise.resolve(u.updateRanges(!0));return Promise.resolve()}}var Ln=nn.bindToContribution(je.get);K(new Ln({id:"cancelLinkedEditingInput",precondition:dr,handler:(m)=>m.clearRanges(),kbOpts:{kbExpr:r.editorTextFocus,weight:199,primary:9,secondary:[1033]}}));function ur(m,n,u,h){let g=m.ordered(n);return l0(g.map((p)=>async()=>{try{return await p.provideLinkedEditingRanges(n,u,h)}catch(v){yt(v);return}}),(p)=>!!p&&qn(p?.ranges))}a("editor.linkedEditingBackground",{dark:y.fromHex("#f00").transparent(0.3),light:y.fromHex("#f00").transparent(0.3),hcDark:y.fromHex("#f00").transparent(0.3),hcLight:y.white},e(1341,"Background color when the editor auto renames on type."));Po("_executeLinkedEditingProvider",(m,n,u)=>{let{linkedEditingRangeProvider:h}=m.get(z);return ur(h,n,u,ye.None)});fe(je.ID,je,1);O(lr);class Nt extends i{static{this.ID="editor.contrib.longLinesHelper"}constructor(m){super();this._editor=m,this._register(this._editor.onMouseDown((n)=>{let u=this._editor.getOption(133);if(u>=0&&n.target.type===6&&n.target.position.column>=u)this._editor.updateOptions({stopRenderingLineAfter:-1})}))}}fe(Nt.ID,Nt,2);class qo extends i{static{this.ID="editor.contrib.middleScroll"}constructor(m){super();this._editor=m;let n=ct(this._editor),u=n.getOption(172);this._register(W((h)=>{if(!u.read(h))return;let g=n.domNode.read(h);if(!g)return;let p=h.store.add(c1("scrollingSession",void 0));h.store.add(this._editor.onMouseDown((x)=>{if(p.read(void 0)){p.set(void 0,void 0);return}if(!x.event.middleButton)return;x.event.stopPropagation(),x.event.preventDefault();let S=new d,D=new vi(x.event.posx,x.event.posy),T=Tn(B(g),D,S).map((H)=>H.subtract(D).withThreshold(5)),R=g.getBoundingClientRect(),P=new vi(D.x-R.left,D.y-R.top);p.set({mouseDeltaAfterThreshold:T,initialMousePosInEditor:P,didScroll:!1,dispose:()=>S.dispose()},void 0),S.add(this._editor.onMouseUp((H)=>{let V=p.read(void 0);if(V&&V.didScroll)p.set(void 0,void 0)})),S.add(this._editor.onKeyDown((H)=>{p.set(void 0,void 0)}))})),h.store.add(W((x)=>{let C=p.read(x);if(!C)return;let S=Date.now();x.store.add(W((E)=>{Mv.instance.invalidateOnNextAnimationFrame(E);let T=Date.now(),R=T-S;S=T;let P=C.mouseDeltaAfterThreshold.read(void 0),H=R/32,V=P.scale(H),Q=new vi(this._editor.getScrollLeft(),this._editor.getScrollTop());if(this._editor.setScrollPosition(An(Q.add(V))),!V.isZero())C.didScroll=!0}));let D=f((E)=>{let T=C.mouseDeltaAfterThreshold.read(E),R="";return R+=T.y<0?"n":T.y>0?"s":"",R+=T.x<0?"w":T.x>0?"e":"",R});x.store.add(W((E)=>{g.setAttribute("data-scroll-direction",D.read(E))}))}));let v=h.store.add(ue.div({class:["scroll-editor-on-middle-click-dot",p.map((x)=>x?"":"hidden")],style:{left:p.map((x)=>x?x.initialMousePosInEditor.x:0),top:p.map((x)=>x?x.initialMousePosInEditor.y:0)}}).toDisposableLiveElement());h.store.add(ep(g,v.element)),h.store.add(W((x)=>{let C=p.read(x);g.classList.toggle("scroll-editor-on-middle-click-editor",!!C)}))}))}}function Tn(m,n,u){let h=j("pos",n);return u.add(c(m,"mousemove",(g)=>{h.set(new vi(g.pageX,g.pageY),void 0)})),h}function An(m){return{scrollLeft:m.x,scrollTop:m.y}}fe(qo.ID,qo,2);class jo extends i{static{this.ID="editor.contrib.placeholderText"}constructor(m){super();this._editor=m,this._editorObs=ct(this._editor),this._placeholderText=this._editorObs.getOption(100),this._state=Rn({owner:this,equalsFn:Uv},(n)=>{let u=this._placeholderText.read(n);if(!u)return;if(!this._editorObs.valueIsEmpty.read(n))return;return{placeholder:u}}),this._shouldViewBeAlive=Nn(this,(n)=>this._state.read(n)?.placeholder!==void 0),this._view=f((n)=>{if(!this._shouldViewBeAlive.read(n))return;let u=Re("div.editorPlaceholder");n.store.add(W((h)=>{let g=this._state.read(h),p=g?.placeholder!==void 0;u.root.style.display=p?"block":"none",u.root.innerText=g?.placeholder??""})),n.store.add(W((h)=>{let g=this._editorObs.layoutInfo.read(h);u.root.style.left=`${g.contentLeft}px`,u.root.style.width=g.contentWidth-g.verticalScrollbarWidth+"px",u.root.style.top=`${this._editor.getTopForLineNumber(0)}px`})),n.store.add(W((h)=>{u.root.style.fontFamily=this._editorObs.getOption(58).read(h),u.root.style.fontSize=this._editorObs.getOption(61).read(h)+"px",u.root.style.lineHeight=this._editorObs.getOption(75).read(h)+"px"})),n.store.add(this._editorObs.createOverlayWidget({allowEditorOverflow:!1,minContentWidthInPx:Ne(0),position:Ne(null),domNode:u.root}))}),this._view.recomputeInitiallyAndOnChange(this._store)}}function Nn(m,n){return mr(m,(u,h)=>{if(h===!0)return!0;return n(u)})}var Fn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},Hn=function(m,n){return function(u,h){n(u,h,m)}};class pr{constructor(m){this.instantiationService=m}init(...m){}}function fr(m){return m()}var hr=class m extends pr{constructor(n,u){super(u);this.init(n)}};hr=Fn([Hn(1,A)],hr);fe(jo.ID,fr(()=>jo),0);a("editor.placeholder.foreground",UM,e(1400,"Foreground color of the placeholder text in the editor."));var Vn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},vr=function(m,n){return function(u,h){n(u,h,m)}},Fo=class m extends i{static{this.ID="editor.sectionHeaderDetector"}constructor(n,u,h){super();this.editor=n,this.languageConfigurationService=u,this.editorWorkerService=h,this.decorations=this.editor.createDecorationsCollection(),this.options=this.createOptions(n.getOption(81)),this.computePromise=null,this.currentOccurrences={},this._register(n.onDidChangeModel((g)=>{this.currentOccurrences={},this.options=this.createOptions(n.getOption(81)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(n.onDidChangeModelLanguage((g)=>{this.currentOccurrences={},this.options=this.createOptions(n.getOption(81)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(u.onDidChange((g)=>{let p=this.editor.getModel()?.getLanguageId();if(p&&g.affects(p))this.currentOccurrences={},this.options=this.createOptions(n.getOption(81)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(n.onDidChangeConfiguration((g)=>{if(this.options&&!g.hasChanged(81))return;this.options=this.createOptions(n.getOption(81)),this.updateDecorations([]),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(this.editor.onDidChangeModelContent((g)=>{this.computeSectionHeaders.schedule()})),this._register(n.onDidChangeModelTokens((g)=>{if(!this.computeSectionHeaders.isScheduled())this.computeSectionHeaders.schedule(1000)})),this.computeSectionHeaders=this._register(new Ce(()=>{this.findSectionHeaders()},250)),this.computeSectionHeaders.schedule(0)}createOptions(n){if(!n||!this.editor.hasModel())return;let u=this.editor.getModel().getLanguageId();if(!u)return;let h=this.languageConfigurationService.getLanguageConfiguration(u).comments,g=this.languageConfigurationService.getLanguageConfiguration(u).foldingRules;if(!h&&!g?.markers)return;return{foldingRules:g,markSectionHeaderRegex:n.markSectionHeaderRegex,findMarkSectionHeaders:n.showMarkSectionHeaders,findRegionSectionHeaders:n.showRegionSectionHeaders}}findSectionHeaders(){if(!this.editor.hasModel()||!this.options?.findMarkSectionHeaders&&!this.options?.findRegionSectionHeaders)return;let n=this.editor.getModel();if(n.isDisposed()||n.isTooLargeForSyncing())return;let u=n.getVersionId();this.editorWorkerService.findSectionHeaders(n.uri,this.options).then((h)=>{if(n.isDisposed()||n.getVersionId()!==u)return;this.updateDecorations(h)})}updateDecorations(n){let u=this.editor.getModel();if(u)n=n.filter((p)=>{if(!p.shouldBeInComments)return!0;let v=u.validateRange(p.range),x=u.tokenization.getLineTokens(v.startLineNumber),C=x.findTokenIndexAtOffset(v.startColumn-1),S=x.getStandardTokenType(C),D=u.getLanguageIdAtPosition(v.startLineNumber,v.startColumn);return x.getLanguageId(C)===D&&S===1});let h=Object.values(this.currentOccurrences).map((p)=>p.decorationId),g=n.map((p)=>Un(p));this.editor.changeDecorations((p)=>{let v=p.deltaDecorations(h,g);this.currentOccurrences={};for(let x=0,C=v.length;x<C;x++){let S={sectionHeader:n[x],decorationId:v[x]};this.currentOccurrences[S.decorationId]=S}})}stop(){if(this.computeSectionHeaders.cancel(),this.computePromise)this.computePromise.cancel(),this.computePromise=null}dispose(){super.dispose(),this.stop(),this.decorations.clear()}};Fo=Vn([vr(1,ut),vr(2,Pi)],Fo);function Un(m){return{range:m.range,options:de.createDynamic({description:"section-header",stickiness:3,collapseOnReplaceEdit:!0,minimap:{color:void 0,position:1,sectionHeaderStyle:m.hasSeparatorLine?2:1,sectionHeaderText:m.text}})}}fe(Fo.ID,Fo,1);function Qn(m){for(let n=0,u=m.length;n<u;n+=4){let h=m[n+0],g=m[n+1],p=m[n+2],v=m[n+3];m[n+0]=v,m[n+1]=p,m[n+2]=g,m[n+3]=h}}function Gn(m){let n=new Uint8Array(m.buffer,m.byteOffset,m.length*4);if(!i1())Qn(n);return hc.wrap(n)}function jt(m){let n=new Uint32Array(Yn(m)),u=0;if(n[u++]=m.id,m.type==="full")n[u++]=1,n[u++]=m.data.length,n.set(m.data,u),u+=m.data.length;else{n[u++]=2,n[u++]=m.deltas.length;for(let h of m.deltas)if(n[u++]=h.start,n[u++]=h.deleteCount,h.data)n[u++]=h.data.length,n.set(h.data,u),u+=h.data.length;else n[u++]=0}return Gn(n)}function Yn(m){let n=0;if(n+=2,m.type==="full")n+=1+m.data.length;else{n+=1,n+=3*m.deltas.length;for(let u of m.deltas)if(u.data)n+=u.data.length}return n}function ao(m){return m&&!!m.data}function Ht(m){return m&&Array.isArray(m.edits)}class wr{constructor(m,n,u){this.provider=m,this.tokens=n,this.error=u}}function Bt(m,n){return m.has(n)}function Zn(m,n){let u=m.orderedGroups(n);return u.length>0?u[0]:[]}async function Wt(m,n,u,h,g){let p=Zn(m,n),v=await Promise.all(p.map(async(x)=>{let C,S=null;try{C=await x.provideDocumentSemanticTokens(n,x===u?h:null,g)}catch(D){S=D,C=null}if(!C||!ao(C)&&!Ht(C))C=null;return new wr(x,C,S)}));for(let x of v){if(x.error)throw x.error;if(x.tokens)return x}if(v.length>0)return v[0];return null}function Xn(m,n){let u=m.orderedGroups(n);return u.length>0?u[0]:null}class xr{constructor(m,n){this.provider=m,this.tokens=n}}function kr(m,n){return m.has(n)}function _r(m,n){let u=m.orderedGroups(n);return u.length>0?u[0]:[]}async function Ho(m,n,u,h){let g=_r(m,n),p=await Promise.all(g.map(async(v)=>{let x;try{x=await v.provideDocumentRangeSemanticTokens(n,u,h)}catch(C){yt(C),x=null}if(!x||!ao(x))x=null;return new xr(v,x)}));for(let v of p)if(v.tokens)return v;if(p.length>0)return p[0];return null}Te.registerCommand("_provideDocumentSemanticTokensLegend",async(m,...n)=>{let[u]=n;Fe(u instanceof q);let h=m.get(Et).getModel(u);if(!h)return;let{documentSemanticTokensProvider:g}=m.get(z),p=Xn(g,h);if(!p)return m.get(Ue).executeCommand("_provideDocumentRangeSemanticTokensLegend",u);return p[0].getLegend()});Te.registerCommand("_provideDocumentSemanticTokens",async(m,...n)=>{let[u]=n;Fe(u instanceof q);let h=m.get(Et).getModel(u);if(!h)return;let{documentSemanticTokensProvider:g}=m.get(z);if(!Bt(g,h))return m.get(Ue).executeCommand("_provideDocumentRangeSemanticTokens",u,h.getFullModelRange());let p=await Wt(g,h,null,null,ye.None);if(!p)return;let{provider:v,tokens:x}=p;if(!x||!ao(x))return;let C=jt({id:0,type:"full",data:x.data});if(x.resultId)v.releaseDocumentSemanticTokens(x.resultId);return C});Te.registerCommand("_provideDocumentRangeSemanticTokensLegend",async(m,...n)=>{let[u,h]=n;Fe(u instanceof q);let g=m.get(Et).getModel(u);if(!g)return;let{documentRangeSemanticTokensProvider:p}=m.get(z),v=_r(p,g);if(v.length===0)return;if(v.length===1)return v[0].getLegend();if(!h||!t.isIRange(h))return console.warn("provideDocumentRangeSemanticTokensLegend might be out-of-sync with provideDocumentRangeSemanticTokens unless a range argument is passed in"),v[0].getLegend();let x=await Ho(p,g,t.lift(h),ye.None);if(!x)return;return x.provider.getLegend()});Te.registerCommand("_provideDocumentRangeSemanticTokens",async(m,...n)=>{let[u,h]=n;Fe(u instanceof q),Fe(t.isIRange(h));let g=m.get(Et).getModel(u);if(!g)return;let{documentRangeSemanticTokensProvider:p}=m.get(z),v=await Ho(p,g,t.lift(h),ye.None);if(!v||!v.tokens)return;return jt({id:0,type:"full",data:v.tokens.data})});var Bo="editor.semanticHighlighting";function We(m,n,u){let h=u.getValue("editor.semanticHighlighting",{overrideIdentifier:m.getLanguageId(),resource:m.uri})?.enabled;if(typeof h==="boolean")return h;return n.getColorTheme().semanticHighlighting}var Cr=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},he=function(m,n){return function(u,h){n(u,h,m)}},_e,Vt=class m extends i{constructor(n,u,h,g,p,v){super();this._watchers=new tn,this._providerChangeListeners=this._register(new d);let x=v.documentSemanticTokensProvider,C=(T)=>{this._watchers.get(T.uri)?.dispose(),this._watchers.set(T.uri,new Qt(T,n,h,p,v))},S=(T,R)=>{R.dispose(),this._watchers.delete(T.uri)},D=()=>{for(let T of u.getModels()){let R=this._watchers.get(T.uri);if(We(T,h,g)){if(!R)C(T)}else if(R)S(T,R)}},E=()=>{this._providerChangeListeners.clear();for(let T of x.allNoModel())if(typeof T.onDidChange==="function")this._providerChangeListeners.add(T.onDidChange(()=>{for(let R of this._watchers.values())R.handleProviderDidChange(T)}))};u.getModels().forEach((T)=>{if(We(T,h,g))C(T)}),this._register(u.onModelAdded((T)=>{if(We(T,h,g))C(T)})),this._register(u.onModelRemoved((T)=>{let R=this._watchers.get(T.uri);if(R)S(T,R)})),this._register(g.onDidChangeConfiguration((T)=>{if(T.affectsConfiguration(Bo))D()})),this._register(h.onDidColorThemeChange(D)),E(),this._register(x.onDidChange(()=>{E();for(let T of this._watchers.values())T.handleRegistryChange()}))}dispose(){He(this._watchers.values()),this._watchers.clear(),super.dispose()}};Vt=Cr([he(0,kg),he(1,Et),he(2,Be),he(3,re),he(4,uo),he(5,z)],Vt);var Qt=class m extends i{static{_e=this}static{this.REQUEST_MIN_DELAY=300}static{this.REQUEST_MAX_DELAY=2000}constructor(n,u,h,g,p){super();this._semanticTokensStylingService=u,this._relevantProviders=new Set,this._isDisposed=!1,this._model=n,this._provider=p.documentSemanticTokensProvider,this._debounceInformation=g.for(this._provider,"DocumentSemanticTokens",{min:_e.REQUEST_MIN_DELAY,max:_e.REQUEST_MAX_DELAY}),this._fetchDocumentSemanticTokens=this._register(new Ce(()=>this._fetchDocumentSemanticTokensNow(),_e.REQUEST_MIN_DELAY)),this._currentDocumentResponse=null,this._currentDocumentRequestCancellationTokenSource=null,this._providersChangedDuringRequest=!1,this._updateRelevantProviders(),this._register(this._model.onDidChangeContent(()=>{if(!this._fetchDocumentSemanticTokens.isScheduled())this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(this._model.onDidChangeAttached(()=>{if(!this._fetchDocumentSemanticTokens.isScheduled())this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(this._model.onDidChangeLanguage(()=>{if(this._currentDocumentResponse)this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null;if(this._currentDocumentRequestCancellationTokenSource)this._currentDocumentRequestCancellationTokenSource.cancel(),this._currentDocumentRequestCancellationTokenSource=null;this._setDocumentSemanticTokens(null,null,null,[]),this._updateRelevantProviders(),this._fetchDocumentSemanticTokens.schedule(0)})),this._register(h.onDidColorThemeChange((v)=>{this._setDocumentSemanticTokens(null,null,null,[]),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._fetchDocumentSemanticTokens.schedule(0)}handleRegistryChange(){this._updateRelevantProviders(),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))}handleProviderDidChange(n){if(!this._relevantProviders.has(n))return;if(this._currentDocumentRequestCancellationTokenSource){this._providersChangedDuringRequest=!0;return}this._fetchDocumentSemanticTokens.schedule(0)}_updateRelevantProviders(){this._relevantProviders=new Set(this._provider.all(this._model))}dispose(){if(this._currentDocumentResponse)this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null;if(this._currentDocumentRequestCancellationTokenSource)this._currentDocumentRequestCancellationTokenSource.cancel(),this._currentDocumentRequestCancellationTokenSource=null;this._setDocumentSemanticTokens(null,null,null,[]),this._isDisposed=!0,super.dispose()}_fetchDocumentSemanticTokensNow(){if(this._currentDocumentRequestCancellationTokenSource)return;if(!Bt(this._provider,this._model)){if(this._currentDocumentResponse)this._model.tokenization.setSemanticTokens(null,!1);return}if(!this._model.isAttachedToEditor())return;let n=new Ge,u=this._currentDocumentResponse?this._currentDocumentResponse.provider:null,h=this._currentDocumentResponse?this._currentDocumentResponse.resultId||null:null,g=Wt(this._provider,this._model,u,h,n.token);this._currentDocumentRequestCancellationTokenSource=n,this._providersChangedDuringRequest=!1;let p=[],v=this._model.onDidChangeContent((C)=>{p.push(C)}),x=new un(!1);g.then((C)=>{if(this._debounceInformation.update(this._model,x.elapsed()),this._currentDocumentRequestCancellationTokenSource=null,v.dispose(),!C)this._setDocumentSemanticTokens(null,null,null,p);else{let{provider:S,tokens:D}=C,E=this._semanticTokensStylingService.getStyling(S);this._setDocumentSemanticTokens(S,D||null,E,p)}},(C)=>{if(!(C&&(pi(C)||typeof C.message==="string"&&C.message.indexOf("busy")!==-1)))X(C);if(this._currentDocumentRequestCancellationTokenSource=null,v.dispose(),p.length>0||this._providersChangedDuringRequest){if(!this._fetchDocumentSemanticTokens.isScheduled())this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))}})}static _copy(n,u,h,g,p){p=Math.min(p,h.length-g,n.length-u);for(let v=0;v<p;v++)h[g+v]=n[u+v]}_setDocumentSemanticTokens(n,u,h,g){let p=this._currentDocumentResponse,v=()=>{if((g.length>0||this._providersChangedDuringRequest)&&!this._fetchDocumentSemanticTokens.isScheduled())this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))};if(this._currentDocumentResponse)this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null;if(this._isDisposed){if(n&&u)n.releaseDocumentSemanticTokens(u.resultId);return}if(!n||!h){this._model.tokenization.setSemanticTokens(null,!1);return}if(!u){this._model.tokenization.setSemanticTokens(null,!0),v();return}if(Ht(u)){let x=u.resultId,C=(S)=>{if(n.releaseDocumentSemanticTokens(x),this._model.tokenization.setSemanticTokens(null,!0),S)this._fetchDocumentSemanticTokens.schedule(0)};if(!p){C(!1);return}if(u.edits.length===0)u={resultId:u.resultId,data:p.data};else{let S=0;for(let H of u.edits)S+=(H.data?H.data.length:0)-H.deleteCount;let D=p.data,E=D.length+S;if(E<0){h.warnInvalidEditDeleteCount(p.resultId,x,D.length,S),C(!0);return}let T=new Uint32Array(E),R=D.length,P=T.length;for(let H=u.edits.length-1;H>=0;H--){let V=u.edits[H];if(V.start>D.length){h.warnInvalidEditStart(p.resultId,x,H,V.start,D.length),C(!0);return}let Q=R-(V.start+V.deleteCount);if(Q>0)_e._copy(D,R-Q,T,P-Q,Q),P-=Q;if(V.data)_e._copy(V.data,0,T,P-V.data.length,V.data.length),P-=V.data.length;R=V.start}if(R>0)_e._copy(D,0,T,0,R);u={resultId:u.resultId,data:T}}}if(ao(u)){this._currentDocumentResponse=new Sr(n,u.resultId,u.data);let x=F1(u,h,this._model.getLanguageId());if(g.length>0)for(let C of g)for(let S of x)for(let D of C.changes)S.applyEdit(D.range,D.text);this._model.tokenization.setSemanticTokens(x,!0)}else this._model.tokenization.setSemanticTokens(null,!0);v()}};Qt=_e=Cr([he(1,kg),he(2,Be),he(3,uo),he(4,z)],Qt);class Sr{constructor(m,n,u){this.provider=m,this.resultId=n,this.data=u}dispose(){this.provider.releaseDocumentSemanticTokens(this.resultId)}}Il(Vt);var $n=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},lo=function(m,n){return function(u,h){n(u,h,m)}},Wo=class m extends i{static{this.ID="editor.contrib.viewportSemanticTokens"}constructor(n,u,h,g,p,v){super();this._semanticTokensStylingService=u,this._themeService=h,this._configurationService=g,this._editor=n,this._provider=v.documentRangeSemanticTokensProvider,this._debounceInformation=p.for(this._provider,"DocumentRangeSemanticTokens",{min:100,max:500}),this._tokenizeViewport=this._register(new Ce(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[],this._rangeProvidersChangeListeners=[];let x=()=>{if(this._editor.hasModel())this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))},C=()=>{if(this._cleanupProviderListeners(),this._editor.hasModel()){let S=this._editor.getModel();for(let D of this._provider.all(S)){let E=D.onDidChange?.(()=>{this._cancelAll(),x()});if(E)this._rangeProvidersChangeListeners.push(E)}}};this._register(this._editor.onDidScrollChange(()=>{x()})),this._register(this._editor.onDidChangeModel(()=>{C(),this._cancelAll(),x()})),this._register(this._editor.onDidChangeModelLanguage(()=>{C(),this._cancelAll(),x()})),this._register(this._editor.onDidChangeModelContent((S)=>{this._cancelAll(),x()})),C(),this._register(this._provider.onDidChange(()=>{C(),this._cancelAll(),x()})),this._register(this._configurationService.onDidChangeConfiguration((S)=>{if(S.affectsConfiguration(Bo))this._cancelAll(),x()})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),x()})),x()}dispose(){this._cleanupProviderListeners(),super.dispose()}_cleanupProviderListeners(){He(this._rangeProvidersChangeListeners),this._rangeProvidersChangeListeners=[]}_cancelAll(){for(let n of this._outstandingRequests)n.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(n){for(let u=0,h=this._outstandingRequests.length;u<h;u++)if(this._outstandingRequests[u]===n){this._outstandingRequests.splice(u,1);return}}_tokenizeViewportNow(){if(!this._editor.hasModel())return;let n=this._editor.getModel();if(n.tokenization.hasCompleteSemanticTokens())return;if(!We(n,this._themeService,this._configurationService)){if(n.tokenization.hasSomeSemanticTokens())n.tokenization.setSemanticTokens(null,!1);return}if(!kr(this._provider,n)){if(n.tokenization.hasSomeSemanticTokens())n.tokenization.setSemanticTokens(null,!1);return}let u=this._editor.getVisibleRangesPlusViewportAboveBelow();this._outstandingRequests=this._outstandingRequests.concat(u.map((h)=>this._requestRange(n,h)))}_requestRange(n,u){let h=n.getVersionId(),g=Yt((v)=>Promise.resolve(Ho(this._provider,n,u,v))),p=new un(!1);return g.then((v)=>{if(this._debounceInformation.update(n,p.elapsed()),!v||!v.tokens||n.isDisposed()||n.getVersionId()!==h)return;let{provider:x,tokens:C}=v,S=this._semanticTokensStylingService.getStyling(x);n.tokenization.setPartialSemanticTokens(u,F1(C,S,n.getLanguageId()))}).then(()=>this._removeOutstandingRequest(g),()=>this._removeOutstandingRequest(g)),g}};Wo=$n([lo(1,kg),lo(2,Be),lo(3,re),lo(4,uo),lo(5,z)],Wo);fe(Wo.ID,Wo,1);var mo=Object.freeze({View:b(1718,"View"),Help:b(1719,"Help"),Test:b(1720,"Test"),File:b(1721,"File"),Preferences:b(1722,"Preferences"),Developer:b(1723,"Developer")});class Gt extends gr{constructor(){super({id:"editor.action.toggleStickyScroll",title:{...b(1518,"Toggle Editor Sticky Scroll"),mnemonicTitle:e(1514,"&&Toggle Editor Sticky Scroll")},metadata:{description:b(1519,"Toggle/enable the editor sticky scroll which shows the nested scopes at the top of the viewport")},category:mo.View,toggled:{condition:L.equals("config.editor.stickyScroll.enabled",!0),title:e(1515,"Sticky Scroll"),mnemonicTitle:e(1516,"&&Sticky Scroll")},menu:[{id:l.CommandPalette},{id:l.MenubarAppearanceMenu,group:"4_editor",order:3},{id:l.StickyScrollContext}]})}async runEditorCommand(m,n){let u=m.get(re),h=!u.getValue("editor.stickyScroll.enabled"),g=Is.get(n)?.isFocused();if(u.updateValue("editor.stickyScroll.enabled",h),g)n.focus()}}var Vo=100;class Zt extends gr{constructor(){super({id:"editor.action.focusStickyScroll",title:{...b(1520,"Focus Editor Sticky Scroll"),mnemonicTitle:e(1517,"&&Focus Editor Sticky Scroll")},precondition:L.and(L.has("config.editor.stickyScroll.enabled"),r.stickyScrollVisible),menu:[{id:l.CommandPalette}]})}runEditorCommand(m,n){Is.get(n)?.focus()}}class Xt extends gr{constructor(){super({id:"editor.action.selectNextStickyScrollLine",title:b(1521,"Select the next editor sticky scroll line"),precondition:r.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:Vo,primary:18}})}runEditorCommand(m,n){Is.get(n)?.focusNext()}}class $t extends gr{constructor(){super({id:"editor.action.selectPreviousStickyScrollLine",title:b(1522,"Select the previous sticky scroll line"),precondition:r.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:Vo,primary:16}})}runEditorCommand(m,n){Is.get(n)?.focusPrevious()}}class Jt extends gr{constructor(){super({id:"editor.action.goToFocusedStickyScrollLine",title:b(1523,"Go to the focused sticky scroll line"),precondition:r.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:Vo,primary:3}})}runEditorCommand(m,n){Is.get(n)?.goToFocused()}}class ei extends gr{constructor(){super({id:"editor.action.selectEditor",title:b(1524,"Select Editor"),precondition:r.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:Vo,primary:9}})}runEditorCommand(m,n){Is.get(n)?.selectEditor()}}fe(Is.ID,Is,1);lt(Gt);lt(Zt);lt($t);lt(Xt);lt(Jt);lt(ei);var Jn=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},Ir=function(m,n){return function(u,h){n(u,h,m)}},Mr="ignoreUnusualLineTerminators";function es(m,n,u){m.setModelProperty(n.uri,Mr,u)}function ts(m,n){return m.getModelProperty(n.uri,Mr)}var Uo=class m extends i{static{this.ID="editor.contrib.unusualLineTerminatorsDetector"}constructor(n,u,h){super();this._editor=n,this._dialogService=u,this._codeEditorService=h,this._isPresentingDialog=!1,this._config=this._editor.getOption(143),this._register(this._editor.onDidChangeConfiguration((g)=>{if(g.hasChanged(143))this._config=this._editor.getOption(143),this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModel(()=>{this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModelContent((g)=>{if(g.isUndoing)return;this._checkForUnusualLineTerminators()})),this._checkForUnusualLineTerminators()}async _checkForUnusualLineTerminators(){if(this._config==="off")return;if(!this._editor.hasModel())return;let n=this._editor.getModel();if(!n.mightContainUnusualLineTerminators())return;if(ts(this._codeEditorService,n)===!0)return;if(this._editor.getOption(104))return;if(this._config==="auto"){n.removeUnusualLineTerminators(this._editor.getSelections());return}if(this._isPresentingDialog)return;let h;try{this._isPresentingDialog=!0,h=await this._dialogService.confirm({title:e(1632,"Unusual Line Terminators"),message:e(1633,"Detected unusual line terminators"),detail:e(1634,"The file '{0}' contains one or more unusual line terminator characters, like Line Separator (LS) or Paragraph Separator (PS).\n\nIt is recommended to remove them from the file. This can be configured via `editor.unusualLineTerminators`.",Mi(n.uri)),primaryButton:e(1635,"&&Remove Unusual Line Terminators"),cancelButton:e(1636,"Ignore")})}finally{this._isPresentingDialog=!1}if(!h.confirmed){es(this._codeEditorService,n,!0);return}n.removeUnusualLineTerminators(this._editor.getSelections())}};Uo=Jn([Ir(1,bu),Ir(2,Ee)],Uo);fe(Uo.ID,Uo,1);var is=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},rs=function(m,n){return function(u,h){n(u,h,m)}};class oi{constructor(){this.selector={language:"*"}}provideDocumentHighlights(m,n,u){if(m.isDisposed())return;let h=[],g=m.getWordAtPosition({lineNumber:n.lineNumber,column:n.column});if(!g)return Promise.resolve(h);return m.findMatches(g.word,!0,!1,!0,Hv,!1).map((v)=>({range:v.range,kind:Fh.Text}))}provideMultiDocumentHighlights(m,n,u,h){if(m.isDisposed())return;let g=new tn,p=m.getWordAtPosition({lineNumber:n.lineNumber,column:n.column});if(!p)return Promise.resolve(g);for(let v of[m,...u]){if(v.isDisposed())continue;let C=v.findMatches(p.word,!0,!1,!0,Hv,!1).map((S)=>({range:S.range,kind:Fh.Text}));if(C)g.set(v.uri,C)}return g}}var Qo=class m extends i{constructor(n){super();this._register(n.documentHighlightProvider.register("*",new oi)),this._register(n.multiDocumentHighlightProvider.register("*",new oi))}};Qo=is([rs(0,z)],Qo);var Dr=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},pe=function(m,n){return function(u,h){n(u,h,m)}},Y,ti,ri=new M("hasWordHighlights",!1);function Lr(m,n,u,h){let g=m.ordered(n);return l0(g.map((p)=>()=>Promise.resolve(p.provideDocumentHighlights(n,u,h)).then(void 0,yt)),(p)=>p!==void 0&&p!==null).then((p)=>{if(p){let v=new tn;return v.set(n.uri,p),v}return new tn})}function ns(m,n,u,h,g){let p=m.ordered(n);return l0(p.map((v)=>()=>{let x=g.filter((C)=>f1(C)).filter((C)=>Cg(v.selector,C.uri,C.getLanguageId(),!0,void 0,void 0)>0);return Promise.resolve(v.provideMultiDocumentHighlights(n,u,x,h)).then(void 0,yt)}),(v)=>v!==void 0&&v!==null)}class si{constructor(m,n,u){this._model=m,this._selection=n,this._wordSeparators=u,this._wordRange=this._getCurrentWordRange(m,n),this._result=null}get result(){if(!this._result)this._result=Yt((m)=>this._compute(this._model,this._selection,this._wordSeparators,m));return this._result}_getCurrentWordRange(m,n){let u=m.getWordAtPosition(n.getPosition());if(u)return new t(n.startLineNumber,u.startColumn,n.startLineNumber,u.endColumn);return null}cancel(){this.result.cancel()}}class Tr extends si{constructor(m,n,u,h){super(m,n,u);this._providers=h}_compute(m,n,u,h){return Lr(this._providers,m,n.getPosition(),h).then((g)=>{if(!g)return new tn;return g})}}class Er extends si{constructor(m,n,u,h,g){super(m,n,u);this._providers=h,this._otherModels=g}_compute(m,n,u,h){return ns(this._providers,m,n.getPosition(),h,this._otherModels).then((g)=>{if(!g)return new tn;return g})}}function ss(m,n,u,h){return new Tr(n,u,h,m)}function as(m,n,u,h,g){return new Er(n,u,h,m,g)}Po("_executeDocumentHighlights",async(m,n,u)=>{let h=m.get(z);return(await Lr(h.documentHighlightProvider,n,u,ye.None))?.get(n.uri)});var ii=class m{static{Y=this}static{this.storedDecorationIDs=new tn}static{this.query=null}constructor(n,u,h,g,p,v,x,C){if(this.toUnhook=new d,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=new tn,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=void 0,this.runDelayer=this.toUnhook.add(new qi(50)),this.editor=n,this.providers=u,this.multiDocumentProviders=h,this.codeEditorService=v,this.textModelService=p,this.configurationService=x,this.logService=C,this._hasWordHighlights=ri.bindTo(g),this._ignorePositionChangeEvent=!1,this.occurrencesHighlightEnablement=this.editor.getOption(90),this.occurrencesHighlightDelay=this.configurationService.getValue("editor.occurrencesHighlightDelay"),this.model=this.editor.getModel(),this.toUnhook.add(n.onDidChangeCursorPosition((S)=>{if(this._ignorePositionChangeEvent)return;if(this.occurrencesHighlightEnablement==="off")return;this.runDelayer.trigger(()=>{this._onPositionChanged(S)}).catch(X)})),this.toUnhook.add(n.onDidFocusEditorText((S)=>{if(this.occurrencesHighlightEnablement==="off")return;if(!this.workerRequest)this.runDelayer.trigger(()=>{this._run()}).catch(X)})),this.toUnhook.add(n.onDidChangeModelContent((S)=>{if(!tg(this.model.uri,"output"))this._stopAll()})),this.toUnhook.add(n.onDidChangeModel((S)=>{if(!S.newModelUrl&&S.oldModelUrl)this._stopSingular();else if(Y.query)this._run()})),this.toUnhook.add(n.onDidChangeConfiguration((S)=>{let D=this.editor.getOption(90);if(this.occurrencesHighlightEnablement!==D)switch(this.occurrencesHighlightEnablement=D,D){case"off":this._stopAll();break;case"singleFile":this._stopAll(Y.query?.modelInfo?.modelURI);break;case"multiFile":if(Y.query)this._run(!0);break;default:console.warn("Unknown occurrencesHighlight setting value:",D);break}})),this.toUnhook.add(this.configurationService.onDidChangeConfiguration((S)=>{if(S.affectsConfiguration("editor.occurrencesHighlightDelay")){let D=x.getValue("editor.occurrencesHighlightDelay");if(this.occurrencesHighlightDelay!==D)this.occurrencesHighlightDelay=D}})),this.toUnhook.add(n.onDidBlurEditorWidget(()=>{let S=this.codeEditorService.getFocusedCodeEditor();if(!S)this._stopAll();else if(S.getModel()?.uri.scheme===se.vscodeNotebookCell&&this.editor.getModel()?.uri.scheme!==se.vscodeNotebookCell)this._stopAll()})),this.decorations=this.editor.createDecorationsCollection(),this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=void 0,Y.query)this._run()}hasDecorations(){return this.decorations.length>0}restore(n){if(this.occurrencesHighlightEnablement==="off")return;this.runDelayer.cancel(),this.runDelayer.trigger(()=>{this._run(!1,n)}).catch(X)}stop(){if(this.occurrencesHighlightEnablement==="off")return;this._stopAll()}_getSortedHighlights(){return this.decorations.getRanges().sort(t.compareRangesUsingStarts)}moveNext(){let n=this._getSortedHighlights(),h=(n.findIndex((p)=>p.containsPosition(this.editor.getPosition()))+1)%n.length,g=n[h];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(g.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(g);let p=this._getWord();if(p){let v=this.editor.getModel().getLineContent(g.startLineNumber);zn(`${v}, ${h+1} of ${n.length} for '${p.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}moveBack(){let n=this._getSortedHighlights(),h=(n.findIndex((p)=>p.containsPosition(this.editor.getPosition()))-1+n.length)%n.length,g=n[h];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(g.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(g);let p=this._getWord();if(p){let v=this.editor.getModel().getLineContent(g.startLineNumber);zn(`${v}, ${h+1} of ${n.length} for '${p.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}_removeSingleDecorations(){if(!this.editor.hasModel())return;let n=Y.storedDecorationIDs.get(this.editor.getModel().uri);if(!n)return;if(this.editor.removeDecorations(n),Y.storedDecorationIDs.delete(this.editor.getModel().uri),this.decorations.length>0)this.decorations.clear(),this._hasWordHighlights.set(!1)}_removeAllDecorations(n){let u=this.codeEditorService.listCodeEditors(),h=[];for(let g of u){if(!g.hasModel()||bs(g.getModel().uri,n))continue;let p=Y.storedDecorationIDs.get(g.getModel().uri);if(!p)continue;g.removeDecorations(p),h.push(g.getModel().uri);let v=Se.get(g);if(!v?.wordHighlighter)continue;if(v.wordHighlighter.decorations.length>0)v.wordHighlighter.decorations.clear(),v.wordHighlighter.workerRequest=null,v.wordHighlighter._hasWordHighlights.set(!1)}for(let g of h)Y.storedDecorationIDs.delete(g)}_stopSingular(){if(this._removeSingleDecorations(),this.editor.hasTextFocus()){if(this.editor.getModel()?.uri.scheme!==se.vscodeNotebookCell&&Y.query?.modelInfo?.modelURI.scheme!==se.vscodeNotebookCell)Y.query=null,this._run();else if(Y.query?.modelInfo)Y.query.modelInfo=null}if(this.renderDecorationsTimer!==void 0)clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=void 0;if(this.workerRequest!==null)this.workerRequest.cancel(),this.workerRequest=null;if(!this.workerRequestCompleted)this.workerRequestTokenId++,this.workerRequestCompleted=!0}_stopAll(n){if(this._removeAllDecorations(n),this.renderDecorationsTimer!==void 0)clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=void 0;if(this.workerRequest!==null)this.workerRequest.cancel(),this.workerRequest=null;if(!this.workerRequestCompleted)this.workerRequestTokenId++,this.workerRequestCompleted=!0}_onPositionChanged(n){if(this.occurrencesHighlightEnablement==="off"){this._stopAll();return}if(n.source!=="api"&&n.reason!==3){this._stopAll();return}this._run()}_getWord(){let n=this.editor.getSelection(),{startLineNumber:u,startColumn:h}=n;if(this.model.isDisposed())return null;return this.model.getWordAtPosition({lineNumber:u,column:h})}getOtherModelsToHighlight(n){if(!n)return[];if(n.uri.scheme===se.vscodeNotebookCell){let p=[],v=this.codeEditorService.listCodeEditors();for(let x of v){let C=x.getModel();if(C&&C!==n&&C.uri.scheme===se.vscodeNotebookCell)p.push(C)}return p}let h=[],g=this.codeEditorService.listCodeEditors();for(let p of g){if(!wy(p))continue;let v=p.getModel();if(!v)continue;if(n===v.modified)h.push(v.modified)}if(h.length)return h;if(this.occurrencesHighlightEnablement==="singleFile")return[];for(let p of g){let v=p.getModel();if(v&&v!==n)h.push(v)}return h}async _run(n,u){if(!this.editor.hasTextFocus()){if(!Y.query){this._stopAll();return}}else{let g=this.editor.getSelection();if(!g||g.startLineNumber!==g.endLineNumber){Y.query=null,this._stopAll();return}let{startColumn:p,endColumn:v}=g,x=this._getWord();if(!x||x.startColumn>p||x.endColumn<v){Y.query=null,this._stopAll();return}Y.query={modelInfo:{modelURI:this.model.uri,selection:g}}}if(this.lastCursorPositionChangeTime=new Date().getTime(),bs(this.editor.getModel().uri,Y.query.modelInfo?.modelURI)){if(!n){let x=this.decorations.getRanges();for(let C of x)if(C.containsPosition(this.editor.getPosition()))return}this._stopAll(n?this.model.uri:void 0);let g=++this.workerRequestTokenId;this.workerRequestCompleted=!1;let p=this.getOtherModelsToHighlight(this.editor.getModel());if(!Y.query||!Y.query.modelInfo)return;let v=await this.textModelService.createModelReference(Y.query.modelInfo.modelURI);try{this.workerRequest=this.computeWithModel(v.object.textEditorModel,Y.query.modelInfo.selection,p),this.workerRequest?.result.then((x)=>{if(g===this.workerRequestTokenId)this.workerRequestCompleted=!0,this.workerRequestValue=x||[],this._beginRenderDecorations(u??this.occurrencesHighlightDelay)},X)}catch(x){this.logService.error("Unexpected error during occurrence request. Log: ",x)}finally{v.dispose()}}else if(this.model.uri.scheme===se.vscodeNotebookCell){let g=++this.workerRequestTokenId;if(this.workerRequestCompleted=!1,!Y.query||!Y.query.modelInfo)return;let p=await this.textModelService.createModelReference(Y.query.modelInfo.modelURI);try{this.workerRequest=this.computeWithModel(p.object.textEditorModel,Y.query.modelInfo.selection,[this.model]),this.workerRequest?.result.then((v)=>{if(g===this.workerRequestTokenId)this.workerRequestCompleted=!0,this.workerRequestValue=v||[],this._beginRenderDecorations(u??this.occurrencesHighlightDelay)},X)}catch(v){this.logService.error("Unexpected error during occurrence request. Log: ",v)}finally{p.dispose()}}}computeWithModel(n,u,h){if(!h.length)return ss(this.providers,n,u,this.editor.getOption(148));else return as(this.multiDocumentProviders,n,u,this.editor.getOption(148),h)}_beginRenderDecorations(n){let u=new Date().getTime(),h=this.lastCursorPositionChangeTime+n;if(u>=h)this.renderDecorationsTimer=void 0,this.renderDecorations();else this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},h-u)}renderDecorations(){this.renderDecorationsTimer=void 0;let n=this.codeEditorService.listCodeEditors();for(let u of n){let h=Se.get(u);if(!h)continue;let g=[],p=u.getModel()?.uri;if(p&&this.workerRequestValue.has(p)){let v=Y.storedDecorationIDs.get(p),x=this.workerRequestValue.get(p);if(x)for(let S of x){if(!S.range)continue;g.push({range:S.range,options:sM(S.kind)})}let C=[];if(u.changeDecorations((S)=>{C=S.deltaDecorations(v??[],g)}),Y.storedDecorationIDs=Y.storedDecorationIDs.set(p,C),g.length>0)h.wordHighlighter?.decorations.set(g),h.wordHighlighter?._hasWordHighlights.set(!0)}}this.workerRequest=null}dispose(){this._stopSingular(),this.toUnhook.dispose()}};ii=Y=Dr([pe(4,Dn),pe(5,Ee),pe(6,re),pe(7,Ze)],ii);var Se=class m extends i{static{ti=this}static{this.ID="editor.contrib.wordHighlighter"}static get(n){return n.getContribution(ti.ID)}constructor(n,u,h,g,p,v,x){super();this._wordHighlighter=null;let C=()=>{if(n.hasModel()&&!n.getModel().isTooLargeForTokenization()&&n.getModel().uri.scheme!==se.accessibleView)this._wordHighlighter=new ii(n,h.documentHighlightProvider,h.multiDocumentHighlightProvider,u,p,g,v,x)};this._register(n.onDidChangeModel((S)=>{if(this._wordHighlighter){if(!S.newModelUrl&&S.oldModelUrl?.scheme!==se.vscodeNotebookCell)this.wordHighlighter?.stop();this._wordHighlighter.dispose(),this._wordHighlighter=null}C()})),C()}get wordHighlighter(){return this._wordHighlighter}saveViewState(){if(this._wordHighlighter&&this._wordHighlighter.hasDecorations())return!0;return!1}moveNext(){this._wordHighlighter?.moveNext()}moveBack(){this._wordHighlighter?.moveBack()}restoreViewState(n){if(this._wordHighlighter&&n)this._wordHighlighter.restore(250)}dispose(){if(this._wordHighlighter)this._wordHighlighter.dispose(),this._wordHighlighter=null;super.dispose()}};Se=ti=Dr([pe(1,G),pe(2,z),pe(3,Ee),pe(4,Dn),pe(5,re),pe(6,Ze)],Se);class ai extends U{constructor(m,n){super(n);this._isNext=m}run(m,n){let u=Se.get(n);if(!u)return;if(this._isNext)u.moveNext();else u.moveBack()}}class Rr extends ai{constructor(){super(!0,{id:"editor.action.wordHighlight.next",label:b(1646,"Go to Next Symbol Highlight"),precondition:ri,kbOpts:{kbExpr:r.editorTextFocus,primary:65,weight:100}})}}class zr extends ai{constructor(){super(!1,{id:"editor.action.wordHighlight.prev",label:b(1647,"Go to Previous Symbol Highlight"),precondition:ri,kbOpts:{kbExpr:r.editorTextFocus,primary:1089,weight:100}})}}class Pr extends U{constructor(){super({id:"editor.action.wordHighlight.trigger",label:b(1648,"Trigger Symbol Highlight"),precondition:void 0,kbOpts:{kbExpr:r.editorTextFocus,primary:0,weight:100}})}run(m,n){let u=Se.get(n);if(!u)return;u.restoreViewState(!0)}}fe(Se.ID,Se,0);O(Rr);O(zr);O(Pr);Il(Qo);var cs=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},Or=function(m,n){return function(u,h){n(u,h,m)}},ci=class m extends i{constructor(n,u,h){super();this._textModel=n,this._languageFeaturesService=u,this._outlineModelService=h,this._currentModel=j(this,void 0);let g=Ii("documentSymbolProvider.onDidChange",this._languageFeaturesService.documentSymbolProvider.onDidChange),p=Ii("_textModel.onDidChangeContent",I.debounce((v)=>this._textModel.onDidChangeContent(v),()=>{return},100));this._register(ni(async(v,x)=>{g.read(v),p.read(v);let C=x.add(new jI),S=await this._outlineModelService.getOrCreate(this._textModel,C.token);if(x.isDisposed)return;this._currentModel.set(S,void 0)}))}getBreadcrumbItems(n,u){let h=this._currentModel.read(u);if(!h)return[];let g=h.asListOfDocumentSymbols().filter((p)=>n.contains(p.range.startLineNumber)&&!n.contains(p.range.endLineNumber));return g.sort(n0(jn((p)=>p.range.endLineNumber-p.range.startLineNumber,Vi))),g.map((p)=>({name:p.name,kind:p.kind,startLineNumber:p.range.startLineNumber}))}getAt(n,u){let h=this._currentModel.read(u);if(!h)return[];let g=h.asListOfDocumentSymbols().filter((p)=>new ee(p.range.startLineNumber,p.range.endLineNumber).contains(n));if(g.length===0)return[];return g.sort(n0(jn((p)=>p.range.endLineNumber-p.range.startLineNumber,Vi))),g.map((p)=>({name:p.name,kind:p.kind,startLineNumber:p.range.startLineNumber}))}};ci=cs([Or(1,z),Or(2,Ah)],ci);np.setBreadcrumbsSourceFactory((m,n)=>n.createInstance(ci,m));var qr=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},Ve=function(m,n){return function(u,h){n(u,h,m)}},ho=class m extends i{static{this.ID="editor.contrib.floatingToolbar"}constructor(n,u,h,g){super();let p=this._register(ct(n)),v=f((C)=>p.model.read(C)?.uri),x=this._register(u.createInstance(di,l.EditorContent,n.contextKeyService,v));this._register(W((C)=>{if(!x.hasActions.read(C))return;C.store.add(p.createOverlayWidget({allowEditorOverflow:!1,domNode:x.element,minContentWidthInPx:Ne(0),position:Ne({preference:1})}))}))}};ho=qr([Ve(1,A),Ve(2,me),Ve(3,Oi)],ho);var di=class m extends i{constructor(n,u,h,g,p,v){super();let x=this._register(v.createMenu(n,u)),C=Pe(this,x.onDidChange,()=>x.getActions()),S=f((D)=>{let E=C.read(D),{primary:T}=Tg(E,()=>!0);return T.filter((R)=>R.id!==dt.ID)});this.hasActions=f((D)=>S.read(D).length>0),this.element=Re("div.floating-menu-overlay-widget").root,this._register(N(()=>this.element.remove())),this._register(W((D)=>{let E=S.read(D),T=E.length>0,R=T?E[0].id:void 0,P=E.length===1;if(this.element.classList.toggle("single-button",P),this.element.style.height=P?"28px":"26px",!T)return;let H=g.createInstance(Mf,this.element,n,{actionViewItemProvider:(V,Q)=>{if(!(V instanceof Ki))return;return g.createInstance(class extends $l{render(oe){if(super.render(oe),V.id===R)this.element?.classList.add("primary")}updateLabel(){let oe=p.lookupKeybinding(V.id),te=oe?oe.getLabel():void 0;if(this.options.label&&this.label)this.label.textContent=te?`${this._commandAction.label} (${te})`:this._commandAction.label}},V,{...Q,keybindingNotRenderedWithLabel:!0})},hiddenItemStrategy:0,menuOptions:{shouldForwardArgs:!0},telemetrySource:"editor.overlayToolbar",toolbarOptions:{primaryGroup:()=>!0,useSeparatorsInPrimaryActions:!0}});D.store.add(H),D.store.add(W((V)=>{let Q=h.read(V);H.context=Q}))}))}};di=qr([Ve(3,A),Ve(4,me),Ve(5,Oi)],di);fe(ho.ID,ho,1);class li extends i{static{this.ID="editor.contrib.iPadShowKeyboard"}constructor(m){super();if(this.editor=m,this.widget=null,Do)this._register(m.onDidChangeConfiguration(()=>this.update())),this.update()}update(){let m=!this.editor.getOption(104);if(!this.widget&&m)this.widget=new ui(this.editor);else if(this.widget&&!m)this.widget.dispose(),this.widget=null}dispose(){if(super.dispose(),this.widget)this.widget.dispose(),this.widget=null}}class ui extends i{static{this.ID="editor.contrib.ShowKeyboardWidget"}constructor(m){super();this.editor=m,this._domNode=document.createElement("textarea"),this._domNode.className="iPadShowKeyboard",this._register(c(this._domNode,"touchstart",(n)=>{this.editor.focus()})),this._register(c(this._domNode,"focus",(n)=>{this.editor.focus()})),this.editor.addOverlayWidget(this)}dispose(){this.editor.removeOverlayWidget(this),super.dispose()}getId(){return ui.ID}getDomNode(){return this._domNode}getPosition(){return{preference:1}}}fe(li.ID,li,3);var ds=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},Nr=function(m,n){return function(u,h){n(u,h,m)}},mi,po=class m extends i{static{mi=this}static{this.ID="editor.contrib.inspectTokens"}static get(n){return n.getContribution(mi.ID)}constructor(n,u,h){super();this._editor=n,this._languageService=h,this._widget=null,this._register(this._editor.onDidChangeModel((g)=>this.stop())),this._register(this._editor.onDidChangeModelLanguage((g)=>this.stop())),this._register(Ut.onDidChange((g)=>this.stop())),this._register(this._editor.onKeyUp((g)=>g.keyCode===9&&this.stop()))}dispose(){this.stop(),super.dispose()}launch(){if(this._widget)return;if(!this._editor.hasModel())return;this._widget=new hi(this._editor,this._languageService)}stop(){if(this._widget)this._widget.dispose(),this._widget=null}};po=mi=ds([Nr(1,yr),Nr(2,xt)],po);class jr extends U{constructor(){super({id:"editor.action.inspectTokens",label:Z1.inspectTokensAction,alias:"Developer: Inspect Tokens",precondition:void 0})}run(m,n){po.get(n)?.launch()}}function ls(m){let n="";for(let u=0,h=m.length;u<h;u++){let g=m.charCodeAt(u);switch(g){case 9:n+="→";break;case 32:n+="·";break;default:n+=String.fromCharCode(g)}}return n}function us(m,n){let u=Ut.get(n);if(u)return u;let h=m.encodeLanguageId(n);return{getInitialState:()=>uu,tokenize:(g,p,v)=>Xv(n,v),tokenizeEncoded:(g,p,v)=>wf(h,v)}}class hi extends i{static{this._ID="editor.contrib.inspectTokensWidget"}constructor(m,n){super();this.allowEditorOverflow=!0,this._editor=m,this._languageService=n,this._model=this._editor.getModel(),this._domNode=document.createElement("div"),this._domNode.className="tokens-inspect-widget",this._tokenizationSupport=us(this._languageService.languageIdCodec,this._model.getLanguageId()),this._compute(this._editor.getPosition()),this._register(this._editor.onDidChangeCursorPosition((u)=>this._compute(this._editor.getPosition()))),this._editor.addContentWidget(this)}dispose(){this._editor.removeContentWidget(this),super.dispose()}getId(){return hi._ID}_compute(m){let n=this._getTokensAtLine(m.lineNumber),u=0;for(let x=n.tokens1.length-1;x>=0;x--){let C=n.tokens1[x];if(m.column-1>=C.offset){u=x;break}}let h=0;for(let x=n.tokens2.length>>>1;x>=0;x--)if(m.column-1>=n.tokens2[x<<1]){h=x;break}let g=this._model.getLineContent(m.lineNumber),p="";if(u<n.tokens1.length){let x=n.tokens1[u].offset,C=u+1<n.tokens1.length?n.tokens1[u+1].offset:g.length;p=g.substring(x,C)}gn(this._domNode,w("h2.tm-token",void 0,ls(p),w("span.tm-token-length",void 0,`${p.length} ${p.length===1?"char":"chars"}`))),k(this._domNode,w("hr.tokens-inspect-separator",{style:"clear:both"}));let v=(h<<1)+1<n.tokens2.length?this._decodeMetadata(n.tokens2[(h<<1)+1]):null;if(k(this._domNode,w("table.tm-metadata-table",void 0,w("tbody",void 0,w("tr",void 0,w("td.tm-metadata-key",void 0,"language"),w("td.tm-metadata-value",void 0,`${v?v.languageId:"-?-"}`)),w("tr",void 0,w("td.tm-metadata-key",void 0,"token type"),w("td.tm-metadata-value",void 0,`${v?this._tokenTypeToString(v.tokenType):"-?-"}`)),w("tr",void 0,w("td.tm-metadata-key",void 0,"font style"),w("td.tm-metadata-value",void 0,`${v?this._fontStyleToString(v.fontStyle):"-?-"}`)),w("tr",void 0,w("td.tm-metadata-key",void 0,"foreground"),w("td.tm-metadata-value",void 0,`${v?y.Format.CSS.formatHex(v.foreground):"-?-"}`)),w("tr",void 0,w("td.tm-metadata-key",void 0,"background"),w("td.tm-metadata-value",void 0,`${v?y.Format.CSS.formatHex(v.background):"-?-"}`))))),k(this._domNode,w("hr.tokens-inspect-separator")),u<n.tokens1.length)k(this._domNode,w("span.tm-token-type",void 0,n.tokens1[u].type));this._editor.layoutContentWidget(this)}_decodeMetadata(m){let n=Ut.getColorMap(),u=Zi.getLanguageId(m),h=Zi.getTokenType(m),g=Zi.getFontStyle(m),p=Zi.getForeground(m),v=Zi.getBackground(m);return{languageId:this._languageService.languageIdCodec.decodeLanguageId(u),tokenType:h,fontStyle:g,foreground:n[p],background:n[v]}}_tokenTypeToString(m){switch(m){case 0:return"Other";case 1:return"Comment";case 2:return"String";case 3:return"RegEx";default:return"??"}}_fontStyleToString(m){let n="";if(m&1)n+="italic ";if(m&2)n+="bold ";if(m&4)n+="underline ";if(m&8)n+="strikethrough ";if(n.length===0)n="---";return n}_getTokensAtLine(m){let n=this._getStateBeforeLine(m),u=this._tokenizationSupport.tokenize(this._model.getLineContent(m),!0,n),h=this._tokenizationSupport.tokenizeEncoded(this._model.getLineContent(m),!0,n);return{startState:n,tokens1:u.tokens,tokens2:h.tokens,endState:u.endState}}_getStateBeforeLine(m){let n=this._tokenizationSupport.getInitialState();for(let u=1;u<m;u++)n=this._tokenizationSupport.tokenize(this._model.getLineContent(u),!0,n).endState;return n}getDomNode(){return this._domNode}getPosition(){return{position:this._editor.getPosition(),preference:[2,1]}}}fe(po.ID,po,4);O(jr);var ms=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},bi=function(m,n){return function(u,h){n(u,h,m)}},go,Go=class m{static{go=this}static{this.PREFIX="?"}constructor(n,u,h){this.quickInputService=n,this.keybindingService=u,this.contextKeyService=h,this.registry=ht.as(ga.Quickaccess)}provide(n){let u=new d;return u.add(n.onDidAccept(()=>{let[h]=n.selectedItems;if(h)this.quickInputService.quickAccess.show(h.prefix,{preserveValue:!0})})),u.add(n.onDidChangeValue((h)=>{let g=this.registry.getQuickAccessProvider(h.substr(go.PREFIX.length),this.contextKeyService);if(g?.prefix&&g.prefix!==go.PREFIX)this.quickInputService.quickAccess.show(g.prefix,{preserveValue:!0})})),n.items=this.getQuickAccessProviders().filter((h)=>h.prefix!==go.PREFIX),u}getQuickAccessProviders(){return this.registry.getQuickAccessProviders(this.contextKeyService).sort((u,h)=>u.prefix.localeCompare(h.prefix)).flatMap((u)=>this.createPicks(u))}createPicks(n){return n.helpEntries.map((u)=>{let h=u.prefix||n.prefix,g=h||"…";return{prefix:h,label:g,keybinding:u.commandId?this.keybindingService.lookupKeybinding(u.commandId):void 0,ariaLabel:e(1844,"{0}, {1}",g,u.description),description:u.description}})}};Go=go=ms([bi(0,En),bi(1,me),bi(2,G)],Go);ht.as(ga.Quickaccess).registerQuickAccessProvider({ctor:Go,prefix:"",helpEntries:[{description:X1.helpQuickAccessActionLabel}]});var Wr=[void 0,[]];function Yo(m,n,u=0,h=0){let g=n;if(g.values&&g.values.length>1)return hs(m,g.values,u,h);return Vr(m,n,u,h)}function hs(m,n,u,h){let g=0,p=[];for(let v of n){let[x,C]=Vr(m,v,u,h);if(typeof x!=="number")return Wr;g+=x,p.push(...C)}return[g,ps(p)]}function Vr(m,n,u,h){let g=yd(n.normalized,n.normalizedLowercase,u,m,m.toLowerCase(),h,{firstMatchCanBeWeak:!0,boostFullMatch:!0});if(!g)return Wr;return[g[0],Zh(g)]}new lf("allowNonContiguousMatches");new lf("description");new lf("label");new lf("values");new lf("expectContiguousMatch");new lf("value");function ps(m){let n=m.sort((g,p)=>g.start-p.start),u=[],h=void 0;for(let g of n)if(!h||!gs(h,g))h=g,u.push(g);else h.start=Math.min(h.start,g.start),h.end=Math.max(h.end,g.end);return u}function gs(m,n){if(m.end<n.start)return!1;if(n.end<m.start)return!1;return!0}function Fr(m){return m.startsWith('"')&&m.endsWith('"')}var Ur=" ";function Ko(m){if(typeof m!=="string")m="";let n=m.toLowerCase(),{pathNormalized:u,normalized:h,normalizedLowercase:g}=Hr(m),p=u.indexOf(sa)>=0,v=Fr(m),x=void 0,C=m.split(Ur);if(C.length>1)for(let S of C){let D=Fr(S),{pathNormalized:E,normalized:T,normalizedLowercase:R}=Hr(S);if(T){if(!x)x=[];x.push({original:S,originalLowercase:S.toLowerCase(),pathNormalized:E,normalized:T,normalizedLowercase:R,expectContiguousMatch:D})}}return{original:m,originalLowercase:n,pathNormalized:u,normalized:h,normalizedLowercase:g,values:x,containsPathSeparator:p,expectContiguousMatch:v}}function Hr(m){let n;if(rn)n=m.replace(/\//g,sa);else n=m.replace(/\\/g,sa);let u=n.replace(/[\*\u2026\s"]/g,"").replace(/(?<=.)#$/,"");return{pathNormalized:n,normalized:u,normalizedLowercase:u.toLowerCase()}}function wi(m){if(Array.isArray(m))return Ko(m.map((n)=>n.original).join(Ur));return Ko(m.original)}var fs=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},Qr=function(m,n){return function(u,h){n(u,h,m)}},Zo,Ie=class m extends e0{static{Zo=this}static{this.PREFIX="@"}static{this.SCOPE_PREFIX=":"}static{this.PREFIX_BY_CATEGORY=`${this.PREFIX}${this.SCOPE_PREFIX}`}constructor(n,u,h=Object.create(null)){super(h);this._languageFeaturesService=n,this._outlineModelService=u,this.options=h,this.options.canAcceptInBackground=!0}provideWithoutTextEditor(n){return this.provideLabelPick(n,e(1414,"To go to a symbol, first open a text editor with symbol information.")),i.None}provideWithTextEditor(n,u,h,g){let p=n.editor,v=this.getModel(p);if(!v)return i.None;if(this._languageFeaturesService.documentSymbolProvider.has(v))return this.doProvideWithEditorSymbols(n,v,u,h,g);return this.doProvideWithoutEditorSymbols(n,v,u,h)}doProvideWithoutEditorSymbols(n,u,h,g){let p=new d;return this.provideLabelPick(h,e(1415,"The active text editor does not provide symbol information.")),(async()=>{if(!await this.waitForLanguageSymbolRegistry(u,p)||g.isCancellationRequested)return;p.add(this.doProvideWithEditorSymbols(n,u,h,g))})(),p}provideLabelPick(n,u){n.items=[{label:u,index:0,kind:14}],n.ariaLabel=u}async waitForLanguageSymbolRegistry(n,u){if(this._languageFeaturesService.documentSymbolProvider.has(n))return!0;let h=new aa,g=u.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>{if(this._languageFeaturesService.documentSymbolProvider.has(n))g.dispose(),h.complete(!0)}));return u.add(N(()=>h.complete(!1))),h.p}doProvideWithEditorSymbols(n,u,h,g,p){let v=n.editor,x=new d;x.add(h.onDidAccept((E)=>{let[T]=h.selectedItems;if(T&&T.range){if(h.keyMods.shift&&T.attach){T.attach(h.keyMods,E);return}if(this.gotoLocation(n,{range:T.range.selection,keyMods:h.keyMods,preserveFocus:E.inBackground}),p?.handleAccept?.(T,E.inBackground),!E.inBackground)h.hide()}})),x.add(h.onDidTriggerItemButton(({item:E})=>{if(E&&E.range)this.gotoLocation(n,{range:E.range.selection,keyMods:h.keyMods,forceSideBySide:!0}),h.hide()}));let C=this.getDocumentSymbols(u,g),S=x.add(new ce),D=async(E)=>{S?.value?.cancel(),h.busy=!1,S.value=new Ge,h.busy=!0;try{let T=Ko(h.value.substr(Zo.PREFIX.length).trim()),R=await this.doGetSymbolPicks(C,T,void 0,S.value.token,u);if(g.isCancellationRequested)return;if(R.length>0){if(h.items=R,E&&T.original.length===0){let P=zh(R,(H)=>Boolean(H.type!=="separator"&&H.range&&t.containsPosition(H.range.decoration,E)));if(P)h.activeItems=[P]}}else if(T.original.length>0)this.provideLabelPick(h,e(1416,"No matching editor symbols"));else this.provideLabelPick(h,e(1417,"No editor symbols"))}finally{if(!g.isCancellationRequested)h.busy=!1}};return x.add(h.onDidChangeValue(()=>D(void 0))),D(v.getSelection()?.getPosition()),x.add(h.onDidChangeActive(()=>{let[E]=h.activeItems;if(E&&E.range)v.revealRangeInCenter(E.range.selection,0),this.addDecorations(v,E.range.decoration)})),x}async doGetSymbolPicks(n,u,h,g,p){let v=await n;if(g.isCancellationRequested)return[];let x=u.original.indexOf(Zo.SCOPE_PREFIX)===0,C=x?1:0,S,D;if(u.values&&u.values.length>1)S=wi(u.values[0]),D=wi(u.values.slice(1));else S=u;let E,T=this.options?.openSideBySideDirection?.();if(T)E=[{iconClass:T==="right"?J.asClassName(_.splitHorizontal):J.asClassName(_.splitVertical),tooltip:T==="right"?e(1418,"Open to the Side"):e(1419,"Open to the Bottom")}];let R=[];for(let V=0;V<v.length;V++){let Q=v[V],oe=fM(Q.name),te=`$(${jh.toIcon(Q.kind).id}) ${oe}`,ne=te.length-oe.length,ae=Q.containerName;if(h?.extraContainerLabel)if(ae)ae=`${h.extraContainerLabel} • ${ae}`;else ae=h.extraContainerLabel;let le=void 0,ge=void 0,$e=void 0,Ai=void 0;if(u.original.length>C){let zi=!1;if(S!==u){if([le,ge]=Yo(te,{...u,values:void 0},C,ne),typeof le==="number")zi=!0}if(typeof le!=="number"){if([le,ge]=Yo(te,S,C,ne),typeof le!=="number")continue}if(!zi&&D){if(ae&&D.original.length>0)[$e,Ai]=Yo(ae,D);if(typeof $e!=="number")continue;if(typeof le==="number")le+=$e}}let Ri=Q.tags&&Q.tags.indexOf(1)>=0;R.push({index:V,kind:Q.kind,score:le,label:te,ariaLabel:pM(Q.name,Q.kind),description:ae,highlights:Ri?void 0:{label:ge,description:Ai},range:{selection:t.collapseToStart(Q.selectionRange),decoration:Q.range},uri:p.uri,symbolName:oe,strikethrough:Ri,buttons:E})}let P=R.sort((V,Q)=>x?this.compareByKindAndScore(V,Q):this.compareByScore(V,Q)),H=[];if(x){let te=function(){if(Q&&typeof V==="number"&&oe>0)Q.label=Ha(ki[V]||xi,oe)},V=void 0,Q=void 0,oe=0;for(let ne of P){if(V!==ne.kind)te(),V=ne.kind,oe=1,Q={type:"separator"},H.push(Q);else oe++;H.push(ne)}te()}else if(P.length>0)H=[{label:e(1420,"symbols ({0})",R.length),type:"separator"},...P];return H}compareByScore(n,u){if(typeof n.score!=="number"&&typeof u.score==="number")return 1;else if(typeof n.score==="number"&&typeof u.score!=="number")return-1;if(typeof n.score==="number"&&typeof u.score==="number"){if(n.score>u.score)return-1;else if(n.score<u.score)return 1}if(n.index<u.index)return-1;else if(n.index>u.index)return 1;return 0}compareByKindAndScore(n,u){let h=ki[n.kind]||xi,g=ki[u.kind]||xi,p=h.localeCompare(g);if(p===0)return this.compareByScore(n,u);return p}async getDocumentSymbols(n,u){let h=await this._outlineModelService.getOrCreate(n,u);return u.isCancellationRequested?[]:h.asListOfDocumentSymbols()}};Ie=Zo=fs([Qr(0,z),Qr(1,Ah)],Ie);var xi=e(1421,"properties ({0})"),ki={[5]:e(1422,"methods ({0})"),[11]:e(1423,"functions ({0})"),[8]:e(1424,"constructors ({0})"),[12]:e(1425,"variables ({0})"),[4]:e(1426,"classes ({0})"),[22]:e(1427,"structs ({0})"),[23]:e(1428,"events ({0})"),[24]:e(1429,"operators ({0})"),[10]:e(1430,"interfaces ({0})"),[2]:e(1431,"namespaces ({0})"),[3]:e(1432,"packages ({0})"),[25]:e(1433,"type parameters ({0})"),[1]:e(1434,"modules ({0})"),[6]:e(1435,"properties ({0})"),[9]:e(1436,"enumerations ({0})"),[21]:e(1437,"enumeration members ({0})"),[14]:e(1438,"strings ({0})"),[0]:e(1439,"files ({0})"),[17]:e(1440,"arrays ({0})"),[15]:e(1441,"numbers ({0})"),[16]:e(1442,"booleans ({0})"),[18]:e(1443,"objects ({0})"),[19]:e(1444,"keys ({0})"),[7]:e(1445,"fields ({0})"),[13]:e(1446,"constants ({0})")};var vs=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},yi=function(m,n){return function(u,h){n(u,h,m)}},_i=class m extends Ie{constructor(n,u,h){super(u,h);this.editorService=n,this.onDidActiveTextEditorControlChange=I.None}get activeTextEditorControl(){return this.editorService.getFocusedCodeEditor()??void 0}};_i=vs([yi(0,Ee),yi(1,z),yi(2,Ah)],_i);class Xo extends U{static{this.ID="editor.action.quickOutline"}constructor(){super({id:Xo.ID,label:by.quickOutlineActionLabel,alias:"Go to Symbol...",precondition:r.hasDocumentSymbolProvider,kbOpts:{kbExpr:r.focus,primary:3117,weight:100},contextMenuOpts:{group:"navigation",order:3}})}run(m){m.get(En).quickAccess.show(Ie.PREFIX,{itemActivation:Va.NONE})}}O(Xo);ht.as(ga.Quickaccess).registerQuickAccessProvider({ctor:_i,prefix:Ie.PREFIX,helpEntries:[{description:by.quickOutlineActionLabel,prefix:Ie.PREFIX,commandId:Xo.ID},{description:by.quickOutlineByCategoryActionLabel,prefix:Ie.PREFIX_BY_CATEGORY}]});function ws(m){let n=new Map;for(let u of m)n.set(u,(n.get(u)??0)+1);return n}class Qe{constructor(){this.chunkCount=0,this.chunkOccurrences=new Map,this.documents=new Map}calculateScores(m,n){let u=this.computeEmbedding(m),h=new Map,g=[];for(let[p,v]of this.documents){if(n.isCancellationRequested)return[];for(let x of v.chunks){let C=this.computeSimilarityScore(x,u,h);if(C>0)g.push({key:p,score:C})}}return g}static termFrequencies(m){return ws(Qe.splitTerms(m))}static*splitTerms(m){let n=(u)=>u.toLowerCase();for(let[u]of m.matchAll(/\b\p{Letter}[\p{Letter}\d]{2,}\b/gu)){yield n(u);let h=u.replace(/([a-z])([A-Z])/g,"$1 $2").split(/\s+/g);if(h.length>1){for(let g of h)if(g.length>2&&/\p{Letter}{3,}/gu.test(g))yield n(g)}}}updateDocuments(m){for(let{key:n}of m)this.deleteDocument(n);for(let n of m){let u=[];for(let h of n.textChunks){let g=Qe.termFrequencies(h);for(let p of g.keys())this.chunkOccurrences.set(p,(this.chunkOccurrences.get(p)??0)+1);u.push({text:h,tf:g})}this.chunkCount+=u.length,this.documents.set(n.key,{chunks:u})}return this}deleteDocument(m){let n=this.documents.get(m);if(!n)return;this.documents.delete(m),this.chunkCount-=n.chunks.length;for(let u of n.chunks)for(let h of u.tf.keys()){let g=this.chunkOccurrences.get(h);if(typeof g==="number"){let p=g-1;if(p<=0)this.chunkOccurrences.delete(h);else this.chunkOccurrences.set(h,p)}}}computeSimilarityScore(m,n,u){let h=0;for(let[g,p]of Object.entries(n)){let v=m.tf.get(g);if(!v)continue;let x=u.get(g);if(typeof x!=="number")x=this.computeIdf(g),u.set(g,x);let C=v*x;h+=C*p}return h}computeEmbedding(m){let n=Qe.termFrequencies(m);return this.computeTfidf(n)}computeIdf(m){let n=this.chunkOccurrences.get(m)??0;return n>0?Math.log((this.chunkCount+1)/n):0}computeTfidf(m){let n=Object.create(null);for(let[u,h]of m){let g=this.computeIdf(u);if(g>0)n[u]=h*g}return n}}function Gr(m){let n=m.slice(0);n.sort((h,g)=>g.score-h.score);let u=n[0]?.score??0;if(u>0)for(let h of n)h.score/=u;return n}var we;(function(m){m[m.NO_ACTION=0]="NO_ACTION",m[m.CLOSE_PICKER=1]="CLOSE_PICKER",m[m.REFRESH_PICKER=2]="REFRESH_PICKER",m[m.REMOVE_ITEM=3]="REMOVE_ITEM"})(we||(we={}));function Ci(m){return Array.isArray(m.items)}function Kr(m){let n=m;return!!n.picks&&n.additionalPicks instanceof Promise}class Si extends i{constructor(m,n){super();this.prefix=m,this.options=n}provide(m,n,u){let h=new d;m.canAcceptInBackground=!!this.options?.canAcceptInBackground,m.matchOnLabel=m.matchOnDescription=m.matchOnDetail=m.sortByLabel=!1;let g=void 0,p=h.add(new ce),v=async()=>{g?.dispose(!0),m.busy=!1;let C=p.value=new d;g=C.add(new Ge(n));let S=g.token,D=m.value.substring(this.prefix.length);if(!this.options?.shouldSkipTrimPickFilter)D=D.trim();let E=this._getPicks(D,C,S,u),T=(P,H)=>{let V,Q=void 0;if(Ci(P))V=P.items,Q=P.active;else V=P;if(V.length===0){if(H)return!1;if((D.length>0||m.hideInput)&&this.options?.noResultsPick)if(lc(this.options.noResultsPick))V=[this.options.noResultsPick(D)];else V=[this.options.noResultsPick]}if(m.items=V,Q)m.activeItems=[Q];return!0},R=async(P)=>{let H=!1,V=!1;await Promise.all([(async()=>{if(typeof P.mergeDelay==="number"){if(await Ar(P.mergeDelay),S.isCancellationRequested)return}if(!V)H=T(P.picks,!0)})(),(async()=>{m.busy=!0;try{let Q=await P.additionalPicks;if(S.isCancellationRequested)return;let oe,te=void 0;if(Ci(P.picks))oe=P.picks.items,te=P.picks.active;else oe=P.picks;let ne,ae=void 0;if(Ci(Q))ne=Q.items,ae=Q.active;else ne=Q;if(ne.length>0||!H){let le=void 0;if(!te&&!ae){let ge=m.activeItems[0];if(ge&&oe.indexOf(ge)!==-1)le=ge}T({items:[...oe,...ne],active:te||ae||le})}}finally{if(!S.isCancellationRequested)m.busy=!1;V=!0}})()])};if(E===null);else if(Kr(E))await R(E);else if(!(E instanceof Promise))T(E);else{m.busy=!0;try{let P=await E;if(S.isCancellationRequested)return;if(Kr(P))await R(P);else T(P)}finally{if(!S.isCancellationRequested)m.busy=!1}}};h.add(m.onDidChangeValue(()=>v())),v(),h.add(m.onDidAccept((C)=>{if(u?.handleAccept){if(!C.inBackground)m.hide();u.handleAccept?.(m.activeItems[0],C.inBackground);return}let[S]=m.selectedItems;if(typeof S?.accept==="function"){if(t2(m.keyMods)&&!!S.attach){S.attach(m.keyMods,C);return}if(!C.inBackground)m.hide();S.accept(m.keyMods,C)}}));let x=async(C,S)=>{if(typeof S.trigger!=="function")return;let D=S.buttons?.indexOf(C)??-1;if(D>=0){let E=S.trigger(D,m.keyMods),T=typeof E==="number"?E:await E;if(n.isCancellationRequested)return;switch(T){case we.NO_ACTION:break;case we.CLOSE_PICKER:m.hide();break;case we.REFRESH_PICKER:v();break;case we.REMOVE_ITEM:{let R=m.items.indexOf(S);if(R!==-1){let P=m.items.slice(),H=P.splice(R,1),V=m.activeItems.filter((oe)=>oe!==H[0]),Q=m.keepScrollPosition;if(m.keepScrollPosition=!0,m.items=P,V)m.activeItems=V;m.keepScrollPosition=Q}break}}}};return h.add(m.onDidTriggerItemButton(({button:C,item:S})=>x(C,S))),h.add(m.onDidTriggerSeparatorButton(({button:C,separator:S})=>x(C,S))),h}}var Yr=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},Me=function(m,n){return function(u,h){n(u,h,m)}},ze,Z,$o=class m extends Si{static{ze=this}static{this.PREFIX=">"}static{this.TFIDF_THRESHOLD=0.5}static{this.TFIDF_MAX_RESULTS=5}static{this.WORD_FILTER=A1(YM,ZM)}constructor(n,u,h,g,p,v){super(ze.PREFIX,n);this.keybindingService=h,this.commandService=g,this.telemetryService=p,this.dialogService=v,this.commandsHistory=this._register(u.createInstance(Di)),this.options=n}async _getPicks(n,u,h,g){let p=await this.getCommandPicks(h);if(h.isCancellationRequested)return[];let v=As(()=>{let R=new Qe;R.updateDocuments(p.map((H)=>({key:H.commandId,textChunks:[this.getTfIdfChunk(H)]})));let P=R.calculateScores(n,h);return Gr(P).filter((H)=>H.score>ze.TFIDF_THRESHOLD).slice(0,ze.TFIDF_MAX_RESULTS)}),x=[];for(let R of p){let P=ze.WORD_FILTER(n,R.label)??void 0,H;if(R.commandAlias)H=ze.WORD_FILTER(n,R.commandAlias)??void 0;if(P||H)R.highlights={label:P,detail:this.options.showAlias?H:void 0},x.push(R);else if(n===R.commandId)x.push(R);else if(n.length>=3){let V=v();if(h.isCancellationRequested)return[];let Q=V.find((oe)=>oe.key===R.commandId);if(Q)R.tfIdfScore=Q.score,x.push(R)}}let C=new Map;for(let R of x){let P=C.get(R.label);if(P)R.description=R.commandId,P.description=P.commandId;else C.set(R.label,R)}x.sort((R,P)=>{if(R.tfIdfScore&&P.tfIdfScore){if(R.tfIdfScore===P.tfIdfScore)return R.label.localeCompare(P.label);return P.tfIdfScore-R.tfIdfScore}else if(R.tfIdfScore)return 1;else if(P.tfIdfScore)return-1;let H=this.commandsHistory.peek(R.commandId),V=this.commandsHistory.peek(P.commandId);if(H&&V)return H>V?-1:1;if(H)return-1;if(V)return 1;if(this.options.suggestedCommandIds){let te=this.options.suggestedCommandIds.has(R.commandId),ne=this.options.suggestedCommandIds.has(P.commandId);if(te&&ne)return 0;if(te)return-1;if(ne)return 1}let Q=R.commandCategory===mo.Developer.value,oe=P.commandCategory===mo.Developer.value;if(Q&&!oe)return 1;if(!Q&&oe)return-1;return R.label.localeCompare(P.label)});let S=[],D=!1,E=!0,T=!!this.options.suggestedCommandIds;for(let R=0;R<x.length;R++){let P=x[R],H=!!this.commandsHistory.peek(P.commandId);if(R===0&&H)S.push({type:"separator",label:e(1836,"recently used")}),D=!0;if(E&&P.tfIdfScore!==void 0)S.push({type:"separator",label:e(1837,"similar commands")}),E=!1;if(T&&P.tfIdfScore===void 0&&!H&&this.options.suggestedCommandIds?.has(P.commandId))S.push({type:"separator",label:e(1838,"commonly used")}),D=!0,T=!1;if(D&&P.tfIdfScore===void 0&&!H&&!this.options.suggestedCommandIds?.has(P.commandId))S.push({type:"separator",label:e(1839,"other commands")}),D=!1;S.push(this.toCommandPick(P,g,H))}if(!this.hasAdditionalCommandPicks(n,h))return S;return{picks:S,additionalPicks:(async()=>{let R=await this.getAdditionalCommandPicks(p,x,n,h);if(h.isCancellationRequested)return[];let P=R.map((H)=>this.toCommandPick(H,g));if(E&&P[0]?.type!=="separator")P.unshift({type:"separator",label:e(1840,"similar commands")});return P})()}}toCommandPick(n,u,h=!1){if(n.type==="separator")return n;let g=n.tooltip??n.commandDescription?.value,p=this.keybindingService.lookupKeybinding(n.commandId),v=p?e(1841,"{0}, {1}",n.label,p.getAriaLabel()):n.label,x=n.buttons||[],C=h?[...x,{iconClass:J.asClassName(_.close),tooltip:e(1842,"Remove from Recently Used")}]:n.buttons;return{...n,id:n.commandId,tooltip:g,ariaLabel:v,detail:this.options.showAlias&&n.commandAlias!==n.label?n.commandAlias:void 0,keybinding:p,buttons:C,accept:async()=>{this.commandsHistory.push(n.commandId),this.telemetryService.publicLog2("workbenchActionExecuted",{id:n.commandId,from:u?.from??"quick open"});try{n.args?.length?await this.commandService.executeCommand(n.commandId,...n.args):await this.commandService.executeCommand(n.commandId)}catch(S){if(!pi(S))this.dialogService.error(e(1843,"Command '{0}' resulted in an error",n.label),Rv(S))}},trigger:h?(S,D)=>{let E=x.length;if(S===E)return this.commandsHistory.remove(n.commandId),we.REMOVE_ITEM;if(n.trigger)return n.trigger(S,D);return we.NO_ACTION}:n.trigger}}getTfIdfChunk({label:n,commandAlias:u,commandDescription:h}){let g=n;if(u&&u!==n)g+=` - ${u}`;if(h&&h.value!==n)g+=` - ${h.value===h.original?h.value:`${h.value} (${h.original})`}`;return g}};$o=ze=Yr([Me(1,A),Me(2,me),Me(3,Ue),Me(4,Bn),Me(5,bu)],$o);var Di=class m extends i{static{Z=this}static{this.DEFAULT_COMMANDS_HISTORY_LENGTH=50}static{this.PREF_KEY_CACHE="commandPalette.mru.cache"}static{this.PREF_KEY_COUNTER="commandPalette.mru.counter"}static{this.counter=1}static{this.hasChanges=!1}constructor(n,u,h){super();this.storageService=n,this.configurationService=u,this.logService=h,this.configuredCommandsHistoryLength=0,this.updateConfiguration(),this.load(),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration((n)=>this.updateConfiguration(n))),this._register(this.storageService.onWillSaveState((n)=>{if(n.reason===_c.SHUTDOWN)this.saveState()}))}updateConfiguration(n){if(n&&!n.affectsConfiguration("workbench.commandPalette.history"))return;if(this.configuredCommandsHistoryLength=Z.getConfiguredCommandHistoryLength(this.configurationService),Z.cache&&Z.cache.limit!==this.configuredCommandsHistoryLength)Z.cache.limit=this.configuredCommandsHistoryLength,Z.hasChanges=!0}load(){let n=this.storageService.get(Z.PREF_KEY_CACHE,0),u;if(n)try{u=JSON.parse(n)}catch(g){this.logService.error(`[CommandsHistory] invalid data: ${g}`)}let h=Z.cache=new Ji(this.configuredCommandsHistoryLength,1);if(u){let g;if(u.usesLRU)g=u.entries;else g=u.entries.sort((p,v)=>p.value-v.value);g.forEach((p)=>h.set(p.key,p.value))}Z.counter=this.storageService.getNumber(Z.PREF_KEY_COUNTER,0,Z.counter)}push(n){if(!Z.cache)return;Z.cache.set(n,Z.counter++),Z.hasChanges=!0}peek(n){return Z.cache?.peek(n)}remove(n){if(!Z.cache)return;Z.cache.delete(n),Z.hasChanges=!0}saveState(){if(!Z.cache)return;if(!Z.hasChanges)return;let n={usesLRU:!0,entries:[]};Z.cache.forEach((u,h)=>n.entries.push({key:h,value:u})),this.storageService.store(Z.PREF_KEY_CACHE,JSON.stringify(n),0,0),this.storageService.store(Z.PREF_KEY_COUNTER,Z.counter,0,0),Z.hasChanges=!1}static getConfiguredCommandHistoryLength(n){let h=n.getValue().workbench?.commandPalette?.history;if(typeof h==="number")return h;return Z.DEFAULT_COMMANDS_HISTORY_LENGTH}};Di=Z=Yr([Me(0,Pn),Me(1,re),Me(2,Ze)],Di);class Li extends $o{constructor(m,n,u,h,g,p){super(m,n,u,h,g,p)}getCodeEditorCommandPicks(){let m=this.activeTextEditorControl;if(!m)return[];let n=[];for(let u of m.getSupportedActions()){let h;if(u.metadata?.description)if(n2(u.metadata.description))h=u.metadata.description;else h={original:u.metadata.description,value:u.metadata.description};n.push({commandId:u.id,commandAlias:u.alias,commandDescription:h,label:Rf(u.label)||u.id})}return n}}var xs=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},Ye=function(m,n){return function(u,h){n(u,h,m)}},fo=class m extends Li{get activeTextEditorControl(){return this.codeEditorService.getFocusedCodeEditor()??void 0}constructor(n,u,h,g,p,v){super({showAlias:!1},n,h,g,p,v);this.codeEditorService=u}async getCommandPicks(){return this.getCodeEditorCommandPicks()}hasAdditionalCommandPicks(){return!1}async getAdditionalCommandPicks(){return[]}};fo=xs([Ye(0,A),Ye(1,Ee),Ye(2,me),Ye(3,Ue),Ye(4,Bn),Ye(5,bu)],fo);class Jo extends U{static{this.ID="editor.action.quickCommand"}constructor(){super({id:Jo.ID,label:G0.quickCommandActionLabel,alias:"Command Palette",precondition:void 0,kbOpts:{kbExpr:r.focus,primary:59,weight:100},contextMenuOpts:{group:"z_commands",order:1}})}run(m){m.get(En).quickAccess.show(fo.PREFIX)}}O(Jo);ht.as(ga.Quickaccess).registerQuickAccessProvider({ctor:fo,prefix:fo.PREFIX,helpEntries:[{description:G0.quickCommandHelp,commandId:Jo.ID}]});var ks=function(m,n,u,h){var g=arguments.length,p=g<3?n:h===null?h=Object.getOwnPropertyDescriptor(n,u):h,v;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")p=Reflect.decorate(m,n,u,h);else for(var x=m.length-1;x>=0;x--)if(v=m[x])p=(g<3?v(p):g>3?v(n,u,p):v(n,u))||p;return g>3&&p&&Object.defineProperty(n,u,p),p},Xe=function(m,n){return function(u,h){n(u,h,m)}},Ei=class m extends Dh{constructor(n,u,h,g,p,v,x){super(!0,n,u,h,g,p,v,x)}};Ei=ks([Xe(1,G),Xe(2,Ee),Xe(3,wt),Xe(4,A),Xe(5,Pn),Xe(6,re)],Ei);fe(Dh.ID,Ei,4);class Zr extends U{constructor(){super({id:"editor.action.toggleHighContrast",label:Q1.toggleHighContrast,alias:"Toggle High Contrast Theme",precondition:void 0});this._originalThemeName=null}run(m,n){let u=m.get(yr),h=u.getColorTheme();if(br(h.type))u.setTheme(this._originalThemeName||(ua(h.type)?$g:wu)),this._originalThemeName=null;else u.setTheme(ua(h.type)?Af:Of),this._originalThemeName=h.themeName}}O(Zr);function ys(m,n){let u=globalThis.MonacoEnvironment;if(u?.createTrustedTypesPolicy)try{return u.createTrustedTypesPolicy(m,n)}catch(h){console.error(h);return}try{return globalThis.trustedTypes?.createPolicy(m,n)}catch(h){console.error(h);return}}var et;if(typeof self==="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope"&&globalThis.workerttPolicy!==void 0)et=globalThis.workerttPolicy;else et=ys("defaultWorkerFactory",{createScriptURL:(m)=>m});function _s(m){let n=m.label,u=globalThis.MonacoEnvironment;if(u){if(typeof u.getWorker==="function")return u.getWorker("workerMain.js",n);if(typeof u.getWorkerUrl==="function"){let h=u.getWorkerUrl("workerMain.js",n);return new Worker(et?et.createScriptURL(h):h,{name:n,type:"module"})}}if(m.createWorker)return m.createWorker();throw Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function Kx(m){let n=Promise.resolve(_s({label:m.label??"monaco-editor-worker",moduleId:m.moduleId,createWorker:m.createWorker})).then((u)=>(u.postMessage("ignore"),u.postMessage(m.createData),u));return Wn.createWebWorker({worker:n,host:m.host,keepIdleModels:m.keepIdleModels})}
|
|
6
|
+
export{Kx};
|
|
7
|
+
|
|
8
|
+
//# debugId=B270F8BF1DDB795664756E2164756E21
|
|
9
|
+
//# sourceMappingURL=studio-wbcjbhy1.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{kT,ET,TT}from"./studio-dgk4dqtx.js";import{p,_e}from"./studio-w4rz9hdk.js";import{sb,PE,FE}from"./studio-zcd2e7yz.js";import{vA,cx,sl,kA,us,Yl,hx}from"./studio-4hp8pkyt.js";import{le}from"./studio-qgh13jtz.js";var t="checking",i=null;function cw(){return _e()&&Boolean(p().cfConnect)}async function rb(){if(!cw())return;i??=(async()=>{try{t=await p().cfConnection?.()??null}catch{t=null}i=null,am()})(),await i}function $D(){if(cw()&&t==="checking"&&!i)rb()}function ID(){t="checking",i=null}async function d(){let n=await p().cfConnect?.();if(n?.status==="connected"&&!n.connection.accountId){let{openCfAccountPicker:e}=await (le("haqazq5r"),import("./cf-account-picker-haqazq5r.js"));await e()}us(),await rb()}function s(){let n={id:"disconnect",label:"Disconnect",run:async()=>{await p().cfDisconnect?.(),us(),await rb()},variant:"negative"},e=(r)=>({id:r==="Connect"?"connect":"reconnect",label:r,run:d,variant:"accent"}),o={id:"cloudflare",label:"Cloudflare",revoke:()=>{}};if(t==="checking")return{...o,actions:[],connected:!1,detail:"Checking your connection…"};if(!t?.connected)return{...o,actions:[e("Connect")],connected:!1,detail:"Not connected. Connecting publishes this site and runs the assistant on Workers AI."};let c=()=>{n.run()};if(t.needsReconnect)return{...o,actions:[e("Reconnect"),n],connected:!0,detail:"Connection expired. Reconnect to keep publishing and the assistant working.",revoke:c};if(t.needsAccount||!t.accountId)return{...o,actions:[{id:"choose-account",label:"Choose account",run:async()=>{let{openCfAccountPicker:r}=await (le("haqazq5r"),import("./cf-account-picker-haqazq5r.js"));if(await r())us(),await rb()},variant:"accent"},n],connected:!0,detail:"Connected, but no account is chosen yet — publishing and the assistant need one.",revoke:c};return{...o,actions:[n],connected:!0,detail:`Connected — ${t.accountName??t.accountId}.`,revoke:c}}function l(){let n=sb(),e=PE();return{connected:Boolean(n),detail:n?`Connected${e?` — account ${e}`:""}.`:"Not connected. Publishing will ask when it needs it.",id:"cloudflare",label:"Cloudflare",revoke:FE}}function u(n){let e={id:n.id,label:n.label,run:async()=>{await hx(n)}};if(n.primary)e.variant="accent";return e}function f(n){return{actions:(n.actions??[]).map((e)=>u(e)),connected:n.connected??!1,detail:n.detail,id:`platform:${n.id}`,label:n.label,revoke:()=>{}}}function OE(){let n=kT(),e=Yl(),o=sl();return[{id:"github",label:"GitHub",detail:n?ET()==="desktop"?"Signed in — the token is in this app's config folder, readable only by you.":"Signed in — a device-flow token is stored in this browser.":"Not signed in. Cloning and pushing will ask when they need it.",connected:Boolean(n),revoke:TT},{id:"ai",label:"AI provider",detail:cx()?`Key stored. Model ${e}${o?` via ${o}`:""}.`:"No key stored. The Assistant section is where one is entered.",connected:cx(),revoke:kA},cw()?s():l(),...vA().map((c)=>f(c))]}function RD(n){let e=OE().find((o)=>o.id===n);if(!e)return!1;return e.revoke(),am(),!0}var a=new Set;function DD(n){return a.add(n),()=>{a.delete(n)}}function am(){for(let n of a)n()}
|
|
2
|
+
export{cw,rb,$D,ID,OE,RD,DD,am};
|
|
3
|
+
|
|
4
|
+
//# debugId=973655EC5DE4573B64756E2164756E21
|
|
5
|
+
//# sourceMappingURL=studio-wc649wss.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{ze}from"./studio-ph84avkf.js";import{te}from"./studio-vxq7fcvv.js";var f=3;function p(e,t,n){return Math.min(n,Math.max(t,e))}function eS(e){let t=Math.max(0,Math.trunc(e.count)),n=Math.max(1,Math.trunc(e.columns??1)),o=Math.ceil(t/n);if(!(e.rowHeight>0)||!(e.viewportHeight>0))return{end:t,padBottom:0,padTop:0,start:0,totalRows:o};let r=Math.max(0,Math.trunc(e.overscanRows??f)),i=Math.max(0,e.scrollTop),m=Math.floor(i/e.rowHeight),w=Math.ceil(e.viewportHeight/e.rowHeight)+1,l=p(m-r,0,o),a=p(m+w+r,l,o);return{end:Math.min(t,a*n),padBottom:(o-a)*e.rowHeight,padTop:l*e.rowHeight,start:Math.min(t,l*n),totalRows:o}}function M(e,t){return e.start===t.start&&e.end===t.end&&e.totalRows===t.totalRows&&e.padTop===t.padTop&&e.padBottom===t.padBottom}function R(e){let{scroller:t,list:n,count:o,rowHeight:r,columns:i,onChange:m,overscanRows:w}=e,l={end:0,padBottom:0,padTop:0,start:0,totalRows:0},a=!1;function c(){if(a)return;let d=eS({columns:i?.()??1,count:o(),overscanRows:w??f,rowHeight:r(),scrollTop:n?H(t,n):t.scrollTop,viewportHeight:t.clientHeight}),b=!M(l,d);if(l=d,b)m(d)}t.addEventListener("scroll",c,{passive:!0});let u=0,T=()=>{if(u!==0)return;u=requestAnimationFrame(()=>{u=0,c()})},s=null;if(te(globalThis.ResizeObserver)){if(s=new ResizeObserver(T),s.observe(t),n)s.observe(n)}return c(),{destroy(){if(a=!0,t.removeEventListener("scroll",c),s?.disconnect(),s=null,u!==0)cancelAnimationFrame(u),u=0},measure:c,range:()=>l}}function v(e){for(let t=e;t;t=t.parentElement){if(t.scrollHeight<=t.clientHeight)continue;let n=getComputedStyle(t).overflowY;if(n==="auto"||n==="scroll"||n==="overlay")return t}return null}function g(e){let t=h.get(e);if(t&&t.isConnected&&e.isConnected&&t.contains(e))return t;let n=L(e)??v(e);if(n)h.set(e,n);else h.delete(e);return n}var x="data-jx-scroller";function L(e){return e.isConnected?e.closest(`[${x}]`):null}function H(e,t){if(e===t)return Math.max(0,e.scrollTop);return Math.max(0,ze(e).top-ze(t).top)}function pw(e,t){let n=e?.isConnected===!0?g(e):null;if(!n||!e){let o=Math.max(0,Math.trunc(t.count));return{end:o,padBottom:0,padTop:0,start:0,totalRows:o}}return eS({columns:t.columns??1,count:t.count,overscanRows:t.overscanRows??f,rowHeight:t.rowHeight,scrollTop:H(n,e),viewportHeight:n.clientHeight})}function W(e){let t=e.listOffset+e.index*e.rowHeight,n=t+e.rowHeight;if(t<e.scrollTop)return Math.max(0,t);if(n>e.scrollTop+e.viewportHeight)return Math.max(0,n-e.viewportHeight);return null}function fw(e,t,n){let o=e?.isConnected===!0?g(e):null;if(!o||!e||t<0||!(n>0))return!1;let{scrollTop:r}=o,i=W({index:t,listOffset:r-H(o,e),rowHeight:n,scrollTop:r,viewportHeight:o.clientHeight});if(i===null)return!1;return o.scrollTop=i,!0}function jD(e,t,n){let o=e?.querySelector(t);return o&&o.offsetHeight>0?o.offsetHeight:n}var h=new WeakMap;function mw(e,t,n){let o=g(t);if(e&&e.list===t&&e.scroller===o)return e;if(e?.window.destroy(),!o)return null;return{list:t,scroller:o,window:R({count:n.count,list:t,onChange:()=>n.onChange(),rowHeight:n.rowHeight,scroller:o})}}
|
|
2
|
+
export{eS,pw,fw,jD,mw};
|
|
3
|
+
|
|
4
|
+
//# debugId=6134A14C9F43416E64756E2164756E21
|
|
5
|
+
//# sourceMappingURL=studio-wys23mxz.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{m,_i,Bt}from"./studio-c05wdnt3.js";import{ge,ne,g}from"./studio-43sd2mam.js";import{on}from"./studio-ph84avkf.js";import{jd,Gc,t$,Fb,rr}from"./studio-3exxhz5g.js";import{vp}from"./studio-e1g64q43.js";import{Ad,Od,qu,yp,jT}from"./studio-9tmebf0s.js";import{Ow,Ju,cN}from"./studio-y0n7yxea.js";import{wi,T,R}from"./studio-x9hsze61.js";import{le}from"./studio-qgh13jtz.js";var M={$schema:"https://jxsuite.com/schema/v1",$id:"StudioMediaPane",$description:"The Media viewer: a pane that SHOWS a file the studio has no document model for — an image at its own size, a video or audio player, an embedded PDF, a font set in a pangram, or an honest line about a format nothing here can draw. The adapter hands in one projection: which of the six stages to draw, the URL that loads it, the file's name and facts, the reference a document would write for it, and the documents that already do. Nothing here decides anything; a control asks the host to copy, to open a path, or to record the pixel size the browser just learned.",tagName:"div",attributes:{part:"viewer","data-jx-region":"${state.region}"},style:{$description:"What `.media-viewer`, `.media-stage`, `.media-image`, `.media-video`, `.media-embed`, `.media-audio`, `.media-specimen`, `.media-specimen-line`, `.media-unviewable`, `.media-note`, `.media-details`, `.media-name`, `.media-facts`, `.media-ref`, `.media-ref-value`, `.media-usage`, `.media-usage-title`, `.media-usage-headline`, `.media-usage-list`, `.media-usage-link` and `.media-usage-count` said in `styles/overlays.css`, keyed on `part` and re-pointed at the studio token layer. All twenty-two were this surface's alone, so the stylesheet block goes with the conversion rather than being copied. Eight `var(--spectrum-font-size-…)` names could not come with the declarations: every one of them resolves only inside `<sp-theme>`, and this document is mounted in a pane stage that is outside it, so each would silently have taken its hex fallback — they are the kit's `--jx-text-xs`, `--jx-text-sm`, `--jx-text-md` and `--jx-text-lg` instead.",height:"100%",display:"flex",gap:"var(--jx-space-5)",padding:"var(--jx-space-5)",overflowY:"auto",background:"var(--bg-panel)",fontFamily:"var(--jx-font-sans)",color:"var(--fg)",'& [part="asset-slot"], & [part="usage-slot"], & [part="list-slot"]':{$description:"A `$switch` renders its own container, and none of these three is a box: each stands exactly where its case does, so the case's own rule is the only one that lays anything out.",display:"contents"},'& [part="stage"]':{$description:"The asset takes the room and the details column keeps a fixed width, so the file is the thing being looked at and the facts about it are beside it rather than on top of it.",flex:"1",minWidth:"0",display:"flex",alignItems:"flex-start",justifyContent:"center"},'& [part="image"]':{$description:"Never larger than its own pixels: an upscaled thumbnail is a lie about the asset, and judging whether an imported image is big enough is the whole reason somebody opens this.",maxWidth:"100%",height:"auto",border:"1px solid var(--border)",borderRadius:"var(--radius)",background:"var(--bg-input)"},'& [part="video"], & [part="embed"]':{width:"100%",maxHeight:"70vh",border:"1px solid var(--border)",borderRadius:"var(--radius)",background:"var(--bg-input)"},'& [part="audio"]':{width:"100%"},'& [part="specimen"]':{$description:"A font is shown by being USED. The face itself arrives as a `@font-face` the adapter writes, under a family name generated from the path so two specimens open side by side cannot claim the same one; the element carries only that NAME, as a custom property, and the fallback stack that catches a face the browser refuses stays here where it is a rule rather than data.",width:"100%",padding:"var(--jx-space-5)",border:"1px solid var(--border)",borderRadius:"var(--radius)",background:"var(--bg-input)",color:"var(--fg)",fontFamily:"var(--jx-specimen-family, system-ui), system-ui, sans-serif"},'& [part="specimen-line"]':{margin:"0 0 var(--jx-space-4)",lineHeight:"1.3",overflowWrap:"anywhere"},'& [part="specimen-line"][data-size="48"]':{fontSize:"48px"},'& [part="specimen-line"][data-size="32"]':{fontSize:"32px"},'& [part="specimen-line"][data-size="24"]':{fontSize:"24px"},'& [part="specimen-line"][data-size="18"]':{fontSize:"18px"},'& [part="specimen-line"][data-size="14"]':{fontSize:"var(--jx-text-lg)"},'& [part="unviewable"]':{$description:"Not a failure state. A file the browser cannot render is a zip, or a format this build has never heard of, so the box says what the file IS and that the project still builds with it in.",padding:"var(--jx-space-6)",border:"1px dashed var(--border)",borderRadius:"var(--radius)",color:"var(--fg-dim)",textAlign:"center"},'& [part="note"]':{fontSize:"var(--jx-text-md)",color:"var(--fg-dim)"},'& [part="details"]':{flex:"0 0 260px",display:"flex",flexDirection:"column",gap:"var(--jx-space-4)"},'& [part="title"]':{margin:"0",fontSize:"var(--jx-text-lg)",color:"var(--fg)",overflowWrap:"anywhere"},'& [part="facts"]':{$description:'Kind, pixel size, bytes and modified date, joined by the adapter. Each is omitted rather than zeroed when it is not known: a real file can almost be `0 × 0` or `0 B`, so neither may double as "we did not find out".',margin:"0",fontSize:"var(--jx-text-md)",color:"var(--fg-dim)"},'& [part="ref"]':{$description:"The reference a document writes for this file — `/hero.jpg` for `public/hero.jpg`, which shares not one segment with it. Getting this wrong is the commonest way an image goes missing from a page, which is why it is on screen next to a button that copies it.",display:"flex",alignItems:"center",gap:"6px"},'& [part="ref-value"]':{flex:"1",minWidth:"0",fontFamily:"var(--font-mono)",fontSize:"var(--jx-text-sm)",background:"var(--bg-input)",border:"1px solid var(--border)",borderRadius:"var(--radius)",padding:"3px 6px",overflowWrap:"anywhere"},'& [part="usage"]':{display:"flex",flexDirection:"column"},'& [part="group-title"]':{margin:"0 0 var(--jx-space-2)",fontSize:"var(--jx-text-md)",fontWeight:"500",color:"var(--fg-dim)"},'& [part="message"]':{margin:"0",fontSize:"var(--jx-text-md)",color:"var(--fg-dim)"},'& [part="list"]':{listStyle:"none",margin:"var(--jx-space-3) 0 0",padding:"0",display:"flex",flexDirection:"column",gap:"var(--jx-space-1)"},'& [part="row"]':{display:"flex",alignItems:"baseline",gap:"6px",fontSize:"var(--jx-text-md)"},'& [part="file-path"]':{$description:'The path is a control, not a label: it opens the document that references this file. A plain button rather than a `jx-button`, for the reason the Problems rows give — what it has to look like is a line of text, and every fill, border and control height the kit draws would have to be taken back off again. Named `file-path` and not `path` because `jx-icon` puts `part="path"` on the `<path>` of every glyph it draws, so `[part="path"]` would select this button and any SVG path beside it.',flex:"1",minWidth:"0",margin:"0",padding:"0",background:"none",border:"none",borderRadius:"var(--jx-radius-xs)",textAlign:"left",color:"var(--accent)",cursor:"pointer",font:"inherit",overflowWrap:"anywhere",":hover":{textDecoration:"underline"},":focus-visible":{outline:"var(--jx-focus-ring)",outlineOffset:"2px"}},'& [part="count"]':{flex:"0 0 auto",fontFamily:"var(--font-mono)",fontSize:"var(--jx-text-xs)",color:"var(--fg-dim)"}},children:[{tagName:"div",attributes:{part:"stage"},children:[{tagName:"div",attributes:{part:"asset-slot",role:"none"},$switch:{$ref:"#/state/kind"},cases:{image:{tagName:"img",attributes:{part:"image",src:"${state.src}",alt:""},onload:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/imageLoaded"},value:[{$ref:"event#/target/naturalWidth"},{$ref:"event#/target/naturalHeight"}]}],description:"The only honest source of pixel dimensions in a browser is an image that has loaded, and this viewer is showing one at full size anyway. The host decides whether the numbers are new; a repeat load of the same picture must not repaint the pane."}},video:{tagName:"video",attributes:{part:"video",src:"${state.src}",controls:!0}},audio:{tagName:"audio",attributes:{part:"audio",src:"${state.src}",controls:!0}},embed:{tagName:"embed",attributes:{part:"embed",src:"${state.src}",type:"application/pdf",title:"${state.name}"}},font:{tagName:"div",attributes:{part:"specimen",style:"${state.specimenFamily}"},children:[{tagName:"style",textContent:"${state.fontFace}"},{tagName:"p",attributes:{part:"specimen-line","data-size":"48"},textContent:"${state.specimen}"},{tagName:"p",attributes:{part:"specimen-line","data-size":"32"},textContent:"${state.specimen}"},{tagName:"p",attributes:{part:"specimen-line","data-size":"24"},textContent:"${state.specimen}"},{tagName:"p",attributes:{part:"specimen-line","data-size":"18"},textContent:"${state.specimen}"},{tagName:"p",attributes:{part:"specimen-line","data-size":"14"},textContent:"${state.specimen}"}]},unviewable:{tagName:"div",attributes:{part:"unviewable"},children:[{tagName:"p",children:[{tagName:"span",textContent:"Jx has no viewer for "},{tagName:"code",textContent:"${state.extLabel}"},{tagName:"span",textContent:"."}]},{tagName:"p",attributes:{part:"note"},textContent:"The file is in the project and builds normally."}]}}}]},{tagName:"div",attributes:{part:"details"},children:[{tagName:"h3",attributes:{part:"title"},textContent:"${state.name}"},{tagName:"p",attributes:{part:"facts"},textContent:"${state.facts}"},{tagName:"div",attributes:{part:"ref"},children:[{tagName:"code",attributes:{part:"ref-value"},textContent:"${state.ref}"},{tagName:"jx-action-button",$props:{size:"sm",quiet:!0,hint:"Copy the reference"},attributes:{part:"copy"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/copyRef"}}]},children:[{tagName:"span",textContent:"Copy"}]}]},{tagName:"div",attributes:{part:"usage-slot",role:"none"},$switch:{$ref:"#/state/usageState"},cases:{shown:{tagName:"div",attributes:{part:"usage"},children:[{tagName:"h4",attributes:{part:"group-title"},textContent:"Used by"},{tagName:"p",attributes:{part:"message"},textContent:"${state.usageHeadline}"},{tagName:"div",attributes:{part:"list-slot",role:"none"},$switch:{$ref:"#/state/hasUsageFiles"},cases:{true:{tagName:"ul",attributes:{part:"list"},children:[{$prototype:"Array",items:{$ref:"#/state/usageFiles"},key:{$ref:"$map/item/path"},map:{tagName:"li",attributes:{part:"row","data-usage":"${$map.item.path}"},children:[{tagName:"button",attributes:{part:"file-path",type:"button"},textContent:"${$map.item.path}",onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/openDocument"},value:[{$ref:"$map/item/path"}]}]}},{tagName:"span",attributes:{part:"count"},textContent:"${$map.item.count}"}]}}]}}}]}}}]}]};T("media-pane",M);function S(e,t){e.region=t.region,e.name=t.name,e.kind=t.kind,e.src=t.src,e.facts=t.facts,e.ref=t.ref,e.specimen=t.specimen,e.specimenFamily=t.specimenFamily,e.fontFace=t.fontFace,e.extLabel=t.extLabel,e.usageState=t.usageState,e.usageHeadline=t.usageHeadline,e.usageFiles=t.usageFiles,e.hasUsageFiles=t.usageFiles.length>0}function F(e,t,a){e.replaceChildren();let r=g({copyRef:a.copyRef,extLabel:"",facts:"",fontFace:"",hasUsageFiles:!1,imageLoaded:a.imageLoaded,kind:"unviewable",name:"",openDocument:a.openDocument,ref:"",region:"",specimen:"",specimenFamily:"",src:"",usageFiles:[],usageHeadline:"",usageState:"hidden"});S(r,t);let i=null,s=!1,p=R("media-pane",r,e).then((n)=>{if(s)n.dispose();else i=n;return n.root});return{attached:()=>{if(s)return!1;let n=i?.root;return n===void 0?!0:n instanceof HTMLElement&&e.contains(n)},dispose(){s=!0,i?.dispose(),i=null},ready:p,update:(n)=>S(r,n)}}var b="media",k="The quick brown fox jumps over the lazy dog",c=new Map;function h(e){return c.get(e)??null}function AT(e,t){let a=h(e);return a!==null&&a.tabId===t.id&&a.wrap.isConnected&&a.surface.attached()}function Ew(e){let t=c.get(e);if(!t)return;t.scope.stop(),t.surface.dispose(),c.delete(e)}function OT(e){let t=on(e);if(t$.has(t))return"font";let a=Gc({name:e});if(a==="image"||a==="video"||a==="audio")return a;return t===".pdf"?"embed":"unviewable"}function MT(e,t){let a=[Gc({name:e})];if(t?.width!=null&&t.height!=null)a.push(`${t.width} × ${t.height}`);if(t?.bytes!=null)a.push(jT(t.bytes));if(t?.modified)a.push(`modified ${vp(new Date(t.modified))}`);return a.join(" · ")}function z(e){return`jx-specimen-${e.replaceAll(/[^a-zA-Z0-9]/g,"-")}`}function PT(e){let t=z(e);return{fontFace:`@font-face { font-family: "${t}"; src: url("${rr(e)}"); }`,specimen:k,specimenFamily:`--jx-specimen-family: "${t}"`}}function FT(e){let t=cN(e);if(t===null)return{usageFiles:[],usageHeadline:"",usageState:"hidden"};return{usageFiles:(e?.status==="ready"?e.result.files:[]).map((r)=>({count:String(r.count),path:r.path})),usageHeadline:t,usageState:"shown"}}async function C(e){let{openFileInTab:t}=await (le("rcn56qvm"),import("./files-rcn56qvm.js"));await t(e)}function YD(e,t){let{paneId:a,wrap:r}=e;if(AT(a,t))return;Ew(a);let i=t.documentPath??"",s=rr(i),p=Fb(i),n=on(i),x=OT(i),o=null,u=()=>{if(o!==null&&h(a)===o)y()},v=()=>{let d=Od(i),l=Ow(i);if(!Ad(i))qu(i).then(u);if(l===null||l.status==="pending")Ju(i).then(u);let f=PT(i);return{extLabel:n||"this file",facts:MT(i,d),fontFace:x==="font"?f.fontFace:"",kind:x,name:i.split("/").pop()??"",ref:p,region:wi(a,"media"),specimen:f.specimen,specimenFamily:f.specimenFamily,src:s,...FT(l)}},y=()=>{o?.surface.update(v())},w=ge(),N=F(r,v(),{copyRef:()=>{if("clipboard"in navigator)navigator.clipboard.writeText(p)},imageLoaded:(d,l)=>{if(yp(i,d,l))u()},openDocument:(d)=>{C(d)}});o={paneId:a,scope:w,surface:N,tabId:t.id,wrap:r},c.set(a,o),w.run(()=>{ne(()=>{if(h(a)!==o)return;t.documentPath,y()})})}var H={children:[],tagName:"div"};function Tw(e){return jd(e)}function A(e){return on(e)===".svg"?[b,"source"]:[b]}function fb(e,t={}){let a=m.tabs.get(e);if(a)return Bt(e,{focus:t.focus!==!1}),a;return _i({capabilities:{modes:A(e)},document:structuredClone(H),documentPath:e,id:e,sourceFormat:null,...t.paneId!==void 0&&{paneId:t.paneId},...t.preview===!0&&{preview:!0},...t.focus===!1&&{focus:!1}})}
|
|
2
|
+
export{AT,Ew,OT,MT,PT,FT,YD,Tw,fb};
|
|
3
|
+
|
|
4
|
+
//# debugId=256A365D5C5FE59264756E2164756E21
|
|
5
|
+
//# sourceMappingURL=studio-x1x167jh.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{mt,io}from"./studio-k3xxbagr.js";import{UA,bC,Pt,Nt,uh,ZA,ae}from"./studio-q7rtx6zq.js";import{ge,ne,g,eu,C,Lh}from"./studio-43sd2mam.js";import{Q}from"./studio-nqxqf8p2.js";import{n,te}from"./studio-vxq7fcvv.js";var qe="data-jx-region",fe=["rail","navigator","inspector","pane","dock.bottom","statusbar","commandbar","overlay"],pe=new Set(["dock.bottom"]);function me(e){let t=e.indexOf("/"),o=t===-1?e:e.slice(0,t),r=t===-1?void 0:e.slice(t+1);if(r===""||o==="")return null;let s=o,i;if(!pe.has(o)){let c=o.indexOf(".");if(c!==-1){if(s=o.slice(0,c),i=o.slice(c+1),i==="")return null}}let l=fe.find((c)=>c===s);if(l===void 0)return null;return i===void 0?r===void 0?{surface:l}:{part:r,surface:l}:r===void 0?{instance:i,surface:l}:{instance:i,part:r,surface:l}}function ve(e){return me(e)!==null}function he(e){if(e==="pane")return"pane.primary";return e.startsWith("pane/")?`pane.primary/${e.slice(5)}`:e}function X(e){return e??document}var be=[{locate:([,e],t)=>{let r=Mp(`inspector/field:${e}`,t)?.querySelector('[part="browse"]');return r?[r]:[]},pattern:/^inspector\/field:(.+)\/browse$/},{locate:([,e],t)=>{let o=Mp("inspector",t);return o?[...o.querySelectorAll(`[data-prop="${CSS.escape(e)}"]`)]:[]},pattern:/^inspector\/field:(.+)$/}];function ye(e,t){let o=he(e);if(!ve(o))return[];let r=[...X(t).querySelectorAll(`[data-jx-region="${CSS.escape(o)}"]`)];if(r.length>0)return r;for(let s of be){let i=o.match(s.pattern);if(i)return s.locate(i,X(t))}return[]}function Mp(e,t){return ye(e,t).at(-1)??null}var b$={dock:"dock.bottom",inspector:"inspector",navigator:"navigator",pane:"pane.primary",rail:"rail",status:"statusbar"};function wi(e,t){return t?`pane.${e}/${t}`:`pane.${e}`}function FA(e){return wi(e,"tabs")}function jA(e){return`navigator/panel:${e}`}function HA(e){return`inspector/tab:${e}`}var BA="navigator/statements";function zA(e){return`inspector/statements:${e}`}function fx(e){return`dock.bottom/panel:${e}`}var xe={dialog:"dialog",modal:"dialog",popover:"menu",toast:"toasts"};function ft(e,t){let o=xe[e];return t?`overlay.${o}:${t}`:`overlay.${o}`}var _=new Map,Z=1;function ee(e){let t=Z;return Z+=1,_.set(t,{...e,id:t}),t}function I(e){_.delete(e)}function oe(){return[..._.values()]}function MA(e){let t=e.toLowerCase();return oe().filter((o)=>o.elements.has(t))}function PA(e){return oe().filter((t)=>t.name===e)}var F=null;function g$(e=document){return F??=ZA({document:e}),F}function re(){return F??g$()}var E="jx-studio:/surfaces/",M=new Map;function T(e,t){M.set(e,t),bC(Se(e),t)}function Se(e){return`${E}${e}.json`}function WA(e){return M.get(e)}function $e(e){if(!e.startsWith(E)||!e.endsWith(".json"))return;return M.get(e.slice(E.length,-5))}async function R(e,t,o,r={}){let s=M.get(e);if(!s)throw Error(`Studio surface "${e}" is not registered`);if(await re(),r.region)o.setAttribute(qe,r.region);let i={scope:t,base:E,resolver:$e};if(r.onNodeCreated)i.onNodeCreated=r.onNodeCreated;if(r.onNodeMoved)i.onNodeMoved=r.onNodeMoved;if(r.signal)i.signal=r.signal;let l=await UA(s,o,i),c=(a)=>({dispose:a,elements:l.elements,root:l.root,scope:l.scope});if(r.signal?.aborted)return c(l.dispose);let d=0,p=()=>{l.dispose(),I(d)};return d=ee({elements:l.elements,host:o,name:e,remount:async()=>{p(),await R(e,t,o,r)}}),r.signal?.addEventListener("abort",()=>I(d),{once:!0}),c(p)}var ie={$schema:"https://jxsuite.com/schema/v1",$id:"StudioDialog",$description:"Studio's confirm, save-or-discard and prompt dialogs: one jx-dialog whose body is projected from the adapter's scope. `message` is a sentence; `choice` is a `jx-select` over the options; `field` is the prompt's jx-textfield with its refusal. The four answers call the host's functions, and the host decides when the dialog closes.",tagName:"jx-dialog",$props:{headline:{$ref:"#/state/headline"},confirmLabel:{$ref:"#/state/confirmLabel"},secondaryLabel:{$ref:"#/state/secondaryLabel"},cancelLabel:{$ref:"#/state/cancelLabel"},destructive:{$ref:"#/state/destructive"},size:{$ref:"#/state/size"}},attributes:{headline:"${state.headline}","confirm-label":"${state.confirmLabel || null}","secondary-label":"${state.secondaryLabel || null}","cancel-label":"${state.cancelLabel || null}",part:"dialog-host"},onconfirm:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/confirm"},value:[]}]},onsecondary:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/secondary"},value:[]}]},oncancel:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/cancel"},value:[]}]},onclose:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/closed"},value:[]}]},style:{'& [part="message"]':{$description:"The one part of a dialog that is text rather than interface, so it opts back in to selection. The root sets `user-select: none` and `styles/tokens.json` restates it on every `dialog`, so the headline, the labels and the buttons around this sentence stay unselectable; a message is often the thing a reader copies into a search or a bug report.",margin:"0 0 var(--jx-space-3)",userSelect:"text"},'& [part="message"]:last-child':{margin:"0"},'& [part="island"] > p, & [part="island"] > span, & [part="island"] > strong, & [part="island"] > em, & [part="island"] > code':{$description:"The island's own prose is the message's other form — a body richer than a sentence, written straight into the island from a lit template (studio-ui-guidelines.md §9.4) — so it is selectable for the same reason `[part=\"message\"]` is. The opt-in stops at those children because the island is ALSO the mount point for a whole document: the Open Grid picker and Push Schema's plan put their surfaces here, and `user-select` inherits, so a rule on the island itself would hand selection to every heading, source row and button they draw, which is the interface the policy exists to keep unselectable. A mounted surface roots a `div`; a message writes paragraphs and text-level spans, so the two forms are told apart by the child that arrives.",userSelect:"text"},'& [part="island"]:empty':{display:"none"},'& [part="message-slot"], & [part="choice-slot"], & [part="field-slot"]':{display:"contents"},'& [part="choice-row"]':{display:"flex",flexDirection:"column",gap:"var(--jx-space-1)",margin:"0 0 var(--jx-space-3)"},'& [part="choice-label"]':{fontSize:"var(--jx-text-sm)",color:"var(--jx-fg-dim)"},"& jx-textfield":{width:"100%"}},children:[{tagName:"div",attributes:{part:"message-slot",role:"none"},$switch:{$ref:"#/state/hasMessage"},cases:{true:{tagName:"p",attributes:{part:"message"},textContent:"${state.message}"}}},{tagName:"div",attributes:{part:"island"}},{tagName:"div",attributes:{part:"choice-slot",role:"none"},$switch:{$ref:"#/state/hasChoice"},cases:{true:{tagName:"div",attributes:{part:"choice-row"},children:[{tagName:"span",attributes:{part:"choice-label"},textContent:"${state.choiceLabel}"},{tagName:"jx-select",$props:{label:{$ref:"#/state/choiceLabel"},options:{$ref:"#/state/options"},value:{$ref:"#/state/chosen"}},attributes:{part:"choice"},onchange:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/pick"},value:[{$ref:"event#/target/value"}]}]}}]}}},{tagName:"div",attributes:{part:"field-slot",role:"none"},$switch:{$ref:"#/state/hasField"},cases:{true:{tagName:"jx-textfield",$props:{label:{$ref:"#/state/headline"},value:{$ref:"#/state/value"},placeholder:{$ref:"#/state/placeholder"},invalid:{$ref:"#/state/invalid"},error:{$ref:"#/state/error"},multiline:{$ref:"#/state/multiline"},rows:{$ref:"#/state/rows"},mono:{$ref:"#/state/mono"}},attributes:{part:"field"},oninput:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/input"},value:[{$ref:"event#/target/value"}]}]},onkeydown:{$prototype:"Function",body:[{$switch:{$ref:"#/state/singleLine"},cases:{true:[{$switch:{$ref:"event#/key"},cases:{Enter:[{preventDefault:!0},{operator:"call",target:{$ref:"#/state/confirm"},value:[]}]}}]}}]},$description:"The prompt's one field. `multiline` is what makes it a paste box rather than a line: an import the author copied out of a `_redirects` file is column-aligned, so it also asks for `mono`. A multiline field takes Enter as a newline, which is why the Enter-confirms handler below is guarded on it — a paste box whose second line submits the dialog cannot be typed into."}}}]};T("dialog",ie);function Jt(e){if(e.querySelector('[part="dialog"]'))return Promise.resolve(e);return new Promise((t)=>{e.addEventListener("jx-ready",function o(r){if(r.target!==e&&!e.querySelector('[part="dialog"]'))return;e.removeEventListener("jx-ready",o),t(e)})})}function Zs(e){let t=document.createElement("div");t.style.pointerEvents="auto",t.setAttribute(qe,ft("dialog",e.region)),e.layer.append(t);let o=g({cancel:()=>{e.onCancel()},cancelLabel:e.cancelLabel,choiceLabel:e.choice?.label??"",chosen:e.choice?.chosen??"",closed:()=>{e.onClosed()},confirm:()=>{e.onConfirm()},confirmLabel:e.confirmLabel,destructive:e.destructive===!0,error:"",hasChoice:e.choice!==void 0,hasField:e.field!==void 0,mono:e.field?.mono===!0,multiline:e.field?.multiline===!0,rows:e.field?.rows??"3",singleLine:e.field!==void 0&&e.field.multiline!==!0?"true":"false",hasMessage:e.message!==void 0&&e.message!=="",headline:e.headline,input:(a)=>{o.value=a,e.onInput?.(a)},invalid:!1,message:e.message??"",options:e.choice?.options??[],pick:(a)=>{e.onPick?.(a)},placeholder:e.field?.placeholder??"",secondary:()=>{e.onSecondary?.()},secondaryLabel:e.secondaryLabel??"",size:e.size??"sm",value:e.field?.value??""}),r=null,s=!1,i=()=>s,l=()=>{},c=new Promise((a)=>{l=a}),p=R("dialog",o,t).then(async(a)=>{let u=a.root;if(i())return a.dispose(),u;if(r=a,await Promise.race([Jt(u),c]),i())return u;if(e.island?.(u.querySelector('[part="island"]')??u),Pt(u),e.field){let x=u.querySelector("jx-textfield");if(x)setTimeout(()=>{if(!s)uh(x,e.field?.select??"all")},0)}return u});return{close(){if(s)return;s=!0,l();let a=r?.root;if(a instanceof HTMLElement)Nt(a);r?.dispose(),r=null,t.remove()},host:t,ready:p,update(a){if(a.confirmLabel!==void 0)o.confirmLabel=a.confirmLabel;if(a.cancelLabel!==void 0)o.cancelLabel=a.cancelLabel;if(a.secondaryLabel!==void 0)o.secondaryLabel=a.secondaryLabel;if(a.message!==void 0)o.message=a.message,o.hasMessage=a.message!=="";if(a.value!==void 0)o.value=a.value;if(a.placeholder!==void 0)o.placeholder=a.placeholder;if(a.invalid!==void 0)o.invalid=a.invalid;if(a.error!==void 0)if(a.error!==""&&a.error===o.error){o.error="";let u=a.error;queueMicrotask(()=>{o.error=u})}else o.error=a.error;if(a.options!==void 0)o.options=a.options;if(a.chosen!==void 0)o.chosen=a.chosen}}}var se={$schema:"https://jxsuite.com/schema/v1",$id:"StudioToasts",$description:"The toast stack: a rendering of the notification service's toasts, newest last. Each row is projected by ui/layers.ts with its severity glyph and, where a recovery command exists, that command's title and gate; the two buttons call back into the host, which owns the records and their timers.",tagName:"div",attributes:{part:"stack"},style:{position:"absolute",right:"var(--jx-space-4)",bottom:"36px",display:"flex",flexDirection:"column",gap:"var(--jx-space-3)",alignItems:"flex-end",maxWidth:"min(420px, calc(100vw - 24px))",'& [part="toast"]':{display:"flex",alignItems:"center",gap:"var(--jx-space-3)",pointerEvents:"auto",padding:"var(--jx-space-3)",border:"1px solid var(--jx-border)",borderLeft:"3px solid var(--jx-fg-dim)",borderRadius:"var(--jx-radius-md)",background:"var(--jx-bg-panel)",color:"var(--jx-fg)",fontSize:"var(--jx-text-sm)",lineHeight:"var(--jx-leading-sm)",boxShadow:"var(--jx-shadow-popover)"},'& [part="toast"][data-severity="success"]':{borderLeftColor:"var(--jx-success)"},'& [part="toast"][data-severity="info"]':{borderLeftColor:"var(--jx-accent)"},'& [part="toast"][data-severity="warn"]':{borderLeftColor:"var(--jx-warning)"},'& [part="toast"][data-severity="error"]':{borderLeftColor:"var(--jx-danger)"},'& [part="icon"]':{flex:"none",width:"14px",textAlign:"center",fontWeight:"700"},'& [data-severity="success"] [part="icon"]':{color:"var(--jx-success)"},'& [data-severity="info"] [part="icon"]':{color:"var(--jx-accent)"},'& [data-severity="warn"] [part="icon"]':{color:"var(--jx-warning)"},'& [data-severity="error"] [part="icon"]':{color:"var(--jx-danger)"},'& [part="message"]':{flex:"1",minWidth:"0",overflow:"hidden",display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:"3"},'& [part="action-slot"]':{display:"contents"},'& [part="action"] > [part="control"]':{color:"var(--jx-accent)"}},children:[{$prototype:"Array",items:{$ref:"#/state/toasts"},key:{$ref:"$map/item/id"},map:{tagName:"div",attributes:{part:"toast","data-severity":"${$map.item.severity}"},children:[{tagName:"span",attributes:{part:"icon","aria-hidden":"true"},textContent:"${$map.item.icon}"},{tagName:"span",attributes:{part:"message"},textContent:"${$map.item.message}"},{tagName:"span",attributes:{part:"action-slot",role:"none"},$switch:{$ref:"$map/item/hasAction"},cases:{true:{tagName:"jx-button",$props:{size:"sm",quiet:!0,disabled:{$ref:"$map/item/actionDisabled"}},attributes:{part:"action",title:"${$map.item.actionTitle}"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/runAction"},value:[{$ref:"$map/item/id"}]}]},children:[{tagName:"span",textContent:"${$map.item.actionLabel}"}]}}},{tagName:"jx-action-button",$props:{label:"Dismiss notification",hint:"Dismiss notification",icon:"x",size:"sm"},attributes:{part:"dismiss"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/dismissToast"},value:[{$ref:"$map/item/id"}]}]}}]}}]};function Te(e){return e instanceof RangeError||e instanceof Error&&e.name==="CommandUnavailableError"}function Tn(e,t,o,r=t){let s=(l)=>{if(!Te(l))console.error(`${r}: command "${t}" failed`,l);C.error(Q(l),{key:`command.run:${t}`,source:r})},i;try{i=e.run(t,o)}catch(l){return s(l),Promise.resolve()}return Promise.resolve(i).catch(s)}function rt(e,t,o){let r=ae();return r?Tn(r,e,t,o):Promise.resolve()}var de=null,z=null,J=null,j=null;function tt(e){return(e==="popover"?de:e==="modal"?z:e==="toast"?j:J)??document.body}function v$(){de=document.querySelector("#layer-popover"),z=document.querySelector("#layer-modal"),J=document.querySelector("#layer-dialog"),j=document.querySelector("#layer-toast"),Ne()}var le="jx-dialog[data-open], dialog[open]";function Wb(){return Boolean(J?.querySelector(le)||z?.querySelector(le))}function y$(){return document.querySelector(":popover-open")!==null}function Ko(e,t,o={}){let{confirmLabel:r="Confirm",cancelLabel:s="Cancel",destructive:i=!1}=o;return new Promise((l)=>{let c=!1,d=(a)=>{if(c)return;c=!0,p.close(),l(a)},p=Zs({cancelLabel:s,confirmLabel:r,destructive:i,headline:e,layer:tt("dialog"),...U(t),onCancel:()=>d(!1),onClosed:()=>d(!1),onConfirm:()=>d(!0)})})}function gC(e,t,o={}){let{saveLabel:r="Save",discardLabel:s="Discard",cancelLabel:i="Cancel"}=o;return new Promise((l)=>{let c=!1,d=(a)=>{if(c)return;c=!0,p.close(),l(a)},p=Zs({cancelLabel:i,confirmLabel:r,headline:e,layer:tt("dialog"),...U(t),onCancel:()=>d("cancel"),onClosed:()=>d("cancel"),onConfirm:()=>d("save"),onSecondary:()=>d("discard"),secondaryLabel:s})})}function U(e){if(n(e))return{message:e};return{island:(t)=>{io(e,t)}}}function xi(e,t={}){let{cancelLabel:o="Cancel",choice:r,confirmLabel:s="OK",message:i,mono:l=!1,multiline:c=!1,placeholder:d="",rows:p="3",select:a="all",size:u,validate:x,value:ue=""}=t,P=(v)=>x?x(v,L):v.trim()?"":"Enter a value.",h=ue,L=r?.initial??"",m="",V=!1,W=()=>te(d)?d():d,K=()=>r?r.options().map((v)=>({label:v.label,value:v.value})):[];return new Promise((v)=>{let B=!1,D=(f)=>{if(B)return;B=!0,k.close(),v(f)},Y=(f)=>{m=f,k.update({error:m,invalid:m!==""})},S={cancelLabel:o,confirmLabel:s,headline:e,layer:tt("dialog"),onCancel:()=>D(null),onClosed:()=>D(null),onConfirm:()=>{let f=P(h);if(f){Y(f);return}D(h.trim())},onInput:(f)=>{V=!0,h=f;let w=P(h);if(w!==m)Y(w)},onPick:(f)=>{L=f,r?.onChange?.(f);let w=P(h);m=V||m?w:"",k.update({chosen:L,error:m,invalid:m!=="",options:K(),placeholder:W()})}};if(i!==void 0)Object.assign(S,U(i));if(r)S.choice={chosen:L,label:r.label,options:K()};if(S.field={mono:l,multiline:c,placeholder:W(),rows:p,select:a,value:h},u!==void 0)S.size=u;let k=Zs(S)})}var N=new Map;function Xs(e,t){let o=`${e}:${t}`,r=N.get(o);if(r&&r.parentElement)return r;return r=document.createElement("div"),r.style.pointerEvents="auto",r.setAttribute(qe,ft(e,t)),tt(e).append(r),N.set(o,r),r}function Vb(e,t){let o=`${e}:${t}`,r=N.get(o);if(r)io(mt,r),r.remove(),N.delete(o)}var we=180,Ee={error:"✕",info:"ℹ",success:"✓",warn:"!"},A=null,y=new Map,b=new Set;function Me(){if(!("matchMedia"in globalThis))return!1;return globalThis.matchMedia("(prefers-reduced-motion: reduce)").matches===!0}function Oe(){try{return new URLSearchParams(globalThis.location.search).get("automation")==="1"}catch{return!1}}function w$(){return[...b].map((e)=>`overlay: toast ${e} settling in`)}function q(e){let t=y.get(e);if(t!==void 0)clearTimeout(t),y.delete(e);b.delete(e),Lh(e)}function Ce(e){if(y.has(e.id)||b.has(e.id))return;let t=Me()?0:we;if(t>0)b.add(e.id),setTimeout(()=>b.delete(e.id),t);let o=e.timeoutMs??0;if(o<=0||Oe())return;y.set(e.id,setTimeout(()=>q(e.id),o))}T("toasts",se);var G=null,H=null,O=null;function ce(){return G??=g({dismissToast:(e)=>{q(e)},runAction:(e)=>{let t=eu.find((r)=>r.id===e),o=ae();if(!t?.action||!o)return;q(e),Tn(o,t.action,t.actionArgs,"Notifications")},toasts:[]}),G}function je(e){let t=e.action===void 0?null:ae(),o=e.action,r=t&&o!==void 0?t.get(o):void 0,s=r&&o!==void 0&&t.isVisible(o)?r:null,i=s&&o!==void 0?t.disabledReason(o):void 0;return{actionDisabled:i!==void 0,actionLabel:s?.title??"",actionTitle:s===null?"":i===void 0?s.title:`${s.title} — requires ${i}`,hasAction:s!==null,icon:Ee[e.severity],id:e.id,message:e.message,severity:e.severity}}function Ne(){if(Ae(),!j)return;A=ge(),A.run(()=>{ne(()=>{eu.length,ae();for(let e of eu)Ce(e);ce().toasts=eu.map((e)=>je(e))})}),H=R("toasts",ce(),j),H.then((e)=>{O=e})}function Ae(){A?.stop(),A=null;for(let t of y.values())clearTimeout(t);y.clear(),b.clear();let e=H;if(H=null,O)O.dispose(),O=null;else if(e)e.then((t)=>t.dispose());G=null}
|
|
2
|
+
export{MA,PA,g$,qe,Mp,b$,wi,FA,jA,HA,BA,zA,fx,ft,T,WA,R,Jt,Zs,Tn,rt,tt,v$,Wb,y$,Ko,gC,xi,Xs,Vb,w$};
|
|
3
|
+
|
|
4
|
+
//# debugId=DA42A54DAA5FC46164756E2164756E21
|
|
5
|
+
//# sourceMappingURL=studio-x9hsze61.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{qr}from"./studio-k3xxbagr.js";import{Pt,Nt}from"./studio-q7rtx6zq.js";import{ge,ne,g,dr,C}from"./studio-43sd2mam.js";import{Si}from"./studio-8tr6cfrc.js";import{qe,ft,T,R,Jt,tt}from"./studio-x9hsze61.js";import{sh}from"./studio-d5grtb9e.js";import{pN}from"./studio-3e54qh39.js";import{Zn}from"./studio-5g0rprdt.js";import{al,ar,Zb}from"./studio-fyh0jc96.js";var y={$schema:"https://jxsuite.com/schema/v1",$id:"StudioPanelActivity",$description:'The Activity feed: one row per operation this session, newest last, drawn from the projection `panels/activity-panel.ts` hands in. A row is a glyph, a head line (what the operation is, who is running it, how long it has taken), the line it is doing now, the plan it declared, the log it captured and — only when the operation handed a callback over — its Cancel. Every conditional the row has is a boolean field on the projected item, because `$switch` over a value is the only conditional a document has and "is this entry cancellable" is a question the panel has already answered. Nothing here reads the activity store: the panel owns what an operation IS, and the surface owns what it looks like.',tagName:"div",attributes:{part:"panel"},style:{$description:"What `.activity-panel`, `.activity-actions`, `.activity-list`, `.activity-row`, `.activity-icon`, `.activity-body`, `.activity-head`, `.activity-title`, `.activity-source`, `.activity-duration`, `.activity-status`, `.activity-steps`, `.activity-step`, `.activity-step-icon`, `.activity-log-toggle` and `.activity-log` said in `styles/panels.css`, keyed on `part`. Two rules were DELETED rather than moved: `.activity-clear` and `.activity-cancel` drew a small bordered button by hand, and `jx-button` is that button — so the sizes, the border, the hover fill and the disabled state are the kit's now. Three token names changed meaning on the way: `--spectrum-font-size-50`, `--spectrum-font-size-75` and `--spectrum-corner-radius-75` resolve only inside `<sp-theme>`, and this document is mounted into the Bottom dock's body where that element is not an ancestor — every one of them would silently have taken its px fallback. They are the kit's own scale here (`--jx-text-sm`, `--jx-text-md`, `--jx-radius-xs`), which is the step each of them was. The `.activity-*` rules stay in the stylesheet regardless: `publish/deploy-checklist.ts` still draws the checklist above this feed in that same vocabulary, and it is a lit template until it converts.",display:"flex",flexDirection:"column",gap:"8px",padding:"8px",minWidth:"0",fontFamily:"var(--jx-font-sans)",color:"var(--fg)",'& [part="feed"]':{display:"flex",flexDirection:"column",gap:"8px",minWidth:"0"},'& [part="actions"]':{display:"flex",justifyContent:"flex-end"},'& [part="list"]':{display:"flex",flexDirection:"column",gap:"4px",margin:"0",padding:"0",listStyle:"none"},'& [part="row"]':{$description:"The left border is the state, at 3px, which is the one thing that must be legible in a column of twenty rows without reading any of them. Its default is the dim foreground so a state nobody has a colour for still draws a border rather than a gap.",display:"flex",alignItems:"flex-start",gap:"8px",padding:"6px 8px",border:"1px solid var(--border)",borderLeft:"3px solid var(--fg-dim)",borderRadius:"var(--radius)",background:"var(--bg-panel)",color:"var(--fg)",fontSize:"var(--jx-text-md)"},'& [part="row"][data-state="running"]':{borderLeftColor:"var(--accent)"},'& [part="row"][data-state="done"]':{borderLeftColor:"var(--success)"},'& [part="row"][data-state="failed"]':{borderLeftColor:"var(--danger)"},'& [part="row"][data-state="cancelled"]':{borderLeftColor:"var(--fg-dim)"},'& [part="icon"]':{flex:"none",width:"14px",textAlign:"center",fontWeight:"700",lineHeight:"1.5"},'& [part="row"][data-state="running"] [part="icon"]':{color:"var(--accent)"},'& [part="row"][data-state="done"] [part="icon"]':{color:"var(--success)"},'& [part="row"][data-state="failed"] [part="icon"]':{color:"var(--danger)"},'& [part="body"]':{flex:"1",minWidth:"0",display:"flex",flexDirection:"column",gap:"2px"},'& [part="head"]':{display:"flex",alignItems:"baseline",gap:"8px",minWidth:"0"},'& [part="row-title"]':{fontWeight:"700",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},'& [part="source"], & [part="duration"]':{flex:"none",color:"var(--fg-dim)",fontSize:"var(--jx-text-sm)"},'& [part="duration"]':{$description:"Pushed to the far edge so a column of rows reads as a column of times.",marginLeft:"auto"},'& [part="status"]':{color:"var(--fg-dim)",overflowWrap:"anywhere"},'& [part="steps"]':{$description:'The plan, declared up front, so "which of the three steps is this on" is answered by looking rather than by reading the status line and remembering what came before it.',display:"flex",flexDirection:"column",gap:"1px",margin:"2px 0 0",padding:"0",listStyle:"none",fontSize:"var(--jx-text-sm)"},'& [part="step"]':{display:"flex",gap:"6px",color:"var(--fg-dim)"},'& [part="step"][data-state="running"]':{color:"var(--fg)"},'& [part="step"][data-state="done"] [part="step-icon"]':{color:"var(--success)"},'& [part="step"][data-state="failed"] [part="step-icon"]':{color:"var(--danger)"},'& [part="step-icon"]':{flex:"none",width:"10px",textAlign:"center"},'& [part="log-toggle"]':{$description:"A plain button rather than a kit one, and the one element here that is not the kit's. The control has to carry `aria-expanded` on the node the reader actually focuses, and a `jx-button` forwards a fixed set of ARIA properties to the control inside its shadow root — an attribute written on the host would name the wrapper and not the button. Its wording is the disclosure's whole state (`docs/studio/interface/problems-and-progress.md` calls it the Show log disclosure), so nothing else has to draw one.",alignSelf:"flex-start",padding:"0",border:"none",background:"none",color:"var(--accent)",font:"inherit",fontSize:"var(--jx-text-sm)",cursor:"pointer",":hover":{textDecoration:"underline"},":focus-visible":{outline:"var(--jx-focus-ring)",outlineOffset:"2px"}},'& [part="log"]':{$description:"The captured output the progress modal used to show once and then lose. It scrolls inside the row rather than growing it, so one 400-line `bun install` failure does not become the whole panel. It is selectable against the root's `user-select: none`, the one part of an activity row that is: the output is what a reader pastes into a bug report, and the row offers no copy action.",userSelect:"text",maxHeight:"180px",margin:"2px 0 0",padding:"6px",overflow:"auto",borderRadius:"var(--jx-radius-xs)",background:"var(--bg)",color:"var(--fg-dim)",fontFamily:"var(--font-mono)",fontSize:"var(--jx-text-sm)",whiteSpace:"pre-wrap"},'& [part="cancel"]':{flex:"none"},'& [part="empty"]':{$description:"The teaching empty state, drawn here rather than borrowed from `panels/empty-state.ts`: that helper is a lit template and a document cannot call one. What it says is what is kept — one sentence saying what the region is FOR, then where its content comes from — and this region's fill is an operation somebody else starts, so it offers no button.",display:"flex",flexDirection:"column",alignItems:"center",gap:"8px",padding:"24px",textAlign:"center",fontSize:"13px",color:"var(--fg-dim)"},'& [part="empty-message"], & [part="empty-detail"]':{margin:"0",maxWidth:"34ch",lineHeight:"1.5"},'& [part="empty-detail"]':{fontSize:"var(--jx-text-sm)",opacity:"0.8"}},children:[{tagName:"div",attributes:{part:"feed-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"#/state/hasRows"},cases:{true:{tagName:"div",attributes:{part:"feed"},children:[{tagName:"div",attributes:{part:"actions-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"#/state/hasFinished"},cases:{true:{tagName:"div",attributes:{part:"actions"},children:[{tagName:"jx-button",$props:{size:"sm",quiet:!0},attributes:{part:"clear"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/clearFinished"}}]},children:[{tagName:"span",textContent:"${state.clearLabel}"}]}]}}},{tagName:"ul",attributes:{part:"list"},children:[{$prototype:"Array",items:{$ref:"#/state/rows"},key:{$ref:"$map/item/id"},map:{tagName:"li",attributes:{part:"row","data-state":"${$map.item.state}"},children:[{tagName:"span",attributes:{part:"icon","aria-hidden":"true"},textContent:"${$map.item.icon}"},{tagName:"div",attributes:{part:"body"},children:[{tagName:"div",attributes:{part:"head"},children:[{tagName:"span",attributes:{part:"row-title"},textContent:"${$map.item.title}"},{tagName:"span",attributes:{part:"source-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"$map/item/hasSource"},cases:{true:{tagName:"span",attributes:{part:"source"},textContent:"${$map.item.source}"}}},{tagName:"span",attributes:{part:"duration"},textContent:"${$map.item.duration}"}]},{tagName:"div",attributes:{part:"status-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"$map/item/hasStatus"},cases:{true:{tagName:"div",attributes:{part:"status"},textContent:"${$map.item.status}"}}},{tagName:"div",attributes:{part:"steps-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"$map/item/hasSteps"},cases:{true:{tagName:"ol",attributes:{part:"steps"},children:[{$prototype:"Array",items:{$ref:"$map/item/steps"},key:{$ref:"$map/item/key"},map:{tagName:"li",attributes:{part:"step","data-state":"${$map.item.state}"},children:[{tagName:"span",attributes:{part:"step-icon","aria-hidden":"true"},textContent:"${$map.item.icon}"},{tagName:"span",attributes:{part:"step-label"},textContent:"${$map.item.label}"}]}}]}}},{tagName:"div",attributes:{part:"log-toggle-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"$map/item/hasLog"},cases:{true:{tagName:"button",attributes:{part:"log-toggle",type:"button","aria-expanded":"${$map.item.expanded ? 'true' : 'false'}"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/toggleLog"},value:[{$ref:"$map/item/id"}]}]},textContent:"${$map.item.logLabel}"}}},{tagName:"div",attributes:{part:"log-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"$map/item/showLog"},cases:{true:{tagName:"pre",attributes:{part:"log"},textContent:"${$map.item.logText}"}}}]},{tagName:"div",attributes:{part:"cancel-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"$map/item/cancellable"},cases:{true:{tagName:"jx-button",$props:{size:"sm"},attributes:{part:"cancel",title:"Stop this operation"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/cancel"},value:[{$ref:"$map/item/id"}]}]},children:[{tagName:"span",textContent:"Cancel"}]}}}]}}]}]},false:{tagName:"div",attributes:{part:"empty"},children:[{tagName:"p",attributes:{part:"empty-message"},textContent:"Long operations show their progress, their log and their Cancel button here."},{tagName:"p",attributes:{part:"empty-detail"},textContent:"Installs, clones, publishes and imports report here while they run."}]}}}]};T("panel-activity",y);var h=null,u=null,d=null,c=null;function N(t,e){t.rows=e.rows,t.hasRows=e.hasRows,t.hasFinished=e.hasFinished,t.clearLabel=e.clearLabel}function E(t){if(h!==t)return!1;return c===null?d!==null:c.root.parentNode===t}function v(t,e){if(E(t))return;f(),h=t;let i=g({cancel:e.cancel,clearFinished:e.clearFinished,clearLabel:"",hasFinished:!1,hasRows:!1,rows:[],toggleLog:e.toggleLog});u=ge(),u.run(()=>{ne(()=>{N(i,e.project())})});let a=R("panel-activity",i,t);d=a,a.then((l)=>{if(d===a)c=l;else l.dispose()})}function f(){u?.stop(),u=null;let t=d;if(d=null,c)c.dispose(),c=null;else if(t)t.then((e)=>e.dispose());h=null}var ds=g([]),j=20,p=new Map,b=0;function I(){return b+=1,`a${b}`}function Mc(t){return t.state!=="running"}function w(){let t=ds.filter((e)=>Mc(e)).length-j;while(t>0){let e=ds.findIndex((i)=>Mc(i));if(e===-1)return;p.delete(ds[e].id),ds.splice(e,1),t-=1}}function Us(t){let e={cancellable:t.cancel!==void 0,endedAt:null,expanded:!1,id:I(),log:[],startedAt:dr(),state:"running",status:t.status??"",steps:(t.steps??[]).map((o)=>({label:o,state:"pending"})),title:t.title},i=t.source===void 0?e:{...e,source:t.source};if(t.cancel)p.set(i.id,t.cancel);ds.push(i);let a=ds.at(-1);w();let l=(o,r)=>{if(Mc(a))return;if(a.state=o,a.endedAt=dr(),r!==void 0)a.status=r;for(let n of a.steps)n.state=n.state==="done"?"done":o==="done"?"done":"failed";a.cancellable=!1,p.delete(a.id),w()};return{done(o){l("done",o)},entry:a,fail(o,r={}){if(Mc(a))return;let n=a.log.join(`
|
|
2
|
+
`);l("failed",o);let s={source:a.source??a.title};if(n!=="")s.detail=n;if(r.action!==void 0)s.action=r.action;if(r.actionArgs!==void 0)s.actionArgs=r.actionArgs;if(r.path!==void 0)s.path=r.path;C.error(o,s)},id:a.id,log(o){let r=o.replace(/\s+$/,"");if(r!=="")a.log.push(r)},setStatus(o){if(!Mc(a))a.status=o},step(o){let r=a.steps.findIndex((n)=>n.label===o);if(r===-1)a.steps.push({label:o,state:"pending"}),r=a.steps.length-1;for(let[n,s]of a.steps.entries())s.state=n<r?"done":n===r?"running":s.state;a.status=o}}}function x(t){return ds.find((e)=>e.id===t)}function m(){return ds.filter((t)=>!Mc(t))}function H(t){let e=x(t),i=p.get(t);if(!e||!i||Mc(e))return!1;return i(),p.delete(t),e.state="cancelled",e.endedAt=dr(),e.cancellable=!1,e.status="Cancelled",!0}function F(){let t=ds.filter((i)=>!Mc(i)),e=ds.length-t.length;return ds.splice(0,ds.length,...t),e}function aN(){return m().map((t)=>`activity: ${t.title} — ${t.status||"running"}`)}var P={cancelled:"⊘",done:"✓",failed:"✕",running:"⋯"},M={done:"✓",failed:"✕",pending:"·",running:"⋯"};function V(t,e=dr()){let i=Math.max(0,(t.endedAt??e)-t.startedAt);if(i<1000)return`${i}ms`;let a=Math.round(i/1000);return a<60?`${a}s`:`${Math.floor(a/60)}m ${a%60}s`}function O(t,e){return{icon:M[t.state],key:`${e}:${t.label}`,label:t.label,state:t.state}}function KT(t){let e=t.log.length;return{cancellable:t.cancellable,duration:V(t),expanded:t.expanded,hasLog:e>0,hasSource:(t.source??"")!=="",hasStatus:t.status!=="",hasSteps:t.steps.length>0,icon:P[t.state],id:t.id,logLabel:t.expanded?"Hide log":`Show log (${e} line(s))`,logText:t.log.join(`
|
|
3
|
+
`),showLog:t.expanded&&e>0,source:t.source??"",state:t.state,status:t.status,steps:t.steps.map((i,a)=>O(i,a)),title:t.title}}function z(){let t=ds.filter((e)=>Mc(e)).length;return{clearLabel:`Clear ${t} finished`,hasFinished:t>0,hasRows:ds.length>0,rows:ds.map((e)=>KT(e))}}var D={cancel:(t)=>{H(t)},clearFinished:()=>{F()},project:z,toggleLog:(t)=>{let e=x(t);if(e)e.expanded=!e.expanded}};function _(){return qr`<div data-deploy-checklist></div>
|
|
4
|
+
<div data-activity-surface></div>`}function U(t){let e=t.querySelector("[data-activity-surface]");if(!e){f();return}v(e,D)}function lN(){Zn({id:"activity",title:"Activity",level:"project",dock:"bottom",icon:"clock-counter-clockwise",rail:!1,badge:()=>m().length>0?m().length:null,render:()=>_(),afterRender:(t,e)=>{pN(e),U(e)}})}var W={message:"no media file to look for",status:"failed"};function A(t){let e=Si(t);return e===""?null:{path:e}}function Ow(t){let e=A(t);return e===null?null:al(e)}async function Ju(t){let e=A(t);return e===null?W:ar(e)}function cN(t){if(t===null)return"Counting references…";switch(t.status){case"unsupported":return null;case"pending":return"Counting references…";case"failed":return"Usage unknown";default:return Zb(t.result)}}var S={$schema:"https://jxsuite.com/schema/v1",$id:"StudioProgressModal",$description:"The one surface in Studio that blocks while it works: the operation's name, a spinner, the line under it, and the two ways out. A `jx-dialog`, so the platform owns modality, the backdrop, focus restoration and Escape — which is what retired the `sp-underlay` this surface used to paint beside itself, and with it the fixed box, the panel, the shadow and the `z-index: 1000` that box needed to climb back out from under its own scrim. The two answers are the dialog's own: confirm is `Run in the background`, which stops the BLOCKING and leaves the work running in Activity, and the secondary answer is Cancel, drawn only when the operation handed one over. It is the secondary rather than the cancel answer for a reason that is behavioural, not cosmetic: the platform raises one `cancel` for Escape, for a light dismissal and for the cancel button alike, and a surface that cannot tell them apart would stop a dependency install on a keystroke. Escape therefore means what confirm means — stop blocking, not stop working — and the answer that stops the work is a button and only a button.",tagName:"jx-dialog",$props:{headline:{$ref:"#/state/title"},confirmLabel:"Run in the background",secondaryLabel:{$ref:"#/state/cancelLabel"},cancelLabel:"",size:"sm"},attributes:{part:"progress"},onconfirm:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/background"},value:[]}]},onsecondary:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/cancel"},value:[]}]},oncancel:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/background"},value:[]}]},onclose:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/closed"},value:[]}]},style:{$description:"What is left once `jx-dialog` has drawn the dialog. `.progress-modal` is gone rather than moved — it positioned a fixed box, painted its panel, border, radius and shadow, capped its height and then lifted itself above the scrim it rendered beside — and a modal `<dialog>` in the top layer is every one of those. `.progress-title` went the same way: the operation's name is the dialog's headline, which is also its accessible name, so nothing here draws a title.",'& [part="row"]':{display:"flex",alignItems:"center",gap:"var(--jx-space-4)"},'& [part="status"]':{$description:"`anywhere`, because a status line is usually a path or a package spec with no space in it, and one of those would otherwise be the thing that decides how wide the dialog is. `min-width: 0` is what lets it wrap at all: a flex item's automatic minimum is its content, so without this the row refuses to shrink and the text overflows instead.",minWidth:"0",color:"var(--fg-dim)",fontSize:"var(--jx-text-md)",overflowWrap:"anywhere"}},children:[{tagName:"div",attributes:{part:"row"},children:[{tagName:"jx-spinner",attributes:{part:"busy"},$props:{size:"lg"}},{tagName:"span",attributes:{part:"status","aria-live":"polite"},textContent:"${state.status}"}]}]};T("progress-modal",S);function k(t){let e=document.createElement("div");e.style.pointerEvents="auto",e.setAttribute(qe,ft("modal","progress")),t.layer.append(e);let i=!1,a=()=>i,l=g({background:()=>{t.onBackground()},cancel:()=>{t.onCancel()},cancelLabel:t.cancellable?"Cancel":"",closed:()=>{t.onClosed()},status:t.status,title:t.title}),o=null,r=R("progress-modal",l,e).then(async(n)=>{let s=n.root;if(a())return n.dispose(),s;if(o=n,await Jt(s),a())return s;return Pt(s),s});return{close(){if(i)return;i=!0;let n=o?.root;if(n instanceof HTMLElement)Nt(n);o?.dispose(),o=null,e.remove()},host:e,ready:r,setStatus(n){l.status=n}}}function tl(t){let e=!1,i={title:t.title};if(t.status!==void 0)i.status=t.status;if(t.source!==void 0)i.source=t.source;if(t.cancel!==void 0)i.cancel=t.cancel;let a=Us(i),l=()=>{if(e)return;e=!0,r.close()},o=()=>{l(),sh("activity")},r=k({cancellable:t.cancel!==void 0,layer:tt("modal"),onBackground:o,onCancel:()=>{l(),t.cancel?.()},onClosed:l,status:t.status??"",title:t.title});return{activity:a,done(){a.done(),l()},fail(n){let s=n.trim();if(s===""||s.includes(`
|
|
5
|
+
`))a.log(s),a.fail(`${t.title} failed`);else a.fail(s);l()},log(n){a.log(n)},setStatus(n){if(a.setStatus(n),!e)r.setStatus(n)}}}
|
|
6
|
+
export{ds,Mc,Us,aN,KT,lN,tl,Ow,Ju,cN};
|
|
7
|
+
|
|
8
|
+
//# debugId=04734978A756A2B364756E2164756E21
|
|
9
|
+
//# sourceMappingURL=studio-y0n7yxea.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{p,_e}from"./studio-w4rz9hdk.js";import{ae}from"./studio-q7rtx6zq.js";import{C}from"./studio-43sd2mam.js";import{Q}from"./studio-nqxqf8p2.js";import{Vn,Se,di,jO}from"./studio-c05wdnt3.js";import{xm,h}from"./studio-d5grtb9e.js";import{Wl,wb,Ri,Pd,SS}from"./studio-3e54qh39.js";import{Us}from"./studio-y0n7yxea.js";import{Vs,xa,sT}from"./studio-syreb644.js";import{ls}from"./studio-tft6r105.js";import{x}from"./studio-gcxk20n7.js";import{le}from"./studio-qgh13jtz.js";var g={attempts:6,delayMs:5000};function P(e,t){return`https://dash.cloudflare.com/${e}/pages/view/${t}`}async function k(e){if(e>0)await new Promise((t)=>{setTimeout(t,e)})}async function d(e={}){let t=Ri(),r=new AbortController,i=Us({cancel:()=>{r.abort()},source:"Publish",status:"Starting…",steps:["Push to the remote","Ask Cloudflare for the deployment"],title:"Deploy"});i.step("Push to the remote");try{await p().gitPush({setUpstream:!0}),i.log("Pushed the current branch.")}catch(a){return i.log(Q(a)),i.fail("Could not push to the remote.",{action:"git.push"}),!1}if(!t)return i.done("Pushed. No provider is connected, so nothing was asked to build it."),!0;i.step("Ask Cloudflare for the deployment");let n=e.attempts??g.attempts,s=e.delayMs??g.delayMs;for(let a=0;a<n;a+=1){if(r.signal.aborted)return!1;let o;try{o=await wb(t)}catch(l){return i.log(Q(l)),i.fail("Cloudflare did not answer.",{action:"publish.deploy"}),!1}if(o)return Pd(o),i.log(`${o.stage}: ${o.status} — ${o.url}`),i.done(`${o.stage}: ${o.status}`),!0;await k(s)}if(r.signal.aborted)return!1;return Pd(null),i.done("Pushed. Cloudflare has not reported a deployment yet."),!0}function D(){return[{category:"Publish",id:"publish.setUp",level:"project",menus:["commandbar/overflow","palette"],group:"8_publish",requires:"an open project on a platform that can reach the Cloudflare API",when:(e)=>e.project.open,enablement:(e)=>e.capability.publish,run:async()=>{let{openPublishPanel:e}=await (le("2z9gw8ee"),import("./publish-panel-2z9gw8ee.js"));e()},title:"Set Up Publishing"},{category:"Publish",id:"publish.deploy",level:"project",menus:["commandbar/overflow","palette"],group:"8_publish",requires:"a repository with a remote and a connected deploy provider, on a platform that can reach the Cloudflare API",when:(e)=>e.project.open,enablement:(e)=>e.project.isRepo&&Ri()!==void 0&&e.capability.publish,run:async()=>{await d()},title:"Deploy"},{category:"Publish",id:"publish.openDashboard",level:"project",menus:["commandbar/overflow","palette"],group:"8_publish",requires:"a connected deploy provider, on a platform that can reach the Cloudflare API",when:(e)=>e.project.open,enablement:(e)=>Ri()!==void 0&&e.capability.publish,run:()=>{let e=Ri();if(e)window.open(P(e.accountId,e.projectName),"_blank","noopener")},title:"Open Deployment Dashboard"},{category:"Publish",id:"publish.quick",level:"project",menus:["commandbar/overflow","palette"],group:"8_publish",requires:"a project tracked by git",when:(e)=>e.project.open,enablement:(e)=>e.project.isRepo,run:async()=>{let{openQuickPublish:e}=await (le("qx2455cj"),import("./publish-quick-qx2455cj.js"));e()},title:"Quick Publish"},{args:Se({tab:di(xm,"Which view of the Publish workspace to show: review (the changes and where they go), deploys (the live site and its deployments), branches, or hosting (where the project is saved and hosted). Defaults to the view the workspace was left on.")},[]),category:"Publish",id:"publish.open",level:"project",menus:["never"],group:"8_publish",requires:"an open project",enablement:(e)=>e.project.open,run:async(e,t)=>{let r=t.tab===void 0?null:Vn("publish.open",t,"tab",xm),i=ae();if(!i)throw Error(`command "publish.open" needs the window's command registry`);if(await i.run("view.setWorkspace",{workspace:"publish"}),r!==null){let{showPublishTab:n}=await (le("wrc1dgwx"),import("./publish-workspace-wrc1dgwx.js"));n(r)}},title:"Show Publish"}]}function rR(e){e.registerAll(D())}function u(){let e=h.git.status?.remotes;return Array.isArray(e)&&e.length>0?e[0]??"":""}function c(){return h.git.branches?.current||h.git.status?.branch||""}function b(){return Ri()!==void 0&&Wl()&&u()!==""}function j(){let e=Ri();return e?.productionUrl??e?.projectName??""}function y(e){return`studio/${ls(e).replaceAll(/-+/g,"-").replaceAll(/^-|-$/g,"").slice(0,48).replace(/-$/,"")||"changes"}`}function f(){return h.git.branches?.defaultBranch??""}function Mg(){if(!sT())return"This host cannot open a pull request yet. Publish live, or create a branch under Branches and push it.";if(xa()){let e=f(),t=c();if(!e||!t||t===e)return`Every commit to ${e||"the default branch"} on this host is live. Create a branch under Branches and send it for review from there.`;return""}if(u()==="")return"A pull request needs a remote. Create the GitHub repository under Hosting first.";return""}function A(){let e=c()||"the current branch";if(b())return`Commits to ${e} and deploys to ${j()}.`;if(xa())return`Commits to ${e} on GitHub.`;let t=u();return t?`Commits to ${e} and pushes it to ${t}.`:`Commits to ${e}. This repository has no remote, so nothing leaves this machine.`}function S(){let e=c()||"the current branch";if(xa())return`Commits to ${e} and opens a pull request from it into ${f()||"the default branch"}.`;let t=h.git.commitMessage.trim();return`Saves to ${t?y(t):"a new studio/ branch"}, pushes it and opens a pull request into ${e}.`}function ky(e){let t=Mg();return[{checked:e==="live"?"true":"false",disabled:!1,label:"Publish live",note:A(),reason:"",value:"live"},{checked:e==="review"?"true":"false",disabled:t!=="",label:"Send for review",note:S(),reason:t,value:"review"}]}function zf(e){return e==="review"&&Mg()!==""?"live":e}function sR(e){if(e==="review")return"Send for review";if(b())return"Publish live";return xa()||u()!==""?"Commit and push":"Commit"}function w(e){let t=h.git.status?.files??[];return e?t:t.filter((r)=>Boolean(r.staged))}function Wf(e,t=!1){let{status:r}=h.git;if(!x||!r?.isRepo)return"Track this project with git first.";if(h.git.loading)return"Source control is busy.";if(r.files.length===0)return"There is nothing to publish.";if(w(t).length===0)return"Include at least one change.";if(!h.git.commitMessage.trim())return"Write a summary of the change first.";return e==="review"?Mg():""}function v(){return(h.git.status?.files??[]).map((e)=>`${e.status}:${e.path}`).join("|")}function s_(){return _e()&&p().buildSite!==void 0}async function aR(){if(!s_()||h.publish.build.state==="running")return;let e=p().buildSite;if(!e)return;h.publish.build.state="running",h.publish.build.text="Building the site…",h.publish.build.for=v();try{let t=await e();if(t.errors.length>0)h.publish.build.state="failed",h.publish.build.text=`Built with ${t.errors.length} error(s): ${t.errors[0]}`;else h.publish.build.state="passed",h.publish.build.text=t.mode==="live"?`${t.routes} page(s) render. This host previews the working tree; it does not build.`:`Site builds: ${t.routes} page(s).`}catch(t){h.publish.build.state="failed",h.publish.build.text=`The site could not be built: ${Q(t)}`}}function Pg(){let e=[],t=SS();if(e.push(t?{command:t.command,key:"deploy",state:t.state==="unknown"?"unknown":"todo",text:`${t.label}: ${t.detail}`}:{command:"",key:"deploy",state:"done",text:"Everything this project needs to ship is in place."}),s_()){let r=h.publish.build.for===v()||h.publish.build.state==="running";e.push(r&&h.publish.build.state!=="idle"?{command:"",key:"build",state:h.publish.build.state==="passed"?"done":h.publish.build.state==="failed"?"failed":"running",text:h.publish.build.text}:{command:"",key:"build",state:"unknown",text:"The site has not been built with these changes."})}return e}function lR(e){let t=e.filter((r)=>r.state!=="done");if(t.length===0)return"Checks passed: ready to publish.";return t.map((r)=>r.text).join(" · ")}function cR(){return h.publish.review.number>0?{number:h.publish.review.number,url:h.publish.review.url}:null}function R(e){if(!h.git.commitMessage)h.git.commitMessage=e}async function Ey(e,t={}){let r=t.includeAll??!1,i=Wf(e,r);if(i)return h.git.error=i,!1;let n=h.git.commitMessage.trim(),s=p();h.git.commitMessage="",h.git.loading=!0,h.git.error=null,await jO();let a=!1,o=!0;try{if(r){let l=w(!0).filter((m)=>!m.staged).map((m)=>m.path);if(l.length>0)await s.gitStage(l)}if(e==="review")await B(s,n,()=>{a=!0});else if(await s.gitCommit(n),a=!0,b())h.git.loading=!1,o=await d();else if(!xa()&&u()!=="")await s.gitPush();return await Vs(),o}catch(l){if(h.git.error=Q(l),h.git.loading=!1,!a)R(n);return!1}}async function q(e,t,r){if(xa()){await e.gitCommit(t),r();let s=f();return s?{base:s,title:t}:{title:t}}let i=c(),n=y(t);return await e.gitCreateBranch(n),await e.gitCommit(t),r(),await e.gitPush({setUpstream:!0}),i?{base:i,head:n,title:t}:{head:n,title:t}}async function B(e,t,r){let i=e.createPullRequest;if(!i)throw Error(Mg());let n=await i(await q(e,t,r));h.publish.review.number=n.number,h.publish.review.url=n.url,C.success(`Pull request #${n.number} opened for review.`,{detail:n.url,key:"publish.review",source:"Publish"})}
|
|
2
|
+
export{rR,Mg,ky,zf,sR,Wf,s_,aR,Pg,lR,cR,Ey};
|
|
3
|
+
|
|
4
|
+
//# debugId=9FABE3B1426A22B364756E2164756E21
|
|
5
|
+
//# sourceMappingURL=studio-y3ahhdpx.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{p}from"./studio-w4rz9hdk.js";import{n}from"./studio-vxq7fcvv.js";import{le}from"./studio-qgh13jtz.js";var a=null,P=null,F=null,g=!1;function S(t){return F=t,g=!0,a?E():Promise.resolve()}async function E(){if(!g)return;g=!1;try{let{applyProjectSchemas:t}=await (le("xrd2cbkp"),import("./monaco-setup-xrd2cbkp.js"));t(F)}catch{}}function qm(){if(a)return Promise.resolve(a);return P??=(async()=>{let[t]=await Promise.all([(le("ccd9jwsa"),import("./editor-ccd9jwsa.js")),(le("xrd2cbkp"),import("./monaco-setup-xrd2cbkp.js"))]);return a=t,await E(),a})(),P}function tf(){return a}function Cv(t,o,e){if(!t?.isConnected||o)return!1;return e()}var i=[],d=null;function Ot(){if(!d)d=(async()=>{try{i=await p().listFormats?.()??[]}catch{i=[]}return i})();return d}function $h(){d=null,i=[],f=null,c=[],x=null,l=[]}var c=[],f=null;function od(){if(!f)f=(async()=>{try{c=await p().listExtensions?.()??[]}catch{c=[]}return c})();return f}function kv(){return c}var l=[],x=null;function w(){if(!x)x=(async()=>{try{l=await p().listExtensionCatalog?.()??[]}catch{l=[]}return l})();return x}function Gx(){return l}async function j(t){let o=null;try{o=await t.fetchProjectSchemas?.()??null}catch{}S(o),await (le("ttasrbh7"),import("./jx-validate-ttasrbh7.js")).then(({applyProjectSchemas:e})=>e(o)).catch(()=>!1)}function ic(t){j(t),w(),(le("0egb88dm"),import("./extension-sections-0egb88dm.js")).then(({syncExtensionSettingsSections:o})=>o()).catch(()=>{})}function tu(){return i}function Aa(t,o){let e=t.startsWith(".")?t.toLowerCase():`.${t.toLowerCase()}`;return i.find((r)=>r.extensions.includes(e)&&(!o||r.capabilities[o]))}function Wi(t){if(!t)return;return i.find((o)=>o.name===t)}function nf(t){return Error(`No format class imported for "${t}" — add one to project.json imports `+`(e.g. "Markdown": "@jxsuite/parser/Markdown.class.json") and make sure the project's dependencies are installed`)}function cn(t){if(!t)return;let o=t.lastIndexOf(".");if(o===-1)return;return Aa(t.slice(o))}function hl(t){let o=new Set;for(let e of i){if(t&&!e.documentKinds.includes(t))continue;for(let r of e.extensions)o.add(r)}return o.delete(".json"),[...o]}async function Ev(){return await Ot(),[".json",...hl("page")]}function ur(){return i.find((t)=>t.capabilities.serialize&&t.documentKinds.includes("content"))}async function M(t){let o=p();if(!o.formatAction)throw Error("Platform does not support format actions");return o.formatAction(t)}async function sI(t,o,e){return await M({action:"parse",format:t,options:e,source:o})}async function Oa(t,o,e){return await M({action:"serialize",doc:o,format:t,options:e})}function aI(t,o){let e=t?.studio?.documentMode,r=e?.componentWhen;if(r?.frontmatterKey){let s=o[r.frontmatterKey],u=r.matches?new RegExp(r.matches):/./;if(n(s)&&u.test(s))return{document:o,frontmatter:{},mode:"component"}}if(e?.default==="component")return{document:o,frontmatter:{},mode:"component"};let m=o.children??[];if(Array.isArray(m)&&m.length===0)m.push({children:[],tagName:"p"});let b=new Set(["state","imports"]),h={children:m},y={};for(let[s,u]of Object.entries(o)){if(s==="children")continue;if(b.has(s))h[s]=u;else y[s]=u}return{document:h,frontmatter:y,mode:"content"}}
|
|
2
|
+
export{qm,tf,Cv,Ot,$h,od,kv,Gx,ic,tu,Aa,Wi,nf,cn,hl,Ev,ur,sI,Oa,aI};
|
|
3
|
+
|
|
4
|
+
//# debugId=35283FAAF7659FD164756E2164756E21
|
|
5
|
+
//# sourceMappingURL=studio-z97c48fk.js.map
|