dsh-plugin-core 0.2.14 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +52 -83
- package/dist/design/tokens-css.d.ts +1 -1
- package/dist/design/tokens-css.d.ts.map +1 -1
- package/dist/design/tokens-css.generated.d.ts +2 -0
- package/dist/design/tokens-css.generated.d.ts.map +1 -0
- package/dist/design/tokens-css.generated.js +4 -0
- package/dist/design/tokens-css.generated.js.map +1 -0
- package/dist/design/tokens-css.js +1 -252
- package/dist/design/tokens-css.js.map +1 -1
- package/dist/explorer/FileBrowser.d.ts +41 -0
- package/dist/explorer/FileBrowser.d.ts.map +1 -0
- package/dist/explorer/FileBrowser.js +659 -0
- package/dist/explorer/FileBrowser.js.map +1 -0
- package/dist/explorer/explorer-css.d.ts +1 -1
- package/dist/explorer/explorer-css.d.ts.map +1 -1
- package/dist/explorer/explorer-css.generated.d.ts +2 -0
- package/dist/explorer/explorer-css.generated.d.ts.map +1 -0
- package/dist/explorer/explorer-css.generated.js +4 -0
- package/dist/explorer/explorer-css.generated.js.map +1 -0
- package/dist/explorer/explorer-css.js +1 -31
- package/dist/explorer/explorer-css.js.map +1 -1
- package/dist/explorer/index.d.ts +4 -2
- package/dist/explorer/index.d.ts.map +1 -1
- package/dist/explorer/index.js +4 -2
- package/dist/explorer/index.js.map +1 -1
- package/dist/explorer/open.d.ts +103 -0
- package/dist/explorer/open.d.ts.map +1 -0
- package/dist/explorer/open.js +282 -0
- package/dist/explorer/open.js.map +1 -0
- package/dist/explorer/preview/BytesPreview.d.ts +13 -0
- package/dist/explorer/preview/BytesPreview.d.ts.map +1 -0
- package/dist/explorer/preview/BytesPreview.js +56 -0
- package/dist/explorer/preview/BytesPreview.js.map +1 -0
- package/dist/explorer/preview/HtmlPreview.d.ts +18 -0
- package/dist/explorer/preview/HtmlPreview.d.ts.map +1 -0
- package/dist/explorer/preview/HtmlPreview.js +112 -0
- package/dist/explorer/preview/HtmlPreview.js.map +1 -0
- package/dist/explorer/preview/OfficePreview.d.ts +11 -0
- package/dist/explorer/preview/OfficePreview.d.ts.map +1 -0
- package/dist/explorer/preview/OfficePreview.js +53 -0
- package/dist/explorer/preview/OfficePreview.js.map +1 -0
- package/dist/explorer/preview/TextPreview.d.ts +17 -0
- package/dist/explorer/preview/TextPreview.d.ts.map +1 -0
- package/dist/explorer/preview/TextPreview.js +95 -0
- package/dist/explorer/preview/TextPreview.js.map +1 -0
- package/dist/explorer/preview/index.d.ts +10 -3
- package/dist/explorer/preview/index.d.ts.map +1 -1
- package/dist/explorer/preview/index.js +52 -55
- package/dist/explorer/preview/index.js.map +1 -1
- package/dist/explorer/preview/md-labels.d.ts +3 -0
- package/dist/explorer/preview/md-labels.d.ts.map +1 -0
- package/dist/explorer/preview/md-labels.js +12 -0
- package/dist/explorer/preview/md-labels.js.map +1 -0
- package/dist/explorer/types.d.ts +186 -4
- package/dist/explorer/types.d.ts.map +1 -1
- package/dist/explorer/types.js +401 -14
- package/dist/explorer/types.js.map +1 -1
- package/dist/host/index.d.ts +66 -0
- package/dist/host/index.d.ts.map +1 -0
- package/dist/host/index.js +60 -0
- package/dist/host/index.js.map +1 -0
- package/dist/session/SessionViewModal.d.ts +42 -0
- package/dist/session/SessionViewModal.d.ts.map +1 -0
- package/dist/session/SessionViewModal.js +997 -0
- package/dist/session/SessionViewModal.js.map +1 -0
- package/dist/session/changes.d.ts +73 -0
- package/dist/session/changes.d.ts.map +1 -0
- package/dist/session/changes.js +134 -0
- package/dist/session/changes.js.map +1 -0
- package/dist/session/faces.d.ts +198 -0
- package/dist/session/faces.d.ts.map +1 -0
- package/dist/session/faces.js +17 -0
- package/dist/session/faces.js.map +1 -0
- package/dist/session/index.d.ts +5 -23
- package/dist/session/index.d.ts.map +1 -1
- package/dist/session/index.js +25 -70
- package/dist/session/index.js.map +1 -1
- package/dist/session/mirror/ChangedFileDiff.d.ts +22 -0
- package/dist/session/mirror/ChangedFileDiff.d.ts.map +1 -0
- package/dist/session/mirror/ChangedFileDiff.js +157 -0
- package/dist/session/mirror/ChangedFileDiff.js.map +1 -0
- package/dist/session/mirror/ChangedFilesCard.d.ts +18 -0
- package/dist/session/mirror/ChangedFilesCard.d.ts.map +1 -0
- package/dist/session/mirror/ChangedFilesCard.js +158 -0
- package/dist/session/mirror/ChangedFilesCard.js.map +1 -0
- package/dist/session/mirror/ChatGroupSeat.d.ts +24 -0
- package/dist/session/mirror/ChatGroupSeat.d.ts.map +1 -0
- package/dist/session/mirror/ChatGroupSeat.js +134 -0
- package/dist/session/mirror/ChatGroupSeat.js.map +1 -0
- package/dist/session/mirror/ChatNodeSeat.d.ts +43 -0
- package/dist/session/mirror/ChatNodeSeat.d.ts.map +1 -0
- package/dist/session/mirror/ChatNodeSeat.js +133 -0
- package/dist/session/mirror/ChatNodeSeat.js.map +1 -0
- package/dist/session/mirror/ChatView.d.ts +47 -0
- package/dist/session/mirror/ChatView.d.ts.map +1 -0
- package/dist/session/mirror/ChatView.js +127 -0
- package/dist/session/mirror/ChatView.js.map +1 -0
- package/dist/session/mirror/CommandCard.d.ts +20 -0
- package/dist/session/mirror/CommandCard.d.ts.map +1 -0
- package/dist/session/mirror/CommandCard.js +69 -0
- package/dist/session/mirror/CommandCard.js.map +1 -0
- package/dist/session/mirror/Deliverables.d.ts +24 -0
- package/dist/session/mirror/Deliverables.d.ts.map +1 -0
- package/dist/session/mirror/Deliverables.js +134 -0
- package/dist/session/mirror/Deliverables.js.map +1 -0
- package/dist/session/mirror/GenericCommandCard.d.ts +25 -0
- package/dist/session/mirror/GenericCommandCard.d.ts.map +1 -0
- package/dist/session/mirror/GenericCommandCard.js +567 -0
- package/dist/session/mirror/GenericCommandCard.js.map +1 -0
- package/dist/session/mirror/MessageIconActions.d.ts +16 -0
- package/dist/session/mirror/MessageIconActions.d.ts.map +1 -0
- package/dist/session/mirror/MessageIconActions.js +71 -0
- package/dist/session/mirror/MessageIconActions.js.map +1 -0
- package/dist/session/mirror/MessageItem.d.ts +66 -0
- package/dist/session/mirror/MessageItem.d.ts.map +1 -0
- package/dist/session/mirror/MessageItem.js +135 -0
- package/dist/session/mirror/MessageItem.js.map +1 -0
- package/dist/session/mirror/ReasoningRow.d.ts +11 -0
- package/dist/session/mirror/ReasoningRow.d.ts.map +1 -0
- package/dist/session/mirror/ReasoningRow.js +49 -0
- package/dist/session/mirror/ReasoningRow.js.map +1 -0
- package/dist/session/mirror/StatDialog.d.ts +20 -0
- package/dist/session/mirror/StatDialog.d.ts.map +1 -0
- package/dist/session/mirror/StatDialog.js +36 -0
- package/dist/session/mirror/StatDialog.js.map +1 -0
- package/dist/session/mirror/TurnProcessNodeView.d.ts +10 -0
- package/dist/session/mirror/TurnProcessNodeView.d.ts.map +1 -0
- package/dist/session/mirror/TurnProcessNodeView.js +68 -0
- package/dist/session/mirror/TurnProcessNodeView.js.map +1 -0
- package/dist/session/mirror/TurnTailNodeView.d.ts +32 -0
- package/dist/session/mirror/TurnTailNodeView.d.ts.map +1 -0
- package/dist/session/mirror/TurnTailNodeView.js +48 -0
- package/dist/session/mirror/TurnTailNodeView.js.map +1 -0
- package/dist/session/mirror/TurnTriggerNodeView.d.ts +14 -0
- package/dist/session/mirror/TurnTriggerNodeView.d.ts.map +1 -0
- package/dist/session/mirror/TurnTriggerNodeView.js +87 -0
- package/dist/session/mirror/TurnTriggerNodeView.js.map +1 -0
- package/dist/session/mirror/TurnUsagePanel.d.ts +21 -0
- package/dist/session/mirror/TurnUsagePanel.d.ts.map +1 -0
- package/dist/session/mirror/TurnUsagePanel.js +41 -0
- package/dist/session/mirror/TurnUsagePanel.js.map +1 -0
- package/dist/session/mirror/message-chrome.d.ts +33 -0
- package/dist/session/mirror/message-chrome.d.ts.map +1 -0
- package/dist/session/mirror/message-chrome.js +158 -0
- package/dist/session/mirror/message-chrome.js.map +1 -0
- package/dist/session/mirror/process-groups.d.ts +56 -0
- package/dist/session/mirror/process-groups.d.ts.map +1 -0
- package/dist/session/mirror/process-groups.js +202 -0
- package/dist/session/mirror/process-groups.js.map +1 -0
- package/dist/session/official-classes.d.ts +28 -0
- package/dist/session/official-classes.d.ts.map +1 -0
- package/dist/session/official-classes.js +146 -0
- package/dist/session/official-classes.js.map +1 -0
- package/dist/session/open-session-view.d.ts +17 -0
- package/dist/session/open-session-view.d.ts.map +1 -0
- package/dist/session/open-session-view.js +136 -0
- package/dist/session/open-session-view.js.map +1 -0
- package/dist/session/session-css.d.ts +1 -1
- package/dist/session/session-css.d.ts.map +1 -1
- package/dist/session/session-css.generated.d.ts +2 -0
- package/dist/session/session-css.generated.d.ts.map +1 -0
- package/dist/session/session-css.generated.js +4 -0
- package/dist/session/session-css.generated.js.map +1 -0
- package/dist/session/session-css.js +1 -17
- package/dist/session/session-css.js.map +1 -1
- package/dist/ui/AlertModal.d.ts +28 -0
- package/dist/ui/AlertModal.d.ts.map +1 -0
- package/dist/ui/AlertModal.js +29 -0
- package/dist/ui/AlertModal.js.map +1 -0
- package/dist/ui/Button.d.ts.map +1 -1
- package/dist/ui/Button.js +14 -1
- package/dist/ui/Button.js.map +1 -1
- package/dist/ui/Card.d.ts +4 -2
- package/dist/ui/Card.d.ts.map +1 -1
- package/dist/ui/Card.js +12 -6
- package/dist/ui/Card.js.map +1 -1
- package/dist/ui/Chip.d.ts +9 -1
- package/dist/ui/Chip.d.ts.map +1 -1
- package/dist/ui/Chip.js +8 -2
- package/dist/ui/Chip.js.map +1 -1
- package/dist/ui/CodeViewer.d.ts +36 -0
- package/dist/ui/CodeViewer.d.ts.map +1 -0
- package/dist/ui/CodeViewer.js +90 -0
- package/dist/ui/CodeViewer.js.map +1 -0
- package/dist/ui/ConfirmModal.d.ts +30 -0
- package/dist/ui/ConfirmModal.d.ts.map +1 -0
- package/dist/ui/ConfirmModal.js +23 -0
- package/dist/ui/ConfirmModal.js.map +1 -0
- package/dist/ui/DateTimePicker.d.ts +45 -0
- package/dist/ui/DateTimePicker.d.ts.map +1 -0
- package/dist/ui/DateTimePicker.js +447 -0
- package/dist/ui/DateTimePicker.js.map +1 -0
- package/dist/ui/Field.d.ts +11 -2
- package/dist/ui/Field.d.ts.map +1 -1
- package/dist/ui/Field.js +15 -5
- package/dist/ui/Field.js.map +1 -1
- package/dist/ui/MarqueeText.d.ts.map +1 -1
- package/dist/ui/MarqueeText.js +3 -1
- package/dist/ui/MarqueeText.js.map +1 -1
- package/dist/ui/Modal.d.ts +25 -3
- package/dist/ui/Modal.d.ts.map +1 -1
- package/dist/ui/Modal.js +41 -7
- package/dist/ui/Modal.js.map +1 -1
- package/dist/ui/ModelPicker.d.ts +25 -12
- package/dist/ui/ModelPicker.d.ts.map +1 -1
- package/dist/ui/ModelPicker.js +67 -19
- package/dist/ui/ModelPicker.js.map +1 -1
- package/dist/ui/PanelDock.d.ts +127 -0
- package/dist/ui/PanelDock.d.ts.map +1 -0
- package/dist/ui/PanelDock.js +297 -0
- package/dist/ui/PanelDock.js.map +1 -0
- package/dist/ui/Picker.d.ts +8 -2
- package/dist/ui/Picker.d.ts.map +1 -1
- package/dist/ui/Picker.js +86 -18
- package/dist/ui/Picker.js.map +1 -1
- package/dist/ui/SectionHead.d.ts +3 -3
- package/dist/ui/SectionHead.d.ts.map +1 -1
- package/dist/ui/SectionHead.js +4 -4
- package/dist/ui/SectionHead.js.map +1 -1
- package/dist/ui/Segmented.d.ts +2 -0
- package/dist/ui/Segmented.d.ts.map +1 -1
- package/dist/ui/Segmented.js +3 -1
- package/dist/ui/Segmented.js.map +1 -1
- package/dist/ui/Textarea.d.ts +2 -0
- package/dist/ui/Textarea.d.ts.map +1 -1
- package/dist/ui/Textarea.js +6 -1
- package/dist/ui/Textarea.js.map +1 -1
- package/dist/ui/Toast.d.ts +41 -8
- package/dist/ui/Toast.d.ts.map +1 -1
- package/dist/ui/Toast.js +216 -28
- package/dist/ui/Toast.js.map +1 -1
- package/dist/ui/WorkspacePicker.d.ts +15 -28
- package/dist/ui/WorkspacePicker.d.ts.map +1 -1
- package/dist/ui/WorkspacePicker.js +18 -27
- package/dist/ui/WorkspacePicker.js.map +1 -1
- package/dist/ui/card-css.d.ts +1 -1
- package/dist/ui/card-css.d.ts.map +1 -1
- package/dist/ui/card-css.generated.d.ts +2 -0
- package/dist/ui/card-css.generated.d.ts.map +1 -0
- package/dist/ui/card-css.generated.js +4 -0
- package/dist/ui/card-css.generated.js.map +1 -0
- package/dist/ui/card-css.js +1 -35
- package/dist/ui/card-css.js.map +1 -1
- package/dist/ui/chip-css.d.ts +1 -1
- package/dist/ui/chip-css.d.ts.map +1 -1
- package/dist/ui/chip-css.generated.d.ts +2 -0
- package/dist/ui/chip-css.generated.d.ts.map +1 -0
- package/dist/ui/chip-css.generated.js +4 -0
- package/dist/ui/chip-css.generated.js.map +1 -0
- package/dist/ui/chip-css.js +1 -17
- package/dist/ui/chip-css.js.map +1 -1
- package/dist/ui/code-viewer-css.d.ts +2 -0
- package/dist/ui/code-viewer-css.d.ts.map +1 -0
- package/dist/ui/code-viewer-css.generated.d.ts +2 -0
- package/dist/ui/code-viewer-css.generated.d.ts.map +1 -0
- package/dist/ui/code-viewer-css.generated.js +4 -0
- package/dist/ui/code-viewer-css.generated.js.map +1 -0
- package/dist/ui/code-viewer-css.js +3 -0
- package/dist/ui/code-viewer-css.js.map +1 -0
- package/dist/ui/code-viewer-lang.d.ts +15 -0
- package/dist/ui/code-viewer-lang.d.ts.map +1 -0
- package/dist/ui/code-viewer-lang.js +190 -0
- package/dist/ui/code-viewer-lang.js.map +1 -0
- package/dist/ui/code-viewer-theme.d.ts +5 -0
- package/dist/ui/code-viewer-theme.d.ts.map +1 -0
- package/dist/ui/code-viewer-theme.js +138 -0
- package/dist/ui/code-viewer-theme.js.map +1 -0
- package/dist/ui/controls/back-to-top-css.generated.d.ts +2 -0
- package/dist/ui/controls/back-to-top-css.generated.d.ts.map +1 -0
- package/dist/ui/controls/back-to-top-css.generated.js +4 -0
- package/dist/ui/controls/back-to-top-css.generated.js.map +1 -0
- package/dist/ui/controls/button-css.generated.d.ts +2 -0
- package/dist/ui/controls/button-css.generated.d.ts.map +1 -0
- package/dist/ui/controls/button-css.generated.js +4 -0
- package/dist/ui/controls/button-css.generated.js.map +1 -0
- package/dist/ui/controls/datetime-css.generated.d.ts +2 -0
- package/dist/ui/controls/datetime-css.generated.d.ts.map +1 -0
- package/dist/ui/controls/datetime-css.generated.js +4 -0
- package/dist/ui/controls/datetime-css.generated.js.map +1 -0
- package/dist/ui/controls/field-css.generated.d.ts +2 -0
- package/dist/ui/controls/field-css.generated.d.ts.map +1 -0
- package/dist/ui/controls/field-css.generated.js +4 -0
- package/dist/ui/controls/field-css.generated.js.map +1 -0
- package/dist/ui/controls/hint-css.generated.d.ts +2 -0
- package/dist/ui/controls/hint-css.generated.d.ts.map +1 -0
- package/dist/ui/controls/hint-css.generated.js +4 -0
- package/dist/ui/controls/hint-css.generated.js.map +1 -0
- package/dist/ui/controls/loading-css.generated.d.ts +2 -0
- package/dist/ui/controls/loading-css.generated.d.ts.map +1 -0
- package/dist/ui/controls/loading-css.generated.js +4 -0
- package/dist/ui/controls/loading-css.generated.js.map +1 -0
- package/dist/ui/controls/segmented-css.generated.d.ts +2 -0
- package/dist/ui/controls/segmented-css.generated.d.ts.map +1 -0
- package/dist/ui/controls/segmented-css.generated.js +4 -0
- package/dist/ui/controls/segmented-css.generated.js.map +1 -0
- package/dist/ui/controls-css.d.ts +7 -8
- package/dist/ui/controls-css.d.ts.map +1 -1
- package/dist/ui/controls-css.js +13 -11
- package/dist/ui/controls-css.js.map +1 -1
- package/dist/ui/css.d.ts +5 -0
- package/dist/ui/css.d.ts.map +1 -1
- package/dist/ui/css.js +13 -4
- package/dist/ui/css.js.map +1 -1
- package/dist/ui/datetime-logic.d.ts +100 -0
- package/dist/ui/datetime-logic.d.ts.map +1 -0
- package/dist/ui/datetime-logic.js +193 -0
- package/dist/ui/datetime-logic.js.map +1 -0
- package/dist/ui/feedback-css.d.ts +1 -1
- package/dist/ui/feedback-css.d.ts.map +1 -1
- package/dist/ui/feedback-css.generated.d.ts +2 -0
- package/dist/ui/feedback-css.generated.d.ts.map +1 -0
- package/dist/ui/feedback-css.generated.js +4 -0
- package/dist/ui/feedback-css.generated.js.map +1 -0
- package/dist/ui/feedback-css.js +1 -53
- package/dist/ui/feedback-css.js.map +1 -1
- package/dist/ui/host-data.d.ts +103 -0
- package/dist/ui/host-data.d.ts.map +1 -0
- package/dist/ui/host-data.js +106 -0
- package/dist/ui/host-data.js.map +1 -0
- package/dist/ui/host-toast.d.ts +23 -0
- package/dist/ui/host-toast.d.ts.map +1 -0
- package/dist/ui/host-toast.js +34 -0
- package/dist/ui/host-toast.js.map +1 -0
- package/dist/ui/index.d.ts +12 -6
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +10 -4
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/marquee-css.d.ts +2 -0
- package/dist/ui/marquee-css.d.ts.map +1 -0
- package/dist/ui/marquee-css.generated.d.ts +2 -0
- package/dist/ui/marquee-css.generated.d.ts.map +1 -0
- package/dist/ui/marquee-css.generated.js +4 -0
- package/dist/ui/marquee-css.generated.js.map +1 -0
- package/dist/ui/marquee-css.js +4 -0
- package/dist/ui/marquee-css.js.map +1 -0
- package/dist/ui/modal-host.d.ts +30 -0
- package/dist/ui/modal-host.d.ts.map +1 -0
- package/dist/ui/modal-host.js +101 -0
- package/dist/ui/modal-host.js.map +1 -0
- package/dist/ui/official.d.ts.map +1 -1
- package/dist/ui/official.js +45 -1
- package/dist/ui/official.js.map +1 -1
- package/dist/ui/panel-dock-css.d.ts +2 -0
- package/dist/ui/panel-dock-css.d.ts.map +1 -0
- package/dist/ui/panel-dock-css.generated.d.ts +2 -0
- package/dist/ui/panel-dock-css.generated.d.ts.map +1 -0
- package/dist/ui/panel-dock-css.generated.js +4 -0
- package/dist/ui/panel-dock-css.generated.js.map +1 -0
- package/dist/ui/panel-dock-css.js +4 -0
- package/dist/ui/panel-dock-css.js.map +1 -0
- package/dist/ui/panel-dock-logic.d.ts +50 -0
- package/dist/ui/panel-dock-logic.d.ts.map +1 -0
- package/dist/ui/panel-dock-logic.js +64 -0
- package/dist/ui/panel-dock-logic.js.map +1 -0
- package/dist/ui/picker-css.d.ts +1 -1
- package/dist/ui/picker-css.d.ts.map +1 -1
- package/dist/ui/picker-css.generated.d.ts +2 -0
- package/dist/ui/picker-css.generated.d.ts.map +1 -0
- package/dist/ui/picker-css.generated.js +4 -0
- package/dist/ui/picker-css.generated.js.map +1 -0
- package/dist/ui/picker-css.js +1 -48
- package/dist/ui/picker-css.js.map +1 -1
- package/dist/ui/picker-icons.d.ts +12 -0
- package/dist/ui/picker-icons.d.ts.map +1 -0
- package/dist/ui/picker-icons.js +29 -0
- package/dist/ui/picker-icons.js.map +1 -0
- package/dist/ui/picker-logic.d.ts +4 -1
- package/dist/ui/picker-logic.d.ts.map +1 -1
- package/dist/ui/picker-logic.js +1 -2
- package/dist/ui/picker-logic.js.map +1 -1
- package/dist/ui/resizer.d.ts +3 -1
- package/dist/ui/resizer.d.ts.map +1 -1
- package/dist/ui/resizer.js +1 -1
- package/dist/ui/resizer.js.map +1 -1
- package/dist/ui/toast-host.d.ts +24 -0
- package/dist/ui/toast-host.d.ts.map +1 -0
- package/dist/ui/toast-host.js +20 -0
- package/dist/ui/toast-host.js.map +1 -0
- package/dist/utils/date.d.ts +8 -0
- package/dist/utils/date.d.ts.map +1 -1
- package/dist/utils/date.js +16 -0
- package/dist/utils/date.js.map +1 -1
- package/dist/utils/i18n.d.ts +1 -1
- package/dist/utils/i18n.d.ts.map +1 -1
- package/dist/utils/i18n.js +437 -18
- package/dist/utils/i18n.js.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/path.d.ts.map +1 -1
- package/dist/utils/path.js +1 -0
- package/dist/utils/path.js.map +1 -1
- package/docs/README.md +12 -5
- package/docs/design/architecture.md +38 -8
- package/docs/design/copywriting.md +95 -0
- package/docs/design/doc-format.md +80 -0
- package/docs/design/doc-format.ts +39 -0
- package/docs/design/external/dsh-host.md +150 -1
- package/docs/design/features.md +4 -17
- package/docs/design/methods.md +13 -34
- package/docs/design/structure.md +25 -22
- package/docs/design/style.md +24 -50
- package/docs/help/design.doc.ts +112 -0
- package/docs/help/design.md +88 -0
- package/docs/help/explorer.doc.ts +136 -0
- package/docs/help/explorer.md +68 -0
- package/docs/help/index.doc.ts +79 -0
- package/docs/help/index.md +28 -0
- package/docs/help/integration.doc.ts +114 -0
- package/docs/help/integration.md +127 -0
- package/docs/help/methods.md +58 -0
- package/docs/help/session.doc.ts +154 -0
- package/docs/help/session.md +91 -0
- package/docs/help/style.md +80 -0
- package/docs/help/ui.doc.ts +404 -0
- package/docs/help/ui.md +342 -0
- package/docs/help/utils.doc.ts +133 -0
- package/docs/help/utils.md +96 -0
- package/docs/requirements.md +33 -12
- package/package.json +44 -3
- package/dist/ui/ErrorBoundary.d.ts +0 -22
- package/dist/ui/ErrorBoundary.d.ts.map +0 -1
- package/dist/ui/ErrorBoundary.js +0 -30
- package/dist/ui/ErrorBoundary.js.map +0 -1
- package/docs/design/features/design.md +0 -55
- package/docs/design/features/explorer.md +0 -73
- package/docs/design/features/session.md +0 -70
- package/docs/design/features/ui.md +0 -225
- package/docs/design/features/utils.md +0 -64
- package/docs/examples/integration.md +0 -103
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
// ⚠️ 生成物,勿手改。真源 = src/ui/card.css
|
|
2
|
+
// 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
|
|
3
|
+
export const CARD_CSS = "\n.dshpc-card{\n position:relative;box-sizing:border-box;color:var(--dshpc-fg);font:inherit;text-align:left;\n --card-accent:var(--dshpc-business);\n --card-accent-soft:var(--dshpc-business-soft);\n}\n/* 档位 → token(照 records-timeline 的 tone 模式:一个变量切档,不写 5 套规则;浅底与色条同源)。 */\n.dshpc-card--success{--card-accent:var(--dshpc-success);--card-accent-soft:var(--dshpc-success-soft)}\n.dshpc-card--warning{--card-accent:var(--dshpc-warning);--card-accent-soft:var(--dshpc-warning-soft)}\n.dshpc-card--danger{--card-accent:var(--dshpc-danger);--card-accent-soft:var(--dshpc-danger-soft)}\n/* neutral 浅底借 chip 底(兄弟项目 mute 档同款:明暗都成立)。 */\n.dshpc-card--neutral{--card-accent:var(--dshpc-fg-4);--card-accent-soft:var(--dshpc-chip-bg)}\n\n/* 头部一行 = 色条 + 主内容 + 右侧槽,**整体垂直居中**:调用方在 action 里裸放一个元素\n (按钮 / 文字 / 图标)不用自己套容器居中;一行两行、右边怎么放由调用方在框内自定。 */\n.dshpc-card__head{display:flex;align-items:center;gap:8px;min-width:0}\n.dshpc-card__main{flex:1;min-width:0}\n.dshpc-card__side{display:flex;align-items:center;gap:6px;flex:none}\n\n/* ── 外观一 · StripCard:同色系浅底 + 1px 不可见占位边框 + 方角 + 4px 通高方角色条贴左缘 ── */\n.dshpc-card--strip{\n padding:12px 12px 12px 20px;border:1px solid transparent;\n background:var(--card-accent-soft,transparent);\n}\n/* 左内边距 20px = 16 留白 + 4 条宽 ⇒ 内容从色条右缘起算;色条绝对定位通高,跟着内容高度自适应。 */\n.dshpc-card--strip .dshpc-card__bar{position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--card-accent)}\n\n/* ── 外观二 · Card:surface 底 + 1px 实色边框 + 圆角 + 行内圆角短条 ── */\n.dshpc-card--bordered{\n /* 左内边距 12(比上/右/下 14 少 2):竖条贴近边框;头部内缩 2px ⇒ 主内容跟着左移 2px,\n 竖条↔内容的 12px 间距不变——比「条子 left:-2 而内容不动」更正规(不靠相对定位硬补)。 */\n padding:14px 14px 14px 12px;border:1px solid var(--dshpc-border);border-radius:var(--dshpc-radius-sm);\n background:var(--dshpc-surface-1);\n}\n.dshpc-card--bordered .dshpc-card__head{gap:12px}\n/* 短条:行内 flex 项,**高度跟着内容走**(stretch),最小一行文字(--dshpc-line-md)——\n 一行文字时条子与文字齐高,不会把卡撑高;竖条距左 12(= 左内边距),距上/右/下 14。 */\n.dshpc-card--bordered .dshpc-card__bar{width:6px;flex:none;align-self:stretch;min-height:var(--dshpc-line-md);border-radius:var(--dshpc-radius-xs);background:var(--card-accent)}\n.dshpc-card__toggle{\n display:inline-flex;align-items:center;justify-content:center;\n width:24px;height:24px;padding:0;background:none;border:none;border-radius:6px;\n color:var(--dshpc-fg-3);cursor:pointer;\n}\n.dshpc-card__toggle:hover{background:var(--dshpc-surface-sunken);color:var(--dshpc-fg)}\n.dshpc-card__caret{display:inline-block;font-size:10px;transition:transform .15s ease}\n.dshpc-card__caret.is-open{transform:rotate(180deg)}\n.dshpc-card__panel{margin-top:8px;padding-top:8px;border-top:1px solid var(--dshpc-border-faint)}\n";
|
|
4
|
+
//# sourceMappingURL=card-css.generated.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card-css.generated.js","sourceRoot":"","sources":["../../src/ui/card-css.generated.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,qEAAqE;AACrE,MAAM,CAAC,MAAM,QAAQ,GAAG,kmFAAkmF,CAAA"}
|
package/dist/ui/card-css.js
CHANGED
|
@@ -1,39 +1,5 @@
|
|
|
1
1
|
// Card / StripCard 样式(Chip 已独立到 chip-css.ts,勿再往这里加 chip 规则)。
|
|
2
2
|
// 类名固定 dshpc-card*;
|
|
3
3
|
// 颜色一律吃 token,深色由 design 的 token 深色段自动生效(不写死颜色值)。
|
|
4
|
-
export
|
|
5
|
-
.dshpc-card{
|
|
6
|
-
position:relative;padding:12px 14px;background:var(--dshpc-surface-1);
|
|
7
|
-
--card-accent:var(--dshpc-business);
|
|
8
|
-
}
|
|
9
|
-
/* 档位 → token(照 records-timeline 的 tone 模式:一个变量切档,不写 5 套规则)。 */
|
|
10
|
-
.dshpc-card--success{--card-accent:var(--dshpc-success)}
|
|
11
|
-
.dshpc-card--warning{--card-accent:var(--dshpc-warning)}
|
|
12
|
-
.dshpc-card--danger{--card-accent:var(--dshpc-danger)}
|
|
13
|
-
.dshpc-card--neutral{--card-accent:var(--dshpc-fg-4)}
|
|
14
|
-
|
|
15
|
-
/* 外观一:圆角 + 1px 边框,色条上下留距(短条)。 */
|
|
16
|
-
.dshpc-card--bordered{border-radius:8px;border:1px solid var(--dshpc-border)}
|
|
17
|
-
.dshpc-card--bordered .dshpc-card__bar{top:8px;bottom:8px;border-radius:2px}
|
|
18
|
-
|
|
19
|
-
/* 外观二:无圆角无边框,色条通高。 */
|
|
20
|
-
.dshpc-card--strip{border-radius:0;border:none}
|
|
21
|
-
.dshpc-card--strip .dshpc-card__bar{top:0;bottom:0;border-radius:0}
|
|
22
|
-
|
|
23
|
-
/* 色条:绝对定位 + top/bottom ⇒ 跟着内容高度自适应;上下是否留距由外观决定。 */
|
|
24
|
-
.dshpc-card__bar{position:absolute;left:0;width:3px;background:var(--card-accent)}
|
|
25
|
-
|
|
26
|
-
.dshpc-card__head{display:flex;align-items:flex-start;gap:8px;min-width:0}
|
|
27
|
-
.dshpc-card__main{flex:1;min-width:0}
|
|
28
|
-
.dshpc-card__side{display:flex;align-items:center;gap:6px;flex:none}
|
|
29
|
-
.dshpc-card__toggle{
|
|
30
|
-
display:inline-flex;align-items:center;justify-content:center;
|
|
31
|
-
width:24px;height:24px;padding:0;background:none;border:none;border-radius:6px;
|
|
32
|
-
color:var(--dshpc-fg-3);cursor:pointer;
|
|
33
|
-
}
|
|
34
|
-
.dshpc-card__toggle:hover{background:var(--dshpc-surface-sunken);color:var(--dshpc-fg)}
|
|
35
|
-
.dshpc-card__caret{display:inline-block;font-size:10px;transition:transform .15s ease}
|
|
36
|
-
.dshpc-card__caret.is-open{transform:rotate(180deg)}
|
|
37
|
-
.dshpc-card__panel{margin-top:8px;padding-top:8px;border-top:1px solid var(--dshpc-border-faint)}
|
|
38
|
-
`;
|
|
4
|
+
export { CARD_CSS } from './card-css.generated.js';
|
|
39
5
|
//# sourceMappingURL=card-css.js.map
|
package/dist/ui/card-css.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-css.js","sourceRoot":"","sources":["../../src/ui/card-css.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,oBAAoB;AACpB,kDAAkD;AAClD,
|
|
1
|
+
{"version":3,"file":"card-css.js","sourceRoot":"","sources":["../../src/ui/card-css.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,oBAAoB;AACpB,kDAAkD;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA"}
|
package/dist/ui/chip-css.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export
|
|
1
|
+
export { CHIP_CSS } from './chip-css.generated.js';
|
|
2
2
|
//# sourceMappingURL=chip-css.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chip-css.d.ts","sourceRoot":"","sources":["../../src/ui/chip-css.ts"],"names":[],"mappings":"AAUA,
|
|
1
|
+
{"version":3,"file":"chip-css.d.ts","sourceRoot":"","sources":["../../src/ui/chip-css.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const CHIP_CSS = "\n/* \u4E09\u6761\u5C40\u90E8\u53D8\u91CF\u627F\u8F7D\u914D\u8272\uFF1Aneutral \u8D70\u65E7\u7070\u9762\uFF1B\u8BED\u4E49\u6863\u6362\u5E95\u5B57\u914D\u5BF9\uFF082026-10-20 \u7528\u6237\u8981\u591A\u8272\u591A\u5C3A\u5BF8\u6807\u7B7E\uFF09\u3002 */\n.dshpc-chip{--chip-bg:var(--dshpc-chip-bg);--chip-fg:var(--dshpc-fg);--chip-bg-hover:var(--dshpc-chip-bg-hover);\n display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:1px 8px;\n box-sizing:border-box;border-radius:var(--dshpc-radius-pill,999px);border:none;\n background:var(--chip-bg);color:var(--chip-fg);\n font-family:inherit;font-size:11px;line-height:18px;margin:0;\n /* 2026-10-18\uFF1Achip \u662F flex \u884C\u91CC\u7684\u5E38\u7528\u9879\uFF0C\u7981\u6B62\u88AB\u538B\u7F29\u6362\u884C\uFF08\u9884\u89C8\u7AD9\u51FA\u73B0\u8FC7\u6587\u5B57\u7AD6\u6392\u3001\u4E92\u76F8\u53E0\u538B\u7684\u6324\u538B\uFF09\u3002 */\n white-space:nowrap;flex:none;\n appearance:none;-webkit-appearance:none;\n}\n/* md \u6863\uFF1A\u5361\u7247\u5143\u4FE1\u606F\u884C\u7B49\u7A0D\u5927\u573A\u666F\uFF1Bsm \u5373\u65E7\u7248\u9ED8\u8BA4\uFF0C\u9010\u50CF\u7D20\u4E0D\u52A8\u3002 */\n.dshpc-chip--md{padding:2px 10px;font-size:12px;line-height:20px;}\n/* xs \u6863\uFF1A\u6807\u9898\u540E\u7F00\u7B49\u6781\u7D27\u51D1\u573A\u666F\uFF082026-10-20 \u7528\u6237\u8981\u66F4\u5C0F\u6807\u7B7E\uFF09\uFF1B16px \u9AD8\u3001font 10\u3002 */\n.dshpc-chip--xs{padding:0 6px;font-size:10px;line-height:16px;}\n/* \u8BED\u4E49\u8272\u5B9E\u5FC3\u6863\uFF1A\u5E95 / \u5B57 / hover \u914D\u5BF9\u4E0E Button \u540C\u6E90\uFF08\u9EC4\u5E95\u4E2D\u9AD8\u660E\u5EA6 \u21D2 \u5B57\u7528 --dshpc-on-warning\uFF09\u3002 */\n.dshpc-chip--business{--chip-bg:var(--dshpc-business);--chip-fg:var(--dshpc-on-signal);--chip-bg-hover:var(--dshpc-business-hover);}\n.dshpc-chip--success{--chip-bg:var(--dshpc-success);--chip-fg:var(--dshpc-on-signal);--chip-bg-hover:var(--dshpc-success-hover);}\n.dshpc-chip--warning{--chip-bg:var(--dshpc-warning);--chip-fg:var(--dshpc-on-warning);--chip-bg-hover:var(--dshpc-warning-hover);}\n.dshpc-chip--danger{--chip-bg:var(--dshpc-danger);--chip-fg:var(--dshpc-on-signal);--chip-bg-hover:var(--dshpc-danger-hover);}\n/* \u53EF\u70B9\u6001\uFF1Abutton \u6E32\u67D3\uFF08\u89C1 Chip.ts\uFF09\uFF0C\u5149\u6807 + hover \u52A0\u6DF1\u3002 */\n.dshpc-chip--clickable{cursor:pointer;transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease);}\n.dshpc-chip--clickable:hover:not(:disabled){background:var(--chip-bg-hover)}\n.dshpc-chip:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}\n.dshpc-chip:disabled{cursor:default;color:var(--dshpc-fg-3)}\n@media (prefers-reduced-motion: reduce){.dshpc-chip{transition:none}}\n";
|
|
2
|
+
//# sourceMappingURL=chip-css.generated.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chip-css.generated.d.ts","sourceRoot":"","sources":["../../src/ui/chip-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,+qFAAi3D,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
// ⚠️ 生成物,勿手改。真源 = src/ui/chip.css
|
|
2
|
+
// 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
|
|
3
|
+
export const CHIP_CSS = "\n/* 三条局部变量承载配色:neutral 走旧灰面;语义档换底字配对(2026-10-20 用户要多色多尺寸标签)。 */\n.dshpc-chip{--chip-bg:var(--dshpc-chip-bg);--chip-fg:var(--dshpc-fg);--chip-bg-hover:var(--dshpc-chip-bg-hover);\n display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:1px 8px;\n box-sizing:border-box;border-radius:var(--dshpc-radius-pill,999px);border:none;\n background:var(--chip-bg);color:var(--chip-fg);\n font-family:inherit;font-size:11px;line-height:18px;margin:0;\n /* 2026-10-18:chip 是 flex 行里的常用项,禁止被压缩换行(预览站出现过文字竖排、互相叠压的挤压)。 */\n white-space:nowrap;flex:none;\n appearance:none;-webkit-appearance:none;\n}\n/* md 档:卡片元信息行等稍大场景;sm 即旧版默认,逐像素不动。 */\n.dshpc-chip--md{padding:2px 10px;font-size:12px;line-height:20px;}\n/* xs 档:标题后缀等极紧凑场景(2026-10-20 用户要更小标签);16px 高、font 10。 */\n.dshpc-chip--xs{padding:0 6px;font-size:10px;line-height:16px;}\n/* 语义色实心档:底 / 字 / hover 配对与 Button 同源(黄底中高明度 ⇒ 字用 --dshpc-on-warning)。 */\n.dshpc-chip--business{--chip-bg:var(--dshpc-business);--chip-fg:var(--dshpc-on-signal);--chip-bg-hover:var(--dshpc-business-hover);}\n.dshpc-chip--success{--chip-bg:var(--dshpc-success);--chip-fg:var(--dshpc-on-signal);--chip-bg-hover:var(--dshpc-success-hover);}\n.dshpc-chip--warning{--chip-bg:var(--dshpc-warning);--chip-fg:var(--dshpc-on-warning);--chip-bg-hover:var(--dshpc-warning-hover);}\n.dshpc-chip--danger{--chip-bg:var(--dshpc-danger);--chip-fg:var(--dshpc-on-signal);--chip-bg-hover:var(--dshpc-danger-hover);}\n/* 可点态:button 渲染(见 Chip.ts),光标 + hover 加深。 */\n.dshpc-chip--clickable{cursor:pointer;transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease);}\n.dshpc-chip--clickable:hover:not(:disabled){background:var(--chip-bg-hover)}\n.dshpc-chip:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}\n.dshpc-chip:disabled{cursor:default;color:var(--dshpc-fg-3)}\n@media (prefers-reduced-motion: reduce){.dshpc-chip{transition:none}}\n";
|
|
4
|
+
//# sourceMappingURL=chip-css.generated.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chip-css.generated.js","sourceRoot":"","sources":["../../src/ui/chip-css.generated.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,qEAAqE;AACrE,MAAM,CAAC,MAAM,QAAQ,GAAG,82DAA82D,CAAA"}
|
package/dist/ui/chip-css.js
CHANGED
|
@@ -8,21 +8,5 @@
|
|
|
8
8
|
//
|
|
9
9
|
// 类名固定 `dshpc-chip*`;
|
|
10
10
|
// 颜色一律吃 token,深色由 design 的 token 深色段自动生效。
|
|
11
|
-
export
|
|
12
|
-
.dshpc-chip{
|
|
13
|
-
display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:1px 8px;
|
|
14
|
-
box-sizing:border-box;border-radius:var(--dshpc-radius-pill,999px);border:none;
|
|
15
|
-
background:var(--dshpc-chip-bg);color:var(--dshpc-fg);
|
|
16
|
-
font-family:inherit;font-size:11px;line-height:18px;margin:0;
|
|
17
|
-
/* 2026-10-18:chip 是 flex 行里的常用项,禁止被压缩换行(预览站出现过文字竖排、互相叠压的挤压)。 */
|
|
18
|
-
white-space:nowrap;flex:none;
|
|
19
|
-
appearance:none;-webkit-appearance:none;
|
|
20
|
-
}
|
|
21
|
-
/* 可点态:button 渲染(见 Chip.ts),光标 + hover 加深。 */
|
|
22
|
-
.dshpc-chip--clickable{cursor:pointer;transition:background-color var(--dshpc-dur-fast) var(--dshpc-ease);}
|
|
23
|
-
.dshpc-chip--clickable:hover:not(:disabled){background:var(--dshpc-chip-bg-hover)}
|
|
24
|
-
.dshpc-chip:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:1px}
|
|
25
|
-
.dshpc-chip:disabled{cursor:default;color:var(--dshpc-fg-3)}
|
|
26
|
-
@media (prefers-reduced-motion: reduce){.dshpc-chip{transition:none}}
|
|
27
|
-
`;
|
|
11
|
+
export { CHIP_CSS } from './chip-css.generated.js';
|
|
28
12
|
//# sourceMappingURL=chip-css.js.map
|
package/dist/ui/chip-css.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chip-css.js","sourceRoot":"","sources":["../../src/ui/chip-css.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,EAAE;AACF,8CAA8C;AAC9C,sEAAsE;AACtE,kDAAkD;AAClD,8CAA8C;AAC9C,YAAY;AACZ,EAAE;AACF,sBAAsB;AACtB,0CAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"chip-css.js","sourceRoot":"","sources":["../../src/ui/chip-css.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,EAAE;AACF,8CAA8C;AAC9C,sEAAsE;AACtE,kDAAkD;AAClD,8CAA8C;AAC9C,YAAY;AACZ,EAAE;AACF,sBAAsB;AACtB,0CAA0C;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-viewer-css.d.ts","sourceRoot":"","sources":["../../src/ui/code-viewer-css.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const CODE_VIEWER_CSS = "/* CodeViewer\uFF08\u53EA\u8BFB CodeMirror \u67E5\u770B\u5668\uFF09\u6837\u5F0F\u3002\u7C7B\u540D\u56FA\u5B9A dshpc-cv*\uFF1B\u989C\u8272\u5403 --dshpc-* token\uFF0C\n \u6DF1\u8272\u7531 design \u7684 token \u6DF1\u8272\u6BB5\u81EA\u52A8\u751F\u6548\uFF08\u4E0D\u5199\u6B7B\u989C\u8272\u503C\uFF09\u3002 */\n.dshpc-cv{position:relative;display:flex;flex-direction:column;height:100%;min-height:0;}\n.dshpc-cv__copy{position:absolute;top:6px;right:6px;z-index:5;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;appearance:none;border:1px solid var(--dshpc-border,rgba(128,128,128,.35));border-radius:var(--dshpc-radius-sm,6px);background:var(--dshpc-surface-1,#fff);color:var(--dshpc-fg-2,rgba(128,128,128,.95));cursor:pointer;opacity:0;transition:opacity .12s var(--dshpc-ease,ease),background .12s,color .12s;}\n.dshpc-cv:hover .dshpc-cv__copy,.dshpc-cv__copy:focus-visible{opacity:1;}\n.dshpc-cv__copy:hover{background:var(--dshpc-hover,rgba(38,49,72,.06));color:var(--dshpc-fg,#1f2328);}\n.dshpc-cv__copy svg{width:16px;height:16px;}\n.dshpc-cv__editor{flex:1 1 auto;min-height:0;overflow:hidden;}\n.dshpc-cv__editor .cm-editor{height:100%;}\n.dshpc-cv__editor .cm-scroller{overflow:auto;}\n";
|
|
2
|
+
//# sourceMappingURL=code-viewer-css.generated.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-viewer-css.generated.d.ts","sourceRoot":"","sources":["../../src/ui/code-viewer-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,+tCAA4hC,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
// ⚠️ 生成物,勿手改。真源 = src/ui/code-viewer.css
|
|
2
|
+
// 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
|
|
3
|
+
export const CODE_VIEWER_CSS = "/* CodeViewer(只读 CodeMirror 查看器)样式。类名固定 dshpc-cv*;颜色吃 --dshpc-* token,\n 深色由 design 的 token 深色段自动生效(不写死颜色值)。 */\n.dshpc-cv{position:relative;display:flex;flex-direction:column;height:100%;min-height:0;}\n.dshpc-cv__copy{position:absolute;top:6px;right:6px;z-index:5;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;appearance:none;border:1px solid var(--dshpc-border,rgba(128,128,128,.35));border-radius:var(--dshpc-radius-sm,6px);background:var(--dshpc-surface-1,#fff);color:var(--dshpc-fg-2,rgba(128,128,128,.95));cursor:pointer;opacity:0;transition:opacity .12s var(--dshpc-ease,ease),background .12s,color .12s;}\n.dshpc-cv:hover .dshpc-cv__copy,.dshpc-cv__copy:focus-visible{opacity:1;}\n.dshpc-cv__copy:hover{background:var(--dshpc-hover,rgba(38,49,72,.06));color:var(--dshpc-fg,#1f2328);}\n.dshpc-cv__copy svg{width:16px;height:16px;}\n.dshpc-cv__editor{flex:1 1 auto;min-height:0;overflow:hidden;}\n.dshpc-cv__editor .cm-editor{height:100%;}\n.dshpc-cv__editor .cm-scroller{overflow:auto;}\n";
|
|
4
|
+
//# sourceMappingURL=code-viewer-css.generated.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-viewer-css.generated.js","sourceRoot":"","sources":["../../src/ui/code-viewer-css.generated.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,qEAAqE;AACrE,MAAM,CAAC,MAAM,eAAe,GAAG,yhCAAyhC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-viewer-css.js","sourceRoot":"","sources":["../../src/ui/code-viewer-css.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 源码态语法高亮:扩展名 → CodeMirror 语言映射。
|
|
3
|
+
*
|
|
4
|
+
* 移植自兄弟项目 dsh-task-dispatch-table(src/client/ui/lang.ts),仅保留本仓已引入的语言包:
|
|
5
|
+
* javascript/json/markdown/python/html/css/yaml + legacy-modes 长尾,避免引入新品类依赖。
|
|
6
|
+
* 纯函数、可单测。
|
|
7
|
+
*/
|
|
8
|
+
import { Language, LanguageSupport } from '@codemirror/language';
|
|
9
|
+
/** 取路径的扩展名(小写,无点)。 */
|
|
10
|
+
export declare function extOf(path: string): string;
|
|
11
|
+
/** 扩展名对应的语言键;无匹配返回 null(纯文本)。 */
|
|
12
|
+
export declare function languageKeyForExt(ext: string): string | null;
|
|
13
|
+
/** 路径对应的 CodeMirror 语法扩展;未知扩展回落 null(纯文本)。 */
|
|
14
|
+
export declare function languageForPath(path: string): Language | LanguageSupport | null;
|
|
15
|
+
//# sourceMappingURL=code-viewer-lang.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-viewer-lang.d.ts","sourceRoot":"","sources":["../../src/ui/code-viewer-lang.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAkB,MAAM,sBAAsB,CAAA;AAsChF,sBAAsB;AACtB,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI1C;AAED,iCAAiC;AACjC,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgD5D;AAqDD,8CAA8C;AAC9C,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,eAAe,GAAG,IAAI,CAU/E"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 源码态语法高亮:扩展名 → CodeMirror 语言映射。
|
|
3
|
+
*
|
|
4
|
+
* 移植自兄弟项目 dsh-task-dispatch-table(src/client/ui/lang.ts),仅保留本仓已引入的语言包:
|
|
5
|
+
* javascript/json/markdown/python/html/css/yaml + legacy-modes 长尾,避免引入新品类依赖。
|
|
6
|
+
* 纯函数、可单测。
|
|
7
|
+
*/
|
|
8
|
+
import { StreamLanguage } from '@codemirror/language';
|
|
9
|
+
import { javascript } from '@codemirror/lang-javascript';
|
|
10
|
+
import { json } from '@codemirror/lang-json';
|
|
11
|
+
import { markdown } from '@codemirror/lang-markdown';
|
|
12
|
+
import { python } from '@codemirror/lang-python';
|
|
13
|
+
import { html } from '@codemirror/lang-html';
|
|
14
|
+
import { css } from '@codemirror/lang-css';
|
|
15
|
+
import { yaml } from '@codemirror/lang-yaml';
|
|
16
|
+
import { shell } from '@codemirror/legacy-modes/mode/shell';
|
|
17
|
+
import { toml } from '@codemirror/legacy-modes/mode/toml';
|
|
18
|
+
import { nginx } from '@codemirror/legacy-modes/mode/nginx';
|
|
19
|
+
import { dockerFile } from '@codemirror/legacy-modes/mode/dockerfile';
|
|
20
|
+
import { properties } from '@codemirror/legacy-modes/mode/properties';
|
|
21
|
+
import { csharp, kotlin, dart, scala, objectiveCpp } from '@codemirror/legacy-modes/mode/clike';
|
|
22
|
+
import { swift } from '@codemirror/legacy-modes/mode/swift';
|
|
23
|
+
import { sCSS, less } from '@codemirror/legacy-modes/mode/css';
|
|
24
|
+
import { sass } from '@codemirror/legacy-modes/mode/sass';
|
|
25
|
+
import { stylus } from '@codemirror/legacy-modes/mode/stylus';
|
|
26
|
+
import { ruby } from '@codemirror/legacy-modes/mode/ruby';
|
|
27
|
+
import { lua } from '@codemirror/legacy-modes/mode/lua';
|
|
28
|
+
import { perl } from '@codemirror/legacy-modes/mode/perl';
|
|
29
|
+
import { r } from '@codemirror/legacy-modes/mode/r';
|
|
30
|
+
import { groovy } from '@codemirror/legacy-modes/mode/groovy';
|
|
31
|
+
import { powerShell } from '@codemirror/legacy-modes/mode/powershell';
|
|
32
|
+
import { diff } from '@codemirror/legacy-modes/mode/diff';
|
|
33
|
+
import { protobuf } from '@codemirror/legacy-modes/mode/protobuf';
|
|
34
|
+
import { cmake } from '@codemirror/legacy-modes/mode/cmake';
|
|
35
|
+
import { pug } from '@codemirror/legacy-modes/mode/pug';
|
|
36
|
+
import { tcl } from '@codemirror/legacy-modes/mode/tcl';
|
|
37
|
+
import { haskell } from '@codemirror/legacy-modes/mode/haskell';
|
|
38
|
+
import { clojure } from '@codemirror/legacy-modes/mode/clojure';
|
|
39
|
+
import { erlang } from '@codemirror/legacy-modes/mode/erlang';
|
|
40
|
+
import { julia } from '@codemirror/legacy-modes/mode/julia';
|
|
41
|
+
import { pascal } from '@codemirror/legacy-modes/mode/pascal';
|
|
42
|
+
import { vb } from '@codemirror/legacy-modes/mode/vb';
|
|
43
|
+
import { vhdl } from '@codemirror/legacy-modes/mode/vhdl';
|
|
44
|
+
import { stex } from '@codemirror/legacy-modes/mode/stex';
|
|
45
|
+
/** 取路径的扩展名(小写,无点)。 */
|
|
46
|
+
export function extOf(path) {
|
|
47
|
+
const base = path.slice(path.lastIndexOf('/') + 1);
|
|
48
|
+
const dot = base.lastIndexOf('.');
|
|
49
|
+
return dot <= 0 ? '' : base.slice(dot + 1).toLowerCase();
|
|
50
|
+
}
|
|
51
|
+
/** 扩展名对应的语言键;无匹配返回 null(纯文本)。 */
|
|
52
|
+
export function languageKeyForExt(ext) {
|
|
53
|
+
switch (ext) {
|
|
54
|
+
case 'js':
|
|
55
|
+
case 'mjs':
|
|
56
|
+
case 'cjs': return 'js';
|
|
57
|
+
case 'jsx': return 'jsx';
|
|
58
|
+
case 'ts':
|
|
59
|
+
case 'mts':
|
|
60
|
+
case 'cts': return 'ts';
|
|
61
|
+
case 'tsx': return 'tsx';
|
|
62
|
+
case 'json':
|
|
63
|
+
case 'jsonc': return 'json';
|
|
64
|
+
case 'md':
|
|
65
|
+
case 'markdown': return 'md';
|
|
66
|
+
case 'py':
|
|
67
|
+
case 'pyw': return 'python';
|
|
68
|
+
case 'html':
|
|
69
|
+
case 'htm': return 'html';
|
|
70
|
+
case 'css': return 'css';
|
|
71
|
+
case 'yaml':
|
|
72
|
+
case 'yml': return 'yaml';
|
|
73
|
+
case 'sh':
|
|
74
|
+
case 'bash':
|
|
75
|
+
case 'zsh': return 'shell';
|
|
76
|
+
case 'toml': return 'toml';
|
|
77
|
+
case 'nginx':
|
|
78
|
+
case 'conf': return 'nginx';
|
|
79
|
+
case 'dockerfile':
|
|
80
|
+
case 'docker': return 'dockerfile';
|
|
81
|
+
case 'properties':
|
|
82
|
+
case 'env': return 'properties';
|
|
83
|
+
case 'scss': return 'scss';
|
|
84
|
+
case 'sass': return 'sass';
|
|
85
|
+
case 'less': return 'less';
|
|
86
|
+
case 'styl': return 'stylus';
|
|
87
|
+
case 'rb': return 'ruby';
|
|
88
|
+
case 'lua': return 'lua';
|
|
89
|
+
case 'pl':
|
|
90
|
+
case 'pm': return 'perl';
|
|
91
|
+
case 'r': return 'r';
|
|
92
|
+
case 'groovy': return 'groovy';
|
|
93
|
+
case 'ps1':
|
|
94
|
+
case 'psm1': return 'powershell';
|
|
95
|
+
case 'diff':
|
|
96
|
+
case 'patch': return 'diff';
|
|
97
|
+
case 'proto': return 'protobuf';
|
|
98
|
+
case 'cmake': return 'cmake';
|
|
99
|
+
case 'pug': return 'pug';
|
|
100
|
+
case 'tcl': return 'tcl';
|
|
101
|
+
case 'hs': return 'haskell';
|
|
102
|
+
case 'clj':
|
|
103
|
+
case 'cljs': return 'clojure';
|
|
104
|
+
case 'erl': return 'erlang';
|
|
105
|
+
case 'jl': return 'julia';
|
|
106
|
+
case 'pas': return 'pascal';
|
|
107
|
+
case 'vb': return 'vb';
|
|
108
|
+
case 'vhd': return 'vhdl';
|
|
109
|
+
case 'tex': return 'stex';
|
|
110
|
+
case 'cs': return 'csharp';
|
|
111
|
+
case 'kt':
|
|
112
|
+
case 'kts': return 'kotlin';
|
|
113
|
+
case 'dart': return 'dart';
|
|
114
|
+
case 'scala':
|
|
115
|
+
case 'sc': return 'scala';
|
|
116
|
+
case 'mm': return 'objectivecpp';
|
|
117
|
+
case 'c':
|
|
118
|
+
case 'h':
|
|
119
|
+
case 'cc':
|
|
120
|
+
case 'cpp':
|
|
121
|
+
case 'cxx':
|
|
122
|
+
case 'hpp':
|
|
123
|
+
case 'hh':
|
|
124
|
+
case 'hxx': return 'cpp';
|
|
125
|
+
default: return null;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
const FACTORIES = {
|
|
129
|
+
js: () => javascript({ jsx: true }),
|
|
130
|
+
jsx: () => javascript({ jsx: true }),
|
|
131
|
+
ts: () => javascript({ typescript: true }),
|
|
132
|
+
tsx: () => javascript({ typescript: true, jsx: true }),
|
|
133
|
+
json: () => json(),
|
|
134
|
+
md: () => markdown(),
|
|
135
|
+
python: () => python(),
|
|
136
|
+
html: () => html(),
|
|
137
|
+
css: () => css(),
|
|
138
|
+
yaml: () => yaml(),
|
|
139
|
+
shell: () => StreamLanguage.define(shell),
|
|
140
|
+
toml: () => StreamLanguage.define(toml),
|
|
141
|
+
nginx: () => StreamLanguage.define(nginx),
|
|
142
|
+
dockerfile: () => StreamLanguage.define(dockerFile),
|
|
143
|
+
properties: () => StreamLanguage.define(properties),
|
|
144
|
+
csharp: () => StreamLanguage.define(csharp),
|
|
145
|
+
kotlin: () => StreamLanguage.define(kotlin),
|
|
146
|
+
dart: () => StreamLanguage.define(dart),
|
|
147
|
+
scala: () => StreamLanguage.define(scala),
|
|
148
|
+
objectivecpp: () => StreamLanguage.define(objectiveCpp),
|
|
149
|
+
swift: () => StreamLanguage.define(swift),
|
|
150
|
+
scss: () => StreamLanguage.define(sCSS),
|
|
151
|
+
sass: () => StreamLanguage.define(sass),
|
|
152
|
+
less: () => StreamLanguage.define(less),
|
|
153
|
+
stylus: () => StreamLanguage.define(stylus),
|
|
154
|
+
ruby: () => StreamLanguage.define(ruby),
|
|
155
|
+
lua: () => StreamLanguage.define(lua),
|
|
156
|
+
perl: () => StreamLanguage.define(perl),
|
|
157
|
+
r: () => StreamLanguage.define(r),
|
|
158
|
+
groovy: () => StreamLanguage.define(groovy),
|
|
159
|
+
powershell: () => StreamLanguage.define(powerShell),
|
|
160
|
+
diff: () => StreamLanguage.define(diff),
|
|
161
|
+
protobuf: () => StreamLanguage.define(protobuf),
|
|
162
|
+
cmake: () => StreamLanguage.define(cmake),
|
|
163
|
+
pug: () => StreamLanguage.define(pug),
|
|
164
|
+
tcl: () => StreamLanguage.define(tcl),
|
|
165
|
+
haskell: () => StreamLanguage.define(haskell),
|
|
166
|
+
clojure: () => StreamLanguage.define(clojure),
|
|
167
|
+
erlang: () => StreamLanguage.define(erlang),
|
|
168
|
+
julia: () => StreamLanguage.define(julia),
|
|
169
|
+
pascal: () => StreamLanguage.define(pascal),
|
|
170
|
+
vb: () => StreamLanguage.define(vb),
|
|
171
|
+
vhdl: () => StreamLanguage.define(vhdl),
|
|
172
|
+
stex: () => StreamLanguage.define(stex),
|
|
173
|
+
// C/C++/Obj-C 无独立 lang 包,回落到 C 系 StreamLanguage(近似上色,纯只读渲染足够)。
|
|
174
|
+
cpp: () => StreamLanguage.define(csharp),
|
|
175
|
+
};
|
|
176
|
+
/** 路径对应的 CodeMirror 语法扩展;未知扩展回落 null(纯文本)。 */
|
|
177
|
+
export function languageForPath(path) {
|
|
178
|
+
const key = languageKeyForExt(extOf(path));
|
|
179
|
+
if (key === null)
|
|
180
|
+
return null;
|
|
181
|
+
try {
|
|
182
|
+
return FACTORIES[key]();
|
|
183
|
+
}
|
|
184
|
+
catch (error) {
|
|
185
|
+
// 单个语言工厂失败 ⇒ 退化为纯文本,绝不让查看器崩。
|
|
186
|
+
console.warn(`[dsh-plugin-core:code-viewer] language factory "${key}" failed:`, error);
|
|
187
|
+
return null;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=code-viewer-lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-viewer-lang.js","sourceRoot":"","sources":["../../src/ui/code-viewer-lang.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type Extension } from '@codemirror/state';
|
|
2
|
+
export declare const cmSurfaceTheme: Extension;
|
|
3
|
+
/** 返回 CodeMirror 6 主题扩展数组(表面 + 选区微调 + one-dark/one-light 语法色)。 */
|
|
4
|
+
export declare function codeMirrorTheme(dark: boolean): Extension[];
|
|
5
|
+
//# sourceMappingURL=code-viewer-theme.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-viewer-theme.d.ts","sourceRoot":"","sources":["../../src/ui/code-viewer-theme.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAgBlD,eAAO,MAAM,cAAc,WAyBzB,CAAA;AAyFF,kEAAkE;AAClE,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,CAM1D"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CodeMirror 6 主题(DSH 共享底座版)。
|
|
3
|
+
*
|
|
4
|
+
* 移植自兄弟项目 dsh-task-dispatch-table(src/client/ui/cm-themes.ts),token 名换成
|
|
5
|
+
* 本仓的 --dshpc-*;语法配色沿用 one-dark / one-light 调色板(已真机验证的观感)。
|
|
6
|
+
* 提供:
|
|
7
|
+
* - cmSurfaceTheme:透明底 + 13px + 等宽字体 + 行号槽用 --dshpc-fg-3,随宿主滚动;
|
|
8
|
+
* - codeMirrorTheme(dark):表面主题 + 选区/激活行微调 + one-dark/one-light 语法色。
|
|
9
|
+
*
|
|
10
|
+
* ⚠️ 选区配色的硬约束:CodeMirror 把选区画成**文字底下的一层背景**,**不会**给选中文字重新上色
|
|
11
|
+
* ⇒ 选区色必须自己保证与语法色有对比度。旧实现给暗色用 rgba(255,255,255,.22) 半透明白 ⇒ 选区发白、
|
|
12
|
+
* one-dark 的浅/白字压上去直接隐身。现按官方 @codemirror/theme-one-dark 取**不透明实色**
|
|
13
|
+
* (暗 #3E4451 / 浅 #c8d3f0)。
|
|
14
|
+
*/
|
|
15
|
+
import { HighlightStyle, syntaxHighlighting } from '@codemirror/language';
|
|
16
|
+
import { tags } from '@lezer/highlight';
|
|
17
|
+
import { EditorView } from '@codemirror/view';
|
|
18
|
+
const ONE_DARK = {
|
|
19
|
+
black: '#282c34', gray: '#abb2bf', faintGray: '#5c6370', white: '#ffffff',
|
|
20
|
+
red: '#e06c75', green: '#98c379', yellow: '#e5c07b', blue: '#61afef',
|
|
21
|
+
magenta: '#c678dd', cyan: '#56b6c2', orange: '#d19a66', link: '#56b6c2',
|
|
22
|
+
};
|
|
23
|
+
const ONE_LIGHT = {
|
|
24
|
+
black: '#383a42', gray: '#a0a1a7', faintGray: '#4f525e', white: '#ffffff',
|
|
25
|
+
red: '#e45649', green: '#50a14f', yellow: '#c18401', blue: '#0184bc',
|
|
26
|
+
magenta: '#a626a4', cyan: '#0997b3', orange: '#986801', link: '#4078f2',
|
|
27
|
+
};
|
|
28
|
+
// 表面层:透明底、13px、等宽字体、行号槽取 --dshpc-fg-3;不抢背景,叠在宿主面板上。
|
|
29
|
+
export const cmSurfaceTheme = EditorView.theme({
|
|
30
|
+
'&': {
|
|
31
|
+
height: '100%',
|
|
32
|
+
fontSize: '13px',
|
|
33
|
+
backgroundColor: 'transparent',
|
|
34
|
+
color: 'var(--dshpc-fg, #1f2328)',
|
|
35
|
+
},
|
|
36
|
+
'.cm-scroller': {
|
|
37
|
+
overflow: 'auto',
|
|
38
|
+
fontFamily: 'var(--dshpc-font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace)',
|
|
39
|
+
},
|
|
40
|
+
'.cm-content': {
|
|
41
|
+
caretColor: 'var(--dshpc-fg, #1f2328)',
|
|
42
|
+
},
|
|
43
|
+
'.cm-gutters': {
|
|
44
|
+
backgroundColor: 'transparent',
|
|
45
|
+
color: 'var(--dshpc-fg-3, rgba(128,128,128,0.8))',
|
|
46
|
+
border: 'none',
|
|
47
|
+
},
|
|
48
|
+
'.cm-activeLine': {
|
|
49
|
+
backgroundColor: 'transparent',
|
|
50
|
+
},
|
|
51
|
+
'.cm-activeLineGutter': {
|
|
52
|
+
backgroundColor: 'transparent',
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
/**
|
|
56
|
+
* 选区色:暗 #3E4451(官方 one-dark 原值,比深底更深的实色 ⇒ 浅字压上去仍清晰)、
|
|
57
|
+
* 浅 #c8d3f0(one-light 同族浅底 ⇒ 深字压上去仍清晰)。一律**不透明**:半透明会让
|
|
58
|
+
* 选区色随宿主面板深浅漂移,对比度不可控。
|
|
59
|
+
*/
|
|
60
|
+
const SELECTION_DARK = '#3E4451';
|
|
61
|
+
const SELECTION_LIGHT = '#c8d3f0';
|
|
62
|
+
function cmSurfaceTint(dark) {
|
|
63
|
+
return EditorView.theme({
|
|
64
|
+
// 选择器照抄官方 @codemirror/theme-one-dark(dist/index.js:41):
|
|
65
|
+
// 聚焦态选区画在 .cm-selectionLayer 里,未聚焦走 .cm-selectionBackground,
|
|
66
|
+
// 浏览器原生取 .cm-content ::selection —— 三条都盖住,避免任一路径漏配。
|
|
67
|
+
'&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection': {
|
|
68
|
+
backgroundColor: dark ? SELECTION_DARK : SELECTION_LIGHT,
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
const HIGHLIGHTS_DARK = [
|
|
73
|
+
{ tag: [tags.comment, tags.lineComment, tags.blockComment], color: ONE_DARK.faintGray, fontStyle: 'italic' },
|
|
74
|
+
{ tag: [tags.keyword, tags.modifier, tags.controlKeyword, tags.moduleKeyword], color: ONE_DARK.magenta },
|
|
75
|
+
{ tag: [tags.operator, tags.operatorKeyword, tags.compareOperator, tags.logicOperator, tags.bitwiseOperator], color: ONE_DARK.cyan },
|
|
76
|
+
{ tag: [tags.definitionKeyword, tags.atom], color: ONE_DARK.cyan },
|
|
77
|
+
{ tag: [tags.number, tags.bool, tags.null, tags.escape], color: ONE_DARK.orange },
|
|
78
|
+
{ tag: [tags.string, tags.special(tags.string), tags.regexp], color: ONE_DARK.green },
|
|
79
|
+
{ tag: [tags.character, tags.special(tags.character)], color: ONE_DARK.orange },
|
|
80
|
+
{ tag: [tags.propertyName], color: ONE_DARK.yellow },
|
|
81
|
+
// 变量名取 ivory(#abb2bf) 而非纯白:官方 one-dark 的正文色就是 ivory,纯白在深底上过曝、
|
|
82
|
+
// 且压在选区上对比度更差(旧值 #ffffff)。
|
|
83
|
+
{ tag: [tags.variableName], color: ONE_DARK.gray },
|
|
84
|
+
{ tag: [tags.function(tags.variableName), tags.function(tags.propertyName), tags.labelName], color: ONE_DARK.blue },
|
|
85
|
+
{ tag: [tags.className, tags.typeName, tags.namespace], color: ONE_DARK.yellow },
|
|
86
|
+
{ tag: [tags.definition(tags.typeName), tags.definition(tags.className), tags.definition(tags.namespace)], color: ONE_DARK.yellow },
|
|
87
|
+
{ tag: [tags.tagName], color: ONE_DARK.red },
|
|
88
|
+
{ tag: [tags.attributeName], color: ONE_DARK.yellow },
|
|
89
|
+
{ tag: [tags.self, tags.standard(tags.variableName), tags.constant(tags.variableName)], color: ONE_DARK.orange },
|
|
90
|
+
{ tag: [tags.punctuation, tags.separator, tags.bracket], color: ONE_DARK.gray },
|
|
91
|
+
{ tag: [tags.squareBracket, tags.paren, tags.brace], color: ONE_DARK.gray },
|
|
92
|
+
{ tag: [tags.meta, tags.documentMeta, tags.annotation], color: ONE_DARK.gray },
|
|
93
|
+
{ tag: [tags.link, tags.url], color: ONE_DARK.link, fontStyle: 'underline' },
|
|
94
|
+
{ tag: [tags.heading], color: ONE_DARK.blue, fontStyle: 'bold' },
|
|
95
|
+
{ tag: [tags.emphasis], fontStyle: 'italic' },
|
|
96
|
+
{ tag: [tags.strong], fontWeight: 'bold' },
|
|
97
|
+
{ tag: [tags.strikethrough], textDecoration: 'line-through' },
|
|
98
|
+
{ tag: [tags.monospace], color: ONE_DARK.green },
|
|
99
|
+
{ tag: [tags.contentSeparator], color: ONE_DARK.faintGray },
|
|
100
|
+
{ tag: [tags.invalid], color: ONE_DARK.red },
|
|
101
|
+
];
|
|
102
|
+
const HIGHLIGHTS_LIGHT = [
|
|
103
|
+
{ tag: [tags.comment, tags.lineComment, tags.blockComment], color: ONE_LIGHT.faintGray, fontStyle: 'italic' },
|
|
104
|
+
{ tag: [tags.keyword, tags.modifier, tags.controlKeyword, tags.moduleKeyword], color: ONE_LIGHT.magenta },
|
|
105
|
+
{ tag: [tags.operator, tags.operatorKeyword, tags.compareOperator, tags.logicOperator, tags.bitwiseOperator], color: ONE_LIGHT.cyan },
|
|
106
|
+
{ tag: [tags.definitionKeyword, tags.atom], color: ONE_LIGHT.cyan },
|
|
107
|
+
{ tag: [tags.number, tags.bool, tags.null, tags.escape], color: ONE_LIGHT.orange },
|
|
108
|
+
{ tag: [tags.string, tags.special(tags.string), tags.regexp], color: ONE_LIGHT.green },
|
|
109
|
+
{ tag: [tags.character, tags.special(tags.character)], color: ONE_LIGHT.orange },
|
|
110
|
+
{ tag: [tags.propertyName], color: ONE_LIGHT.black },
|
|
111
|
+
{ tag: [tags.variableName], color: ONE_LIGHT.black },
|
|
112
|
+
{ tag: [tags.function(tags.variableName), tags.function(tags.propertyName), tags.labelName], color: ONE_LIGHT.blue },
|
|
113
|
+
{ tag: [tags.className, tags.typeName, tags.namespace], color: ONE_LIGHT.yellow },
|
|
114
|
+
{ tag: [tags.definition(tags.typeName), tags.definition(tags.className), tags.definition(tags.namespace)], color: ONE_LIGHT.yellow },
|
|
115
|
+
{ tag: [tags.tagName], color: ONE_LIGHT.red },
|
|
116
|
+
{ tag: [tags.attributeName], color: ONE_LIGHT.yellow },
|
|
117
|
+
{ tag: [tags.self, tags.standard(tags.variableName), tags.constant(tags.variableName)], color: ONE_LIGHT.orange },
|
|
118
|
+
{ tag: [tags.punctuation, tags.separator, tags.bracket], color: ONE_LIGHT.gray },
|
|
119
|
+
{ tag: [tags.squareBracket, tags.paren, tags.brace], color: ONE_LIGHT.gray },
|
|
120
|
+
{ tag: [tags.meta, tags.documentMeta, tags.annotation], color: ONE_LIGHT.gray },
|
|
121
|
+
{ tag: [tags.link, tags.url], color: ONE_LIGHT.link, fontStyle: 'underline' },
|
|
122
|
+
{ tag: [tags.heading], color: ONE_LIGHT.blue, fontStyle: 'bold' },
|
|
123
|
+
{ tag: [tags.emphasis], fontStyle: 'italic' },
|
|
124
|
+
{ tag: [tags.strong], fontWeight: 'bold' },
|
|
125
|
+
{ tag: [tags.strikethrough], textDecoration: 'line-through' },
|
|
126
|
+
{ tag: [tags.monospace], color: ONE_LIGHT.green },
|
|
127
|
+
{ tag: [tags.contentSeparator], color: ONE_LIGHT.faintGray },
|
|
128
|
+
{ tag: [tags.invalid], color: ONE_LIGHT.red },
|
|
129
|
+
];
|
|
130
|
+
/** 返回 CodeMirror 6 主题扩展数组(表面 + 选区微调 + one-dark/one-light 语法色)。 */
|
|
131
|
+
export function codeMirrorTheme(dark) {
|
|
132
|
+
return [
|
|
133
|
+
cmSurfaceTheme,
|
|
134
|
+
cmSurfaceTint(dark),
|
|
135
|
+
syntaxHighlighting(HighlightStyle.define(dark ? HIGHLIGHTS_DARK : HIGHLIGHTS_LIGHT)),
|
|
136
|
+
];
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=code-viewer-theme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-viewer-theme.js","sourceRoot":"","sources":["../../src/ui/code-viewer-theme.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const BACK_TO_TOP_CSS = "\n/* \u56DE\u5230\u9876\u90E8\u60AC\u6D6E\u94AE\uFF1A\u5706\u94AE\u3001\u5B9E\u9762\u3001\u6295\u5F71\uFF1B\u9ED8\u8BA4\u9690\u8EAB\uFF0C\u6EDA\u8FC7\u9608\u503C\u52A0 .is-visible \u624D\u663E\u5F62\u3002\n \u6A2A\u5411 left \u7531\u7EC4\u4EF6\u6309\u4E3B\u5185\u5BB9\u5217\u53F3\u7F18\u5B9E\u65F6\u7B97\u51FA\uFF08\u8D34\u5728\u5176\u53F3\u4FA7\u5916\u4FA7\uFF09\uFF0C\u4E0D\u5199\u6B7B\u3002 */\n.dshpc-backtotop{\n position:fixed;\n bottom:var(--dshpc-space-4);\n z-index:var(--dshpc-z-dock);\n width:44px;height:44px;\n display:inline-flex;align-items:center;justify-content:center;\n padding:0;margin:0;\n box-sizing:border-box;\n border:1px solid var(--dshpc-border);\n border-radius:50%;\n background:var(--dshpc-solid);\n color:var(--dshpc-on-solid);\n box-shadow:var(--dshpc-shadow-2);\n cursor:pointer;\n opacity:0;\n transform:translateY(8px) scale(.92);\n transition:opacity var(--dshpc-dur) var(--dshpc-ease),\n transform var(--dshpc-dur) var(--dshpc-ease),\n background-color var(--dshpc-dur-fast) var(--dshpc-ease);\n pointer-events:none;\n}\n.dshpc-backtotop.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}\n.dshpc-backtotop:hover{background:var(--dshpc-hover);}\n.dshpc-backtotop:active{background:var(--dshpc-active);}\n.dshpc-backtotop:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:2px;}\n@media (prefers-reduced-motion: reduce){\n .dshpc-backtotop{transition:opacity var(--dshpc-dur-fast) linear;transform:none;}\n}\n";
|
|
2
|
+
//# sourceMappingURL=back-to-top-css.generated.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"back-to-top-css.generated.d.ts","sourceRoot":"","sources":["../../../src/ui/controls/back-to-top-css.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,8/CAA6sC,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
// ⚠️ 生成物,勿手改。真源 = src/ui/controls/back-to-top.css
|
|
2
|
+
// 由 scripts/gen-css.mjs 生成(`pnpm run gen:css`):改样式请改那个 .css 文件后重新生成。
|
|
3
|
+
export const BACK_TO_TOP_CSS = "\n/* 回到顶部悬浮钮:圆钮、实面、投影;默认隐身,滚过阈值加 .is-visible 才显形。\n 横向 left 由组件按主内容列右缘实时算出(贴在其右侧外侧),不写死。 */\n.dshpc-backtotop{\n position:fixed;\n bottom:var(--dshpc-space-4);\n z-index:var(--dshpc-z-dock);\n width:44px;height:44px;\n display:inline-flex;align-items:center;justify-content:center;\n padding:0;margin:0;\n box-sizing:border-box;\n border:1px solid var(--dshpc-border);\n border-radius:50%;\n background:var(--dshpc-solid);\n color:var(--dshpc-on-solid);\n box-shadow:var(--dshpc-shadow-2);\n cursor:pointer;\n opacity:0;\n transform:translateY(8px) scale(.92);\n transition:opacity var(--dshpc-dur) var(--dshpc-ease),\n transform var(--dshpc-dur) var(--dshpc-ease),\n background-color var(--dshpc-dur-fast) var(--dshpc-ease);\n pointer-events:none;\n}\n.dshpc-backtotop.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}\n.dshpc-backtotop:hover{background:var(--dshpc-hover);}\n.dshpc-backtotop:active{background:var(--dshpc-active);}\n.dshpc-backtotop:focus-visible{outline:2px solid var(--dshpc-focus);outline-offset:2px;}\n@media (prefers-reduced-motion: reduce){\n .dshpc-backtotop{transition:opacity var(--dshpc-dur-fast) linear;transform:none;}\n}\n";
|
|
4
|
+
//# sourceMappingURL=back-to-top-css.generated.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"back-to-top-css.generated.js","sourceRoot":"","sources":["../../../src/ui/controls/back-to-top-css.generated.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,qEAAqE;AACrE,MAAM,CAAC,MAAM,eAAe,GAAG,0sCAA0sC,CAAA"}
|