@jxsuite/studio 6.1.0 → 6.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/2020-f2gkpy8d.js +4 -0
- package/dist/chunks/{action-group-2mqby73c.js → action-group-4aan7g6g.js} +3 -3
- package/dist/chunks/adapter-4912g339.js +4 -0
- package/dist/chunks/cf-account-picker-wccaenh6.js +4 -0
- package/dist/chunks/cf-settings-br6105tr.js +4 -0
- package/dist/chunks/color-28ksk2qm.js +4 -0
- package/dist/chunks/color-area-0fj8a4ga.js +4 -0
- package/dist/chunks/color-field-xch8kx2g.js +4 -0
- package/dist/chunks/color-slider-jxd8v350.js +4 -0
- package/dist/chunks/combobox-p0efwjke.js +4 -0
- package/dist/chunks/components-db68vsn7.js +4 -0
- package/dist/chunks/content-source-1449qesq.js +4 -0
- package/dist/chunks/convert-to-repeater-5h457egj.js +4 -0
- package/dist/chunks/dialog-c4x05vyx.js +4 -0
- package/dist/chunks/editor-x9jn86a7.js +4 -0
- package/dist/chunks/entry-commands-may24cpt.js +4 -0
- package/dist/chunks/extension-sections-pvr14vxr.js +4 -0
- package/dist/chunks/file-ops-x9v54pcj.js +4 -0
- package/dist/chunks/files-j3knqf0s.js +4 -0
- package/dist/chunks/format-host-tyre2trb.js +4 -0
- package/dist/chunks/fs-events-64ma9htc.js +4 -0
- package/dist/chunks/git-panel-84ps5dex.js +4 -0
- package/dist/chunks/grid-view-d2wq9ezg.js +51 -0
- package/dist/chunks/icons-pnfz478q.js +4 -0
- package/dist/chunks/iframe-entry-fvbk89gm.js +5 -0
- package/dist/chunks/iframe-entry-jdcktez8.js +5 -0
- package/dist/chunks/iframe-entry-x0ygf2yr.js +5 -0
- package/dist/chunks/iframe-entry-zap785cw.js +5 -0
- package/dist/chunks/iframe-host-ck6vejt5.js +4 -0
- package/dist/chunks/index-b8xw3vy9.js +4 -0
- package/dist/chunks/{index-gybvv7a6.js → index-zpjmzqfk.js} +3 -3
- package/dist/chunks/{javascript-rnvdp3k4.js → javascript-m54mnwp6.js} +3 -3
- package/dist/chunks/jsonMode-w15cmrcm.js +13 -0
- package/dist/chunks/jx-validate-at3zn8wa.js +4 -0
- package/dist/chunks/layers-h4xp1pss.js +4 -0
- package/dist/chunks/layers-panel-m5hw1d7g.js +4 -0
- package/dist/chunks/listbox-e74qjyq6.js +4 -0
- package/dist/chunks/lit-html-8t8t3dnr.js +4 -0
- package/dist/chunks/media-picker-2cweexc5.js +4 -0
- package/dist/chunks/menu-n6yzswmy.js +4 -0
- package/dist/chunks/menu-ynw13y0s.js +4 -0
- package/dist/chunks/monaco-binding-7gx83x3r.js +4 -0
- package/dist/chunks/monaco-buffer-qzxn567r.js +4 -0
- package/dist/chunks/monaco-setup-gxf6656g.js +4 -0
- package/dist/chunks/notify-cj5zbrs2.js +4 -0
- package/dist/chunks/number-field-y62xq0ty.js +4 -0
- package/dist/chunks/parse-b7ddhr8m.js +4 -0
- package/dist/chunks/platform-3dfws9js.js +4 -0
- package/dist/chunks/popover-jt2gxmzs.js +4 -0
- package/dist/chunks/publish-panel-1gvxbj21.js +4 -0
- package/dist/chunks/quick-search-0dajrwqg.js +4 -0
- package/dist/chunks/references-49qgt404.js +4 -0
- package/dist/chunks/right-panel-jm1bwe53.js +4 -0
- package/dist/chunks/section-registry-6kwc4fky.js +4 -0
- package/dist/chunks/select-rzds841e.js +4 -0
- package/dist/chunks/split-n2gfpm5m.js +4 -0
- package/dist/chunks/{studio-5g0ag7c0.js → studio-0q988f9w.js} +3 -3
- package/dist/chunks/studio-0rt52vpq.js +5 -0
- package/dist/chunks/studio-18vgbhs5.js +5 -0
- package/dist/chunks/{studio-pxg4ap1e.js → studio-1fxkaaea.js} +4 -4
- package/dist/chunks/studio-24mccdrj.js +5 -0
- package/dist/chunks/studio-2eh507zk.js +9 -0
- package/dist/chunks/studio-2hcbccfv.js +5 -0
- package/dist/chunks/studio-2j1cb95x.js +5 -0
- package/dist/chunks/studio-2jbs3rxv.js +5 -0
- package/dist/chunks/{studio-qbj760tx.js → studio-485046te.js} +7 -7
- package/dist/chunks/studio-4h8k4dw9.js +5 -0
- package/dist/chunks/studio-5f6n18kx.js +5 -0
- package/dist/chunks/studio-5gthpky6.js +5 -0
- package/dist/chunks/studio-5ve6bbep.js +5 -0
- package/dist/chunks/studio-6ep3js6b.js +9 -0
- package/dist/chunks/studio-6wkmf3wz.js +9 -0
- package/dist/chunks/studio-841rf3cg.js +5 -0
- package/dist/chunks/studio-8gmwgheg.js +5 -0
- package/dist/chunks/studio-8qm0ep50.js +5 -0
- package/dist/chunks/{studio-anyrgzvb.js → studio-90pq9km1.js} +4 -4
- package/dist/chunks/studio-924p1tm1.js +6 -0
- package/dist/chunks/{studio-v2bvmbjj.js → studio-a3g98wjr.js} +4 -4
- package/dist/chunks/studio-a3shpz9y.js +5 -0
- package/dist/chunks/studio-amsbaaar.js +6 -0
- package/dist/chunks/studio-at5spjbc.js +7 -0
- package/dist/chunks/studio-b2xv945e.js +5 -0
- package/dist/chunks/studio-bn5nkafw.js +5 -0
- package/dist/chunks/studio-bw6q5xjf.js +9 -0
- package/dist/chunks/studio-c7q0t9x1.js +5 -0
- package/dist/chunks/studio-camnhc96.js +6 -0
- package/dist/chunks/studio-cffqvnzd.js +5 -0
- package/dist/chunks/studio-d81xfh1g.js +5 -0
- package/dist/chunks/studio-dgz8d0c1.js +5 -0
- package/dist/chunks/studio-efvfrsf8.js +5 -0
- package/dist/chunks/studio-er30bpcx.js +5 -0
- package/dist/chunks/studio-ezscgr64.js +5 -0
- package/dist/chunks/studio-ffrrncvz.js +5 -0
- package/dist/chunks/studio-fpphgn8y.js +10 -0
- package/dist/chunks/studio-j1kvhdjk.js +4 -0
- package/dist/chunks/{studio-txjjzrsm.js → studio-j430n16g.js} +5 -5
- package/dist/chunks/studio-jjkg84nj.js +5 -0
- package/dist/chunks/studio-m0q32ars.js +4 -0
- package/dist/chunks/studio-m6bdst11.js +5 -0
- package/dist/chunks/studio-nv2cptd4.js +64 -0
- package/dist/chunks/studio-nwfrc98n.js +5 -0
- package/dist/chunks/studio-p1wgvp7r.js +5 -0
- package/dist/chunks/studio-pag2wncm.js +5 -0
- package/dist/chunks/studio-qvanvzfd.js +5 -0
- package/dist/chunks/studio-qwa64kt7.js +5 -0
- package/dist/chunks/studio-rk1zc4x3.js +928 -0
- package/dist/chunks/studio-se2r3ptc.js +5 -0
- package/dist/chunks/studio-sg2a0dh0.js +5 -0
- package/dist/chunks/studio-tjzjhe68.js +5 -0
- package/dist/chunks/{studio-0x3jyb8r.js → studio-tq0rtfwj.js} +4 -4
- package/dist/chunks/{studio-cpxkgjrj.js → studio-v0jzqdjm.js} +4 -4
- package/dist/chunks/studio-v2w7q8r1.js +7 -0
- package/dist/chunks/studio-v5vjq1h0.js +4 -0
- package/dist/chunks/studio-v8aga3vp.js +14 -0
- package/dist/chunks/studio-vfcdrfmv.js +5 -0
- package/dist/chunks/studio-vmfkgdjf.js +5 -0
- package/dist/chunks/studio-wt1816jj.js +5 -0
- package/dist/chunks/studio-wz73q5kq.js +4 -0
- package/dist/chunks/studio-y04qtxvp.js +7 -0
- package/dist/chunks/studio-y21g8zzg.js +5 -0
- package/dist/chunks/studio-y64hrt8p.js +12 -0
- package/dist/chunks/studio-ynn90f58.js +16 -0
- package/dist/chunks/studio-yxz682sx.js +5 -0
- package/dist/chunks/studio-zp7snvkq.js +5 -0
- package/dist/chunks/studio-zq4z6tm6.js +5 -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-c9fn075p.js +4 -0
- package/dist/chunks/toast-host-ke5z4ng7.js +4 -0
- package/dist/chunks/{toolbar-2nnzqhrj.js → toolbar-44cm5cta.js} +3 -3
- package/dist/chunks/tooltip-5v8ngwj2.js +4 -0
- package/dist/chunks/tree-mdq3v5cw.js +4 -0
- package/dist/chunks/tsMode-sf49ee9x.js +14 -0
- package/dist/chunks/workspace-jtfahpee.js +4 -0
- package/dist/chunks/ws-client-nze0k6mv.js +4 -0
- package/dist/iframe-entry.js +16 -16
- package/dist/manifest.json +63 -63
- package/dist/studio.js +98 -98
- package/dist/workers/ts.worker.js +3 -3
- package/package.json +11 -11
- 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/library-layouts.ts +8 -5
- package/src/browse/library-model.ts +18 -6
- package/src/browse/library-pane.ts +37 -21
- package/src/browse/library-preview.ts +14 -9
- package/src/browse/library-source.ts +1 -1
- package/src/canvas/asset-refs.ts +24 -9
- package/src/canvas/asset-resolve.ts +19 -23
- package/src/canvas/canvas-helpers.ts +7 -6
- package/src/canvas/canvas-live-render.ts +44 -53
- package/src/canvas/canvas-patcher.ts +30 -30
- package/src/canvas/canvas-perf.ts +11 -5
- package/src/canvas/canvas-render.ts +66 -42
- package/src/canvas/canvas-surface.ts +5 -3
- package/src/canvas/canvas-utils.ts +163 -64
- 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 +13 -12
- package/src/canvas/iframe-editable-root.ts +29 -16
- package/src/canvas/iframe-entry.ts +80 -63
- package/src/canvas/iframe-eval.ts +73 -49
- package/src/canvas/iframe-host.ts +203 -118
- package/src/canvas/iframe-inline-edit.ts +69 -32
- package/src/canvas/iframe-insert.ts +5 -4
- package/src/canvas/iframe-interaction.ts +37 -26
- package/src/canvas/iframe-overlay.ts +1 -1
- package/src/canvas/iframe-patch.ts +18 -15
- package/src/canvas/iframe-position.ts +12 -6
- package/src/canvas/iframe-protocol.ts +15 -16
- package/src/canvas/iframe-render.ts +41 -36
- package/src/canvas/iframe-slash.ts +24 -11
- package/src/canvas/iframe-subtree.ts +6 -2
- 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/serialize-scope.ts +13 -5
- package/src/canvas/stage-scrollbar.ts +2 -1
- package/src/canvas/surface-registry.ts +21 -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/budget.ts +3 -3
- package/src/commands/command-args.ts +103 -71
- package/src/commands/context.ts +22 -20
- package/src/commands/defaults.ts +4 -1
- package/src/commands/keymap.ts +47 -43
- package/src/commands/levels.ts +3 -3
- package/src/commands/live-context.ts +10 -8
- package/src/commands/reference.ts +2 -1
- package/src/commands/registry.ts +12 -10
- package/src/commands/run-reported.ts +15 -10
- package/src/component-props.ts +46 -30
- package/src/content/collection-match.ts +5 -4
- package/src/content/draft-state.ts +4 -3
- package/src/content/entry-commands.ts +3 -2
- package/src/content/entry-editor.ts +29 -17
- package/src/content/entry-fields.ts +12 -7
- package/src/content/entry-model.ts +21 -12
- 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 +11 -5
- package/src/editor/convert-to-repeater.ts +34 -22
- package/src/editor/editable-tags.ts +17 -2
- package/src/editor/file-drop-action.ts +21 -22
- package/src/editor/inline-edit-apply.ts +35 -17
- package/src/editor/inline-edit.ts +66 -50
- package/src/editor/inline-format.ts +59 -56
- package/src/editor/inline-link.ts +40 -15
- package/src/editor/insert-zone-action.ts +1 -1
- package/src/editor/merge-tags.ts +58 -19
- package/src/editor/repeater-scope.ts +39 -28
- package/src/editor/shortcuts.ts +87 -47
- package/src/editor/slash-menu.ts +1 -6
- package/src/files/asset-versions.ts +4 -4
- package/src/files/components.ts +15 -10
- package/src/files/elements.ts +5 -6
- package/src/files/file-ops.ts +77 -36
- package/src/files/files.ts +90 -95
- package/src/files/media-meta.ts +2 -1
- package/src/files/media-paths.ts +6 -1
- package/src/files/serialize-document.ts +2 -2
- 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 +76 -50
- package/src/github/github-auth-status.ts +27 -3
- package/src/github/github-auth.ts +19 -9
- package/src/github/github-publish.ts +24 -20
- 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 +20 -22
- package/src/grid/grid-layout.ts +21 -5
- package/src/grid/grid-open.ts +3 -6
- package/src/grid/grid-panel.ts +11 -4
- package/src/grid/grid-source.ts +8 -8
- package/src/grid/grid-view.ts +14 -17
- 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 +25 -24
- package/src/grid/sources/csv-file-source.ts +2 -2
- package/src/grid/tabulator-tables.d.ts +55 -34
- package/src/hosting/stage.ts +7 -7
- package/src/i18n/i18n-commands.ts +1 -2
- package/src/media/media-pane.ts +4 -1
- 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 +17 -9
- package/src/panels/ai-chat/attached-context.ts +13 -7
- 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 +46 -35
- package/src/panels/bottom-dock.ts +5 -3
- package/src/panels/canvas-dnd-bridge.ts +31 -24
- package/src/panels/data-explorer.ts +62 -25
- package/src/panels/data-grid.ts +14 -11
- package/src/panels/dnd.ts +108 -118
- package/src/panels/editors.ts +55 -22
- package/src/panels/elements-panel.ts +10 -3
- package/src/panels/events-panel.ts +84 -69
- package/src/panels/formula-workspace.ts +76 -51
- package/src/panels/frontmatter-fields.ts +24 -19
- package/src/panels/frontmatter-panel.ts +44 -34
- package/src/panels/git-diff-open.ts +4 -4
- package/src/panels/git-panel.ts +49 -61
- package/src/panels/head-panel.ts +131 -111
- package/src/panels/i18n-panel.ts +10 -3
- package/src/panels/imports-panel.ts +23 -47
- package/src/panels/jump-bar.ts +48 -29
- package/src/panels/layers-panel.ts +97 -74
- package/src/panels/left-panel.ts +3 -3
- package/src/panels/pane-context.ts +31 -22
- package/src/panels/pane-grid.ts +49 -20
- package/src/panels/panel-registry.ts +22 -37
- package/src/panels/properties-panel.ts +175 -121
- package/src/panels/quick-search.ts +53 -31
- package/src/panels/right-panel.ts +3 -3
- package/src/panels/seo-modal.ts +13 -17
- package/src/panels/settings-menu.ts +15 -15
- package/src/panels/signals-panel.ts +153 -131
- package/src/panels/statement-editor.ts +230 -140
- package/src/panels/style-panel.ts +254 -216
- package/src/panels/style-utils.ts +114 -51
- package/src/panels/stylebook-doc.ts +57 -54
- package/src/panels/stylebook-layers-panel.ts +9 -9
- package/src/panels/stylebook-panel.ts +13 -17
- package/src/panels/tab-drop.ts +27 -11
- package/src/panels/tab-strip.ts +36 -26
- package/src/platform-errors.ts +57 -43
- package/src/platform.ts +58 -30
- package/src/platforms/cloud.ts +345 -175
- package/src/platforms/default-platform.ts +10 -4
- package/src/platforms/devserver.ts +174 -127
- package/src/platforms/read-batcher.ts +16 -8
- package/src/project-list.ts +2 -1
- package/src/publish/deploy-checklist.ts +8 -2
- package/src/publish/pages-service.ts +28 -13
- package/src/publish/publish-commands.ts +5 -4
- package/src/publish/publish-panel.ts +10 -6
- 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 +58 -31
- package/src/services/cem-export.ts +149 -58
- package/src/services/clock.ts +6 -1
- package/src/services/code-services.ts +37 -31
- 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 +18 -12
- 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 +8 -7
- 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 +79 -60
- package/src/settings/css-vars-editor.ts +37 -16
- package/src/settings/defs-editor.ts +38 -35
- package/src/settings/extension-rows.ts +16 -8
- package/src/settings/extension-sections.ts +23 -13
- package/src/settings/extensions-section.ts +4 -1
- package/src/settings/general-settings.ts +11 -8
- package/src/settings/locales-section.ts +20 -12
- package/src/settings/preferences-dialog.ts +9 -6
- package/src/settings/preferences-keymap.ts +7 -5
- package/src/settings/preferences-sections.ts +11 -5
- package/src/settings/project-sections.ts +1 -1
- package/src/settings/schema-field-ui.ts +9 -0
- package/src/settings/settings-document.ts +5 -5
- package/src/shell/tree.ts +6 -5
- package/src/shell.ts +104 -81
- package/src/site-context.ts +37 -22
- package/src/state.ts +41 -49
- package/src/store.ts +54 -34
- package/src/studio.ts +39 -77
- package/src/style/live-preview.ts +1 -1
- package/src/style/project-styles.ts +6 -7
- package/src/style/token-ref.ts +5 -4
- package/src/surfaces/about.ts +18 -19
- package/src/surfaces/add-repo.ts +17 -19
- package/src/surfaces/ai-chat.ts +31 -36
- 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.ts +4 -5
- package/src/surfaces/bottom-dock.ts +9 -18
- package/src/surfaces/canvas-stage.ts +12 -11
- package/src/surfaces/cf-account-picker.ts +17 -18
- package/src/surfaces/commandbar.ts +14 -9
- 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/doc-header.ts +10 -19
- package/src/surfaces/empty-state.ts +7 -10
- package/src/surfaces/entry-editor.ts +14 -11
- 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/git-panel.ts +7 -15
- 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.ts +13 -12
- package/src/surfaces/jump-bar.ts +5 -6
- package/src/surfaces/jxsuite-update.ts +16 -22
- package/src/surfaces/library-pane.ts +25 -20
- package/src/surfaces/logic-panel.ts +17 -30
- package/src/surfaces/logic-workspace.ts +13 -15
- package/src/surfaces/media-browser.ts +11 -10
- package/src/surfaces/media-field.ts +4 -5
- package/src/surfaces/media-pane.ts +8 -7
- package/src/surfaces/menu.ts +29 -23
- package/src/surfaces/navigator-dock.ts +11 -12
- package/src/surfaces/new-project.ts +27 -26
- package/src/surfaces/pane-context.ts +20 -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.ts +5 -6
- 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.ts +11 -18
- package/src/surfaces/panel-problems.ts +5 -7
- package/src/surfaces/panel-signals.ts +20 -34
- package/src/surfaces/panel-stylebook-layers.ts +5 -8
- package/src/surfaces/preferences.ts +21 -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.ts +18 -18
- package/src/surfaces/push-plan.ts +7 -8
- package/src/surfaces/rail.json +126 -73
- package/src/surfaces/rail.ts +38 -12
- package/src/surfaces/reference-field.ts +11 -15
- package/src/surfaces/schema-builder.ts +16 -22
- package/src/surfaces/schema-form.ts +15 -25
- package/src/surfaces/secret-field.ts +9 -6
- package/src/surfaces/seo.ts +21 -15
- package/src/surfaces/settings-contexts.ts +9 -7
- package/src/surfaces/settings-contributed.ts +14 -10
- package/src/surfaces/settings-css-vars.ts +5 -12
- package/src/surfaces/settings-defs.json +2 -2
- package/src/surfaces/settings-defs.ts +17 -21
- package/src/surfaces/settings-deploy.ts +8 -15
- 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.ts +5 -6
- package/src/surfaces/settings-packages.ts +8 -7
- package/src/surfaces/settings-pane.ts +9 -18
- package/src/surfaces/settings-rawjson.ts +5 -6
- package/src/surfaces/shell.ts +1 -2
- package/src/surfaces/slash-menu.ts +19 -9
- package/src/surfaces/statements.ts +13 -18
- package/src/surfaces/statusbar.ts +17 -14
- package/src/surfaces/style-panel.ts +18 -31
- package/src/surfaces/stylebook-chrome.ts +3 -5
- package/src/surfaces/tab-strip.ts +14 -13
- package/src/surfaces/target-line.ts +6 -7
- package/src/surfaces/welcome.ts +5 -7
- 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 +52 -41
- package/src/tabs/transact.ts +98 -53
- package/src/tabs/typing.ts +31 -0
- package/src/types.ts +32 -17
- 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 +57 -48
- package/src/ui/formula-catalog.ts +239 -230
- package/src/ui/formula-chips.ts +33 -18
- package/src/ui/layers.ts +44 -31
- package/src/ui/media-picker.ts +18 -9
- package/src/ui/popover-surface.ts +20 -12
- package/src/ui/progress-modal.ts +13 -8
- package/src/ui/regions.ts +7 -6
- package/src/ui/schema-form.ts +113 -70
- 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 +3 -2
- package/src/utils/base64.ts +3 -1
- package/src/utils/edit-display.ts +103 -74
- 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/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 +10 -12
- package/src/workspace/session.ts +53 -43
- package/src/workspace/workspace.ts +47 -36
- package/dist/chunks/2020-nkxms0ay.js +0 -4
- package/dist/chunks/adapter-m948ab5f.js +0 -4
- package/dist/chunks/cf-account-picker-n8hr38v7.js +0 -4
- package/dist/chunks/cf-settings-356xdtne.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-yk3t844e.js +0 -4
- package/dist/chunks/content-source-bawmyc09.js +0 -4
- package/dist/chunks/convert-to-repeater-7wns8kf1.js +0 -4
- package/dist/chunks/dialog-mtm9fq5t.js +0 -4
- package/dist/chunks/editor-6sc8nacq.js +0 -4
- package/dist/chunks/entry-commands-8ay9fh81.js +0 -4
- package/dist/chunks/extension-sections-na7rj3nr.js +0 -4
- package/dist/chunks/file-ops-gye0qw56.js +0 -4
- package/dist/chunks/files-dmc2xvcq.js +0 -4
- package/dist/chunks/format-host-t76b53f8.js +0 -4
- package/dist/chunks/fs-events-cg4tpz06.js +0 -4
- package/dist/chunks/git-panel-yef7bshy.js +0 -4
- package/dist/chunks/grid-view-7tt4bxw1.js +0 -51
- package/dist/chunks/icons-qbh8akb1.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-tmz30gfp.js +0 -4
- package/dist/chunks/index-nag78a9h.js +0 -4
- package/dist/chunks/jsonMode-zhwsprqk.js +0 -13
- package/dist/chunks/jx-validate-3gbp5nkn.js +0 -4
- package/dist/chunks/layers-fvz99859.js +0 -4
- package/dist/chunks/layers-panel-gchmbf9p.js +0 -4
- package/dist/chunks/listbox-s8fkmnq8.js +0 -4
- package/dist/chunks/lit-html-9agdspkt.js +0 -4
- package/dist/chunks/media-picker-rhjvyy00.js +0 -4
- package/dist/chunks/menu-2e4y9j7b.js +0 -4
- package/dist/chunks/menu-37d07z9m.js +0 -4
- package/dist/chunks/monaco-binding-2jnhjjvr.js +0 -4
- package/dist/chunks/monaco-buffer-rp21359g.js +0 -4
- package/dist/chunks/monaco-setup-vhh7gayr.js +0 -4
- package/dist/chunks/notify-h3www560.js +0 -4
- package/dist/chunks/number-field-gw7sq8rn.js +0 -4
- package/dist/chunks/parse-897fvqah.js +0 -4
- package/dist/chunks/platform-hz34wcd7.js +0 -4
- package/dist/chunks/popover-8htra4er.js +0 -4
- package/dist/chunks/publish-panel-exsmjzyj.js +0 -4
- package/dist/chunks/quick-search-pgaqeh0m.js +0 -4
- package/dist/chunks/references-2cgdxnb8.js +0 -4
- package/dist/chunks/right-panel-jf856w5w.js +0 -4
- package/dist/chunks/section-registry-jnf8r5gy.js +0 -4
- package/dist/chunks/select-n3v7gwas.js +0 -4
- package/dist/chunks/split-pff8f3ze.js +0 -4
- package/dist/chunks/studio-0f55h9ye.js +0 -5
- package/dist/chunks/studio-0sqdhnew.js +0 -12
- package/dist/chunks/studio-19x1c75w.js +0 -5
- package/dist/chunks/studio-2sqcndak.js +0 -5
- package/dist/chunks/studio-3aey7dd3.js +0 -5
- package/dist/chunks/studio-3bpdkq2s.js +0 -5
- package/dist/chunks/studio-47y6fbpf.js +0 -5
- package/dist/chunks/studio-4m3826v2.js +0 -5
- package/dist/chunks/studio-4nx2dj1g.js +0 -4
- package/dist/chunks/studio-4xv5s47r.js +0 -9
- package/dist/chunks/studio-5g4t8v6w.js +0 -5
- package/dist/chunks/studio-5py436sf.js +0 -5
- package/dist/chunks/studio-77kt594t.js +0 -5
- package/dist/chunks/studio-8f87n763.js +0 -10
- package/dist/chunks/studio-8mb00b84.js +0 -5
- package/dist/chunks/studio-8p51gq2h.js +0 -6
- package/dist/chunks/studio-954ds834.js +0 -5
- package/dist/chunks/studio-9ft45c83.js +0 -9
- package/dist/chunks/studio-a2138x5k.js +0 -7
- package/dist/chunks/studio-a9yzstqj.js +0 -5
- package/dist/chunks/studio-acdksxx6.js +0 -5
- package/dist/chunks/studio-ar8jcf2y.js +0 -5
- package/dist/chunks/studio-bmn4mn9j.js +0 -7
- package/dist/chunks/studio-e7xxa0sj.js +0 -5
- package/dist/chunks/studio-ecaz25vk.js +0 -5
- package/dist/chunks/studio-ery42sqr.js +0 -4
- package/dist/chunks/studio-fzdywr6p.js +0 -9
- package/dist/chunks/studio-g5fmf0c1.js +0 -5
- package/dist/chunks/studio-g7nse7zb.js +0 -5
- package/dist/chunks/studio-geq1ea6k.js +0 -14
- package/dist/chunks/studio-ghkb32r8.js +0 -5
- package/dist/chunks/studio-ghrhy2y7.js +0 -5
- package/dist/chunks/studio-grawhey1.js +0 -5
- package/dist/chunks/studio-h0xgswew.js +0 -5
- package/dist/chunks/studio-h9c4p2tx.js +0 -5
- package/dist/chunks/studio-jyzj5cxs.js +0 -5
- package/dist/chunks/studio-mgx8yhnz.js +0 -64
- package/dist/chunks/studio-mpb04y1d.js +0 -6
- package/dist/chunks/studio-n17mty64.js +0 -5
- package/dist/chunks/studio-nwh2eqsk.js +0 -6
- package/dist/chunks/studio-q1h883bt.js +0 -16
- package/dist/chunks/studio-q4tv82h7.js +0 -9
- package/dist/chunks/studio-qpqa7vk3.js +0 -5
- package/dist/chunks/studio-qqz8e5gk.js +0 -5
- package/dist/chunks/studio-qvasen3f.js +0 -5
- package/dist/chunks/studio-rggdb3hm.js +0 -5
- package/dist/chunks/studio-sghy936h.js +0 -4
- package/dist/chunks/studio-skprc6ef.js +0 -5
- package/dist/chunks/studio-tt2nactf.js +0 -5
- package/dist/chunks/studio-tyasmc39.js +0 -5
- package/dist/chunks/studio-vk9ezads.js +0 -5
- package/dist/chunks/studio-vzacdfsc.js +0 -4
- package/dist/chunks/studio-w4c0xmrw.js +0 -5
- package/dist/chunks/studio-wfjqhhbk.js +0 -5
- package/dist/chunks/studio-wgh5kxpj.js +0 -5
- package/dist/chunks/studio-xasj0796.js +0 -5
- package/dist/chunks/studio-y78s8r2n.js +0 -5
- package/dist/chunks/studio-z8w183sh.js +0 -5
- package/dist/chunks/studio-zscd9ty4.js +0 -928
- package/dist/chunks/studio-zxp13sss.js +0 -7
- package/dist/chunks/studio-zygnmm01.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-gr0m4dzr.js +0 -14
- package/dist/chunks/workspace-m15qtcqp.js +0 -4
- package/dist/chunks/ws-client-nf61frr1.js +0 -4
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{ar,On,$n,$i,kv,Z,gt,ei,lr,Ae,Sl,e,p,Jt,gr,F_,ms,Ps,Fe,R,d,n,le,en,k,r,Do,br,Og,be,Ve,tn,Fs,q,s,t,F,y,bu,ER,yu,Ft,ze,pa,TR,yr,bs,Wt,El,Ii,mo,ti,Iv,_e,js,se,Sf,Tl,Nh,jg,u,xn,W,zn,j,z_,Ne,Zr,B,c,kf,nt,Nt,We,ii,_,sn,g,Le,de,D,Q,Ce,_t,_n,ot,J,Be,ke,C,Ef,P,K,lt,l,wi,Pn,Ni,fn,it,In,qt,Oi,Qo,xi,Ke,Kt,U,Xr,xr,G,N,pe,ie,yt,ve,st,J_,xu,X,m,V,od,qg,Uh,Pi,Dn,_i,a,Qr,Ws,Zh,Jv,o0,ui,Et,o,je,rI,Ol,$u,bt,Gi,fe,ce,kn,m0,cI,dI,Ru,Cc,np,En,Us,ud,fI,ba,gn,Tn,Ml,Ji,qf,v0,Kf,Re,mI,Jf,Xa,Zt,_o,Ks,Vt,Qa,D0,N0,gw,ub,O0,to,Gs,fd,Zf,op,sp,Fo,Nu,Vk,fi,oi,rt,ap,Au,el,fb,lp,ss,Nn}from"./studio-rk1zc4x3.js";import{Pt,Cg,du,k_,E_,T_,kg,Eg,yk,L_,uc,vR,Sv,uu,Ma,Tg,gf,$_,R_,vk,wk,I_,xk,hu,Cv,D_,N_,bf,Lg,yf,$g,O_,mr,Rg,_k,pu,us}from"./studio-nv2cptd4.js";class fo extends fn{constructor(){super({id:"diffEditor.toggleCollapseUnchangedRegions",title:p(101,"Toggle Collapse Unchanged Regions"),icon:y.map,toggled:C.has("config.diffEditor.hideUnchangedRegions.enabled"),precondition:C.has("isInDiffEditor"),menu:{when:C.has("isInDiffEditor"),id:l.EditorTitle,order:22,group:"navigation"}})}run(f,...i){let h=f.get(ie),v=!h.getValue("diffEditor.hideUnchangedRegions.enabled");h.updateValue("diffEditor.hideUnchangedRegions.enabled",v)}}class wt extends fn{constructor(){super({id:"diffEditor.toggleShowMovedCodeBlocks",title:p(102,"Toggle Show Moved Code Blocks"),precondition:C.has("isInDiffEditor")})}run(f,...i){let h=f.get(ie),v=!h.getValue("diffEditor.experimental.showMoves");h.updateValue("diffEditor.experimental.showMoves",v)}}class po extends fn{constructor(){super({id:"diffEditor.toggleUseInlineViewWhenSpaceIsLimited",title:p(103,"Toggle Use Inline View When Space Is Limited"),precondition:C.has("isInDiffEditor")})}run(f,...i){let h=f.get(ie),v=!h.getValue("diffEditor.useInlineViewWhenSpaceIsLimited");h.updateValue("diffEditor.useInlineViewWhenSpaceIsLimited",v)}}var et=p(104,"Diff Editor");class go extends Xr{constructor(){super({id:"diffEditor.switchSide",title:p(105,"Switch Side"),icon:y.arrowSwap,precondition:C.has("isInDiffEditor"),f1:!0,category:et})}runEditorCommand(f,i,h){let v=Te(f);if(v instanceof el)if(h&&h.dryRun)return{destinationSelection:v.mapToOtherSide().destinationSelection};else v.switchSide();return}}class Co extends Xr{constructor(){super({id:"diffEditor.exitCompareMove",title:p(106,"Exit Compare Move"),icon:y.close,precondition:o.comparingMovedCode,f1:!1,category:et,keybinding:{weight:1e4,primary:9}})}runEditorCommand(f,i,...h){let v=Te(f);if(v instanceof el)v.exitCompareMove()}}class vo extends Xr{constructor(){super({id:"diffEditor.collapseAllUnchangedRegions",title:p(107,"Collapse All Unchanged Regions"),icon:y.fold,precondition:C.has("isInDiffEditor"),f1:!0,category:et})}runEditorCommand(f,i,...h){let v=Te(f);if(v instanceof el)v.collapseAllUnchangedRegions()}}class bo extends Xr{constructor(){super({id:"diffEditor.showAllUnchangedRegions",title:p(108,"Show All Unchanged Regions"),icon:y.unfold,precondition:C.has("isInDiffEditor"),f1:!0,category:et})}runEditorCommand(f,i,...h){let v=Te(f);if(v instanceof el)v.showAllUnchangedRegions()}}class tt extends fn{constructor(){super({id:"diffEditor.revert",title:p(109,"Revert"),f1:!0,category:et,precondition:C.has("isInDiffEditor")})}run(f,i){return i?this.runViaToolbarContext(f,i):this.runViaCursorOrSelection(f)}runViaCursorOrSelection(f){let i=Te(f);if(i instanceof el)i.revertFocusedRangeMappings();return}runViaToolbarContext(f,i){let h=cn(f,i.originalUri,i.modifiedUri);if(h instanceof el)h.revertRangeMappings(i.mapping.innerChanges??[]);return}}var Wi=p(110,"Accessible Diff Viewer");class qe extends fn{static{this.id="editor.action.accessibleDiffViewer.next"}constructor(){super({id:qe.id,title:p(111,"Go to Next Difference"),category:Wi,precondition:C.has("isInDiffEditor"),keybinding:{primary:65,weight:100},f1:!0})}run(f){Te(f)?.accessibleDiffViewerNext()}}class ct extends fn{static{this.id="editor.action.accessibleDiffViewer.prev"}constructor(){super({id:ct.id,title:p(112,"Go to Previous Difference"),category:Wi,precondition:C.has("isInDiffEditor"),keybinding:{primary:1089,weight:100},f1:!0})}run(f){Te(f)?.accessibleDiffViewerPrev()}}function cn(f,i,h){return f.get(Ce).listDiffEditors().find((b)=>{let w=b.getModifiedEditor(),I=b.getOriginalEditor();return w&&w.getModel()?.uri.toString()===h.toString()&&I&&I.getModel()?.uri.toString()===i.toString()})||null}function Te(f){let h=f.get(Ce).listDiffEditors(),v=Nt();if(v){for(let S of h)if(S.getContainerDomNode().contains(v))return S}return null}it(fo);it(wt);it(po);Pn.appendMenuItem(l.EditorTitle,{command:{id:new wt().desc.id,title:e(135,"Show Moved Code Blocks"),icon:y.move,toggled:Ef.create("config.diffEditor.experimental.showMoves",!0),precondition:C.has("isInDiffEditor")},order:10,group:"1_diff",when:C.has("isInDiffEditor")});it(tt);for(let f of[{icon:y.arrowRight,key:o.diffEditorInlineMode.toNegated()},{icon:y.discard,key:o.diffEditorInlineMode}])Pn.appendMenuItem(l.DiffEditorHunkToolbar,{command:{id:new tt().desc.id,title:e(136,"Revert Block"),icon:f.icon},when:C.and(o.diffEditorModifiedWritable,f.key),order:5,group:"primary"}),Pn.appendMenuItem(l.DiffEditorSelectionToolbar,{command:{id:new tt().desc.id,title:e(137,"Revert Selection"),icon:f.icon},when:C.and(o.diffEditorModifiedWritable,f.key),order:5,group:"primary"});it(go);it(Co);it(vo);it(bo);Pn.appendMenuItem(l.EditorTitle,{command:{id:qe.id,title:e(138,"Open Accessible Diff Viewer"),precondition:C.has("isInDiffEditor")},order:10,group:"2_diff",when:C.and(o.accessibleDiffViewerVisible.negate(),C.has("isInDiffEditor"))});ke.registerCommandAlias("editor.action.diffReview.next",qe.id);it(qe);ke.registerCommandAlias("editor.action.diffReview.prev",ct.id);it(ct);var an=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},dn=function(f,i){return function(h,v){i(h,v,f)}},So,It=new P("selectionAnchorSet",!1),we=class f{static{So=this}static{this.ID="editor.contrib.selectionAnchorController"}static get(i){return i.getContribution(So.ID)}constructor(i,h){this.editor=i,this.selectionAnchorSetContextKey=It.bindTo(h),this.modelChangeListener=i.onDidChangeModel(()=>this.selectionAnchorSetContextKey.reset())}setSelectionAnchor(){if(this.editor.hasModel()){let i=this.editor.getPosition();this.editor.changeDecorations((h)=>{if(this.decorationId)h.removeDecoration(this.decorationId);this.decorationId=h.addDecoration(F.fromPositions(i,i),{description:"selection-anchor",stickiness:1,hoverMessage:new En().appendText(e(849,"Selection Anchor")),className:"selection-anchor"})}),this.selectionAnchorSetContextKey.set(!!this.decorationId),Dn(e(850,"Anchor set at {0}:{1}",i.lineNumber,i.column))}}goToSelectionAnchor(){if(this.editor.hasModel()&&this.decorationId){let i=this.editor.getModel().getDecorationRange(this.decorationId);if(i)this.editor.setPosition(i.getStartPosition())}}selectFromAnchorToCursor(){if(this.editor.hasModel()&&this.decorationId){let i=this.editor.getModel().getDecorationRange(this.decorationId);if(i){let h=this.editor.getPosition();this.editor.setSelection(F.fromPositions(i.getStartPosition(),h)),this.cancelSelectionAnchor()}}}cancelSelectionAnchor(){if(this.decorationId){let i=this.decorationId;this.editor.changeDecorations((h)=>{h.removeDecoration(i),this.decorationId=void 0}),this.selectionAnchorSetContextKey.set(!1)}}dispose(){this.cancelSelectionAnchor(),this.modelChangeListener.dispose()}};we=So=an([dn(1,K)],we);class Vi extends U{constructor(){super({id:"editor.action.setSelectionAnchor",label:p(851,"Set Selection Anchor"),precondition:void 0,kbOpts:{kbExpr:o.editorTextFocus,primary:tn(2089,2080),weight:100}})}async run(f,i){we.get(i)?.setSelectionAnchor()}}class qi extends U{constructor(){super({id:"editor.action.goToSelectionAnchor",label:p(852,"Go to Selection Anchor"),precondition:It})}async run(f,i){we.get(i)?.goToSelectionAnchor()}}class Ui extends U{constructor(){super({id:"editor.action.selectFromAnchorToCursor",label:p(853,"Select from Anchor to Cursor"),precondition:It,kbOpts:{kbExpr:o.editorTextFocus,primary:tn(2089,2089),weight:100}})}async run(f,i){we.get(i)?.selectFromAnchorToCursor()}}class Bi extends U{constructor(){super({id:"editor.action.cancelSelectionAnchor",label:p(854,"Cancel Selection Anchor"),precondition:It,kbOpts:{kbExpr:o.editorTextFocus,primary:9,weight:100}})}async run(f,i){we.get(i)?.cancelSelectionAnchor()}}pe(we.ID,we,4);N(Vi);N(qi);N(Ui);N(Bi);class yo{constructor(f,i){this._selection=f,this._isMovingLeft=i}getEditOperations(f,i){if(this._selection.startLineNumber!==this._selection.endLineNumber||this._selection.isEmpty())return;let h=this._selection.startLineNumber,v=this._selection.startColumn,S=this._selection.endColumn;if(this._isMovingLeft&&v===1)return;if(!this._isMovingLeft&&S===f.getLineMaxColumn(h))return;if(this._isMovingLeft){let b=new t(h,v-1,h,v),w=f.getValueInRange(b);i.addEditOperation(b,null),i.addEditOperation(new t(h,S,h,S),w)}else{let b=new t(h,S,h,S+1),w=f.getValueInRange(b);i.addEditOperation(b,null),i.addEditOperation(new t(h,v,h,v),w)}}computeCursorState(f,i){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 wo extends U{constructor(f,i){super(i);this.left=f}run(f,i){if(!i.hasModel())return;let h=[],v=i.getSelections();for(let S of v)h.push(new yo(S,this.left));i.pushUndoStop(),i.executeCommands(this.id,h),i.pushUndoStop()}}class Qi extends wo{constructor(){super(!0,{id:"editor.action.moveCarretLeftAction",label:p(861,"Move Selected Text Left"),precondition:o.writable})}}class Ki extends wo{constructor(){super(!1,{id:"editor.action.moveCarretRightAction",label:p(862,"Move Selected Text Right"),precondition:o.writable})}}N(Qi);N(Ki);class Yi extends U{constructor(){super({id:"editor.action.transposeLetters",label:p(863,"Transpose Letters"),precondition:o.writable,kbOpts:{kbExpr:o.textInputFocus,primary:0,mac:{primary:306},weight:100}})}run(f,i){if(!i.hasModel())return;let h=i.getModel(),v=[],S=i.getSelections();for(let b of S){if(!b.isEmpty())continue;let{startLineNumber:w,startColumn:I}=b,M=h.getLineMaxColumn(w);if(w===1&&(I===1||I===2&&M===2))continue;let x=I===M?b.getPosition():Et.rightPosition(h,b.getPosition().lineNumber,b.getPosition().column),E=Et.leftPosition(h,x),T=Et.leftPosition(h,E),L=h.getValueInRange(t.fromPositions(T,E)),A=h.getValueInRange(t.fromPositions(E,x)),O=t.fromPositions(T,x);v.push(new ui(O,A+L))}if(v.length>0)i.pushUndoStop(),i.executeCommands(this.id,v),i.pushUndoStop()}}N(Yi);class Pe{constructor(){this.lenses=[]}static{this.Empty=new Pe}dispose(){this._store?.dispose()}get isDisposed(){return this._store?.isDisposed??!1}add(f,i){if(Ps(f))this._store??=new d,this._store.add(f);for(let h of f.lenses)this.lenses.push({symbol:h,provider:i})}}async function Io(f,i,h){let v=f.ordered(i),S=new Map,b=new Pe,w=v.map(async(I,M)=>{S.set(I,M);try{let x=await Promise.resolve(I.provideCodeLenses(i,h));if(x)b.add(x,I)}catch(x){gt(x)}});if(await Promise.all(w),h.isCancellationRequested)return b.dispose(),Pe.Empty;return b.lenses=b.lenses.sort((I,M)=>{if(I.symbol.range.startLineNumber<M.symbol.range.startLineNumber)return-1;else if(I.symbol.range.startLineNumber>M.symbol.range.startLineNumber)return 1;else if(S.get(I.provider)<S.get(M.provider))return-1;else if(S.get(I.provider)>S.get(M.provider))return 1;else if(I.symbol.range.startColumn<M.symbol.range.startColumn)return-1;else if(I.symbol.range.startColumn>M.symbol.range.startColumn)return 1;else return 0}),b}ke.registerCommand("_executeCodeLensProvider",function(f,...i){let[h,v]=i;Ae(q.isUri(h)),Ae(typeof v==="number"||!v);let{codeLensProvider:S}=f.get(V),b=f.get(_t).getModel(h);if(!b)throw lr();let w=[],I=new d;return Io(S,b,be.None).then((M)=>{I.add(M);let x=[];for(let E of M.lenses)if(v===void 0||v===null||Boolean(E.symbol.command))w.push(E.symbol);else if(v-- >0&&E.provider.resolveCodeLens)x.push(Promise.resolve(E.provider.resolveCodeLens(b,E.symbol,be.None)).then((T)=>w.push(T||E.symbol)));return Promise.all(x)}).then(()=>w).finally(()=>{setTimeout(()=>I.dispose(),100)})});var ln=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},un=function(f,i){return function(h,v){i(h,v,f)}},xo=Q("ICodeLensCache");class Mo{constructor(f,i){this.lineCount=f,this.data=i}}var ko=class f{constructor(i){this._fakeProvider=new class{provideCodeLenses(){throw Error("not supported")}},this._cache=new Oi(20,0.75);let h="codelens/cache";kf(ze,()=>i.remove(h,1));let v="codelens/cache2",S=i.get(v,1,"{}");this._deserialize(S);let b=k.filter(i.onWillSaveState,(w)=>w.reason===Ml.SHUTDOWN);k.once(b)((w)=>{i.store(v,this._serialize(),1,1)})}put(i,h){let v=h.lenses.map((w)=>({range:w.symbol.range,command:w.symbol.command&&{id:"",title:w.symbol.command?.title}})),S=new Pe;S.add({lenses:v},this._fakeProvider);let b=new Mo(i.getLineCount(),S);this._cache.set(i.uri.toString(),b)}get(i){let h=this._cache.get(i.uri.toString());return h&&h.lineCount===i.getLineCount()?h.data:void 0}delete(i){this._cache.delete(i.uri.toString())}_serialize(){let i=Object.create(null);for(let[h,v]of this._cache){let S=new Set;for(let b of v.data.lenses)S.add(b.symbol.range.startLineNumber);i[h]={lineCount:v.lineCount,lines:[...S.values()]}}return JSON.stringify(i)}_deserialize(i){try{let h=JSON.parse(i);for(let v in h){let S=h[v],b=[];for(let I of S.lines)b.push({range:new t(I,1,I,11)});let w=new Pe;w.add({lenses:b},this._fakeProvider),this._cache.set(v,new Mo(S.lineCount,w))}}catch{}}};ko=ln([un(0,Tn)],ko);ve(xo,ko,1);class Xi{constructor(f,i,h){this.afterColumn=1073741824,this.afterLineNumber=f,this.heightInPx=i,this._onHeight=h,this.suppressMouseDown=!0,this.domNode=document.createElement("div")}onComputedHeight(f){if(this._lastHeight===void 0)this._lastHeight=f;else if(this._lastHeight!==f)this._lastHeight=f,this._onHeight()}isVisible(){return this._lastHeight!==0&&this.domNode.hasAttribute("monaco-visible-view-zone")}}class Mt{static{this._idPool=0}constructor(f,i){this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this._commands=new Map,this._isEmpty=!0,this._editor=f,this._id=`codelens.widget-${Mt._idPool++}`,this.updatePosition(i),this._domNode=document.createElement("span"),this._domNode.className="codelens-decoration"}withCommands(f,i){this._commands.clear();let h=[],v=!1;for(let S=0;S<f.length;S++){let b=f[S];if(!b)continue;if(v=!0,b.command){let w=Us(b.command.title.trim());if(b.command.id){let I=`c${Mt._idPool++}`;h.push(g("a",{id:I,title:b.command.tooltip,role:"button"},...w)),this._commands.set(I,b.command)}else h.push(g("span",{title:b.command.tooltip},...w));if(S+1<f.length)h.push(g("span",void 0," | "))}}if(!v)sn(this._domNode,g("span",void 0,"no commands"));else{if(sn(this._domNode,...h),this._isEmpty&&i)this._domNode.classList.add("fadein");this._isEmpty=!1}}getCommand(f){return f.parentElement===this._domNode?this._commands.get(f.id):void 0}getId(){return this._id}getDomNode(){return this._domNode}updatePosition(f){let i=this._editor.getModel().getLineFirstNonWhitespaceColumn(f);this._widgetPosition={position:{lineNumber:f,column:i},preference:[1]}}getPosition(){return this._widgetPosition||null}}class at{constructor(){this._removeDecorations=[],this._addDecorations=[],this._addDecorationsCallbacks=[]}addDecoration(f,i){this._addDecorations.push(f),this._addDecorationsCallbacks.push(i)}removeDecoration(f){this._removeDecorations.push(f)}commit(f){let i=f.deltaDecorations(this._removeDecorations,this._addDecorations);for(let h=0,v=i.length;h<v;h++)this._addDecorationsCallbacks[h](i[h])}}var Zi=ce.register({collapseOnReplaceEdit:!0,description:"codelens"});class kt{constructor(f,i,h,v,S,b){this._isDisposed=!1,this._editor=i,this._data=f,this._decorationIds=[];let w,I=[];if(this._data.forEach((M,x)=>{if(M.symbol.command)I.push(M.symbol);if(h.addDecoration({range:M.symbol.range,options:Zi},(E)=>this._decorationIds[x]=E),!w)w=t.lift(M.symbol.range);else w=t.plusRange(w,M.symbol.range)}),this._viewZone=new Xi(w.startLineNumber-1,S,b),this._viewZoneId=v.addZone(this._viewZone),I.length>0)this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(I,!1)}_createContentWidgetIfNecessary(){if(!this._contentWidget)this._contentWidget=new Mt(this._editor,this._viewZone.afterLineNumber+1),this._editor.addContentWidget(this._contentWidget);else this._editor.layoutContentWidget(this._contentWidget)}dispose(f,i){if(this._decorationIds.forEach(f.removeDecoration,f),this._decorationIds=[],i?.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((f,i)=>{let h=this._editor.getModel().getDecorationRange(f),v=this._data[i].symbol;return!!(h&&t.isEmpty(v.range)===h.isEmpty())})}updateCodeLensSymbols(f,i){this._decorationIds.forEach(i.removeDecoration,i),this._decorationIds=[],this._data=f,this._data.forEach((h,v)=>{i.addDecoration({range:h.symbol.range,options:Zi},(S)=>this._decorationIds[v]=S)})}updateHeight(f,i){if(this._viewZone.heightInPx=f,i.layoutZone(this._viewZoneId),this._contentWidget)this._editor.layoutContentWidget(this._contentWidget)}computeIfNecessary(f){if(!this._viewZone.isVisible())return null;for(let i=0;i<this._decorationIds.length;i++){let h=f.getDecorationRange(this._decorationIds[i]);if(h)this._data[i].symbol.range=h}return this._data}updateCommands(f){this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(f,!0);for(let i=0;i<this._data.length;i++){let h=f[i];if(h){let{symbol:v}=this._data[i];v.command=h.command||v.command}}}getCommand(f){return this._contentWidget?.getCommand(f)}getLineNumber(){let f=this._editor.getModel().getDecorationRange(this._decorationIds[0]);if(f)return f.startLineNumber;return-1}update(f){if(this.isValid()){let i=this._editor.getModel().getDecorationRange(this._decorationIds[0]);if(i){if(this._viewZone.afterLineNumber=i.startLineNumber-1,f.layoutZone(this._viewZoneId),this._contentWidget)this._contentWidget.updatePosition(i.startLineNumber),this._editor.layoutContentWidget(this._contentWidget)}}}}var hn=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},dt=function(f,i){return function(h,v){i(h,v,f)}},ut=class f{static{this.ID="css.editor.codeLens"}constructor(i,h,v,S,b,w){this._editor=i,this._languageFeaturesService=h,this._commandService=S,this._notificationService=b,this._codeLensCache=w,this._disposables=new d,this._localToDispose=new d,this._lenses=[],this._oldCodeLensModels=new d,this._provideCodeLensDebounce=v.for(h.codeLensProvider,"CodeLensProvide",{min:250}),this._resolveCodeLensesDebounce=v.for(h.codeLensProvider,"CodeLensResolve",{min:250,salt:"resolve"}),this._resolveCodeLensesScheduler=new _e(()=>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((I)=>{if(I.hasChanged(59)||I.hasChanged(25)||I.hasChanged(24))this._updateLensStyle();if(I.hasChanged(23))this._onModelChange()})),this._disposables.add(h.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 i=Math.max(1.3,this._editor.getOption(75)/this._editor.getOption(61)),h=this._editor.getOption(25);if(!h||h<5)h=this._editor.getOption(61)*0.9|0;return{fontSize:h,codeLensHeight:h*i|0}}_updateLensStyle(){let{codeLensHeight:i,fontSize:h}=this._getLayoutInfo(),v=this._editor.getOption(24),S=this._editor.getOption(59),{style:b}=this._editor.getContainerDomNode();if(b.setProperty("--vscode-editorCodeLens-lineHeight",`${i}px`),b.setProperty("--vscode-editorCodeLens-fontSize",`${h}px`),b.setProperty("--vscode-editorCodeLens-fontFeatureSettings",S.fontFeatureSettings),v)b.setProperty("--vscode-editorCodeLens-fontFamily",v),b.setProperty("--vscode-editorCodeLens-fontFamilyDefault",br.fontFamily);this._editor.changeViewZones((w)=>{for(let I of this._lenses)I.updateHeight(i,w)})}_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 i=this._editor.getModel();if(!i)return;if(!this._editor.getOption(23)||i.isTooLargeForTokenization())return;let h=this._codeLensCache.get(i);if(h)this._renderCodeLensSymbols(h);if(!this._languageFeaturesService.codeLensProvider.has(i)){if(h)ti(()=>{let S=this._codeLensCache.get(i);if(h===S)this._codeLensCache.delete(i),this._onModelChange()},30000,this._localToDispose);return}for(let S of this._languageFeaturesService.codeLensProvider.all(i))if(typeof S.onDidChange==="function"){let b=S.onDidChange(()=>v.schedule());this._localToDispose.add(b)}let v=new _e(()=>{let S=Date.now();this._getCodeLensModelPromise?.cancel(),this._getCodeLensModelPromise=Wt((b)=>Io(this._languageFeaturesService.codeLensProvider,i,b)),this._getCodeLensModelPromise.then((b)=>{if(this._currentCodeLensModel)this._oldCodeLensModels.add(this._currentCodeLensModel);this._currentCodeLensModel=b,this._codeLensCache.put(i,b);let w=this._provideCodeLensDebounce.update(i,Date.now()-S);v.delay=w,this._renderCodeLensSymbols(b),this._resolveCodeLensesInViewportSoon()},Z)},this._provideCodeLensDebounce.get(i));this._localToDispose.add(v),this._localToDispose.add(R(()=>this._resolveCodeLensesScheduler.cancel())),this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._editor.changeDecorations((S)=>{this._editor.changeViewZones((b)=>{let w=[],I=-1;this._lenses.forEach((x)=>{if(!x.isValid()||I===x.getLineNumber())w.push(x);else x.update(b),I=x.getLineNumber()});let M=new at;w.forEach((x)=>{x.dispose(M,b),this._lenses.splice(this._lenses.indexOf(x),1)}),M.commit(S)})}),v.schedule(),this._resolveCodeLensesScheduler.cancel(),this._resolveCodeLensesPromise?.cancel(),this._resolveCodeLensesPromise=void 0})),this._localToDispose.add(this._editor.onDidFocusEditorText(()=>{v.schedule()})),this._localToDispose.add(this._editor.onDidBlurEditorText(()=>{v.cancel()})),this._localToDispose.add(this._editor.onDidScrollChange((S)=>{if(S.scrollTopChanged&&this._lenses.length>0)this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(this._editor.onDidLayoutChange(()=>{this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(R(()=>{if(this._editor.getModel()){let S=Fo.capture(this._editor);this._editor.changeDecorations((b)=>{this._editor.changeViewZones((w)=>{this._disposeAllLenses(b,w)})}),S.restore(this._editor)}else this._disposeAllLenses(void 0,void 0)})),this._localToDispose.add(this._editor.onMouseDown((S)=>{if(S.target.type!==9)return;let b=S.target.element;if(b?.tagName==="SPAN")b=b.parentElement;if(b?.tagName==="A")for(let w of this._lenses){let I=w.getCommand(b);if(I){this._commandService.executeCommand(I.id,...I.arguments||[]).catch((M)=>this._notificationService.error(M));break}}})),v.schedule()}_disposeAllLenses(i,h){let v=new at;for(let S of this._lenses)S.dispose(v,h);if(i)v.commit(i);this._lenses.length=0}_renderCodeLensSymbols(i){if(!this._editor.hasModel())return;let h=this._editor.getModel().getLineCount(),v=[],S;for(let I of i.lenses){let M=I.symbol.range.startLineNumber;if(M<1||M>h)continue;else if(S&&S[S.length-1].symbol.range.startLineNumber===M)S.push(I);else S=[I],v.push(S)}if(!v.length&&!this._lenses.length)return;let b=Fo.capture(this._editor),w=this._getLayoutInfo();this._editor.changeDecorations((I)=>{this._editor.changeViewZones((M)=>{let x=new at,E=0,T=0;while(T<v.length&&E<this._lenses.length){let L=v[T][0].symbol.range.startLineNumber,A=this._lenses[E].getLineNumber();if(A<L)this._lenses[E].dispose(x,M),this._lenses.splice(E,1);else if(A===L)this._lenses[E].updateCodeLensSymbols(v[T],x),T++,E++;else this._lenses.splice(E,0,new kt(v[T],this._editor,x,M,w.codeLensHeight,()=>this._resolveCodeLensesInViewportSoon())),E++,T++}while(E<this._lenses.length)this._lenses[E].dispose(x,M),this._lenses.splice(E,1);while(T<v.length)this._lenses.push(new kt(v[T],this._editor,x,M,w.codeLensHeight,()=>this._resolveCodeLensesInViewportSoon())),T++;x.commit(I)})}),b.restore(this._editor)}_resolveCodeLensesInViewportSoon(){if(this._editor.getModel())this._resolveCodeLensesScheduler.schedule()}_resolveCodeLensesInViewport(){this._resolveCodeLensesPromise?.cancel(),this._resolveCodeLensesPromise=void 0;let i=this._editor.getModel();if(!i)return;let h=[],v=[];if(this._lenses.forEach((w)=>{let I=w.computeIfNecessary(i);if(I)h.push(I),v.push(w)}),h.length===0){this._oldCodeLensModels.clear();return}let S=Date.now(),b=Wt((w)=>{let I=h.map((M,x)=>{let E=Array(M.length),T=M.map((L,A)=>{if(!L.symbol.command&&typeof L.provider.resolveCodeLens==="function")return Promise.resolve(L.provider.resolveCodeLens(i,L.symbol,w)).then((O)=>{E[A]=O},gt);else return E[A]=L.symbol,Promise.resolve(void 0)});return Promise.all(T).then(()=>{if(!w.isCancellationRequested&&!v[x].isDisposed())v[x].updateCommands(E)})});return Promise.all(I)});this._resolveCodeLensesPromise=b,this._resolveCodeLensesPromise.then(()=>{let w=this._resolveCodeLensesDebounce.update(i,Date.now()-S);if(this._resolveCodeLensesScheduler.delay=w,this._currentCodeLensModel)this._codeLensCache.put(i,this._currentCodeLensModel);if(this._oldCodeLensModels.clear(),b===this._resolveCodeLensesPromise)this._resolveCodeLensesPromise=void 0},(w)=>{if(Z(w),b===this._resolveCodeLensesPromise)this._resolveCodeLensesPromise=void 0})}async getModel(){return await this._getCodeLensModelPromise,await this._resolveCodeLensesPromise,!this._currentCodeLensModel?.isDisposed?this._currentCodeLensModel:void 0}};ut=hn([dt(1,V),dt(2,Ji),dt(3,Be),dt(4,bt),dt(5,xo)],ut);pe(ut.ID,ut,1);N(class f extends U{constructor(){super({id:"codelens.showLensesInCurrentLine",precondition:o.hasCodeLensProvider,label:p(935,"Show CodeLens Commands for Current Line")})}async run(i,h){if(!h.hasModel())return;let v=i.get(gn),S=i.get(Be),b=i.get(bt),w=h.getSelection().positionLineNumber,I=h.getContribution(ut.ID);if(!I)return;let M=await I.getModel();if(!M)return;let x=[];for(let L of M.lenses)if(L.symbol.command&&L.symbol.range.startLineNumber===w)x.push({label:L.symbol.command.title,command:L.symbol.command});if(x.length===0)return;let E=await v.pick(x,{canPickMany:!1,placeHolder:e(934,"Select a command")});if(!E)return;let T=E.command;if(M.isDisposed){let A=(await I.getModel())?.lenses.find((O)=>O.symbol.range.startLineNumber===w&&O.symbol.command?.title===T.title);if(!A||!A.symbol.command)return;T=A.symbol.command}try{await S.executeCommand(T.id,...T.arguments||[])}catch(L){b.error(L)}}});class xt extends n{static{this.ID="editor.contrib.colorContribution"}constructor(f){super();this._editor=f,this._register(f.onMouseDown((i)=>this.onMouseDown(i)))}dispose(){super.dispose()}onMouseDown(f){let i=this._editor.getOption(169);if(i!=="click"&&i!=="clickAndHover")return;if(!O_(f))return;let h=this._editor.getContribution(mr.ID);if(!h)return;if(h.isColorPickerVisible)return;let v=f.target.range;if(!v)return;let S=new t(v.startLineNumber,v.startColumn+1,v.endLineNumber,v.endColumn+1);h.showContentHover(S,1,1,!1)}}var mn=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},pn=function(f,i){return function(h,v){i(h,v,f)}};class Eo{constructor(f,i,h,v){this.owner=f,this.range=i,this.model=h,this.provider=v}static fromBaseColor(f,i){return new Eo(f,i.range,i.model,i.provider)}}class er extends n{constructor(f,i,h,v){super();let S=f.getModel(),b=h.model;this.color=h.model.color,this.colorPicker=this._register(new Cv(i.fragment,b,f.getOption(164),v,"standalone")),this._register(b.onColorFlushed((w)=>{this.color=w})),this._register(b.onDidChangeColor((w)=>{bf(S,b,w,h.range,h)})),this._register(f.onDidChangeModelContent((w)=>{i.hide(),f.focus()})),bf(S,b,this.color,h.range,h)}}var Lt=class f{constructor(i,h){this._editor=i,this._themeService=h}async createColorHover(i,h,v){if(!this._editor.hasModel())return null;if(!hu.get(this._editor))return null;let b=await R_(v,this._editor.getModel(),be.None),w=null,I=null;for(let L of b){let A=L.colorInfo;if(t.containsRange(A.range,i.range))w=A,I=L.provider}let M=w??i,x=I??h,E=!!w;return{colorHover:Eo.fromBaseColor(this,await D_(this._editor.getModel(),M,x)),foundInEditor:E}}async updateEditorModel(i,h){if(!this._editor.hasModel())return;let v=i.model,S=new t(i.range.startLineNumber,i.range.startColumn,i.range.endLineNumber,i.range.endColumn);if(this._color)await bf(this._editor.getModel(),v,this._color,S,i),S=N_(this._editor,S,v,h)}renderHoverParts(i,h){if(h.length===0||!this._editor.hasModel())return;return this._setMinimumDimensions(i),this._renderedParts=new er(this._editor,i,h[0],this._themeService),this._renderedParts}_setMinimumDimensions(i){let h=this._editor.getOption(75)+8;i.setMinimumDimensions(new nt(302,h))}get _color(){return this._renderedParts?.color}};Lt=mn([pn(1,je)],Lt);var Cn=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},ht=function(f,i){return function(h,v){i(h,v,f)}},Lo;class or{constructor(f,i){this.value=f,this.foundInEditor=i}}var tr=8,vn=22,Tt=class f extends n{static{Lo=this}static{this.ID="editor.contrib.standaloneColorPickerWidget"}constructor(i,h,v,S,b,w,I,M){super();this._editor=i,this._standaloneColorPickerVisible=h,this._standaloneColorPickerFocused=v,this._keybindingService=b,this._languageFeaturesService=w,this._editorWorkerService=I,this._hoverService=M,this.allowEditorOverflow=!0,this._position=void 0,this._body=document.createElement("div"),this._colorHover=null,this._selectionSetInEditor=!1,this._onResult=this._register(new r),this.onResult=this._onResult.event,this._renderedHoverParts=this._register(new le),this._renderedStatusBar=this._register(new le),this._standaloneColorPickerVisible.set(!0),this._standaloneColorPickerParticipant=S.createInstance(Lt,this._editor),this._position=this._editor._getViewModel()?.getPrimaryCursorState().modelState.position;let x=this._editor.getSelection();this._selections=this._editor.getSelections()??[];let E=x?{startLineNumber:x.startLineNumber,startColumn:x.startColumn,endLineNumber:x.endLineNumber,endColumn:x.endColumn}:{startLineNumber:0,endLineNumber:0,endColumn:0,startColumn:0},T=this._register(ii(this._body));this._register(T.onDidBlur((L)=>{this.hide()})),this._register(T.onDidFocus((L)=>{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((L)=>{let A=L.target.element?.classList;if(A&&A.contains("colorpicker-color-decoration"))this.hide()})),this._register(this.onResult((L)=>{this._render(L.value,L.foundInEditor)})),this._start(E),this._body.style.zIndex="50",this._editor.addContentWidget(this)}updateEditor(){if(this._colorHover)this._standaloneColorPickerParticipant.updateEditorModel(this._colorHover,this._selections)}getId(){return Lo.ID}getDomNode(){return this._body}getPosition(){if(!this._position)return null;let i=this._editor.getOption(69).above;return{position:this._position,secondaryPosition:this._position,preference:i?[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(i){let h=await this._computeAsync(i);if(!h)return;this._onResult.fire(new or(h.result,h.foundInEditor))}async _computeAsync(i){if(!this._editor.hasModel())return null;let h={range:i,color:{red:0,green:0,blue:0,alpha:1}},v=await this._standaloneColorPickerParticipant.createColorHover(h,new gf(this._editorWorkerService),this._languageFeaturesService.colorProvider);if(!v)return null;return{result:v.colorHover,foundInEditor:v.foundInEditor}}_render(i,h){let v=document.createDocumentFragment();this._renderedStatusBar.value=this._register(new Tg(this._keybindingService,this._hoverService));let S={fragment:v,statusBar:this._renderedStatusBar.value,onContentsChanged:()=>{},setMinimumDimensions:()=>{},hide:()=>this.hide(),focus:()=>this.focus()};if(this._colorHover=i,this._renderedHoverParts.value=this._standaloneColorPickerParticipant.renderHoverParts(S,[i]),!this._renderedHoverParts.value){this._renderedStatusBar.clear(),this._renderedHoverParts.clear();return}let b=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(v),b.layout();let w=b.body,I=w.saturationBox.domNode.clientWidth,M=w.domNode.clientWidth-I-vn-tr,x=b.body.enterButton;x?.onClicked(()=>{this.updateEditor(),this.hide()});let E=b.header,T=E.pickedColorNode;T.style.width=I+tr+"px";let L=E.originalColorNode;if(L.style.width=M+"px",b.header.closeButton?.onClicked(()=>{this.hide()}),h){if(x)x.button.textContent="Replace";this._selectionSetInEditor=!0,this._editor.setSelection(i.range)}this._editor.layoutContentWidget(this)}};Tt=Lo=Cn([ht(3,D),ht(4,fe),ht(5,V),ht(6,_i),ht(7,kn)],Tt);var bn=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},ir=function(f,i){return function(h,v){i(h,v,f)}},To,Se=class f extends n{static{To=this}static{this.ID="editor.contrib.standaloneColorPickerController"}constructor(i,h,v){super();this._editor=i,this._instantiationService=v,this._standaloneColorPickerWidget=null,this._standaloneColorPickerVisible=o.standaloneColorPickerVisible.bindTo(h),this._standaloneColorPickerFocused=o.standaloneColorPickerFocused.bindTo(h)}showOrFocus(){if(!this._editor.hasModel())return;if(!this._standaloneColorPickerVisible.get())this._standaloneColorPickerWidget=this._instantiationService.createInstance(Tt,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(i){return i.getContribution(To.ID)}};Se=To=bn([ir(1,K),ir(2,D)],Se);class Po extends Xr{constructor(){super({id:"editor.action.showOrFocusStandaloneColorPicker",title:{...p(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:p(941,"Show or focus a standalone color picker which uses the default color provider. It displays hex/rgb/hsl colors.")}})}runEditorCommand(f,i){Se.get(i)?.showOrFocus()}}class Ao extends U{constructor(){super({id:"editor.action.hideColorPicker",label:p(942,"Hide the Color Picker"),precondition:o.standaloneColorPickerVisible.isEqualTo(!0),kbOpts:{primary:9,weight:100},metadata:{description:p(943,"Hide the standalone color picker.")}})}run(f,i){Se.get(i)?.hide()}}class Ro extends U{constructor(){super({id:"editor.action.insertColorWithStandaloneColorPicker",label:p(944,"Insert Color with Standalone Color Picker"),precondition:o.standaloneColorPickerFocused.isEqualTo(!0),kbOpts:{primary:3,weight:100},metadata:{description:p(945,"Insert hex/rgb/hsl colors with the focused standalone color picker.")}})}run(f,i){Se.get(i)?.insertColor()}}N(Ao);N(Ro);it(Po);pe(xt.ID,xt,2);pe(Se.ID,Se,1);pe(hu.ID,hu,1);Qa($_);Ma.register(Lg);ke.registerCommand("_executeDocumentColorProvider",function(f,...i){let[h]=i;if(!(h instanceof q))throw lr();let{model:v,colorProviderRegistry:S,defaultColorDecoratorsEnablement:b}=xk(f,h);return I_(new vk,S,v,be.None,b)});ke.registerCommand("_executeColorPresentationProvider",function(f,...i){let[h,v]=i;if(!v)return;let{uri:S,range:b}=v;if(!(S instanceof q)||!Array.isArray(h)||h.length!==4||!t.isIRange(b))throw lr();let{model:w,colorProviderRegistry:I,defaultColorDecoratorsEnablement:M}=xk(f,S),[x,E,T,L]=h;return I_(new wk({range:b,color:{red:x,green:E,blue:T,alpha:L}}),I,w,be.None,M)});var Sn="editor.action.pasteAs";pe(uc.ID,uc,0);Qa(E_);G(new class extends Kt{constructor(){super({id:yk,precondition:L_,kbOpts:{weight:100,primary:2137}})}runEditorCommand(f,i){return uc.get(i)?.changePasteType()}});G(new class extends Kt{constructor(){super({id:"editor.hidePasteWidget",precondition:L_,kbOpts:{weight:100,primary:9}})}runEditorCommand(f,i){uc.get(i)?.clearWidgets()}});N(class f 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:Sn,label:p(969,"Paste As..."),precondition:o.writable,metadata:{description:"Paste as",args:[{name:"args",schema:f.argsSchema}]},canTriggerInlineEdits:!0})}run(i,h,v){let S;if(v){if("kind"in v)S={only:new Pt(v.kind)};else if("preferences"in v)S={preferences:v.preferences.map((b)=>new Pt(b))}}return uc.get(h)?.pasteAs(S)}});N(class extends U{constructor(){super({id:"editor.action.pasteAsText",label:p(970,"Paste as Text"),precondition:o.writable,canTriggerInlineEdits:!0})}run(f,i){return uc.get(i)?.pasteAs({providerId:du.id})}});class No{constructor(){this._dragOperations=new Map}removeDragOperationTransfer(f){if(f&&this._dragOperations.has(f)){let i=this._dragOperations.get(f);return this._dragOperations.delete(f),i}return}}class At{constructor(f){this.identifier=f}}var Oo=Q("treeViewsDndService");ve(Oo,No,1);var yn=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Rt=function(f,i){return function(h,v){i(h,v,f)}},ye,wn="editor.dropIntoEditor.preferences",jo="editor.changeDropType",Ot=new P("dropWidgetVisible",!1,e(988,"Whether the drop widget is showing")),Oe=class f extends n{static{ye=this}static{this.ID="editor.contrib.dropIntoEditorController"}static get(i){return i.getContribution(ye.ID)}constructor(i,h,v,S,b){super();this._configService=v,this._languageFeaturesService=S,this._treeViewsDragAndDropService=b,this.treeItemsTransfer=Jv.getInstance(),this._dropProgressManager=this._register(h.createInstance(Cg,"dropIntoEditor",i)),this._postDropWidgetManager=this._register(h.createInstance(Eg,"dropIntoEditor",i,Ot,{id:jo,label:e(989,"Show drop options...")},()=>ye._configureDefaultAction?[ye._configureDefaultAction]:[])),this._register(i.onDropIntoEditor((w)=>this.onDropIntoEditor(i,w.position,w.event)))}clearWidgets(){this._postDropWidgetManager.clear()}changeDropType(){this._postDropWidgetManager.tryShowSelector()}async onDropIntoEditor(i,h,v){if(!v.dataTransfer||!i.hasModel())return;ye._currentDropOperation?.cancel(),i.focus(),i.setPosition(h);let S=Wt(async(b)=>{let w=new d,I=w.add(new ss(i,1,void 0,b));try{let M=await this.extractDataTransferData(v);if(M.size===0||I.token.isCancellationRequested)return;let x=i.getModel();if(!x)return;let E=this._languageFeaturesService.documentDropEditProvider.ordered(x).filter((L)=>{if(!L.dropMimeTypes)return!0;return L.dropMimeTypes.some((A)=>M.matches(A))}),T=w.add(await this.getDropEdits(E,x,h,M,I.token));if(I.token.isCancellationRequested)return;if(T.edits.length){let L=this.getInitialActiveEditIndex(x,T.edits),A=i.getOption(43).showDropSelector==="afterDrop";await this._postDropWidgetManager.applyEditAndShowIfNeeded([t.fromPositions(h)],{activeEditIndex:L,allEdits:T.edits},A,async(O)=>O,b)}}finally{if(w.dispose(),ye._currentDropOperation===S)ye._currentDropOperation=void 0}});this._dropProgressManager.showWhile(h,e(990,"Running drop handlers. Click to cancel"),S,{cancel:()=>S.cancel()}),ye._currentDropOperation=S}async getDropEdits(i,h,v,S,b){let w=new d,I=await El(Promise.all(i.map(async(x)=>{try{let E=await x.provideDocumentDropEdits(h,v,S,b);if(E)w.add(E);return E?.edits.map((T)=>({...T,providerId:x.id}))}catch(E){if(!ei(E))console.error(E);console.error(E)}return})),b),M=ar(I??[]).flat();return{edits:T_(M),dispose:()=>w.dispose()}}getInitialActiveEditIndex(i,h){let v=this._configService.getValue(wn,{resource:i.uri});for(let S of Array.isArray(v)?v:[]){let b=new Pt(S),w=h.findIndex((I)=>I.kind&&b.contains(I.kind));if(w>=0)return w}return 0}async extractDataTransferData(i){if(!i.dataTransfer)return new Zh;let h=o0(i.dataTransfer);if(this.treeItemsTransfer.hasData(At.prototype)){let v=this.treeItemsTransfer.getData(At.prototype);if(Array.isArray(v))for(let S of v){let b=await this._treeViewsDragAndDropService.removeDragOperationTransfer(S.identifier);if(b)for(let[w,I]of b)h.replace(w,I)}}return h}};Oe=ye=yn([Rt(1,D),Rt(2,ie),Rt(3,V),Rt(4,Oo)],Oe);pe(Oe.ID,Oe,2);Qa(k_);G(new class extends Kt{constructor(){super({id:jo,precondition:Ot,kbOpts:{weight:100,primary:2137}})}runEditorCommand(f,i,h){Oe.get(i)?.changeDropType()}});G(new class extends Kt{constructor(){super({id:"editor.hideDropWidget",precondition:Ot,kbOpts:{weight:100,primary:9}})}runEditorCommand(f,i,h){Oe.get(i)?.clearWidgets()}});class rr extends U{constructor(){super({id:"editor.action.fontZoomIn",label:p(1069,"Increase Editor Font Size"),precondition:void 0})}run(f,i){Do.setZoomLevel(Do.getZoomLevel()+1)}}class nr extends U{constructor(){super({id:"editor.action.fontZoomOut",label:p(1070,"Decrease Editor Font Size"),precondition:void 0})}run(f,i){Do.setZoomLevel(Do.getZoomLevel()-1)}}class sr extends U{constructor(){super({id:"editor.action.fontZoomReset",label:p(1071,"Reset Editor Font Size"),precondition:void 0})}run(f,i){Do.setZoomLevel(0)}}N(rr);N(nr);N(sr);ke.registerCommand("_executeDocumentSymbolProvider",async function(f,...i){let[h]=i;Ae(q.isUri(h));let v=f.get(pu),b=await f.get(_n).createModelReference(h);try{return(await v.getOrCreate(b.object.textEditorModel,be.None)).getTopLevelSymbols()}finally{b.dispose()}});var Mn=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},cr=function(f,i){return function(h,v){i(h,v,f)}},jt=class f extends n{static{this.ID="editor.contrib.markerSelectionStatus"}constructor(i,h,v){super();this._editor=i,this._markerService=v,this._ctxHasDiagnostics=o.selectionHasDiagnostics.bindTo(h),this._store.add(this._editor.onDidChangeCursorSelection(()=>this._update())),this._store.add(this._editor.onDidChangeModel(()=>this._update())),this._store.add(this._markerService.onMarkerChanged((S)=>{let b=this._editor.getModel();if(b&&S.some((w)=>Qo(w,b.uri)))this._update()})),this._update()}dispose(){this._ctxHasDiagnostics.reset(),super.dispose()}_update(){let i=this._editor.getModel(),h=this._editor.getSelection();if(!i||!h){this._ctxHasDiagnostics.reset();return}let S=this._markerService.read({resource:i.uri,severities:Zt.Error|Zt.Warning|Zt.Info}).some((b)=>t.areIntersecting({startLineNumber:b.startLineNumber,startColumn:b.startColumn,endLineNumber:b.endLineNumber,endColumn:b.endColumn},h));this._ctxHasDiagnostics.set(S)}};jt=Mn([cr(1,K),cr(2,_o)],jt);pe(jt.ID,jt,1);class dr extends U{constructor(){super({id:"editor.action.debugEditorGpuRenderer",label:p(1159,"Developer: Debug Editor GPU Renderer"),precondition:C.true()})}async run(f,i){let h=f.get(D),S=await f.get(gn).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(!S)return;switch(S.id){case"logTextureAtlasStats":h.invokeFunction((b)=>{let w=b.get(Ke),I=Gi.atlas;if(!Gi.atlas){w.error("No texture atlas found");return}let M=I.getStats();w.info(["Texture atlas stats",...M].join(`
|
|
4
|
+
|
|
5
|
+
`))});break;case"saveTextureAtlas":h.invokeFunction(async(b)=>{let w=b.get(Ks),I=b.get(_k),M=w.getWorkspace().folders;if(M.length>0){let x=Gi.atlas,E=[];for(let[T,L]of x.pages.entries())E.push(...[I.writeFile(q.joinPath(M[0].uri,`textureAtlasPage${T}_actual.png`),Tl.wrap(new Uint8Array(await(await L.source.convertToBlob()).arrayBuffer()))),I.writeFile(q.joinPath(M[0].uri,`textureAtlasPage${T}_usage.png`),Tl.wrap(new Uint8Array(await(await L.getUsagePreview()).arrayBuffer())))]);await Promise.all(E)}});break;case"drawGlyph":h.invokeFunction(async(b)=>{let w=b.get(ie),I=b.get(_k),M=b.get(gn),E=b.get(Ks).getWorkspace().folders;if(E.length===0)return;let T=Gi.atlas,L=w.getValue("editor.fontFamily"),A=w.getValue("editor.fontSize"),O=new $u(A,L,We().devicePixelRatio,Gi.decorationStyleCache),z=await M.input({prompt:"Enter a character to draw (prefix with 0x for code point))"});if(!z)return;let H=z.match(/0x(?<codePoint>[0-9a-f]+)/i)?.groups?.codePoint;if(H!==void 0)z=String.fromCodePoint(parseInt(H,16));let Y=0,oe=0,re=T.getGlyph(O,z,Y,oe,0);if(!re)return;let ne=T.pages[re.pageIndex].source.getContext("2d")?.getImageData(re.x,re.y,re.w,re.h);if(!ne)return;let ae=new OffscreenCanvas(ne.width,ne.height);Ol(ae.getContext("2d")).putImageData(ne,0,0);let ge=await ae.convertToBlob({type:"image/png"}),Je=q.joinPath(E[0].uri,`glyph_${z}_${Y}_${A}px_${L.replaceAll(/[,\\\/\.'\s]/g,"_")}.png`);await I.writeFile(Je,Tl.wrap(new Uint8Array(await ge.arrayBuffer())))});break}}}N(dr);pe(yf.ID,yf,1);Ma.register($g);class zo{constructor(f,i,h){this._editRange=f,this._originalSelection=i,this._text=h}getEditOperations(f,i){i.addTrackedEditOperation(this._editRange,this._text)}computeCursorState(f,i){let v=i.getInverseEditOperations()[0].range;if(!this._originalSelection.isEmpty())return new F(v.endLineNumber,v.endColumn-this._text.length,v.endLineNumber,v.endColumn);return new F(v.endLineNumber,Math.min(this._originalSelection.positionColumn,v.endColumn),v.endLineNumber,Math.min(this._originalSelection.positionColumn,v.endColumn))}}var Ln=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},An=function(f,i){return function(h,v){i(h,v,f)}},zt,Ue=class f{static{zt=this}static{this.ID="editor.contrib.inPlaceReplaceController"}static get(i){return i.getContribution(zt.ID)}static{this.DECORATION=ce.register({description:"in-place-replace",className:"valueSetReplacement"})}constructor(i,h){this.editor=i,this.editorWorkerService=h,this.decorations=this.editor.createDecorationsCollection()}dispose(){}run(i,h){this.currentRequest?.cancel();let v=this.editor.getSelection(),S=this.editor.getModel();if(!S||!v)return;let b=v;if(b.startLineNumber!==b.endLineNumber)return;let w=new lp(this.editor,5),I=S.uri;if(!this.editorWorkerService.canNavigateValueSet(I))return Promise.resolve(void 0);return this.currentRequest=Wt((M)=>this.editorWorkerService.navigateValueSet(I,b,h)),this.currentRequest.then((M)=>{if(!M||!M.range||!M.value)return;if(!w.validate(this.editor))return;let x=t.lift(M.range),E=M.range,T=M.value.length-(b.endColumn-b.startColumn);if(E={startLineNumber:E.startLineNumber,startColumn:E.startColumn,endLineNumber:E.endLineNumber,endColumn:E.startColumn+M.value.length},T>1)b=new F(b.startLineNumber,b.startColumn,b.endLineNumber,b.endColumn+T-1);let L=new zo(x,b,M.value);this.editor.pushUndoStop(),this.editor.executeCommand(i,L),this.editor.pushUndoStop(),this.decorations.set([{range:E,options:zt.DECORATION}]),this.decorationRemover?.cancel(),this.decorationRemover=mo(350),this.decorationRemover.then(()=>this.decorations.clear()).catch(Z)}).catch(Z)}};Ue=zt=Ln([An(1,_i)],Ue);class ur extends U{constructor(){super({id:"editor.action.inPlaceReplace.up",label:p(1306,"Replace with Previous Value"),precondition:o.writable,kbOpts:{kbExpr:o.editorTextFocus,primary:3159,weight:100}})}run(f,i){let h=Ue.get(i);if(!h)return Promise.resolve(void 0);return h.run(this.id,!1)}}class hr extends U{constructor(){super({id:"editor.action.inPlaceReplace.down",label:p(1307,"Replace with Next Value"),precondition:o.writable,kbOpts:{kbExpr:o.editorTextFocus,primary:3161,weight:100}})}run(f,i){let h=Ue.get(i);if(!h)return Promise.resolve(void 0);return h.run(this.id,!0)}}pe(Ue.ID,Ue,4);N(ur);N(hr);class Ho{constructor(f){this._selection=f,this._selectionId=null}getEditOperations(f,i){let h=Rn(f);if(h)i.addEditOperation(h.range,h.text);this._selectionId=i.trackSelection(this._selection)}computeCursorState(f,i){return i.getTrackedSelection(this._selectionId)}}function Rn(f){let i=f.getLineCount();return Vt.insert(new s(i,f.getLineMaxColumn(i)),f.getEOL())}class Wo extends U{static{this.ID="editor.action.insertFinalNewLine"}constructor(){super({id:Wo.ID,label:p(1308,"Insert Final New Line"),precondition:o.writable})}run(f,i,h){let v=i.getSelection();if(v===null)return;let S=new Ho(v);i.pushUndoStop(),i.executeCommands(this.id,[S]),i.pushUndoStop()}}N(Wo);var jn=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Ht=function(f,i){return function(h,v){i(h,v,f)}},Ut,fr=new P("LinkedEditingInputVisible",!1),Hn="linked-editing-decoration",Qe=class f extends n{static{Ut=this}static{this.ID="editor.contrib.linkedEditing"}static{this.DECORATION=ce.register({description:"linked-editing",stickiness:0,className:Hn})}static get(i){return i.getContribution(Ut.ID)}constructor(i,h,v,S,b){super();this.languageConfigurationService=S,this._syncRangesToken=0,this._localToDispose=this._register(new d),this._editor=i,this._providers=v.linkedEditingRangeProvider,this._enabled=!1,this._visibleContextKey=fr.bindTo(h),this._debounceInformation=b.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((w)=>{if(w.hasChanged(78)||w.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(i){let h=this._editor.getModel(),v=h!==null&&(this._editor.getOption(78)||this._editor.getOption(106))&&this._providers.has(h);if(v===this._enabled&&!i)return;if(this._enabled=v,this.clearRanges(),this._localToDispose.clear(),!v||h===null)return;this._localToDispose.add(k.runAndSubscribe(h.onDidChangeLanguageConfiguration,()=>{this._languageWordPattern=this.languageConfigurationService.getLanguageConfiguration(h.getLanguageId()).getWordDefinition()}));let S=new Ii(this._debounceInformation.get(h)),b=()=>{this._rangeUpdateTriggerPromise=S.trigger(()=>this.updateRanges(),this._debounceDuration??this._debounceInformation.get(h))},w=new Ii(0),I=(M)=>{this._rangeSyncTriggerPromise=w.trigger(()=>this._syncRanges(M))};this._localToDispose.add(this._editor.onDidChangeCursorPosition(()=>{b()})),this._localToDispose.add(this._editor.onDidChangeModelContent((M)=>{if(!this._ignoreChangeEvent){if(this._currentDecorations.length>0){let x=this._currentDecorations.getRange(0);if(x&&M.changes.every((E)=>x.intersectRanges(E.range))){I(this._syncRangesToken);return}}}b()})),this._localToDispose.add({dispose:()=>{S.dispose(),w.dispose()}}),this.updateRanges()}_syncRanges(i){if(!this._editor.hasModel()||i!==this._syncRangesToken||this._currentDecorations.length===0)return;let h=this._editor.getModel(),v=this._currentDecorations.getRange(0);if(!v||v.startLineNumber!==v.endLineNumber)return this.clearRanges();let S=h.getValueInRange(v);if(this._currentWordPattern){let w=S.match(this._currentWordPattern);if((w?w[0].length:0)!==S.length)return this.clearRanges()}let b=[];for(let w=1,I=this._currentDecorations.length;w<I;w++){let M=this._currentDecorations.getRange(w);if(!M)continue;if(M.startLineNumber!==M.endLineNumber)b.push({range:M,text:S});else{let x=h.getValueInRange(M),E=S,{startColumn:T,endColumn:L}=M,A=yr(x,E);T+=A,x=x.substr(A),E=E.substr(A);let O=bs(x,E);if(L-=O,x=x.substr(0,x.length-O),E=E.substr(0,E.length-O),T!==L||E.length!==0)b.push({range:new t(M.startLineNumber,T,M.endLineNumber,L),text:E})}}if(b.length===0)return;try{this._editor.popUndoStop(),this._ignoreChangeEvent=!0;let w=this._editor._getViewModel().getPrevEditOperationType();this._editor.executeEdits("linkedEditing",b),this._editor._getViewModel().setPrevEditOperationType(w)}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(i=!1){if(!this._editor.hasModel()){this.clearRanges();return}let h=this._editor.getPosition();if(!this._enabled&&!i||this._editor.getSelections().length>1){this.clearRanges();return}let v=this._editor.getModel(),S=v.getVersionId();if(this._currentRequestPosition&&this._currentRequestModelVersion===S){if(h.equals(this._currentRequestPosition))return;if(this._currentDecorations.length>0){let w=this._currentDecorations.getRange(0);if(w&&w.containsPosition(h))return}}if(!this._currentRequestPosition?.equals(h)){if(!this._currentDecorations.getRange(0)?.containsPosition(h))this.clearRanges()}this._currentRequestPosition=h,this._currentRequestModelVersion=S;let b=this._currentRequestCts=new Ve;try{let w=new en(!1),I=await _r(this._providers,v,h,b.token);if(this._debounceInformation.update(v,w.elapsed()),b!==this._currentRequestCts)return;if(this._currentRequestCts=null,S!==v.getVersionId())return;let M=[];if(I?.ranges)M=I.ranges;this._currentWordPattern=I?.wordPattern||this._languageWordPattern;let x=!1;for(let T=0,L=M.length;T<L;T++)if(t.containsPosition(M[T],h)){if(x=!0,T!==0){let A=M[T];M.splice(T,1),M.unshift(A)}break}if(!x){this.clearRanges();return}let E=M.map((T)=>({range:T,options:Ut.DECORATION}));this._visibleContextKey.set(!0),this._currentDecorations.set(E),this._syncRangesToken++}catch(w){if(!ei(w))Z(w);if(this._currentRequestCts===b||!this._currentRequestCts)this.clearRanges()}}};Qe=Ut=jn([Ht(1,K),Ht(2,V),Ht(3,st),Ht(4,Ji)],Qe);class pr extends U{constructor(){super({id:"editor.action.linkedEditing",label:p(1342,"Start Linked Editing"),precondition:C.and(o.writable,o.hasRenameProvider),kbOpts:{kbExpr:o.editorTextFocus,primary:3132,weight:100}})}runCommand(f,i){let h=f.get(Ce),[v,S]=Array.isArray(i)&&i||[void 0,void 0];if(q.isUri(v)&&s.isIPosition(S))return h.openCodeEditor({resource:v},h.getActiveCodeEditor()).then((b)=>{if(!b)return;b.setPosition(S),b.invokeWithinContext((w)=>(this.reportTelemetry(w,b),this.run(w,b)))},Z);return super.runCommand(f,i)}run(f,i){let h=Qe.get(i);if(h)return Promise.resolve(h.updateRanges(!0));return Promise.resolve()}}var Fn=Kt.bindToContribution(Qe.get);G(new Fn({id:"cancelLinkedEditingInput",precondition:fr,handler:(f)=>f.clearRanges(),kbOpts:{kbExpr:o.editorTextFocus,weight:199,primary:9,secondary:[1033]}}));function _r(f,i,h,v){let S=f.ordered(i);return Iv(S.map((b)=>async()=>{try{return await b.provideLinkedEditingRanges(i,h,v)}catch(w){gt(w);return}}),(b)=>!!b&&On(b?.ranges))}a("editor.linkedEditingBackground",{dark:m.fromHex("#f00").transparent(0.3),light:m.fromHex("#f00").transparent(0.3),hcDark:m.fromHex("#f00").transparent(0.3),hcLight:m.white},e(1341,"Background color when the editor auto renames on type."));xr("_executeLinkedEditingProvider",(f,i,h)=>{let{linkedEditingRangeProvider:v}=f.get(V);return _r(v,i,h,be.None)});pe(Qe.ID,Qe,1);N(pr);class Vo extends n{static{this.ID="editor.contrib.longLinesHelper"}constructor(f){super();this._editor=f,this._register(this._editor.onMouseDown((i)=>{let h=this._editor.getOption(133);if(h>=0&&i.target.type===6&&i.target.position.column>=h)this._editor.updateOptions({stopRenderingLineAfter:-1})}))}}pe(Vo.ID,Vo,2);class Bt extends n{static{this.ID="editor.contrib.middleScroll"}constructor(f){super();this._editor=f;let i=rt(this._editor),h=i.getOption(172);this._register(W((v)=>{if(!h.read(v))return;let S=i.domNode.read(v);if(!S)return;let b=v.store.add(z_("scrollingSession",void 0));v.store.add(this._editor.onMouseDown((I)=>{if(b.read(void 0)){b.set(void 0,void 0);return}if(!I.event.middleButton)return;I.event.stopPropagation(),I.event.preventDefault();let x=new d,E=new oi(I.event.posx,I.event.posy),L=Wn(B(S),E,x).map((z)=>z.subtract(E).withThreshold(5)),A=S.getBoundingClientRect(),O=new oi(E.x-A.left,E.y-A.top);b.set({mouseDeltaAfterThreshold:L,initialMousePosInEditor:O,didScroll:!1,dispose:()=>x.dispose()},void 0),x.add(this._editor.onMouseUp((z)=>{let H=b.read(void 0);if(H&&H.didScroll)b.set(void 0,void 0)})),x.add(this._editor.onKeyDown((z)=>{b.set(void 0,void 0)}))})),v.store.add(W((I)=>{let M=b.read(I);if(!M)return;let x=Date.now();I.store.add(W((T)=>{Rg.instance.invalidateOnNextAnimationFrame(T);let L=Date.now(),A=L-x;x=L;let O=M.mouseDeltaAfterThreshold.read(void 0),z=A/32,H=O.scale(z),Y=new oi(this._editor.getScrollLeft(),this._editor.getScrollTop());if(this._editor.setScrollPosition(Vn(Y.add(H))),!H.isZero())M.didScroll=!0}));let E=u((T)=>{let L=M.mouseDeltaAfterThreshold.read(T),A="";return A+=L.y<0?"n":L.y>0?"s":"",A+=L.x<0?"w":L.x>0?"e":"",A});I.store.add(W((T)=>{S.setAttribute("data-scroll-direction",E.read(T))}))}));let w=v.store.add(de.div({class:["scroll-editor-on-middle-click-dot",b.map((I)=>I?"":"hidden")],style:{left:b.map((I)=>I?I.initialMousePosInEditor.x:0),top:b.map((I)=>I?I.initialMousePosInEditor.y:0)}}).toDisposableLiveElement());v.store.add(Nu(S,w.element)),v.store.add(W((I)=>{let M=b.read(I);S.classList.toggle("scroll-editor-on-middle-click-editor",!!M)}))}))}}function Wn(f,i,h){let v=j("pos",i);return h.add(c(f,"mousemove",(S)=>{v.set(new oi(S.pageX,S.pageY),void 0)})),v}function Vn(f){return{scrollLeft:f.x,scrollTop:f.y}}pe(Bt.ID,Bt,2);class Qt extends n{static{this.ID="editor.contrib.placeholderText"}constructor(f){super();this._editor=f,this._editorObs=rt(this._editor),this._placeholderText=this._editorObs.getOption(100),this._state=xn({owner:this,equalsFn:jg},(i)=>{let h=this._placeholderText.read(i);if(!h)return;if(!this._editorObs.valueIsEmpty.read(i))return;return{placeholder:h}}),this._shouldViewBeAlive=qn(this,(i)=>this._state.read(i)?.placeholder!==void 0),this._view=u((i)=>{if(!this._shouldViewBeAlive.read(i))return;let h=Le("div.editorPlaceholder");i.store.add(W((v)=>{let S=this._state.read(v),b=S?.placeholder!==void 0;h.root.style.display=b?"block":"none",h.root.innerText=S?.placeholder??""})),i.store.add(W((v)=>{let S=this._editorObs.layoutInfo.read(v);h.root.style.left=`${S.contentLeft}px`,h.root.style.width=S.contentWidth-S.verticalScrollbarWidth+"px",h.root.style.top=`${this._editor.getTopForLineNumber(0)}px`})),i.store.add(W((v)=>{h.root.style.fontFamily=this._editorObs.getOption(58).read(v),h.root.style.fontSize=this._editorObs.getOption(61).read(v)+"px",h.root.style.lineHeight=this._editorObs.getOption(75).read(v)+"px"})),i.store.add(this._editorObs.createOverlayWidget({allowEditorOverflow:!1,minContentWidthInPx:Re(0),position:Re(null),domNode:h.root}))}),this._view.recomputeInitiallyAndOnChange(this._store)}}function qn(f,i){return Zr(f,(h,v)=>{if(v===!0)return!0;return i(h)})}var Un=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Bn=function(f,i){return function(h,v){i(h,v,f)}};class vr{constructor(f){this.instantiationService=f}init(...f){}}function Sr(f){return f()}var Cr=class f extends vr{constructor(i,h){super(h);this.init(i)}};Cr=Un([Bn(1,D)],Cr);pe(Qt.ID,Sr(()=>Qt),0);a("editor.placeholder.foreground",rI,e(1400,"Foreground color of the placeholder text in the editor."));var Qn=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Dr=function(f,i){return function(h,v){i(h,v,f)}},Yt=class f extends n{static{this.ID="editor.sectionHeaderDetector"}constructor(i,h,v){super();this.editor=i,this.languageConfigurationService=h,this.editorWorkerService=v,this.decorations=this.editor.createDecorationsCollection(),this.options=this.createOptions(i.getOption(81)),this.computePromise=null,this.currentOccurrences={},this._register(i.onDidChangeModel((S)=>{this.currentOccurrences={},this.options=this.createOptions(i.getOption(81)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(i.onDidChangeModelLanguage((S)=>{this.currentOccurrences={},this.options=this.createOptions(i.getOption(81)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(h.onDidChange((S)=>{let b=this.editor.getModel()?.getLanguageId();if(b&&S.affects(b))this.currentOccurrences={},this.options=this.createOptions(i.getOption(81)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(i.onDidChangeConfiguration((S)=>{if(this.options&&!S.hasChanged(81))return;this.options=this.createOptions(i.getOption(81)),this.updateDecorations([]),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(this.editor.onDidChangeModelContent((S)=>{this.computeSectionHeaders.schedule()})),this._register(i.onDidChangeModelTokens((S)=>{if(!this.computeSectionHeaders.isScheduled())this.computeSectionHeaders.schedule(1000)})),this.computeSectionHeaders=this._register(new _e(()=>{this.findSectionHeaders()},250)),this.computeSectionHeaders.schedule(0)}createOptions(i){if(!i||!this.editor.hasModel())return;let h=this.editor.getModel().getLanguageId();if(!h)return;let v=this.languageConfigurationService.getLanguageConfiguration(h).comments,S=this.languageConfigurationService.getLanguageConfiguration(h).foldingRules;if(!v&&!S?.markers)return;return{foldingRules:S,markSectionHeaderRegex:i.markSectionHeaderRegex,findMarkSectionHeaders:i.showMarkSectionHeaders,findRegionSectionHeaders:i.showRegionSectionHeaders}}findSectionHeaders(){if(!this.editor.hasModel()||!this.options?.findMarkSectionHeaders&&!this.options?.findRegionSectionHeaders)return;let i=this.editor.getModel();if(i.isDisposed()||i.isTooLargeForSyncing())return;let h=i.getVersionId();this.editorWorkerService.findSectionHeaders(i.uri,this.options).then((v)=>{if(i.isDisposed()||i.getVersionId()!==h)return;this.updateDecorations(v)})}updateDecorations(i){let h=this.editor.getModel();if(h)i=i.filter((b)=>{if(!b.shouldBeInComments)return!0;let w=h.validateRange(b.range),I=h.tokenization.getLineTokens(w.startLineNumber),M=I.findTokenIndexAtOffset(w.startColumn-1),x=I.getStandardTokenType(M),E=h.getLanguageIdAtPosition(w.startLineNumber,w.startColumn);return I.getLanguageId(M)===E&&x===1});let v=Object.values(this.currentOccurrences).map((b)=>b.decorationId),S=i.map((b)=>Kn(b));this.editor.changeDecorations((b)=>{let w=b.deltaDecorations(v,S);this.currentOccurrences={};for(let I=0,M=w.length;I<M;I++){let x={sectionHeader:i[I],decorationId:w[I]};this.currentOccurrences[x.decorationId]=x}})}stop(){if(this.computeSectionHeaders.cancel(),this.computePromise)this.computePromise.cancel(),this.computePromise=null}dispose(){super.dispose(),this.stop(),this.decorations.clear()}};Yt=Qn([Dr(1,st),Dr(2,_i)],Yt);function Kn(f){return{range:f.range,options:ce.createDynamic({description:"section-header",stickiness:3,collapseOnReplaceEdit:!0,minimap:{color:void 0,position:1,sectionHeaderStyle:f.hasSeparatorLine?2:1,sectionHeaderText:f.text}})}}pe(Yt.ID,Yt,1);function Yn(f){for(let i=0,h=f.length;i<h;i+=4){let v=f[i+0],S=f[i+1],b=f[i+2],w=f[i+3];f[i+0]=w,f[i+1]=b,f[i+2]=S,f[i+3]=v}}function Gn(f){let i=new Uint8Array(f.buffer,f.byteOffset,f.length*4);if(!F_())Yn(i);return Tl.wrap(i)}function qo(f){let i=new Uint32Array(Zn(f)),h=0;if(i[h++]=f.id,f.type==="full")i[h++]=1,i[h++]=f.data.length,i.set(f.data,h),h+=f.data.length;else{i[h++]=2,i[h++]=f.deltas.length;for(let v of f.deltas)if(i[h++]=v.start,i[h++]=v.deleteCount,v.data)i[h++]=v.data.length,i.set(v.data,h),h+=v.data.length;else i[h++]=0}return Gn(i)}function Zn(f){let i=0;if(i+=2,f.type==="full")i+=1+f.data.length;else{i+=1,i+=3*f.deltas.length;for(let h of f.deltas)if(h.data)i+=h.data.length}return i}function mt(f){return f&&!!f.data}function Uo(f){return f&&Array.isArray(f.edits)}class wr{constructor(f,i,h){this.provider=f,this.tokens=i,this.error=h}}function Bo(f,i){return f.has(i)}function Xn(f,i){let h=f.orderedGroups(i);return h.length>0?h[0]:[]}async function Ko(f,i,h,v,S){let b=Xn(f,i),w=await Promise.all(b.map(async(I)=>{let M,x=null;try{M=await I.provideDocumentSemanticTokens(i,I===h?v:null,S)}catch(E){x=E,M=null}if(!M||!mt(M)&&!Uo(M))M=null;return new wr(I,M,x)}));for(let I of w){if(I.error)throw I.error;if(I.tokens)return I}if(w.length>0)return w[0];return null}function Jn(f,i){let h=f.orderedGroups(i);return h.length>0?h[0]:null}class Ir{constructor(f,i){this.provider=f,this.tokens=i}}function Mr(f,i){return f.has(i)}function kr(f,i){let h=f.orderedGroups(i);return h.length>0?h[0]:[]}async function Gt(f,i,h,v){let S=kr(f,i),b=await Promise.all(S.map(async(w)=>{let I;try{I=await w.provideDocumentRangeSemanticTokens(i,h,v)}catch(M){gt(M),I=null}if(!I||!mt(I))I=null;return new Ir(w,I)}));for(let w of b)if(w.tokens)return w;if(b.length>0)return b[0];return null}ke.registerCommand("_provideDocumentSemanticTokensLegend",async(f,...i)=>{let[h]=i;Ae(h instanceof q);let v=f.get(_t).getModel(h);if(!v)return;let{documentSemanticTokensProvider:S}=f.get(V),b=Jn(S,v);if(!b)return f.get(Be).executeCommand("_provideDocumentRangeSemanticTokensLegend",h);return b[0].getLegend()});ke.registerCommand("_provideDocumentSemanticTokens",async(f,...i)=>{let[h]=i;Ae(h instanceof q);let v=f.get(_t).getModel(h);if(!v)return;let{documentSemanticTokensProvider:S}=f.get(V);if(!Bo(S,v))return f.get(Be).executeCommand("_provideDocumentRangeSemanticTokens",h,v.getFullModelRange());let b=await Ko(S,v,null,null,be.None);if(!b)return;let{provider:w,tokens:I}=b;if(!I||!mt(I))return;let M=qo({id:0,type:"full",data:I.data});if(I.resultId)w.releaseDocumentSemanticTokens(I.resultId);return M});ke.registerCommand("_provideDocumentRangeSemanticTokensLegend",async(f,...i)=>{let[h,v]=i;Ae(h instanceof q);let S=f.get(_t).getModel(h);if(!S)return;let{documentRangeSemanticTokensProvider:b}=f.get(V),w=kr(b,S);if(w.length===0)return;if(w.length===1)return w[0].getLegend();if(!v||!t.isIRange(v))return console.warn("provideDocumentRangeSemanticTokensLegend might be out-of-sync with provideDocumentRangeSemanticTokens unless a range argument is passed in"),w[0].getLegend();let I=await Gt(b,S,t.lift(v),be.None);if(!I)return;return I.provider.getLegend()});ke.registerCommand("_provideDocumentRangeSemanticTokens",async(f,...i)=>{let[h,v]=i;Ae(h instanceof q),Ae(t.isIRange(v));let S=f.get(_t).getModel(h);if(!S)return;let{documentRangeSemanticTokensProvider:b}=f.get(V),w=await Gt(b,S,t.lift(v),be.None);if(!w||!w.tokens)return;return qo({id:0,type:"full",data:w.tokens.data})});var $t="editor.semanticHighlighting";function Ye(f,i,h){let v=h.getValue("editor.semanticHighlighting",{overrideIdentifier:f.getLanguageId(),resource:f.uri})?.enabled;if(typeof v==="boolean")return v;return i.getColorTheme().semanticHighlighting}var Er=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},he=function(f,i){return function(h,v){i(h,v,f)}},Ie,Yo=class f extends n{constructor(i,h,v,S,b,w){super();this._watchers=new qt,this._providerChangeListeners=this._register(new d);let I=w.documentSemanticTokensProvider,M=(L)=>{this._watchers.get(L.uri)?.dispose(),this._watchers.set(L.uri,new Go(L,i,v,b,w))},x=(L,A)=>{A.dispose(),this._watchers.delete(L.uri)},E=()=>{for(let L of h.getModels()){let A=this._watchers.get(L.uri);if(Ye(L,v,S)){if(!A)M(L)}else if(A)x(L,A)}},T=()=>{this._providerChangeListeners.clear();for(let L of I.allNoModel())if(typeof L.onDidChange==="function")this._providerChangeListeners.add(L.onDidChange(()=>{for(let A of this._watchers.values())A.handleProviderDidChange(L)}))};h.getModels().forEach((L)=>{if(Ye(L,v,S))M(L)}),this._register(h.onModelAdded((L)=>{if(Ye(L,v,S))M(L)})),this._register(h.onModelRemoved((L)=>{let A=this._watchers.get(L.uri);if(A)x(L,A)})),this._register(S.onDidChangeConfiguration((L)=>{if(L.affectsConfiguration($t))E()})),this._register(v.onDidColorThemeChange(E)),T(),this._register(I.onDidChange(()=>{T();for(let L of this._watchers.values())L.handleRegistryChange()}))}dispose(){Fe(this._watchers.values()),this._watchers.clear(),super.dispose()}};Yo=Er([he(0,Kf),he(1,_t),he(2,je),he(3,ie),he(4,Ji),he(5,V)],Yo);var Go=class f extends n{static{Ie=this}static{this.REQUEST_MIN_DELAY=300}static{this.REQUEST_MAX_DELAY=2000}constructor(i,h,v,S,b){super();this._semanticTokensStylingService=h,this._relevantProviders=new Set,this._isDisposed=!1,this._model=i,this._provider=b.documentSemanticTokensProvider,this._debounceInformation=S.for(this._provider,"DocumentSemanticTokens",{min:Ie.REQUEST_MIN_DELAY,max:Ie.REQUEST_MAX_DELAY}),this._fetchDocumentSemanticTokens=this._register(new _e(()=>this._fetchDocumentSemanticTokensNow(),Ie.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(v.onDidColorThemeChange((w)=>{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(i){if(!this._relevantProviders.has(i))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(!Bo(this._provider,this._model)){if(this._currentDocumentResponse)this._model.tokenization.setSemanticTokens(null,!1);return}if(!this._model.isAttachedToEditor())return;let i=new Ve,h=this._currentDocumentResponse?this._currentDocumentResponse.provider:null,v=this._currentDocumentResponse?this._currentDocumentResponse.resultId||null:null,S=Ko(this._provider,this._model,h,v,i.token);this._currentDocumentRequestCancellationTokenSource=i,this._providersChangedDuringRequest=!1;let b=[],w=this._model.onDidChangeContent((M)=>{b.push(M)}),I=new en(!1);S.then((M)=>{if(this._debounceInformation.update(this._model,I.elapsed()),this._currentDocumentRequestCancellationTokenSource=null,w.dispose(),!M)this._setDocumentSemanticTokens(null,null,null,b);else{let{provider:x,tokens:E}=M,T=this._semanticTokensStylingService.getStyling(x);this._setDocumentSemanticTokens(x,E||null,T,b)}},(M)=>{if(!(M&&(ei(M)||typeof M.message==="string"&&M.message.indexOf("busy")!==-1)))Z(M);if(this._currentDocumentRequestCancellationTokenSource=null,w.dispose(),b.length>0||this._providersChangedDuringRequest){if(!this._fetchDocumentSemanticTokens.isScheduled())this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))}})}static _copy(i,h,v,S,b){b=Math.min(b,v.length-S,i.length-h);for(let w=0;w<b;w++)v[S+w]=i[h+w]}_setDocumentSemanticTokens(i,h,v,S){let b=this._currentDocumentResponse,w=()=>{if((S.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(i&&h)i.releaseDocumentSemanticTokens(h.resultId);return}if(!i||!v){this._model.tokenization.setSemanticTokens(null,!1);return}if(!h){this._model.tokenization.setSemanticTokens(null,!0),w();return}if(Uo(h)){let I=h.resultId,M=(x)=>{if(i.releaseDocumentSemanticTokens(I),this._model.tokenization.setSemanticTokens(null,!0),x)this._fetchDocumentSemanticTokens.schedule(0)};if(!b){M(!1);return}if(h.edits.length===0)h={resultId:h.resultId,data:b.data};else{let x=0;for(let z of h.edits)x+=(z.data?z.data.length:0)-z.deleteCount;let E=b.data,T=E.length+x;if(T<0){v.warnInvalidEditDeleteCount(b.resultId,I,E.length,x),M(!0);return}let L=new Uint32Array(T),A=E.length,O=L.length;for(let z=h.edits.length-1;z>=0;z--){let H=h.edits[z];if(H.start>E.length){v.warnInvalidEditStart(b.resultId,I,z,H.start,E.length),M(!0);return}let Y=A-(H.start+H.deleteCount);if(Y>0)Ie._copy(E,A-Y,L,O-Y,Y),O-=Y;if(H.data)Ie._copy(H.data,0,L,O-H.data.length,H.data.length),O-=H.data.length;A=H.start}if(A>0)Ie._copy(E,0,L,0,A);h={resultId:h.resultId,data:L}}}if(mt(h)){this._currentDocumentResponse=new Lr(i,h.resultId,h.data);let I=v0(h,v,this._model.getLanguageId());if(S.length>0)for(let M of S)for(let x of I)for(let E of M.changes)x.applyEdit(E.range,E.text);this._model.tokenization.setSemanticTokens(I,!0)}else this._model.tokenization.setSemanticTokens(null,!0);w()}};Go=Ie=Er([he(1,Kf),he(2,je),he(3,Ji),he(4,V)],Go);class Lr{constructor(f,i,h){this.provider=f,this.resultId=i,this.data=h}dispose(){this.provider.releaseDocumentSemanticTokens(this.resultId)}}Qa(Yo);var es=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},ft=function(f,i){return function(h,v){i(h,v,f)}},Xt=class f extends n{static{this.ID="editor.contrib.viewportSemanticTokens"}constructor(i,h,v,S,b,w){super();this._semanticTokensStylingService=h,this._themeService=v,this._configurationService=S,this._editor=i,this._provider=w.documentRangeSemanticTokensProvider,this._debounceInformation=b.for(this._provider,"DocumentRangeSemanticTokens",{min:100,max:500}),this._tokenizeViewport=this._register(new _e(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[],this._rangeProvidersChangeListeners=[];let I=()=>{if(this._editor.hasModel())this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))},M=()=>{if(this._cleanupProviderListeners(),this._editor.hasModel()){let x=this._editor.getModel();for(let E of this._provider.all(x)){let T=E.onDidChange?.(()=>{this._cancelAll(),I()});if(T)this._rangeProvidersChangeListeners.push(T)}}};this._register(this._editor.onDidScrollChange(()=>{I()})),this._register(this._editor.onDidChangeModel(()=>{M(),this._cancelAll(),I()})),this._register(this._editor.onDidChangeModelLanguage(()=>{M(),this._cancelAll(),I()})),this._register(this._editor.onDidChangeModelContent((x)=>{this._cancelAll(),I()})),M(),this._register(this._provider.onDidChange(()=>{M(),this._cancelAll(),I()})),this._register(this._configurationService.onDidChangeConfiguration((x)=>{if(x.affectsConfiguration($t))this._cancelAll(),I()})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),I()})),I()}dispose(){this._cleanupProviderListeners(),super.dispose()}_cleanupProviderListeners(){Fe(this._rangeProvidersChangeListeners),this._rangeProvidersChangeListeners=[]}_cancelAll(){for(let i of this._outstandingRequests)i.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(i){for(let h=0,v=this._outstandingRequests.length;h<v;h++)if(this._outstandingRequests[h]===i){this._outstandingRequests.splice(h,1);return}}_tokenizeViewportNow(){if(!this._editor.hasModel())return;let i=this._editor.getModel();if(i.tokenization.hasCompleteSemanticTokens())return;if(!Ye(i,this._themeService,this._configurationService)){if(i.tokenization.hasSomeSemanticTokens())i.tokenization.setSemanticTokens(null,!1);return}if(!Mr(this._provider,i)){if(i.tokenization.hasSomeSemanticTokens())i.tokenization.setSemanticTokens(null,!1);return}let h=this._editor.getVisibleRangesPlusViewportAboveBelow();this._outstandingRequests=this._outstandingRequests.concat(h.map((v)=>this._requestRange(i,v)))}_requestRange(i,h){let v=i.getVersionId(),S=Wt((w)=>Promise.resolve(Gt(this._provider,i,h,w))),b=new en(!1);return S.then((w)=>{if(this._debounceInformation.update(i,b.elapsed()),!w||!w.tokens||i.isDisposed()||i.getVersionId()!==v)return;let{provider:I,tokens:M}=w,x=this._semanticTokensStylingService.getStyling(I);i.tokenization.setPartialSemanticTokens(h,v0(M,x,i.getLanguageId()))}).then(()=>this._removeOutstandingRequest(S),()=>this._removeOutstandingRequest(S)),S}};Xt=es([ft(1,Kf),ft(2,je),ft(3,ie),ft(4,Ji),ft(5,V)],Xt);pe(Xt.ID,Xt,1);var pt=Object.freeze({View:p(1718,"View"),Help:p(1719,"Help"),Test:p(1720,"Test"),File:p(1721,"File"),Preferences:p(1722,"Preferences"),Developer:p(1723,"Developer")});class Zo extends Xr{constructor(){super({id:"editor.action.toggleStickyScroll",title:{...p(1518,"Toggle Editor Sticky Scroll"),mnemonicTitle:e(1514,"&&Toggle Editor Sticky Scroll")},metadata:{description:p(1519,"Toggle/enable the editor sticky scroll which shows the nested scopes at the top of the viewport")},category:pt.View,toggled:{condition:C.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(f,i){let h=f.get(ie),v=!h.getValue("editor.stickyScroll.enabled"),S=us.get(i)?.isFocused();if(h.updateValue("editor.stickyScroll.enabled",v),S)i.focus()}}var eo=100;class $o extends Xr{constructor(){super({id:"editor.action.focusStickyScroll",title:{...p(1520,"Focus Editor Sticky Scroll"),mnemonicTitle:e(1517,"&&Focus Editor Sticky Scroll")},precondition:C.and(C.has("config.editor.stickyScroll.enabled"),o.stickyScrollVisible),menu:[{id:l.CommandPalette}]})}runEditorCommand(f,i){us.get(i)?.focus()}}class Xo extends Xr{constructor(){super({id:"editor.action.selectNextStickyScrollLine",title:p(1521,"Select the next editor sticky scroll line"),precondition:o.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:eo,primary:18}})}runEditorCommand(f,i){us.get(i)?.focusNext()}}class Jo extends Xr{constructor(){super({id:"editor.action.selectPreviousStickyScrollLine",title:p(1522,"Select the previous sticky scroll line"),precondition:o.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:eo,primary:16}})}runEditorCommand(f,i){us.get(i)?.focusPrevious()}}class ri extends Xr{constructor(){super({id:"editor.action.goToFocusedStickyScrollLine",title:p(1523,"Go to the focused sticky scroll line"),precondition:o.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:eo,primary:3}})}runEditorCommand(f,i){us.get(i)?.goToFocused()}}class ni extends Xr{constructor(){super({id:"editor.action.selectEditor",title:p(1524,"Select Editor"),precondition:o.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:eo,primary:9}})}runEditorCommand(f,i){us.get(i)?.selectEditor()}}pe(us.ID,us,1);it(Zo);it($o);it(Jo);it(Xo);it(ri);it(ni);var ts=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Tr=function(f,i){return function(h,v){i(h,v,f)}},Pr="ignoreUnusualLineTerminators";function os(f,i,h){f.setModelProperty(i.uri,Pr,h)}function is(f,i){return f.getModelProperty(i.uri,Pr)}var oo=class f extends n{static{this.ID="editor.contrib.unusualLineTerminatorsDetector"}constructor(i,h,v){super();this._editor=i,this._dialogService=h,this._codeEditorService=v,this._isPresentingDialog=!1,this._config=this._editor.getOption(143),this._register(this._editor.onDidChangeConfiguration((S)=>{if(S.hasChanged(143))this._config=this._editor.getOption(143),this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModel(()=>{this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModelContent((S)=>{if(S.isUndoing)return;this._checkForUnusualLineTerminators()})),this._checkForUnusualLineTerminators()}async _checkForUnusualLineTerminators(){if(this._config==="off")return;if(!this._editor.hasModel())return;let i=this._editor.getModel();if(!i.mightContainUnusualLineTerminators())return;if(is(this._codeEditorService,i)===!0)return;if(this._editor.getOption(104))return;if(this._config==="auto"){i.removeUnusualLineTerminators(this._editor.getSelections());return}if(this._isPresentingDialog)return;let v;try{this._isPresentingDialog=!0,v=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`.",xi(i.uri)),primaryButton:e(1635,"&&Remove Unusual Line Terminators"),cancelButton:e(1636,"Ignore")})}finally{this._isPresentingDialog=!1}if(!v.confirmed){os(this._codeEditorService,i,!0);return}i.removeUnusualLineTerminators(this._editor.getSelections())}};oo=ts([Tr(1,ud),Tr(2,Ce)],oo);pe(oo.ID,oo,1);var rs=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},ns=function(f,i){return function(h,v){i(h,v,f)}};class si{constructor(){this.selector={language:"*"}}provideDocumentHighlights(f,i,h){if(f.isDisposed())return;let v=[],S=f.getWordAtPosition({lineNumber:i.lineNumber,column:i.column});if(!S)return Promise.resolve(v);return f.findMatches(S.word,!0,!1,!0,Og,!1).map((w)=>({range:w.range,kind:bu.Text}))}provideMultiDocumentHighlights(f,i,h,v){if(f.isDisposed())return;let S=new qt,b=f.getWordAtPosition({lineNumber:i.lineNumber,column:i.column});if(!b)return Promise.resolve(S);for(let w of[f,...h]){if(w.isDisposed())continue;let M=w.findMatches(b.word,!0,!1,!0,Og,!1).map((x)=>({range:x.range,kind:bu.Text}));if(M)S.set(w.uri,M)}return S}}var io=class f extends n{constructor(i){super();this._register(i.documentHighlightProvider.register("*",new si)),this._register(i.multiDocumentHighlightProvider.register("*",new si))}};io=rs([ns(0,V)],io);var Ar=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},me=function(f,i){return function(h,v){i(h,v,f)}},ee,ci,di=new P("hasWordHighlights",!1);function Rr(f,i,h,v){let S=f.ordered(i);return Iv(S.map((b)=>()=>Promise.resolve(b.provideDocumentHighlights(i,h,v)).then(void 0,gt)),(b)=>b!==void 0&&b!==null).then((b)=>{if(b){let w=new qt;return w.set(i.uri,b),w}return new qt})}function cs(f,i,h,v,S){let b=f.ordered(i);return Iv(b.map((w)=>()=>{let I=S.filter((M)=>J_(M)).filter((M)=>qf(w.selector,M.uri,M.getLanguageId(),!0,void 0,void 0)>0);return Promise.resolve(w.provideMultiDocumentHighlights(i,h,I,v)).then(void 0,gt)}),(w)=>w!==void 0&&w!==null)}class li{constructor(f,i,h){this._model=f,this._selection=i,this._wordSeparators=h,this._wordRange=this._getCurrentWordRange(f,i),this._result=null}get result(){if(!this._result)this._result=Wt((f)=>this._compute(this._model,this._selection,this._wordSeparators,f));return this._result}_getCurrentWordRange(f,i){let h=f.getWordAtPosition(i.getPosition());if(h)return new t(i.startLineNumber,h.startColumn,i.startLineNumber,h.endColumn);return null}cancel(){this.result.cancel()}}class Nr extends li{constructor(f,i,h,v){super(f,i,h);this._providers=v}_compute(f,i,h,v){return Rr(this._providers,f,i.getPosition(),v).then((S)=>{if(!S)return new qt;return S})}}class Or extends li{constructor(f,i,h,v,S){super(f,i,h);this._providers=v,this._otherModels=S}_compute(f,i,h,v){return cs(this._providers,f,i.getPosition(),v,this._otherModels).then((S)=>{if(!S)return new qt;return S})}}function as(f,i,h,v){return new Nr(i,h,v,f)}function ds(f,i,h,v,S){return new Or(i,h,v,f,S)}xr("_executeDocumentHighlights",async(f,i,h)=>{let v=f.get(V);return(await Rr(v.documentHighlightProvider,i,h,be.None))?.get(i.uri)});var ai=class f{static{ee=this}static{this.storedDecorationIDs=new qt}static{this.query=null}constructor(i,h,v,S,b,w,I,M){if(this.toUnhook=new d,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=new qt,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=void 0,this.runDelayer=this.toUnhook.add(new Ii(50)),this.editor=i,this.providers=h,this.multiDocumentProviders=v,this.codeEditorService=w,this.textModelService=b,this.configurationService=I,this.logService=M,this._hasWordHighlights=di.bindTo(S),this._ignorePositionChangeEvent=!1,this.occurrencesHighlightEnablement=this.editor.getOption(90),this.occurrencesHighlightDelay=this.configurationService.getValue("editor.occurrencesHighlightDelay"),this.model=this.editor.getModel(),this.toUnhook.add(i.onDidChangeCursorPosition((x)=>{if(this._ignorePositionChangeEvent)return;if(this.occurrencesHighlightEnablement==="off")return;this.runDelayer.trigger(()=>{this._onPositionChanged(x)}).catch(Z)})),this.toUnhook.add(i.onDidFocusEditorText((x)=>{if(this.occurrencesHighlightEnablement==="off")return;if(!this.workerRequest)this.runDelayer.trigger(()=>{this._run()}).catch(Z)})),this.toUnhook.add(i.onDidChangeModelContent((x)=>{if(!Sf(this.model.uri,"output"))this._stopAll()})),this.toUnhook.add(i.onDidChangeModel((x)=>{if(!x.newModelUrl&&x.oldModelUrl)this._stopSingular();else if(ee.query)this._run()})),this.toUnhook.add(i.onDidChangeConfiguration((x)=>{let E=this.editor.getOption(90);if(this.occurrencesHighlightEnablement!==E)switch(this.occurrencesHighlightEnablement=E,E){case"off":this._stopAll();break;case"singleFile":this._stopAll(ee.query?.modelInfo?.modelURI);break;case"multiFile":if(ee.query)this._run(!0);break;default:console.warn("Unknown occurrencesHighlight setting value:",E);break}})),this.toUnhook.add(this.configurationService.onDidChangeConfiguration((x)=>{if(x.affectsConfiguration("editor.occurrencesHighlightDelay")){let E=I.getValue("editor.occurrencesHighlightDelay");if(this.occurrencesHighlightDelay!==E)this.occurrencesHighlightDelay=E}})),this.toUnhook.add(i.onDidBlurEditorWidget(()=>{let x=this.codeEditorService.getFocusedCodeEditor();if(!x)this._stopAll();else if(x.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,ee.query)this._run()}hasDecorations(){return this.decorations.length>0}restore(i){if(this.occurrencesHighlightEnablement==="off")return;this.runDelayer.cancel(),this.runDelayer.trigger(()=>{this._run(!1,i)}).catch(Z)}stop(){if(this.occurrencesHighlightEnablement==="off")return;this._stopAll()}_getSortedHighlights(){return this.decorations.getRanges().sort(t.compareRangesUsingStarts)}moveNext(){let i=this._getSortedHighlights(),v=(i.findIndex((b)=>b.containsPosition(this.editor.getPosition()))+1)%i.length,S=i[v];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(S.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(S);let b=this._getWord();if(b){let w=this.editor.getModel().getLineContent(S.startLineNumber);Dn(`${w}, ${v+1} of ${i.length} for '${b.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}moveBack(){let i=this._getSortedHighlights(),v=(i.findIndex((b)=>b.containsPosition(this.editor.getPosition()))-1+i.length)%i.length,S=i[v];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(S.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(S);let b=this._getWord();if(b){let w=this.editor.getModel().getLineContent(S.startLineNumber);Dn(`${w}, ${v+1} of ${i.length} for '${b.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}_removeSingleDecorations(){if(!this.editor.hasModel())return;let i=ee.storedDecorationIDs.get(this.editor.getModel().uri);if(!i)return;if(this.editor.removeDecorations(i),ee.storedDecorationIDs.delete(this.editor.getModel().uri),this.decorations.length>0)this.decorations.clear(),this._hasWordHighlights.set(!1)}_removeAllDecorations(i){let h=this.codeEditorService.listCodeEditors(),v=[];for(let S of h){if(!S.hasModel()||Qo(S.getModel().uri,i))continue;let b=ee.storedDecorationIDs.get(S.getModel().uri);if(!b)continue;S.removeDecorations(b),v.push(S.getModel().uri);let w=Me.get(S);if(!w?.wordHighlighter)continue;if(w.wordHighlighter.decorations.length>0)w.wordHighlighter.decorations.clear(),w.wordHighlighter.workerRequest=null,w.wordHighlighter._hasWordHighlights.set(!1)}for(let S of v)ee.storedDecorationIDs.delete(S)}_stopSingular(){if(this._removeSingleDecorations(),this.editor.hasTextFocus()){if(this.editor.getModel()?.uri.scheme!==se.vscodeNotebookCell&&ee.query?.modelInfo?.modelURI.scheme!==se.vscodeNotebookCell)ee.query=null,this._run();else if(ee.query?.modelInfo)ee.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(i){if(this._removeAllDecorations(i),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(i){if(this.occurrencesHighlightEnablement==="off"){this._stopAll();return}if(i.source!=="api"&&i.reason!==3){this._stopAll();return}this._run()}_getWord(){let i=this.editor.getSelection(),{startLineNumber:h,startColumn:v}=i;if(this.model.isDisposed())return null;return this.model.getWordAtPosition({lineNumber:h,column:v})}getOtherModelsToHighlight(i){if(!i)return[];if(i.uri.scheme===se.vscodeNotebookCell){let b=[],w=this.codeEditorService.listCodeEditors();for(let I of w){let M=I.getModel();if(M&&M!==i&&M.uri.scheme===se.vscodeNotebookCell)b.push(M)}return b}let v=[],S=this.codeEditorService.listCodeEditors();for(let b of S){if(!fb(b))continue;let w=b.getModel();if(!w)continue;if(i===w.modified)v.push(w.modified)}if(v.length)return v;if(this.occurrencesHighlightEnablement==="singleFile")return[];for(let b of S){let w=b.getModel();if(w&&w!==i)v.push(w)}return v}async _run(i,h){if(!this.editor.hasTextFocus()){if(!ee.query){this._stopAll();return}}else{let S=this.editor.getSelection();if(!S||S.startLineNumber!==S.endLineNumber){ee.query=null,this._stopAll();return}let{startColumn:b,endColumn:w}=S,I=this._getWord();if(!I||I.startColumn>b||I.endColumn<w){ee.query=null,this._stopAll();return}ee.query={modelInfo:{modelURI:this.model.uri,selection:S}}}if(this.lastCursorPositionChangeTime=new Date().getTime(),Qo(this.editor.getModel().uri,ee.query.modelInfo?.modelURI)){if(!i){let I=this.decorations.getRanges();for(let M of I)if(M.containsPosition(this.editor.getPosition()))return}this._stopAll(i?this.model.uri:void 0);let S=++this.workerRequestTokenId;this.workerRequestCompleted=!1;let b=this.getOtherModelsToHighlight(this.editor.getModel());if(!ee.query||!ee.query.modelInfo)return;let w=await this.textModelService.createModelReference(ee.query.modelInfo.modelURI);try{this.workerRequest=this.computeWithModel(w.object.textEditorModel,ee.query.modelInfo.selection,b),this.workerRequest?.result.then((I)=>{if(S===this.workerRequestTokenId)this.workerRequestCompleted=!0,this.workerRequestValue=I||[],this._beginRenderDecorations(h??this.occurrencesHighlightDelay)},Z)}catch(I){this.logService.error("Unexpected error during occurrence request. Log: ",I)}finally{w.dispose()}}else if(this.model.uri.scheme===se.vscodeNotebookCell){let S=++this.workerRequestTokenId;if(this.workerRequestCompleted=!1,!ee.query||!ee.query.modelInfo)return;let b=await this.textModelService.createModelReference(ee.query.modelInfo.modelURI);try{this.workerRequest=this.computeWithModel(b.object.textEditorModel,ee.query.modelInfo.selection,[this.model]),this.workerRequest?.result.then((w)=>{if(S===this.workerRequestTokenId)this.workerRequestCompleted=!0,this.workerRequestValue=w||[],this._beginRenderDecorations(h??this.occurrencesHighlightDelay)},Z)}catch(w){this.logService.error("Unexpected error during occurrence request. Log: ",w)}finally{b.dispose()}}}computeWithModel(i,h,v){if(!v.length)return as(this.providers,i,h,this.editor.getOption(148));else return ds(this.multiDocumentProviders,i,h,this.editor.getOption(148),v)}_beginRenderDecorations(i){let h=new Date().getTime(),v=this.lastCursorPositionChangeTime+i;if(h>=v)this.renderDecorationsTimer=void 0,this.renderDecorations();else this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},v-h)}renderDecorations(){this.renderDecorationsTimer=void 0;let i=this.codeEditorService.listCodeEditors();for(let h of i){let v=Me.get(h);if(!v)continue;let S=[],b=h.getModel()?.uri;if(b&&this.workerRequestValue.has(b)){let w=ee.storedDecorationIDs.get(b),I=this.workerRequestValue.get(b);if(I)for(let x of I){if(!x.range)continue;S.push({range:x.range,options:vR(x.kind)})}let M=[];if(h.changeDecorations((x)=>{M=x.deltaDecorations(w??[],S)}),ee.storedDecorationIDs=ee.storedDecorationIDs.set(b,M),S.length>0)v.wordHighlighter?.decorations.set(S),v.wordHighlighter?._hasWordHighlights.set(!0)}}this.workerRequest=null}dispose(){this._stopSingular(),this.toUnhook.dispose()}};ai=ee=Ar([me(4,_n),me(5,Ce),me(6,ie),me(7,Ke)],ai);var Me=class f extends n{static{ci=this}static{this.ID="editor.contrib.wordHighlighter"}static get(i){return i.getContribution(ci.ID)}constructor(i,h,v,S,b,w,I){super();this._wordHighlighter=null;let M=()=>{if(i.hasModel()&&!i.getModel().isTooLargeForTokenization()&&i.getModel().uri.scheme!==se.accessibleView)this._wordHighlighter=new ai(i,v.documentHighlightProvider,v.multiDocumentHighlightProvider,h,b,S,w,I)};this._register(i.onDidChangeModel((x)=>{if(this._wordHighlighter){if(!x.newModelUrl&&x.oldModelUrl?.scheme!==se.vscodeNotebookCell)this.wordHighlighter?.stop();this._wordHighlighter.dispose(),this._wordHighlighter=null}M()})),M()}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(i){if(this._wordHighlighter&&i)this._wordHighlighter.restore(250)}dispose(){if(this._wordHighlighter)this._wordHighlighter.dispose(),this._wordHighlighter=null;super.dispose()}};Me=ci=Ar([me(1,K),me(2,V),me(3,Ce),me(4,_n),me(5,ie),me(6,Ke)],Me);class hi extends U{constructor(f,i){super(i);this._isNext=f}run(f,i){let h=Me.get(i);if(!h)return;if(this._isNext)h.moveNext();else h.moveBack()}}class jr extends hi{constructor(){super(!0,{id:"editor.action.wordHighlight.next",label:p(1646,"Go to Next Symbol Highlight"),precondition:di,kbOpts:{kbExpr:o.editorTextFocus,primary:65,weight:100}})}}class zr extends hi{constructor(){super(!1,{id:"editor.action.wordHighlight.prev",label:p(1647,"Go to Previous Symbol Highlight"),precondition:di,kbOpts:{kbExpr:o.editorTextFocus,primary:1089,weight:100}})}}class Hr extends U{constructor(){super({id:"editor.action.wordHighlight.trigger",label:p(1648,"Trigger Symbol Highlight"),precondition:void 0,kbOpts:{kbExpr:o.editorTextFocus,primary:0,weight:100}})}run(f,i){let h=Me.get(i);if(!h)return;h.restoreViewState(!0)}}pe(Me.ID,Me,0);N(jr);N(zr);N(Hr);Qa(io);var ls=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Fr=function(f,i){return function(h,v){i(h,v,f)}},mi=class f extends n{constructor(i,h,v){super();this._textModel=i,this._languageFeaturesService=h,this._outlineModelService=v,this._currentModel=j(this,void 0);let S=fi("documentSymbolProvider.onDidChange",this._languageFeaturesService.documentSymbolProvider.onDidChange),b=fi("_textModel.onDidChangeContent",k.debounce((w)=>this._textModel.onDidChangeContent(w),()=>{return},100));this._register(zn(async(w,I)=>{S.read(w),b.read(w);let M=I.add(new Vk),x=await this._outlineModelService.getOrCreate(this._textModel,M.token);if(I.isDisposed)return;this._currentModel.set(x,void 0)}))}getBreadcrumbItems(i,h){let v=this._currentModel.read(h);if(!v)return[];let S=v.asListOfDocumentSymbols().filter((b)=>i.contains(b.range.startLineNumber)&&!i.contains(b.range.endLineNumber));return S.sort(kv($n((b)=>b.range.endLineNumber-b.range.startLineNumber,$i))),S.map((b)=>({name:b.name,kind:b.kind,startLineNumber:b.range.startLineNumber}))}getAt(i,h){let v=this._currentModel.read(h);if(!v)return[];let S=v.asListOfDocumentSymbols().filter((b)=>new X(b.range.startLineNumber,b.range.endLineNumber).contains(i));if(S.length===0)return[];return S.sort(kv($n((b)=>b.range.endLineNumber-b.range.startLineNumber,$i))),S.map((b)=>({name:b.name,kind:b.kind,startLineNumber:b.range.startLineNumber}))}};mi=ls([Fr(1,V),Fr(2,pu)],mi);Au.setBreadcrumbsSourceFactory((f,i)=>i.createInstance(mi,f));var Wr=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Ge=function(f,i){return function(h,v){i(h,v,f)}},Ct=class f extends n{static{this.ID="editor.contrib.floatingToolbar"}constructor(i,h,v,S){super();let b=this._register(rt(i)),w=u((M)=>b.model.read(M)?.uri),I=this._register(h.createInstance(pi,l.EditorContent,i.contextKeyService,w));this._register(W((M)=>{if(!I.hasActions.read(M))return;M.store.add(b.createOverlayWidget({allowEditorOverflow:!1,domNode:I.element,minContentWidthInPx:Re(0),position:Re({preference:1})}))}))}};Ct=Wr([Ge(1,D),Ge(2,fe),Ge(3,wi)],Ct);var pi=class f extends n{constructor(i,h,v,S,b,w){super();let I=this._register(w.createMenu(i,h)),M=Ne(this,I.onDidChange,()=>I.getActions()),x=u((E)=>{let T=M.read(E),{primary:L}=Jf(T,()=>!0);return L.filter((A)=>A.id!==ot.ID)});this.hasActions=u((E)=>x.read(E).length>0),this.element=Le("div.floating-menu-overlay-widget").root,this._register(R(()=>this.element.remove())),this._register(W((E)=>{let T=x.read(E),L=T.length>0,A=L?T[0].id:void 0,O=T.length===1;if(this.element.classList.toggle("single-button",O),this.element.style.height=O?"28px":"26px",!L)return;let z=S.createInstance(ap,this.element,i,{actionViewItemProvider:(H,Y)=>{if(!(H instanceof Ni))return;return S.createInstance(class extends Xa{render(oe){if(super.render(oe),H.id===A)this.element?.classList.add("primary")}updateLabel(){let oe=b.lookupKeybinding(H.id),re=oe?oe.getLabel():void 0;if(this.options.label&&this.label)this.label.textContent=re?`${this._commandAction.label} (${re})`:this._commandAction.label}},H,{...Y,keybindingNotRenderedWithLabel:!0})},hiddenItemStrategy:0,menuOptions:{shouldForwardArgs:!0},telemetrySource:"editor.overlayToolbar",toolbarOptions:{primaryGroup:()=>!0,useSeparatorsInPrimaryActions:!0}});E.store.add(z),E.store.add(W((H)=>{let Y=v.read(H);z.context=Y}))}))}};pi=Wr([Ge(3,D),Ge(4,fe),Ge(5,wi)],pi);pe(Ct.ID,Ct,1);class gi extends n{static{this.ID="editor.contrib.iPadShowKeyboard"}constructor(f){super();if(this.editor=f,this.widget=null,gr)this._register(f.onDidChangeConfiguration(()=>this.update())),this.update()}update(){let f=!this.editor.getOption(104);if(!this.widget&&f)this.widget=new Ci(this.editor);else if(this.widget&&!f)this.widget.dispose(),this.widget=null}dispose(){if(super.dispose(),this.widget)this.widget.dispose(),this.widget=null}}class Ci extends n{static{this.ID="editor.contrib.ShowKeyboardWidget"}constructor(f){super();this.editor=f,this._domNode=document.createElement("textarea"),this._domNode.className="iPadShowKeyboard",this._register(c(this._domNode,"touchstart",(i)=>{this.editor.focus()})),this._register(c(this._domNode,"focus",(i)=>{this.editor.focus()})),this.editor.addOverlayWidget(this)}dispose(){this.editor.removeOverlayWidget(this),super.dispose()}getId(){return Ci.ID}getDomNode(){return this._domNode}getPosition(){return{preference:1}}}pe(gi.ID,gi,3);var hs=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Vr=function(f,i){return function(h,v){i(h,v,f)}},vi,vt=class f extends n{static{vi=this}static{this.ID="editor.contrib.inspectTokens"}static get(i){return i.getContribution(vi.ID)}constructor(i,h,v){super();this._editor=i,this._languageService=v,this._widget=null,this._register(this._editor.onDidChangeModel((S)=>this.stop())),this._register(this._editor.onDidChangeModelLanguage((S)=>this.stop())),this._register(Ft.onDidChange((S)=>this.stop())),this._register(this._editor.onKeyUp((S)=>S.keyCode===9&&this.stop()))}dispose(){this.stop(),super.dispose()}launch(){if(this._widget)return;if(!this._editor.hasModel())return;this._widget=new bi(this._editor,this._languageService)}stop(){if(this._widget)this._widget.dispose(),this._widget=null}};vt=vi=hs([Vr(1,to),Vr(2,yt)],vt);class qr extends U{constructor(){super({id:"editor.action.inspectTokens",label:D0.inspectTokensAction,alias:"Developer: Inspect Tokens",precondition:void 0})}run(f,i){vt.get(i)?.launch()}}function fs(f){let i="";for(let h=0,v=f.length;h<v;h++){let S=f.charCodeAt(h);switch(S){case 9:i+="→";break;case 32:i+="·";break;default:i+=String.fromCharCode(S)}}return i}function ps(f,i){let h=Ft.get(i);if(h)return h;let v=f.encodeLanguageId(i);return{getInitialState:()=>od,tokenize:(S,b,w)=>qg(i,w),tokenizeEncoded:(S,b,w)=>Uh(v,w)}}class bi extends n{static{this._ID="editor.contrib.inspectTokensWidget"}constructor(f,i){super();this.allowEditorOverflow=!0,this._editor=f,this._languageService=i,this._model=this._editor.getModel(),this._domNode=document.createElement("div"),this._domNode.className="tokens-inspect-widget",this._tokenizationSupport=ps(this._languageService.languageIdCodec,this._model.getLanguageId()),this._compute(this._editor.getPosition()),this._register(this._editor.onDidChangeCursorPosition((h)=>this._compute(this._editor.getPosition()))),this._editor.addContentWidget(this)}dispose(){this._editor.removeContentWidget(this),super.dispose()}getId(){return bi._ID}_compute(f){let i=this._getTokensAtLine(f.lineNumber),h=0;for(let I=i.tokens1.length-1;I>=0;I--){let M=i.tokens1[I];if(f.column-1>=M.offset){h=I;break}}let v=0;for(let I=i.tokens2.length>>>1;I>=0;I--)if(f.column-1>=i.tokens2[I<<1]){v=I;break}let S=this._model.getLineContent(f.lineNumber),b="";if(h<i.tokens1.length){let I=i.tokens1[h].offset,M=h+1<i.tokens1.length?i.tokens1[h+1].offset:S.length;b=S.substring(I,M)}sn(this._domNode,g("h2.tm-token",void 0,fs(b),g("span.tm-token-length",void 0,`${b.length} ${b.length===1?"char":"chars"}`))),_(this._domNode,g("hr.tokens-inspect-separator",{style:"clear:both"}));let w=(v<<1)+1<i.tokens2.length?this._decodeMetadata(i.tokens2[(v<<1)+1]):null;if(_(this._domNode,g("table.tm-metadata-table",void 0,g("tbody",void 0,g("tr",void 0,g("td.tm-metadata-key",void 0,"language"),g("td.tm-metadata-value",void 0,`${w?w.languageId:"-?-"}`)),g("tr",void 0,g("td.tm-metadata-key",void 0,"token type"),g("td.tm-metadata-value",void 0,`${w?this._tokenTypeToString(w.tokenType):"-?-"}`)),g("tr",void 0,g("td.tm-metadata-key",void 0,"font style"),g("td.tm-metadata-value",void 0,`${w?this._fontStyleToString(w.fontStyle):"-?-"}`)),g("tr",void 0,g("td.tm-metadata-key",void 0,"foreground"),g("td.tm-metadata-value",void 0,`${w?m.Format.CSS.formatHex(w.foreground):"-?-"}`)),g("tr",void 0,g("td.tm-metadata-key",void 0,"background"),g("td.tm-metadata-value",void 0,`${w?m.Format.CSS.formatHex(w.background):"-?-"}`))))),_(this._domNode,g("hr.tokens-inspect-separator")),h<i.tokens1.length)_(this._domNode,g("span.tm-token-type",void 0,i.tokens1[h].type));this._editor.layoutContentWidget(this)}_decodeMetadata(f){let i=Ft.getColorMap(),h=Pi.getLanguageId(f),v=Pi.getTokenType(f),S=Pi.getFontStyle(f),b=Pi.getForeground(f),w=Pi.getBackground(f);return{languageId:this._languageService.languageIdCodec.decodeLanguageId(h),tokenType:v,fontStyle:S,foreground:i[b],background:i[w]}}_tokenTypeToString(f){switch(f){case 0:return"Other";case 1:return"Comment";case 2:return"String";case 3:return"RegEx";default:return"??"}}_fontStyleToString(f){let i="";if(f&1)i+="italic ";if(f&2)i+="bold ";if(f&4)i+="underline ";if(f&8)i+="strikethrough ";if(i.length===0)i="---";return i}_getTokensAtLine(f){let i=this._getStateBeforeLine(f),h=this._tokenizationSupport.tokenize(this._model.getLineContent(f),!0,i),v=this._tokenizationSupport.tokenizeEncoded(this._model.getLineContent(f),!0,i);return{startState:i,tokens1:h.tokens,tokens2:v.tokens,endState:h.endState}}_getStateBeforeLine(f){let i=this._tokenizationSupport.getInitialState();for(let h=1;h<f;h++)i=this._tokenizationSupport.tokenize(this._model.getLineContent(h),!0,i).endState;return i}getDomNode(){return this._domNode}getPosition(){return{position:this._editor.getPosition(),preference:[2,1]}}}pe(vt.ID,vt,4);N(qr);var gs=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Si=function(f,i){return function(h,v){i(h,v,f)}},St,ro=class f{static{St=this}static{this.PREFIX="?"}constructor(i,h,v){this.quickInputService=i,this.keybindingService=h,this.contextKeyService=v,this.registry=lt.as(Gs.Quickaccess)}provide(i){let h=new d;return h.add(i.onDidAccept(()=>{let[v]=i.selectedItems;if(v)this.quickInputService.quickAccess.show(v.prefix,{preserveValue:!0})})),h.add(i.onDidChangeValue((v)=>{let S=this.registry.getQuickAccessProvider(v.substr(St.PREFIX.length),this.contextKeyService);if(S?.prefix&&S.prefix!==St.PREFIX)this.quickInputService.quickAccess.show(S.prefix,{preserveValue:!0})})),i.items=this.getQuickAccessProviders().filter((v)=>v.prefix!==St.PREFIX),h}getQuickAccessProviders(){return this.registry.getQuickAccessProviders(this.contextKeyService).sort((h,v)=>h.prefix.localeCompare(v.prefix)).flatMap((h)=>this.createPicks(h))}createPicks(i){return i.helpEntries.map((h)=>{let v=h.prefix||i.prefix,S=v||"…";return{prefix:v,label:S,keybinding:h.commandId?this.keybindingService.lookupKeybinding(h.commandId):void 0,ariaLabel:e(1844,"{0}, {1}",S,h.description),description:h.description}})}};ro=St=gs([Si(0,gn),Si(1,fe),Si(2,K)],ro);lt.as(Gs.Quickaccess).registerQuickAccessProvider({ctor:ro,prefix:"",helpEntries:[{description:N0.helpQuickAccessActionLabel}]});var Kr=[void 0,[]];function so(f,i,h=0,v=0){let S=i;if(S.values&&S.values.length>1)return _s(f,S.values,h,v);return Yr(f,i,h,v)}function _s(f,i,h,v){let S=0,b=[];for(let w of i){let[I,M]=Yr(f,w,h,v);if(typeof I!=="number")return Kr;S+=I,b.push(...M)}return[S,Cs(b)]}function Yr(f,i,h,v){let S=Cc(i.normalized,i.normalizedLowercase,h,f,f.toLowerCase(),v,{firstMatchCanBeWeak:!0,boostFullMatch:!0});if(!S)return Kr;return[S[0],Ru(S)]}new Nh("allowNonContiguousMatches");new Nh("description");new Nh("label");new Nh("values");new Nh("expectContiguousMatch");new Nh("value");function Cs(f){let i=f.sort((S,b)=>S.start-b.start),h=[],v=void 0;for(let S of i)if(!v||!vs(v,S))v=S,h.push(S);else v.start=Math.min(v.start,S.start),v.end=Math.max(v.end,S.end);return h}function vs(f,i){if(f.end<i.start)return!1;if(i.end<f.start)return!1;return!0}function Ur(f){return f.startsWith('"')&&f.endsWith('"')}var Gr=" ";function no(f){if(typeof f!=="string")f="";let i=f.toLowerCase(),{pathNormalized:h,normalized:v,normalizedLowercase:S}=Br(f),b=h.indexOf(Fs)>=0,w=Ur(f),I=void 0,M=f.split(Gr);if(M.length>1)for(let x of M){let E=Ur(x),{pathNormalized:T,normalized:L,normalizedLowercase:A}=Br(x);if(L){if(!I)I=[];I.push({original:x,originalLowercase:x.toLowerCase(),pathNormalized:T,normalized:L,normalizedLowercase:A,expectContiguousMatch:E})}}return{original:f,originalLowercase:i,pathNormalized:h,normalized:v,normalizedLowercase:S,values:I,containsPathSeparator:b,expectContiguousMatch:w}}function Br(f){let i;if(Jt)i=f.replace(/\//g,Fs);else i=f.replace(/\\/g,Fs);let h=i.replace(/[\*\u2026\s"]/g,"").replace(/(?<=.)#$/,"");return{pathNormalized:i,normalized:h,normalizedLowercase:h.toLowerCase()}}function yi(f){if(Array.isArray(f))return no(f.map((i)=>i.original).join(Gr));return no(f.original)}var Ss=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},$r=function(f,i){return function(h,v){i(h,v,f)}},co,xe=class f extends Sv{static{co=this}static{this.PREFIX="@"}static{this.SCOPE_PREFIX=":"}static{this.PREFIX_BY_CATEGORY=`${this.PREFIX}${this.SCOPE_PREFIX}`}constructor(i,h,v=Object.create(null)){super(v);this._languageFeaturesService=i,this._outlineModelService=h,this.options=v,this.options.canAcceptInBackground=!0}provideWithoutTextEditor(i){return this.provideLabelPick(i,e(1414,"To go to a symbol, first open a text editor with symbol information.")),n.None}provideWithTextEditor(i,h,v,S){let b=i.editor,w=this.getModel(b);if(!w)return n.None;if(this._languageFeaturesService.documentSymbolProvider.has(w))return this.doProvideWithEditorSymbols(i,w,h,v,S);return this.doProvideWithoutEditorSymbols(i,w,h,v)}doProvideWithoutEditorSymbols(i,h,v,S){let b=new d;return this.provideLabelPick(v,e(1415,"The active text editor does not provide symbol information.")),(async()=>{if(!await this.waitForLanguageSymbolRegistry(h,b)||S.isCancellationRequested)return;b.add(this.doProvideWithEditorSymbols(i,h,v,S))})(),b}provideLabelPick(i,h){i.items=[{label:h,index:0,kind:14}],i.ariaLabel=h}async waitForLanguageSymbolRegistry(i,h){if(this._languageFeaturesService.documentSymbolProvider.has(i))return!0;let v=new js,S=h.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>{if(this._languageFeaturesService.documentSymbolProvider.has(i))S.dispose(),v.complete(!0)}));return h.add(R(()=>v.complete(!1))),v.p}doProvideWithEditorSymbols(i,h,v,S,b){let w=i.editor,I=new d;I.add(v.onDidAccept((T)=>{let[L]=v.selectedItems;if(L&&L.range){if(v.keyMods.shift&&L.attach){L.attach(v.keyMods,T);return}if(this.gotoLocation(i,{range:L.range.selection,keyMods:v.keyMods,preserveFocus:T.inBackground}),b?.handleAccept?.(L,T.inBackground),!T.inBackground)v.hide()}})),I.add(v.onDidTriggerItemButton(({item:T})=>{if(T&&T.range)this.gotoLocation(i,{range:T.range.selection,keyMods:v.keyMods,forceSideBySide:!0}),v.hide()}));let M=this.getDocumentSymbols(h,S),x=I.add(new le),E=async(T)=>{x?.value?.cancel(),v.busy=!1,x.value=new Ve,v.busy=!0;try{let L=no(v.value.substr(co.PREFIX.length).trim()),A=await this.doGetSymbolPicks(M,L,void 0,x.value.token,h);if(S.isCancellationRequested)return;if(A.length>0){if(v.items=A,T&&L.original.length===0){let O=xu(A,(z)=>Boolean(z.type!=="separator"&&z.range&&t.containsPosition(z.range.decoration,T)));if(O)v.activeItems=[O]}}else if(L.original.length>0)this.provideLabelPick(v,e(1416,"No matching editor symbols"));else this.provideLabelPick(v,e(1417,"No editor symbols"))}finally{if(!S.isCancellationRequested)v.busy=!1}};return I.add(v.onDidChangeValue(()=>E(void 0))),E(w.getSelection()?.getPosition()),I.add(v.onDidChangeActive(()=>{let[T]=v.activeItems;if(T&&T.range)w.revealRangeInCenter(T.range.selection,0),this.addDecorations(w,T.range.decoration)})),I}async doGetSymbolPicks(i,h,v,S,b){let w=await i;if(S.isCancellationRequested)return[];let I=h.original.indexOf(co.SCOPE_PREFIX)===0,M=I?1:0,x,E;if(h.values&&h.values.length>1)x=yi(h.values[0]),E=yi(h.values.slice(1));else x=h;let T,L=this.options?.openSideBySideDirection?.();if(L)T=[{iconClass:L==="right"?J.asClassName(y.splitHorizontal):J.asClassName(y.splitVertical),tooltip:L==="right"?e(1418,"Open to the Side"):e(1419,"Open to the Bottom")}];let A=[];for(let H=0;H<w.length;H++){let Y=w[H],oe=TR(Y.name),re=`$(${yu.toIcon(Y.kind).id}) ${oe}`,ne=re.length-oe.length,ae=Y.containerName;if(v?.extraContainerLabel)if(ae)ae=`${v.extraContainerLabel} • ${ae}`;else ae=v.extraContainerLabel;let ue=void 0,ge=void 0,Je=void 0,zi=void 0;if(h.original.length>M){let Fi=!1;if(x!==h){if([ue,ge]=so(re,{...h,values:void 0},M,ne),typeof ue==="number")Fi=!0}if(typeof ue!=="number"){if([ue,ge]=so(re,x,M,ne),typeof ue!=="number")continue}if(!Fi&&E){if(ae&&E.original.length>0)[Je,zi]=so(ae,E);if(typeof Je!=="number")continue;if(typeof ue==="number")ue+=Je}}let Hi=Y.tags&&Y.tags.indexOf(1)>=0;A.push({index:H,kind:Y.kind,score:ue,label:re,ariaLabel:ER(Y.name,Y.kind),description:ae,highlights:Hi?void 0:{label:ge,description:zi},range:{selection:t.collapseToStart(Y.selectionRange),decoration:Y.range},uri:b.uri,symbolName:oe,strikethrough:Hi,buttons:T})}let O=A.sort((H,Y)=>I?this.compareByKindAndScore(H,Y):this.compareByScore(H,Y)),z=[];if(I){let re=function(){if(Y&&typeof H==="number"&&oe>0)Y.label=pa(Mi[H]||Di,oe)},H=void 0,Y=void 0,oe=0;for(let ne of O){if(H!==ne.kind)re(),H=ne.kind,oe=1,Y={type:"separator"},z.push(Y);else oe++;z.push(ne)}re()}else if(O.length>0)z=[{label:e(1420,"symbols ({0})",A.length),type:"separator"},...O];return z}compareByScore(i,h){if(typeof i.score!=="number"&&typeof h.score==="number")return 1;else if(typeof i.score==="number"&&typeof h.score!=="number")return-1;if(typeof i.score==="number"&&typeof h.score==="number"){if(i.score>h.score)return-1;else if(i.score<h.score)return 1}if(i.index<h.index)return-1;else if(i.index>h.index)return 1;return 0}compareByKindAndScore(i,h){let v=Mi[i.kind]||Di,S=Mi[h.kind]||Di,b=v.localeCompare(S);if(b===0)return this.compareByScore(i,h);return b}async getDocumentSymbols(i,h){let v=await this._outlineModelService.getOrCreate(i,h);return h.isCancellationRequested?[]:v.asListOfDocumentSymbols()}};xe=co=Ss([$r(0,V),$r(1,pu)],xe);var Di=e(1421,"properties ({0})"),Mi={[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 ys=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},ki=function(f,i){return function(h,v){i(h,v,f)}},Ei=class f extends xe{constructor(i,h,v){super(h,v);this.editorService=i,this.onDidActiveTextEditorControlChange=k.None}get activeTextEditorControl(){return this.editorService.getFocusedCodeEditor()??void 0}};Ei=ys([ki(0,Ce),ki(1,V),ki(2,pu)],Ei);class ao extends U{static{this.ID="editor.action.quickOutline"}constructor(){super({id:ao.ID,label:ub.quickOutlineActionLabel,alias:"Go to Symbol...",precondition:o.hasDocumentSymbolProvider,kbOpts:{kbExpr:o.focus,primary:3117,weight:100},contextMenuOpts:{group:"navigation",order:3}})}run(f){f.get(gn).quickAccess.show(xe.PREFIX,{itemActivation:ba.NONE})}}N(ao);lt.as(Gs.Quickaccess).registerQuickAccessProvider({ctor:Ei,prefix:xe.PREFIX,helpEntries:[{description:ub.quickOutlineActionLabel,prefix:xe.PREFIX,commandId:ao.ID},{description:ub.quickOutlineByCategoryActionLabel,prefix:xe.PREFIX_BY_CATEGORY}]});function Ds(f){let i=new Map;for(let h of f)i.set(h,(i.get(h)??0)+1);return i}class Ze{constructor(){this.chunkCount=0,this.chunkOccurrences=new Map,this.documents=new Map}calculateScores(f,i){let h=this.computeEmbedding(f),v=new Map,S=[];for(let[b,w]of this.documents){if(i.isCancellationRequested)return[];for(let I of w.chunks){let M=this.computeSimilarityScore(I,h,v);if(M>0)S.push({key:b,score:M})}}return S}static termFrequencies(f){return Ds(Ze.splitTerms(f))}static*splitTerms(f){let i=(h)=>h.toLowerCase();for(let[h]of f.matchAll(/\b\p{Letter}[\p{Letter}\d]{2,}\b/gu)){yield i(h);let v=h.replace(/([a-z])([A-Z])/g,"$1 $2").split(/\s+/g);if(v.length>1){for(let S of v)if(S.length>2&&/\p{Letter}{3,}/gu.test(S))yield i(S)}}}updateDocuments(f){for(let{key:i}of f)this.deleteDocument(i);for(let i of f){let h=[];for(let v of i.textChunks){let S=Ze.termFrequencies(v);for(let b of S.keys())this.chunkOccurrences.set(b,(this.chunkOccurrences.get(b)??0)+1);h.push({text:v,tf:S})}this.chunkCount+=h.length,this.documents.set(i.key,{chunks:h})}return this}deleteDocument(f){let i=this.documents.get(f);if(!i)return;this.documents.delete(f),this.chunkCount-=i.chunks.length;for(let h of i.chunks)for(let v of h.tf.keys()){let S=this.chunkOccurrences.get(v);if(typeof S==="number"){let b=S-1;if(b<=0)this.chunkOccurrences.delete(v);else this.chunkOccurrences.set(v,b)}}}computeSimilarityScore(f,i,h){let v=0;for(let[S,b]of Object.entries(i)){let w=f.tf.get(S);if(!w)continue;let I=h.get(S);if(typeof I!=="number")I=this.computeIdf(S),h.set(S,I);let M=w*I;v+=M*b}return v}computeEmbedding(f){let i=Ze.termFrequencies(f);return this.computeTfidf(i)}computeIdf(f){let i=this.chunkOccurrences.get(f)??0;return i>0?Math.log((this.chunkCount+1)/i):0}computeTfidf(f){let i=Object.create(null);for(let[h,v]of f){let S=this.computeIdf(h);if(S>0)i[h]=v*S}return i}}function Jr(f){let i=f.slice(0);i.sort((v,S)=>S.score-v.score);let h=i[0]?.score??0;if(h>0)for(let v of i)v.score/=h;return i}var De;(function(f){f[f.NO_ACTION=0]="NO_ACTION",f[f.CLOSE_PICKER=1]="CLOSE_PICKER",f[f.REFRESH_PICKER=2]="REFRESH_PICKER",f[f.REMOVE_ITEM=3]="REMOVE_ITEM"})(De||(De={}));function Li(f){return Array.isArray(f.items)}function on(f){let i=f;return!!i.picks&&i.additionalPicks instanceof Promise}class Ti extends n{constructor(f,i){super();this.prefix=f,this.options=i}provide(f,i,h){let v=new d;f.canAcceptInBackground=!!this.options?.canAcceptInBackground,f.matchOnLabel=f.matchOnDescription=f.matchOnDetail=f.sortByLabel=!1;let S=void 0,b=v.add(new le),w=async()=>{S?.dispose(!0),f.busy=!1;let M=b.value=new d;S=M.add(new Ve(i));let x=S.token,E=f.value.substring(this.prefix.length);if(!this.options?.shouldSkipTrimPickFilter)E=E.trim();let T=this._getPicks(E,M,x,h),L=(O,z)=>{let H,Y=void 0;if(Li(O))H=O.items,Y=O.active;else H=O;if(H.length===0){if(z)return!1;if((E.length>0||f.hideInput)&&this.options?.noResultsPick)if(Sl(this.options.noResultsPick))H=[this.options.noResultsPick(E)];else H=[this.options.noResultsPick]}if(f.items=H,Y)f.activeItems=[Y];return!0},A=async(O)=>{let z=!1,H=!1;await Promise.all([(async()=>{if(typeof O.mergeDelay==="number"){if(await mo(O.mergeDelay),x.isCancellationRequested)return}if(!H)z=L(O.picks,!0)})(),(async()=>{f.busy=!0;try{let Y=await O.additionalPicks;if(x.isCancellationRequested)return;let oe,re=void 0;if(Li(O.picks))oe=O.picks.items,re=O.picks.active;else oe=O.picks;let ne,ae=void 0;if(Li(Y))ne=Y.items,ae=Y.active;else ne=Y;if(ne.length>0||!z){let ue=void 0;if(!re&&!ae){let ge=f.activeItems[0];if(ge&&oe.indexOf(ge)!==-1)ue=ge}L({items:[...oe,...ne],active:re||ae||ue})}}finally{if(!x.isCancellationRequested)f.busy=!1;H=!0}})()])};if(T===null);else if(on(T))await A(T);else if(!(T instanceof Promise))L(T);else{f.busy=!0;try{let O=await T;if(x.isCancellationRequested)return;if(on(O))await A(O);else L(O)}finally{if(!x.isCancellationRequested)f.busy=!1}}};v.add(f.onDidChangeValue(()=>w())),w(),v.add(f.onDidAccept((M)=>{if(h?.handleAccept){if(!M.inBackground)f.hide();h.handleAccept?.(f.activeItems[0],M.inBackground);return}let[x]=f.selectedItems;if(typeof x?.accept==="function"){if(fI(f.keyMods)&&!!x.attach){x.attach(f.keyMods,M);return}if(!M.inBackground)f.hide();x.accept(f.keyMods,M)}}));let I=async(M,x)=>{if(typeof x.trigger!=="function")return;let E=x.buttons?.indexOf(M)??-1;if(E>=0){let T=x.trigger(E,f.keyMods),L=typeof T==="number"?T:await T;if(i.isCancellationRequested)return;switch(L){case De.NO_ACTION:break;case De.CLOSE_PICKER:f.hide();break;case De.REFRESH_PICKER:w();break;case De.REMOVE_ITEM:{let A=f.items.indexOf(x);if(A!==-1){let O=f.items.slice(),z=O.splice(A,1),H=f.activeItems.filter((oe)=>oe!==z[0]),Y=f.keepScrollPosition;if(f.keepScrollPosition=!0,f.items=O,H)f.activeItems=H;f.keepScrollPosition=Y}break}}}};return v.add(f.onDidTriggerItemButton(({button:M,item:x})=>I(M,x))),v.add(f.onDidTriggerSeparatorButton(({button:M,separator:x})=>I(M,x))),v}}var rn=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Ee=function(f,i){return function(h,v){i(h,v,f)}},He,te,lo=class f extends Ti{static{He=this}static{this.PREFIX=">"}static{this.TFIDF_THRESHOLD=0.5}static{this.TFIDF_MAX_RESULTS=5}static{this.WORD_FILTER=m0(cI,dI)}constructor(i,h,v,S,b,w){super(He.PREFIX,i);this.keybindingService=v,this.commandService=S,this.telemetryService=b,this.dialogService=w,this.commandsHistory=this._register(h.createInstance(Ai)),this.options=i}async _getPicks(i,h,v,S){let b=await this.getCommandPicks(v);if(v.isCancellationRequested)return[];let w=ms(()=>{let A=new Ze;A.updateDocuments(b.map((z)=>({key:z.commandId,textChunks:[this.getTfIdfChunk(z)]})));let O=A.calculateScores(i,v);return Jr(O).filter((z)=>z.score>He.TFIDF_THRESHOLD).slice(0,He.TFIDF_MAX_RESULTS)}),I=[];for(let A of b){let O=He.WORD_FILTER(i,A.label)??void 0,z;if(A.commandAlias)z=He.WORD_FILTER(i,A.commandAlias)??void 0;if(O||z)A.highlights={label:O,detail:this.options.showAlias?z:void 0},I.push(A);else if(i===A.commandId)I.push(A);else if(i.length>=3){let H=w();if(v.isCancellationRequested)return[];let Y=H.find((oe)=>oe.key===A.commandId);if(Y)A.tfIdfScore=Y.score,I.push(A)}}let M=new Map;for(let A of I){let O=M.get(A.label);if(O)A.description=A.commandId,O.description=O.commandId;else M.set(A.label,A)}I.sort((A,O)=>{if(A.tfIdfScore&&O.tfIdfScore){if(A.tfIdfScore===O.tfIdfScore)return A.label.localeCompare(O.label);return O.tfIdfScore-A.tfIdfScore}else if(A.tfIdfScore)return 1;else if(O.tfIdfScore)return-1;let z=this.commandsHistory.peek(A.commandId),H=this.commandsHistory.peek(O.commandId);if(z&&H)return z>H?-1:1;if(z)return-1;if(H)return 1;if(this.options.suggestedCommandIds){let re=this.options.suggestedCommandIds.has(A.commandId),ne=this.options.suggestedCommandIds.has(O.commandId);if(re&&ne)return 0;if(re)return-1;if(ne)return 1}let Y=A.commandCategory===pt.Developer.value,oe=O.commandCategory===pt.Developer.value;if(Y&&!oe)return 1;if(!Y&&oe)return-1;return A.label.localeCompare(O.label)});let x=[],E=!1,T=!0,L=!!this.options.suggestedCommandIds;for(let A=0;A<I.length;A++){let O=I[A],z=!!this.commandsHistory.peek(O.commandId);if(A===0&&z)x.push({type:"separator",label:e(1836,"recently used")}),E=!0;if(T&&O.tfIdfScore!==void 0)x.push({type:"separator",label:e(1837,"similar commands")}),T=!1;if(L&&O.tfIdfScore===void 0&&!z&&this.options.suggestedCommandIds?.has(O.commandId))x.push({type:"separator",label:e(1838,"commonly used")}),E=!0,L=!1;if(E&&O.tfIdfScore===void 0&&!z&&!this.options.suggestedCommandIds?.has(O.commandId))x.push({type:"separator",label:e(1839,"other commands")}),E=!1;x.push(this.toCommandPick(O,S,z))}if(!this.hasAdditionalCommandPicks(i,v))return x;return{picks:x,additionalPicks:(async()=>{let A=await this.getAdditionalCommandPicks(b,I,i,v);if(v.isCancellationRequested)return[];let O=A.map((z)=>this.toCommandPick(z,S));if(T&&O[0]?.type!=="separator")O.unshift({type:"separator",label:e(1840,"similar commands")});return O})()}}toCommandPick(i,h,v=!1){if(i.type==="separator")return i;let S=i.tooltip??i.commandDescription?.value,b=this.keybindingService.lookupKeybinding(i.commandId),w=b?e(1841,"{0}, {1}",i.label,b.getAriaLabel()):i.label,I=i.buttons||[],M=v?[...I,{iconClass:J.asClassName(y.close),tooltip:e(1842,"Remove from Recently Used")}]:i.buttons;return{...i,id:i.commandId,tooltip:S,ariaLabel:w,detail:this.options.showAlias&&i.commandAlias!==i.label?i.commandAlias:void 0,keybinding:b,buttons:M,accept:async()=>{this.commandsHistory.push(i.commandId),this.telemetryService.publicLog2("workbenchActionExecuted",{id:i.commandId,from:h?.from??"quick open"});try{i.args?.length?await this.commandService.executeCommand(i.commandId,...i.args):await this.commandService.executeCommand(i.commandId)}catch(x){if(!ei(x))this.dialogService.error(e(1843,"Command '{0}' resulted in an error",i.label),kg(x))}},trigger:v?(x,E)=>{let T=I.length;if(x===T)return this.commandsHistory.remove(i.commandId),De.REMOVE_ITEM;if(i.trigger)return i.trigger(x,E);return De.NO_ACTION}:i.trigger}}getTfIdfChunk({label:i,commandAlias:h,commandDescription:v}){let S=i;if(h&&h!==i)S+=` - ${h}`;if(v&&v.value!==i)S+=` - ${v.value===v.original?v.value:`${v.value} (${v.original})`}`;return S}};lo=He=rn([Ee(1,D),Ee(2,fe),Ee(3,Be),Ee(4,In),Ee(5,ud)],lo);var Ai=class f extends n{static{te=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(i,h,v){super();this.storageService=i,this.configurationService=h,this.logService=v,this.configuredCommandsHistoryLength=0,this.updateConfiguration(),this.load(),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration((i)=>this.updateConfiguration(i))),this._register(this.storageService.onWillSaveState((i)=>{if(i.reason===Ml.SHUTDOWN)this.saveState()}))}updateConfiguration(i){if(i&&!i.affectsConfiguration("workbench.commandPalette.history"))return;if(this.configuredCommandsHistoryLength=te.getConfiguredCommandHistoryLength(this.configurationService),te.cache&&te.cache.limit!==this.configuredCommandsHistoryLength)te.cache.limit=this.configuredCommandsHistoryLength,te.hasChanges=!0}load(){let i=this.storageService.get(te.PREF_KEY_CACHE,0),h;if(i)try{h=JSON.parse(i)}catch(S){this.logService.error(`[CommandsHistory] invalid data: ${S}`)}let v=te.cache=new Oi(this.configuredCommandsHistoryLength,1);if(h){let S;if(h.usesLRU)S=h.entries;else S=h.entries.sort((b,w)=>b.value-w.value);S.forEach((b)=>v.set(b.key,b.value))}te.counter=this.storageService.getNumber(te.PREF_KEY_COUNTER,0,te.counter)}push(i){if(!te.cache)return;te.cache.set(i,te.counter++),te.hasChanges=!0}peek(i){return te.cache?.peek(i)}remove(i){if(!te.cache)return;te.cache.delete(i),te.hasChanges=!0}saveState(){if(!te.cache)return;if(!te.hasChanges)return;let i={usesLRU:!0,entries:[]};te.cache.forEach((h,v)=>i.entries.push({key:v,value:h})),this.storageService.store(te.PREF_KEY_CACHE,JSON.stringify(i),0,0),this.storageService.store(te.PREF_KEY_COUNTER,te.counter,0,0),te.hasChanges=!1}static getConfiguredCommandHistoryLength(i){let v=i.getValue().workbench?.commandPalette?.history;if(typeof v==="number")return v;return te.DEFAULT_COMMANDS_HISTORY_LENGTH}};Ai=te=rn([Ee(0,Tn),Ee(1,ie),Ee(2,Ke)],Ai);class Ri extends lo{constructor(f,i,h,v,S,b){super(f,i,h,v,S,b)}getCodeEditorCommandPicks(){let f=this.activeTextEditorControl;if(!f)return[];let i=[];for(let h of f.getSupportedActions()){let v;if(h.metadata?.description)if(mI(h.metadata.description))v=h.metadata.description;else v={original:h.metadata.description,value:h.metadata.description};i.push({commandId:h.id,commandAlias:h.alias,commandDescription:v,label:np(h.label)||h.id})}return i}}var ws=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},$e=function(f,i){return function(h,v){i(h,v,f)}},Dt=class f extends Ri{get activeTextEditorControl(){return this.codeEditorService.getFocusedCodeEditor()??void 0}constructor(i,h,v,S,b,w){super({showAlias:!1},i,v,S,b,w);this.codeEditorService=h}async getCommandPicks(){return this.getCodeEditorCommandPicks()}hasAdditionalCommandPicks(){return!1}async getAdditionalCommandPicks(){return[]}};Dt=ws([$e(0,D),$e(1,Ce),$e(2,fe),$e(3,Be),$e(4,In),$e(5,ud)],Dt);class uo extends U{static{this.ID="editor.action.quickCommand"}constructor(){super({id:uo.ID,label:gw.quickCommandActionLabel,alias:"Command Palette",precondition:void 0,kbOpts:{kbExpr:o.focus,primary:59,weight:100},contextMenuOpts:{group:"z_commands",order:1}})}run(f){f.get(gn).quickAccess.show(Dt.PREFIX)}}N(uo);lt.as(Gs.Quickaccess).registerQuickAccessProvider({ctor:Dt,prefix:Dt.PREFIX,helpEntries:[{description:gw.quickCommandHelp,commandId:uo.ID}]});var Is=function(f,i,h,v){var S=arguments.length,b=S<3?i:v===null?v=Object.getOwnPropertyDescriptor(i,h):v,w;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")b=Reflect.decorate(f,i,h,v);else for(var I=f.length-1;I>=0;I--)if(w=f[I])b=(S<3?w(b):S>3?w(i,h,b):w(i,h))||b;return S>3&&b&&Object.defineProperty(i,h,b),b},Xe=function(f,i){return function(h,v){i(h,v,f)}},ji=class f extends uu{constructor(i,h,v,S,b,w,I){super(!0,i,h,v,S,b,w,I)}};ji=Is([Xe(1,K),Xe(2,Ce),Xe(3,bt),Xe(4,D),Xe(5,Tn),Xe(6,ie)],ji);pe(uu.ID,ji,4);class nn extends U{constructor(){super({id:"editor.action.toggleHighContrast",label:O0.toggleHighContrast,alias:"Toggle High Contrast Theme",precondition:void 0});this._originalThemeName=null}run(f,i){let h=f.get(to),v=h.getColorTheme();if(Qr(v.type))h.setTheme(this._originalThemeName||(Ws(v.type)?Zf:fd)),this._originalThemeName=null;else h.setTheme(Ws(v.type)?op:sp),this._originalThemeName=v.themeName}}N(nn);function Ms(f,i){let h=globalThis.MonacoEnvironment;if(h?.createTrustedTypesPolicy)try{return h.createTrustedTypesPolicy(f,i)}catch(v){console.error(v);return}try{return globalThis.trustedTypes?.createPolicy(f,i)}catch(v){console.error(v);return}}var ho;if(typeof self==="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope"&&globalThis.workerttPolicy!==void 0)ho=globalThis.workerttPolicy;else ho=Ms("defaultWorkerFactory",{createScriptURL:(f)=>f});function ks(f){let i=f.label,h=globalThis.MonacoEnvironment;if(h){if(typeof h.getWorker==="function")return h.getWorker("workerMain.js",i);if(typeof h.getWorkerUrl==="function"){let v=h.getWorkerUrl("workerMain.js",i);return new Worker(ho?ho.createScriptURL(v):v,{name:i,type:"module"})}}if(f.createWorker)return f.createWorker();throw Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function bv(f){let i=Promise.resolve(ks({label:f.label??"monaco-editor-worker",moduleId:f.moduleId,createWorker:f.createWorker})).then((h)=>(h.postMessage("ignore"),h.postMessage(f.createData),h));return Nn.createWebWorker({worker:i,host:f.host,keepIdleModels:f.keepIdleModels})}
|
|
6
|
+
export{bv};
|
|
7
|
+
|
|
8
|
+
//# debugId=731E9F4AC5DEA48264756E2164756E21
|
|
9
|
+
//# sourceMappingURL=studio-2eh507zk.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{f}from"./studio-ffrrncvz.js";import{b}from"./studio-24mccdrj.js";import{v}from"./studio-wz73q5kq.js";import{Xt,Li,rn,pl,Go,sa}from"./studio-nwfrc98n.js";import{Xs,Pc}from"./studio-pag2wncm.js";import{ks,ey,ty,ol,Vo}from"./studio-er30bpcx.js";import{O}from"./studio-c7q0t9x1.js";import{i,T,$h}from"./studio-cffqvnzd.js";import{we}from"./studio-a3g98wjr.js";var Ac="draft",Zb="Marked a draft. Studio filters drafts out of its own lists; the build does not exclude them yet.";function Yu(e){return e?.[Ac]===!0}function W(e){return e?.properties?.[Ac]?.type==="boolean"}function Cm(e,t){return W(e)||Yu(t)}var k=v({includeDrafts:!1});function D(){return k.includeDrafts}function ST(e){k.includeDrafts=e}function K(e,t,n){return n?e:e.filter((a)=>!Yu(t(a)))}var C="__path";function A(){return O?.projectConfig?.content??{}}function Xb(e){let t=A()[e];if(!t?.source)return null;let n=t.source.replace(/^\.\//,"").replace(/\/$/,""),a=t.format==="json"?".json":Li(t.format)?.extensions[0]??Go()?.extensions[0]??".json";return{def:t,dir:n,ext:a,name:e}}function bx(){return Object.entries(A()).filter(([,e])=>{let t=e.source?.replace(/^\.\//,"")??"";return t!==""&&!/\.[a-z0-9]+$/i.test(t)}).map(([e,t])=>({dir:t.source.replace(/^\.\//,"").replace(/\/$/,""),name:e}))}async function R(e,t){let n=f(),a=[],d=async(x)=>{let w;try{w=await n.listDirectory(x)}catch{return}for(let F of w)if(F.type==="directory")await d(F.path);else if(t.some((G)=>F.path.endsWith(G)))a.push(F.path)};return await d(e),a.toSorted()}async function oC(e){await Xt().catch(()=>{});let t=Xb(e);if(!t)return[];return(await R(t.dir,[t.ext])).map((a)=>{let d=a.split("/").pop()??a;return d.slice(0,d.length-t.ext.length)})}async function J(e,t,n){let a=Array.from({length:e.length}),d=0,x=Array.from({length:Math.min(t,e.length)},async()=>{while(d<e.length){let w=d;d+=1,a[w]=await n(e[w])}});return await Promise.all(x),a}function I(e){if(e===void 0)return null;if($h(e))return e;if(Array.isArray(e)&&e.every((t)=>!T(t)))return e.map(String);return JSON.stringify(e)}function j(e){for(let t of b.tabs.values())if(t.documentPath===e)return t;return null}function L(e,t){return e.every((n)=>{let a=n[t];return!i(a)||!a.startsWith("{")&&!a.startsWith("[")})}var N=new WeakSet;async function sC(){let e=[];for(let t of b.tabs.values()){let n=ol(t);if(n&&N.has(n.source))e.push(n.load())}await Promise.all(e)}function V(e){let t=_(e);if(e.drafts)N.add(t);return t}function _(e){let t=new Map,n=null,a=null,d=(c=!1)=>{if(!c&&n)return n;return n=(async()=>{await Xt().catch(()=>{});let u=f(),l=await e.list();t.clear(),a=null;let m=await J(l,32,async(r)=>{try{let o=await u.readFile(r),s=await Vo(r,o);return{document:s.document,formatName:s.format.name,frontmatter:s.frontmatter,rawText:o}}catch{return null}});for(let[r,o]of l.entries()){let s=m[r];if(s)t.set(o,s)}})(),n},x=()=>{if(a)return a;let c={editable:!1,field:C,insertOnly:!0,kind:"string",pk:!0,required:!0,title:"Path",widthHint:220},u=ey(e.schema()),l=new Set([C,...u.map((o)=>o.field)]),m=[...t.values()].map((o)=>{let s={};for(let[p,y]of Object.entries(o.frontmatter))if(!l.has(p)&&!p.startsWith("$"))s[p]=I(y);return s}),r=ty(m);for(let o of r)o.editable=o.kind!=="text"||L(m,o.field);if(e.priorityFields?.length){let o=(s)=>{let p=e.priorityFields.indexOf(s.field);return p===-1?e.priorityFields.length:p};r.sort((s,p)=>o(s)-o(p))}return a=F([c,...u,...r]),a},w=()=>{if(!e.drafts)return!1;let c=e.schema();return Cm(c)||[...t.values()].some((u)=>Cm(c,u.frontmatter))},F=(c)=>{let u=c.findIndex((m)=>m.field===Ac);if(u<1||!w())return c;let l=c.filter((m)=>m.field!==Ac);return[l[0],c[u],...l.slice(1)]},G=(c,u)=>{let l={[C]:c};for(let m of x()){if(m.field===C)continue;l[m.field]=I(u.frontmatter[m.field])}return{cells:l,fingerprint:u.rawText,key:c}},M=async(c,u,l)=>{let m=f(),r={...u.frontmatter};for(let y of l)if(y.value===null)delete r[y.field];else r[y.field]=y.value;let o=u.document,s={...r,...o,children:o.children??[]},p=await sa(u.formatName,s,{mode:"roundtrip"});Xs(c),await m.writeFile(c,p),t.set(c,{...u,frontmatter:r,rawText:p})};return{backingPaths:()=>new Map([...t.keys()].map((c)=>[c,c])),capabilities:{delete:!0,insert:!0,remotePaging:!1,remoteSort:!1},async columns(){return await d(),x()},async commit(c){await d();let u=f(),l={cells:[],deletes:[],inserts:[]},m=new Map;for(let r of c.cells){let o=m.get(r.rowKey)??[];o.push({field:r.field,value:r.value}),m.set(r.rowKey,o)}for(let[r,o]of m){let s=(g,S,E)=>{for(let P of o)l.cells.push({error:S,field:P.field,ok:g,rowKey:r,stale:E})},p=t.get(r);if(!p){s(!1,"Entry no longer loaded — refresh the grid");continue}let y=j(r);if(y?.doc.dirty){s(!1,"Open in a tab with unsaved changes — save or close it first");continue}let h=null;try{h=await u.readFile(r)}catch{h=null}if(h!==p.rawText&&!Pc(r)){s(!1,"File changed on disk — refresh to reload",!0);continue}try{if(await M(r,p,o),s(!0),y){let{reloadFileInTab:g}=await (we("j3knqf0s"),import("./files-j3knqf0s.js"));g(r)}}catch(g){s(!1,g instanceof Error?g.message:String(g))}}for(let r of c.inserts){let o=r.cells[C];if(!i(o)||o.trim()===""){l.inserts.push({error:"Path is required",ok:!1,tempKey:r.tempKey});continue}let s=e.resolveInsertPath(o),p=t.has(s);if(!p)try{await u.readFile(s),p=!0}catch{p=!1}if(p){l.inserts.push({error:`${s} already exists`,ok:!1,tempKey:r.tempKey});continue}let y=e.insertFormatName(s);if(!y){l.inserts.push({error:`No format can serialize ${s}`,ok:!1,tempKey:r.tempKey});continue}try{let h={};for(let[E,P]of Object.entries(r.cells))if(E!==C&&P!==null)h[E]=P;let g=await sa(y,{...h,children:[]},{frontmatter:Object.keys(h).length>0,mode:"roundtrip"});Xs(s),await u.writeFile(s,g);let S=await Vo(s,g);t.set(s,{document:S.document,formatName:S.format.name,frontmatter:S.frontmatter,rawText:g}),l.inserts.push({newKey:s,ok:!0,tempKey:r.tempKey})}catch(h){l.inserts.push({error:h instanceof Error?h.message:String(h),ok:!1,tempKey:r.tempKey})}}for(let r of c.deletes){if(j(r.rowKey)){l.deletes.push({error:"Open in a tab — close it first",ok:!1,rowKey:r.rowKey});continue}try{Xs(r.rowKey),await u.deleteFile(r.rowKey),t.delete(r.rowKey),l.deletes.push({ok:!0,rowKey:r.rowKey})}catch(o){l.deletes.push({error:o instanceof Error?o.message:String(o),ok:!1,rowKey:r.rowKey})}}return l},id:e.id,label:e.label,async refresh(){await d(!0)},async rows(){await d();let u=(e.drafts?K([...t.entries()],([,l])=>l.frontmatter,D()):[...t.entries()]).map(([l,m])=>G(l,m));return{rows:u,total:u.length}}}}function aC(e){let t=()=>{let n=Xb(e);if(!n)throw Error(`No content collection named "${e}" in project.json`);return n};return V({drafts:!0,id:ks({kind:"collection",name:e}),insertFormatName:(n)=>{let a=t();return(a.def.format?Li(a.def.format)?.name:void 0)??rn(n)?.name??Go()?.name??null},label:e,list:()=>{let n=t();return R(n.dir,[n.ext])},resolveInsertPath:(n)=>{let a=t(),d=n.trim().replace(/^\.\//,"").replace(/^\//,"");if(!d.includes("/"))d=`${a.dir}/${d}`;if(!d.endsWith(a.ext))d=`${d}${a.ext}`;return d},schema:()=>t().def.schema})}function lC(){let e=()=>{let t=pl("page").filter((n)=>n!==".json");return t.length>0?t:[".md"]};return V({id:ks({kind:"pages"}),insertFormatName:(t)=>rn(t)?.name??null,label:"Pages",list:()=>R("pages",e()),priorityFields:["title","description"],resolveInsertPath:(t)=>{let n=t.trim().replace(/^\.\//,"").replace(/^\//,"");if(!n.startsWith("pages/"))n=`pages/${n}`;if(!e().some((a)=>n.endsWith(a)))n=`${n}${e()[0]}`;return n},schema:()=>null})}
|
|
2
|
+
export{Ac,Zb,Yu,Cm,ST,Xb,bx,oC,sC,aC,lC};
|
|
3
|
+
|
|
4
|
+
//# debugId=1931337715F2B9E964756E2164756E21
|
|
5
|
+
//# sourceMappingURL=studio-2hcbccfv.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{yn,hn,ae}from"./studio-v8aga3vp.js";import{f}from"./studio-ffrrncvz.js";import{Wo}from"./studio-p1wgvp7r.js";import{v}from"./studio-wz73q5kq.js";import{dt,Gt,I,A,jn,Lt}from"./studio-2jbs3rxv.js";import{Ad,AT,Lm,fC,PT,$a,$p}from"./studio-at5spjbc.js";import{sm,uS}from"./studio-ezscgr64.js";import{O}from"./studio-c7q0t9x1.js";import{te}from"./studio-cffqvnzd.js";import{we}from"./studio-a3g98wjr.js";function tl(e){let t=e.trim().replaceAll("\\","/").split("/").filter((n)=>n!=="");return t.some((n)=>n==="."||n==="..")?null:t.join("/")}var C={$schema:"https://jxsuite.com/schema/v1",$id:"StudioPublish",$description:"Publish: the one-click Cloudflare Pages flow, as a `jx-dialog` over the kit. Eight bodies, one at a time, because the reader is at exactly one point of a chain — a host that cannot reach Cloudflare at all, a question still in flight, a connection that lapsed, an invitation to connect, a stored token Cloudflare refused, a field to paste a replacement into, the create-and-connect form, and the connected status. `publish/publish-panel.ts` keeps every one of those decisions and the calls that settle them; this document knows only which of the eight it was told to draw. **The token is never painted.** The field below binds no `value` — it is written by the reader and read once, on its way to storage — so a stored secret cannot reach the attribute, the serialised HTML or the accessibility tree, which is `studio.md` §15 rule 1 written as a missing binding rather than as a rule somebody remembers.",tagName:"jx-dialog",$props:{headline:"Publish",confirmLabel:"",cancelLabel:"Close",size:"md"},attributes:{part:"publish"},oncancel:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/closed"},value:[]}]},onclose:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/closed"},value:[]}]},style:{$description:"What the five `.publish-*` names carried, keyed on `part`, and most of them do not survive the move. `.publish-modal` and its `.new-project-modal` base were a fixed card, a scroll body, a border, a shadow and a `z-index: 1000` — a modal `<dialog>` is every one of those, and the top layer is what the z-index was climbing towards. `.publish-field` was a label stacked over a control, which is `jx-field`'s whole shape. What is left is the column gap between bodies, the two button rows, the hint and the refusal. Nothing here uses `--spectrum-*`: those custom properties resolve only inside `<sp-theme>`, and a document mounted in a layer host is outside it, so each would silently have taken its hard-coded fallback.",'& [part="body"]':{display:"flex",flexDirection:"column",gap:"var(--jx-space-3)"},'& [part="note"], & [part="status-line"], & [part="deployment"]':{margin:"0",lineHeight:"1.5"},'& [part="rows"]':{display:"flex",flexDirection:"column",gap:"var(--jx-space-3)"},'& [part="actions"]':{$description:'Wraps rather than overflows (studio-ui-guidelines.md §4.6): two buttons whose labels are whole phrases — "Verify & Connect", "Preferences › Accounts" — are wider than a narrow dialog at the sizes a reader may have set.',display:"flex",flexWrap:"wrap",gap:"var(--jx-space-2)"},'& [part="submit"]':{alignSelf:"flex-start"},'& [part="hint"]':{$description:"Publishing rides every commit, so the connected body's only job is to say what is already happening. Dim, because it is a standing fact rather than something to act on.",margin:"0",color:"var(--fg-dim)",fontSize:"var(--jx-text-sm)"},'& [part="failure"]':{$description:'`failure` and not `error`: `jx-textfield` and `jx-select` each draw a `[part="error"]` of their own inside this same tree, and the kit is light DOM — a scoped rule on that name would restyle the token field\'s refusal line too.',margin:"0",color:"var(--danger)",lineHeight:"1.5"},'& [part="link"], & [part="install-link"]':{color:"var(--accent)",textDecoration:"underline"},"& code":{fontFamily:"var(--font-mono)",fontSize:"var(--jx-text-sm)"}},children:[{tagName:"div",attributes:{part:"body"},children:[{tagName:"div",attributes:{part:"body-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"#/state/body"},cases:{unsupported:{tagName:"p",attributes:{part:"note"},children:["This platform cannot reach the Cloudflare API. Publish by committing and pushing — your host builds ",{tagName:"code",textContent:"bunx jx build"}," and serves ",{tagName:"code",textContent:"dist/"},"."]},loading:{tagName:"p",attributes:{part:"note"},textContent:"Checking Cloudflare connection…"},lapsed:{tagName:"div",attributes:{part:"lapsed",role:"none"},style:{display:"contents"},children:[{tagName:"p",attributes:{part:"note"},textContent:"Your Cloudflare connection has expired, so publishing cannot reach your account. Reconnect to restore it — this site's Pages project and its settings are untouched."},{tagName:"jx-button",$props:{variant:"accent",disabled:{$ref:"#/state/busy"}},attributes:{part:"reconnect"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/connect"},value:[]}]},children:[{tagName:"span",textContent:"${state.connectLabel}"}]}]},hosted:{tagName:"div",attributes:{part:"hosted",role:"none"},style:{display:"contents"},children:[{tagName:"p",attributes:{part:"note"},textContent:"Connect your Cloudflare account to publish this site."},{tagName:"jx-button",$props:{disabled:{$ref:"#/state/busy"}},attributes:{part:"connect"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/connect"},value:[]}]},children:[{tagName:"span",textContent:"Connect Cloudflare"}]}]},stored:{tagName:"div",attributes:{part:"stored",role:"none"},style:{display:"contents"},children:[{tagName:"p",attributes:{part:"note"},textContent:"A Cloudflare API token is stored on this machine, and Cloudflare did not accept it. It may have been revoked, or it may be missing the Account Settings Read and Pages Read/Write permissions."},{tagName:"div",attributes:{part:"actions"},children:[{tagName:"jx-button",$props:{disabled:{$ref:"#/state/busy"}},attributes:{part:"replace"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/replace"},value:[]}]},children:[{tagName:"span",textContent:"Replace token"}]},{tagName:"jx-button",$props:{quiet:!0},attributes:{part:"accounts"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/openAccounts"},value:[]}]},children:[{tagName:"span",textContent:"Preferences › Accounts"}]}]}]},token:{tagName:"div",attributes:{part:"token-form",role:"none"},style:{display:"contents"},children:[{tagName:"p",attributes:{part:"note"},textContent:"Paste a Cloudflare API token (permissions: Account Settings Read, Pages Read/Write). It is stored on this machine and only sent to the same-origin proxy — Studio never renders it back."},{tagName:"jx-field",$props:{span:!0,label:"API token"},attributes:{part:"token-row","data-field":"token"},children:[{tagName:"jx-textfield",$description:"No `value` binding, and its absence is the contract: a secret may pass through a field the reader typed it into and may never be painted into one they did not. The draft lives in the adapter's closure until Verify reads it, so nothing here — not the attribute, not the accessibility tree, not a DOM dump — has ever held it.",$props:{type:"password",placeholder:"cf_..."},attributes:{part:"token"},oninput:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/setToken"},value:[{$ref:"event#/target/value"}]}]}}]},{tagName:"div",attributes:{part:"actions"},children:[{tagName:"jx-button",$props:{variant:"accent",disabled:{$ref:"#/state/busy"}},attributes:{part:"verify"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/verify"},value:[]}]},children:[{tagName:"span",textContent:"Verify & Connect"}]},{tagName:"jx-button",$props:{quiet:!0},attributes:{part:"accounts"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/openAccounts"},value:[]}]},children:[{tagName:"span",textContent:"Preferences › Accounts"}]}]}]},form:{tagName:"div",attributes:{part:"connect-form",role:"none"},style:{display:"contents"},children:[{tagName:"p",attributes:{part:"note"},children:["Create a Cloudflare Pages project connected to this repository. Every commit then builds and publishes automatically (",{tagName:"code",textContent:"bunx jx build"},")."]},{tagName:"div",attributes:{part:"rows"},children:[{tagName:"jx-field",$props:{span:!0,label:"Account"},attributes:{part:"row","data-field":"account"},children:[{tagName:"jx-select",$props:{options:{$ref:"#/state/accountOptions"},value:{$ref:"#/state/accountId"}},attributes:{part:"account"},onchange:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/setAccount"},value:[{$ref:"event#/target/value"}]}]}}]},{tagName:"jx-field",$props:{span:!0,label:"Pages project name"},attributes:{part:"row","data-field":"projectName"},children:[{tagName:"jx-textfield",$props:{value:{$ref:"#/state/projectName"}},attributes:{part:"project-name"},oninput:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/setProjectName"},value:[{$ref:"event#/target/value"}]}]}}]},{tagName:"jx-field",$props:{span:!0,label:"GitHub owner"},attributes:{part:"row","data-field":"owner"},children:[{tagName:"jx-textfield",$props:{value:{$ref:"#/state/owner"}},attributes:{part:"owner"},oninput:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/setOwner"},value:[{$ref:"event#/target/value"}]}]}}]},{tagName:"jx-field",$props:{span:!0,label:"GitHub repository"},attributes:{part:"row","data-field":"repo"},children:[{tagName:"jx-textfield",$props:{value:{$ref:"#/state/repo"}},attributes:{part:"repo"},oninput:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/setRepo"},value:[{$ref:"event#/target/value"}]}]}}]},{tagName:"jx-field",$props:{span:!0,label:"Production branch"},attributes:{part:"row","data-field":"branch"},children:[{tagName:"jx-textfield",$props:{value:{$ref:"#/state/branch"}},attributes:{part:"branch"},oninput:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/setBranch"},value:[{$ref:"event#/target/value"}]}]}}]}]},{tagName:"jx-button",$props:{variant:"accent",disabled:{$ref:"#/state/busy"}},attributes:{part:"submit"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/submit"},value:[]}]},children:[{tagName:"span",textContent:"${state.submitLabel}"}]}]},status:{tagName:"div",attributes:{part:"status",role:"none"},style:{display:"contents"},children:[{tagName:"p",attributes:{part:"status-line"},children:["Connected to Pages project ",{tagName:"strong",attributes:{part:"project-name"},textContent:"${state.deployProject}"},{tagName:"span",attributes:{part:"site-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"#/state/hasProductionUrl"},cases:{true:{tagName:"span",children:[" — ",{tagName:"a",attributes:{part:"link",href:"${state.productionUrl}",target:"_blank",rel:"noreferrer"},textContent:"${state.productionUrl}"}]}}}]},{tagName:"div",attributes:{part:"deployment-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"#/state/hasDeployment"},cases:{true:{tagName:"p",attributes:{part:"deployment"},children:["Latest deployment: ",{tagName:"strong",attributes:{part:"deployment-state"},textContent:"${state.deploymentState}"}," (${state.deploymentEnvironment}) — ",{tagName:"a",attributes:{part:"link",href:"${state.deploymentUrl}",target:"_blank",rel:"noreferrer"},textContent:"preview"}]},false:{tagName:"p",attributes:{part:"deployment"},textContent:"No deployments yet — the first commit after connecting triggers one."}}},{tagName:"p",attributes:{part:"hint"},textContent:"Publishing happens automatically on every commit."},{tagName:"div",attributes:{part:"actions"},children:[{tagName:"jx-button",$props:{disabled:{$ref:"#/state/busy"}},attributes:{part:"refresh"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/refresh"},value:[]}]},children:[{tagName:"span",textContent:"Refresh"}]},{tagName:"jx-button",$props:{variant:"negative",disabled:{$ref:"#/state/busy"}},attributes:{part:"disconnect"},onclick:{$prototype:"Function",body:[{operator:"call",target:{$ref:"#/state/disconnect"},value:[]}]},children:[{tagName:"span",textContent:"Disconnect"}]}]}]}}},{tagName:"div",attributes:{part:"failure-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"#/state/hasFailure"},cases:{true:{tagName:"p",attributes:{part:"failure"},children:["${state.failure}",{tagName:"span",attributes:{part:"pages-app-slot",role:"none"},style:{display:"contents"},$switch:{$ref:"#/state/needsPagesApp"},cases:{true:{tagName:"span",children:[" — if the Cloudflare Pages GitHub App is not installed on the repository, ",{tagName:"a",attributes:{part:"install-link",href:"${state.pagesAppUrl}",target:"_blank",rel:"noreferrer"},textContent:"install it"}," and retry."]}}}]}}}]}]};I("publish",C);var D="https://github.com/apps/cloudflare-pages/installations/new";function R(e){if(!e.supported)return"unsupported";if(e.loading)return"loading";if(e.connected&&e.lapsed)return"lapsed";if(!e.connected){if(e.hosted)return"hosted";return e.tokenStored&&!e.replacing?"stored":"token"}return e.deploy?"status":"form"}function w(e){let{error:t}=e;return{accountId:e.form.accountId,accountOptions:e.accounts,body:R(e),branch:e.form.branch,busy:e.busy,connectLabel:e.busy?"Reconnecting…":"Reconnect Cloudflare",deploymentEnvironment:e.deployment?.environment??"",deploymentState:e.deployment?`${e.deployment.stage}: ${e.deployment.status}`:"",deploymentUrl:e.deployment?.url??"",deployProject:e.deploy?.projectName??"",failure:t,hasDeployment:e.deployment!==null,hasFailure:t!=="",hasProductionUrl:(e.deploy?.productionUrl??"")!=="",needsPagesApp:/github/i.test(t)&&/app|install|source|repo/i.test(t),owner:e.form.owner,pagesAppUrl:D,productionUrl:e.deploy?.productionUrl??"",projectName:e.form.projectName,repo:e.form.repo,submitLabel:e.busy?"Connecting…":"Create & Connect"}}function j(e){let t=document.createElement("div");t.style.pointerEvents="auto",e.layer.append(t);let n="",u=!1,N=()=>{if(u)return;u=!0,e.onClosed()},P=()=>u,p=v({...w(e.view),closed:N,connect:()=>{e.onConnect()},disconnect:()=>{e.onDisconnect()},openAccounts:()=>{e.onOpenAccounts()},refresh:()=>{e.onRefresh()},replace:()=>{n="",e.onReplaceToken()},setAccount:(o)=>{p.accountId=o,e.onField("accountId",o)},setBranch:(o)=>{p.branch=o,e.onField("branch",o)},setOwner:(o)=>{p.owner=o,e.onField("owner",o)},setProjectName:(o)=>{p.projectName=o,e.onField("projectName",o)},setRepo:(o)=>{p.repo=o,e.onField("repo",o)},setToken:(o)=>{n=o},submit:()=>{e.onSubmit()},verify:()=>{let o=n;n="",e.onSaveToken(o)}}),b=null,S=A("publish",p,t).then(async(o)=>{b=o;let d=o.root;if(P())return o.dispose(),d;if(await jn(d),P())return d;return(d.querySelector('dialog[part="dialog"]')??d).setAttribute(dt,Gt("modal","publish")),yn(d),d});return{close(){let o=b?.root;if(o instanceof HTMLElement)hn(o);b?.dispose(),b=null,n="",t.remove(),N()},host:t,ready:S,update(o){Object.assign(p,w(o))}}}var m=null,i="loading",h=[],l=null,r="",c=!1,g=!1,a={accountId:"",branch:"main",owner:"",projectName:"",repo:""};function x(){return O?.projectConfig??null}function T(e){return e.toLowerCase().replaceAll(/[^a-z0-9]+/g,"-").replaceAll(/^-+|-+$/g,"").slice(0,58)||"site"}function H(){let e=f().projectRoot,t=/^([\w.-]+)\/([\w.-]+)(?:@.+)?$/.exec(e);return t?{owner:t[1],repo:t[2]}:{owner:"",repo:""}}function L(){let e=/^[\w.-]+\/[\w.-]+@[^:]+:(.+)$/.exec(f().projectRoot)?.[1]??"";return tl(e)??""}function U(){let e=$a();return e?{productionUrl:e.productionUrl??"",projectName:e.projectName}:null}function k(){let e=Ad(),t=i==="loading"?null:i;return{accounts:h.map((n)=>({label:n.name,value:n.id})),busy:c,connected:t?.connected===!0,deploy:U(),deployment:l?{environment:l.environment,stage:l.stage,status:l.status,url:l.url}:null,error:r,form:{...a},hosted:e&&te(f().cfConnect),lapsed:t?.connected===!0&&t.needsReconnect===!0,loading:i==="loading",replacing:g,supported:e,tokenStored:sm()!==""}}function s(){if(m){m.update(k());return}m=j({layer:Lt("modal"),onClosed:B,onConnect:()=>{M()},onDisconnect:()=>{z()},onField:(e,t)=>{a={...a,[e]:t}},onOpenAccounts:_,onRefresh:()=>{y()},onReplaceToken:()=>{g=!0,r="",s()},onSaveToken:(e)=>{E(e)},onSubmit:()=>{V()},view:k()})}async function y(){i="loading",s();try{if(i=await f().cfConnection?.()??null,i?.connected&&!i.needsReconnect){h=await AT(),a={...a,accountId:i.accountId??h[0]?.id??""};let e=$a();if(e)l=await Lm(e),$p(l)}}catch(e){i=null,r=e instanceof Error?e.message:String(e)}s()}async function E(e){let t=e.trim();if(!t){r="Paste a token, or use Preferences › Accounts to forget the stored one.",s();return}uS(t),g=!1,r="",await y()}function _(){ae()?.run("app.preferences",{section:"accounts"})}async function M(){c=!0,r="",s();try{let e=await f().cfConnect?.()??null;if(e?.status==="timeout")r="The Cloudflare window didn't finish. Sign in there, then reconnect — nothing was changed.";else if(e?.status==="connected"&&!e.connection.accountId){let{openCfAccountPicker:t}=await (we("wccaenh6"),import("./cf-account-picker-wccaenh6.js"));await t()}}catch(e){r=e instanceof Error?e.message:String(e)}c=!1,Wo(),await y()}async function V(){let e=x();if(!e)return;if(!a.projectName||!a.owner||!a.repo||!a.accountId){r="Account, project name, and the GitHub owner/repo are all required.",s();return}c=!0,r="",s();try{let t=L(),n={accountId:a.accountId,owner:a.owner,productionBranch:a.branch||"main",projectName:a.projectName,repo:a.repo};if(t)n.rootDir=t;let u=await PT(e,n);l=await Lm(u).catch(()=>null)}catch(t){r=t instanceof Error?t.message:String(t)}c=!1,s()}async function z(){let e=x();if(!e)return;c=!0,s();try{await fC(e,null),l=null}catch(t){r=t instanceof Error?t.message:String(t)}c=!1,s()}function B(){let e=m;m=null,e?.close()}function nS(e){i={accountId:e.accountId??"demo-account",connected:!0},h=[],l=e.deployment,$p(e.deployment),r="",c=!1,g=!1,s()}function JI(){let e=x(),{owner:t,repo:n}=H();i="loading",h=[],l=null,r="",c=!1,g=!1,a={accountId:"",branch:"main",owner:t,projectName:$a()?.projectName??T(e?.name??""),repo:n},s(),y()}
|
|
2
|
+
export{tl,nS,JI};
|
|
3
|
+
|
|
4
|
+
//# debugId=1C679819F42A75C964756E2164756E21
|
|
5
|
+
//# sourceMappingURL=studio-2j1cb95x.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{tR,w_,yn,hn,mg,sR,ae}from"./studio-v8aga3vp.js";import{mt,Vi}from"./studio-0q988f9w.js";import{xe,oe,v,Jc,E,lu}from"./studio-wz73q5kq.js";import{re}from"./studio-j1kvhdjk.js";import{i,te}from"./studio-cffqvnzd.js";var k=new Map,Q=1;function X(e){let t=Q;return Q+=1,k.set(t,{...e,id:t}),t}function _(e){k.delete(e)}function Z(){return[...k.values()]}function q$(e){let t=e.toLowerCase();return Z().filter((o)=>o.elements.has(t))}function K$(e){return Z().filter((t)=>t.name===e)}var F=null;function X1(e=document){return F??=sR({document:e}),F}function ee(){return F??X1()}var dt="data-jx-region",fe=["rail","navigator","inspector","pane","dock.bottom","statusbar","commandbar","overlay"],me=new Set(["dock.bottom"]);function pe(e){let t=e.indexOf("/"),o=t===-1?e:e.slice(0,t),n=t===-1?void 0:e.slice(t+1);if(n===""||o==="")return null;let s=o,a;if(!me.has(o)){let c=o.indexOf(".");if(c!==-1){if(s=o.slice(0,c),a=o.slice(c+1),a==="")return null}}let l=fe.find((c)=>c===s);if(l===void 0)return null;return a===void 0?n===void 0?{surface:l}:{part:n,surface:l}:n===void 0?{instance:a,surface:l}:{instance:a,part:n,surface:l}}function ge(e){return pe(e)!==null}function ve(e){if(e==="pane")return"pane.primary";return e.startsWith("pane/")?`pane.primary/${e.slice(5)}`:e}function ne(e){return e??document}var he=[{locate:([,e],t)=>{let n=lf(`inspector/field:${e}`,t)?.querySelector('[part="browse"]');return n?[n]:[]},pattern:/^inspector\/field:(.+)\/browse$/},{locate:([,e],t)=>{let o=lf("inspector",t);return o?[...o.querySelectorAll(`[data-prop="${CSS.escape(e)}"]`)]:[]},pattern:/^inspector\/field:(.+)$/}];function be(e,t){let o=ve(e);if(!ge(o))return[];let n=[...ne(t).querySelectorAll(`[data-jx-region="${CSS.escape(o)}"]`)];if(n.length>0)return n;for(let s of he){let a=o.match(s.pattern);if(a)return s.locate(a,ne(t))}return[]}function lf(e,t){return be(e,t).at(-1)??null}var Q1={dock:"dock.bottom",inspector:"inspector",navigator:"navigator",pane:"pane.primary",rail:"rail",status:"statusbar"};function sr(e,t){return t?`pane.${e}/${t}`:`pane.${e}`}function G$(e){return sr(e,"tabs")}function J$(e){return`navigator/panel:${e}`}function Y$(e){return`inspector/tab:${e}`}var Z$="navigator/statements";function X$(e){return`inspector/statements:${e}`}function dv(e){return`dock.bottom/panel:${e}`}var ye={dialog:"dialog",modal:"dialog",popover:"menu",toast:"toasts"};function Gt(e,t){let o=ye[e];return t?`overlay.${o}:${t}`:`overlay.${o}`}var T="jx-studio:/surfaces/",w=new Map;function I(e,t){w.set(e,t),w_(Se(e),t)}function Se(e){return`${T}${e}.json`}function Q$(e){return w.get(e)}function $e(e){if(!e.startsWith(T)||!e.endsWith(".json"))return;return w.get(e.slice(T.length,-5))}async function A(e,t,o,n={}){let s=w.get(e);if(!s)throw Error(`Studio surface "${e}" is not registered`);if(await ee(),n.region)o.setAttribute(dt,n.region);let a={scope:t,base:T,resolver:$e};if(n.onNodeCreated)a.onNodeCreated=n.onNodeCreated;if(n.onNodeMoved)a.onNodeMoved=n.onNodeMoved;if(n.signal)a.signal=n.signal;let l=await tR(s,o,a),c=(r)=>({dispose:r,elements:l.elements,root:l.root,scope:l.scope});if(n.signal?.aborted)return c(l.dispose);let d=0,m=()=>{l.dispose(),_(d)};return d=X({elements:l.elements,host:o,name:e,remount:async()=>{m(),await A(e,t,o,n)}}),n.signal?.addEventListener("abort",()=>_(d),{once:!0}),c(m)}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."}}}]};I("dialog",ie);function jn(e){if(e.querySelector('[part="dialog"]'))return Promise.resolve(e);return new Promise((t)=>{e.addEventListener("jx-ready",function o(n){if(n.target!==e&&!e.querySelector('[part="dialog"]'))return;e.removeEventListener("jx-ready",o),t(e)})})}function Ds(e){let t=document.createElement("div");t.style.pointerEvents="auto",t.setAttribute(dt,Gt("dialog",e.region)),e.layer.append(t);let o=v({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:(r)=>{o.value=r,e.onInput?.(r)},invalid:!1,message:e.message??"",options:e.choice?.options??[],pick:(r)=>{e.onPick?.(r)},placeholder:e.field?.placeholder??"",secondary:()=>{e.onSecondary?.()},secondaryLabel:e.secondaryLabel??"",size:e.size??"sm",value:e.field?.value??""}),n=null,s=!1,a=()=>s,l=()=>{},c=new Promise((r)=>{l=r}),m=A("dialog",o,t).then(async(r)=>{let u=r.root;if(a())return r.dispose(),u;if(n=r,await Promise.race([jn(u),c]),a())return u;if(e.island?.(u.querySelector('[part="island"]')??u),yn(u),e.field){let x=u.querySelector("jx-textfield");if(x)setTimeout(()=>{if(!s)mg(x,e.field?.select??"all")},0)}return u});return{close(){if(s)return;s=!0,l();let r=n?.root;if(r instanceof HTMLElement)hn(r);n?.dispose(),n=null,t.remove()},host:t,ready:m,update(r){if(r.confirmLabel!==void 0)o.confirmLabel=r.confirmLabel;if(r.cancelLabel!==void 0)o.cancelLabel=r.cancelLabel;if(r.secondaryLabel!==void 0)o.secondaryLabel=r.secondaryLabel;if(r.message!==void 0)o.message=r.message,o.hasMessage=r.message!=="";if(r.value!==void 0)o.value=r.value;if(r.placeholder!==void 0)o.placeholder=r.placeholder;if(r.invalid!==void 0)o.invalid=r.invalid;if(r.error!==void 0)if(r.error!==""&&r.error===o.error){o.error="";let u=r.error;queueMicrotask(()=>{o.error=u})}else o.error=r.error;if(r.options!==void 0)o.options=r.options;if(r.chosen!==void 0)o.chosen=r.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 un(e,t,o,n=t){let s=(l)=>{if(!Te(l))console.error(`${n}: command "${t}" failed`,l);E.error(re(l),{key:`command.run:${t}`,source:n})},a;try{a=e.run(t,o)}catch(l){return s(l),Promise.resolve()}return Promise.resolve(a).catch(s)}function fl(e,t,o){let n=ae();return n?un(n,e,t,o):Promise.resolve()}var de=null,z=null,J=null,C=null;function Lt(e){return(e==="popover"?de:e==="modal"?z:e==="toast"?C:J)??document.body}function ek(){de=document.querySelector("#layer-popover"),z=document.querySelector("#layer-modal"),J=document.querySelector("#layer-dialog"),C=document.querySelector("#layer-toast"),Ne()}var le="jx-dialog[data-open], dialog[open]";function ug(){return Boolean(J?.querySelector(le)||z?.querySelector(le))}function co(e,t,o={}){let{confirmLabel:n="Confirm",cancelLabel:s="Cancel",destructive:a=!1}=o;return new Promise((l)=>{let c=!1,d=(r)=>{if(c)return;c=!0,m.close(),l(r)},m=Ds({cancelLabel:s,confirmLabel:n,destructive:a,headline:e,layer:Lt("dialog"),...U(t),onCancel:()=>d(!1),onClosed:()=>d(!1),onConfirm:()=>d(!0)})})}function v_(e,t,o={}){let{saveLabel:n="Save",discardLabel:s="Discard",cancelLabel:a="Cancel"}=o;return new Promise((l)=>{let c=!1,d=(r)=>{if(c)return;c=!0,m.close(),l(r)},m=Ds({cancelLabel:a,confirmLabel:n,headline:e,layer:Lt("dialog"),...U(t),onCancel:()=>d("cancel"),onClosed:()=>d("cancel"),onConfirm:()=>d("save"),onSecondary:()=>d("discard"),secondaryLabel:s})})}function U(e){if(i(e))return{message:e};return{island:(t)=>{Vi(e,t)}}}function Hn(e,t={}){let{cancelLabel:o="Cancel",choice:n,confirmLabel:s="OK",message:a,mono:l=!1,multiline:c=!1,placeholder:d="",rows:m="3",select:r="all",size:u,validate:x,value:ue=""}=t,H=(g)=>x?x(g,L):g.trim()?"":"Enter a value.",h=ue,L=n?.initial??"",p="",V=!1,W=()=>te(d)?d():d,K=()=>n?n.options().map((g)=>({label:g.label,value:g.value})):[];return new Promise((g)=>{let B=!1,P=(f)=>{if(B)return;B=!0,D.close(),g(f)},Y=(f)=>{p=f,D.update({error:p,invalid:p!==""})},S={cancelLabel:o,confirmLabel:s,headline:e,layer:Lt("dialog"),onCancel:()=>P(null),onClosed:()=>P(null),onConfirm:()=>{let f=H(h);if(f){Y(f);return}P(h.trim())},onInput:(f)=>{V=!0,h=f;let R=H(h);if(R!==p)Y(R)},onPick:(f)=>{L=f,n?.onChange?.(f);let R=H(h);p=V||p?R:"",D.update({chosen:L,error:p,invalid:p!=="",options:K(),placeholder:W()})}};if(a!==void 0)Object.assign(S,U(a));if(n)S.choice={chosen:L,label:n.label,options:K()};if(S.field={mono:l,multiline:c,placeholder:W(),rows:m,select:r,value:h},u!==void 0)S.size=u;let D=Ds(S)})}var O=new Map;function Ns(e,t){let o=`${e}:${t}`,n=O.get(o);if(n&&n.parentElement)return n;return n=document.createElement("div"),n.style.pointerEvents="auto",n.setAttribute(dt,Gt(e,t)),Lt(e).append(n),O.set(o,n),n}function hg(e,t){let o=`${e}:${t}`,n=O.get(o);if(n)Vi(mt,n),n.remove(),O.delete(o)}var we=180,Ee={error:"✕",info:"ℹ",success:"✓",warn:"!"},j=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 Ce(){try{return new URLSearchParams(globalThis.location.search).get("automation")==="1"}catch{return!1}}function tk(){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),lu(e)}function Oe(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||Ce())return;y.set(e.id,setTimeout(()=>q(e.id),o))}I("toasts",se);var G=null,N=null,M=null;function ce(){return G??=v({dismissToast:(e)=>{q(e)},runAction:(e)=>{let t=Jc.find((n)=>n.id===e),o=ae();if(!t?.action||!o)return;q(e),un(o,t.action,t.actionArgs,"Notifications")},toasts:[]}),G}function je(e){let t=e.action===void 0?null:ae(),o=e.action,n=t&&o!==void 0?t.get(o):void 0,s=n&&o!==void 0&&t.isVisible(o)?n:null,a=s&&o!==void 0?t.disabledReason(o):void 0;return{actionDisabled:a!==void 0,actionLabel:s?.title??"",actionTitle:s===null?"":a===void 0?s.title:`${s.title} — requires ${a}`,hasAction:s!==null,icon:Ee[e.severity],id:e.id,message:e.message,severity:e.severity}}function Ne(){if(Ae(),!C)return;j=xe(),j.run(()=>{oe(()=>{Jc.length,ae();for(let e of Jc)Oe(e);ce().toasts=Jc.map((e)=>je(e))})}),N=A("toasts",ce(),C),N.then((e)=>{M=e})}function Ae(){j?.stop(),j=null;for(let t of y.values())clearTimeout(t);y.clear(),b.clear();let e=N;if(N=null,M)M.dispose(),M=null;else if(e)e.then((t)=>t.dispose());G=null}
|
|
2
|
+
export{q$,K$,X1,dt,lf,Q1,sr,G$,J$,Y$,Z$,X$,dv,Gt,I,Q$,A,jn,Ds,un,fl,Lt,ek,ug,co,v_,Hn,Ns,hg,tk};
|
|
3
|
+
|
|
4
|
+
//# debugId=1B2DA7E97F4E9D3C64756E2164756E21
|
|
5
|
+
//# sourceMappingURL=studio-2jbs3rxv.js.map
|