@septkit/ui 0.0.41 → 0.0.43
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/code/code-block.js +7 -0
- package/dist/code/code-block.vue_vue_type_script_setup_true_lang.js +63 -0
- package/dist/code/diff.js +35 -0
- package/dist/code/highlight.js +30 -0
- package/dist/code/index.js +5 -0
- package/dist/code/xml-diff.js +5 -0
- package/dist/code/xml-diff.vue_vue_type_script_setup_true_lang.js +33 -0
- package/dist/dialecte/composables/index.js +2 -1
- package/dist/dialecte/composables/use-active-document.js +24 -0
- package/dist/dialecte/create-document-store.js +3 -3
- package/dist/dialecte/index.js +2 -1
- package/dist/dialog/dialog-host.js +5 -0
- package/dist/dialog/dialog-host.vue_vue_type_script_setup_true_lang.js +33 -0
- package/dist/dialog/dialog.js +5 -0
- package/dist/dialog/dialog.vue_vue_type_script_setup_true_lang.js +72 -0
- package/dist/dialog/index.js +4 -0
- package/dist/dialog/use-dialog-host.js +32 -0
- package/dist/explorer/collect-expandable-node-ids.js +8 -0
- package/dist/explorer/explorer.js +1 -1
- package/dist/explorer/explorer.vue_vue_type_script_setup_true_lang.js +47 -33
- package/dist/explorer/index.js +3 -2
- package/dist/external/.pnpm/@dialecte_core@0.4.5/node_modules/@dialecte/core/dist/helpers.js +142 -0
- package/dist/external/.pnpm/@dialecte_core@0.4.5/node_modules/@dialecte/core/dist/index.js +3 -0
- package/dist/external/.pnpm/{@dialecte_core@0.4.2/node_modules/@dialecte/core/dist/project-E32sEthh.js → @dialecte_core@0.4.5/node_modules/@dialecte/core/dist/project-wohrish5.js} +3352 -1170
- package/dist/external/.pnpm/{@dialecte_core@0.4.2/node_modules/@dialecte/core/dist/utils-DgKwrT2n.js → @dialecte_core@0.4.5/node_modules/@dialecte/core/dist/utils-C5_11hqg.js} +73 -3
- package/dist/external/.pnpm/@dialecte_scl@0.3.3/node_modules/@dialecte/scl/dist/hooks-BTkrNj6r.js +25264 -0
- package/dist/external/.pnpm/@dialecte_scl@0.3.3/node_modules/@dialecte/scl/dist/v2019C1/index.js +3 -0
- package/dist/external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/arrow-right.js +11 -0
- package/dist/external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/copy.js +16 -0
- package/dist/external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/text-wrap.js +22 -0
- package/dist/external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/x.js +11 -0
- package/dist/external/.pnpm/@shikijs_core@3.23.0/node_modules/@shikijs/core/dist/index.js +1299 -0
- package/dist/external/.pnpm/@shikijs_engine-javascript@3.23.0/node_modules/@shikijs/engine-javascript/dist/engine-compile.js +34 -0
- package/dist/external/.pnpm/@shikijs_engine-javascript@3.23.0/node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.js +66 -0
- package/dist/external/.pnpm/@shikijs_langs@3.23.0/node_modules/@shikijs/langs/dist/java.js +3 -0
- package/dist/external/.pnpm/@shikijs_langs@3.23.0/node_modules/@shikijs/langs/dist/xml.js +5 -0
- package/dist/external/.pnpm/@shikijs_themes@3.23.0/node_modules/@shikijs/themes/dist/github-dark.js +4 -0
- package/dist/external/.pnpm/@shikijs_types@3.23.0/node_modules/@shikijs/types/dist/index.js +8 -0
- package/dist/external/.pnpm/@shikijs_vscode-textmate@10.0.2/node_modules/@shikijs/vscode-textmate/dist/index.js +1576 -0
- package/dist/external/.pnpm/@vueuse_core@14.3.0_vue@3.5.39_typescript@5.8.3_/node_modules/@vueuse/core/dist/index.js +126 -43
- package/dist/external/.pnpm/@vueuse_shared@14.3.0_vue@3.5.39_typescript@5.8.3_/node_modules/@vueuse/shared/dist/index.js +84 -55
- package/dist/external/.pnpm/ccount@2.0.1/node_modules/ccount/index.js +10 -0
- package/dist/external/.pnpm/character-entities-html4@2.1.0/node_modules/character-entities-html4/index.js +257 -0
- package/dist/external/.pnpm/character-entities-legacy@3.0.0/node_modules/character-entities-legacy/index.js +4 -0
- package/dist/external/.pnpm/comma-separated-tokens@2.0.3/node_modules/comma-separated-tokens/index.js +7 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/comment.js +11 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/doctype.js +6 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/element.js +49 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/index.js +28 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/raw.js +7 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/root.js +6 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/text.js +8 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/index.js +48 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/omission/closing.js +86 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/omission/omission.js +10 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/omission/opening.js +39 -0
- package/dist/external/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/omission/util/siblings.js +13 -0
- package/dist/external/.pnpm/hast-util-whitespace@3.0.0/node_modules/hast-util-whitespace/lib/index.js +10 -0
- package/dist/external/.pnpm/html-void-elements@3.0.0/node_modules/html-void-elements/index.js +25 -0
- package/dist/external/.pnpm/oniguruma-parser@0.12.2/node_modules/oniguruma-parser/dist/parser/node-utils.js +23 -0
- package/dist/external/.pnpm/oniguruma-parser@0.12.2/node_modules/oniguruma-parser/dist/parser/parse.js +419 -0
- package/dist/external/.pnpm/oniguruma-parser@0.12.2/node_modules/oniguruma-parser/dist/tokenizer/tokenize.js +487 -0
- package/dist/external/.pnpm/oniguruma-parser@0.12.2/node_modules/oniguruma-parser/dist/traverser/traverse.js +84 -0
- package/dist/external/.pnpm/oniguruma-parser@0.12.2/node_modules/oniguruma-parser/dist/utils.js +30 -0
- package/dist/external/.pnpm/oniguruma-to-es@4.3.6/node_modules/oniguruma-to-es/dist/esm/index.js +970 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/index.js +25 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/aria.js +61 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/find.js +31 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/html.js +326 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/normalize.js +6 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/svg.js +564 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/util/case-insensitive-transform.js +7 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/util/case-sensitive-transform.js +6 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/util/create.js +14 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/util/defined-info.js +18 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/util/info.js +9 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/util/merge.js +9 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/util/schema.js +9 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/util/types.js +16 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/xlink.js +19 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/xml.js +15 -0
- package/dist/external/.pnpm/property-information@7.2.0/node_modules/property-information/lib/xmlns.js +14 -0
- package/dist/external/.pnpm/regex-recursion@6.0.2/node_modules/regex-recursion/src/index.js +110 -0
- package/dist/external/.pnpm/regex-utilities@2.3.0/node_modules/regex-utilities/src/index.js +56 -0
- package/dist/external/.pnpm/regex@6.1.0/node_modules/regex/src/atomic.js +94 -0
- package/dist/external/.pnpm/regex@6.1.0/node_modules/regex/src/internals.js +2 -0
- package/dist/external/.pnpm/regex@6.1.0/node_modules/regex/src/utils-internals.js +10 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Dialog/DialogContent.js +72 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Dialog/DialogContentImpl.js +101 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Dialog/DialogContentModal.js +83 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Dialog/DialogContentNonModal.js +74 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Dialog/DialogOverlay.js +48 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Dialog/DialogOverlayImpl.js +47 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Dialog/DialogPortal.js +33 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Dialog/DialogRoot.js +61 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Dialog/DialogTitle.js +28 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Dialog/utils.js +17 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Menu/utils.js +16 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Splitter/SplitterGroup.js +384 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Splitter/SplitterPanel.js +136 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Splitter/SplitterResizeHandle.js +119 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Stepper/StepperIndicator.js +27 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Stepper/StepperItem.js +67 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Stepper/StepperRoot.js +136 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Stepper/StepperTitle.js +28 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/composables/useWindowSplitterBehavior.js +37 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/composables/useWindowSplitterPanelGroupBehavior.js +82 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/shared/arrays.js +7 -2
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/shared/browser.js +4 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/assert.js +6 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/calculate.js +73 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/callPanelCallbacks.js +19 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/compare.js +11 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/debounce.js +11 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/dom.js +20 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/events.js +33 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/layout.js +103 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/pivot.js +8 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/rects.js +6 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/registry.js +106 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/resizePanel.js +15 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/stackingOrder.js +57 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/storage.js +50 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/style.js +35 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/units.js +57 -0
- package/dist/external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/utils/validation.js +39 -0
- package/dist/external/.pnpm/space-separated-tokens@2.0.2/node_modules/space-separated-tokens/index.js +6 -0
- package/dist/external/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/constant/dangerous.js +13 -0
- package/dist/external/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/core.js +23 -0
- package/dist/external/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/index.js +8 -0
- package/dist/external/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/util/format-smart.js +14 -0
- package/dist/external/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/util/to-decimal.js +8 -0
- package/dist/external/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/util/to-hexadecimal.js +8 -0
- package/dist/external/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/util/to-named.js +17 -0
- package/dist/external/.pnpm/zwitch@2.0.4/node_modules/zwitch/index.js +16 -0
- package/dist/index.d.ts +422 -4
- package/dist/index.js +24 -7
- package/dist/merge/build-view-model.js +168 -0
- package/dist/merge/decision-toggle.js +5 -0
- package/dist/merge/decision-toggle.vue_vue_type_script_setup_true_lang.js +40 -0
- package/dist/merge/element-detail.js +5 -0
- package/dist/merge/element-detail.vue_vue_type_script_setup_true_lang.js +53 -0
- package/dist/merge/index.js +6 -0
- package/dist/merge/merge-progress.js +5 -0
- package/dist/merge/merge-progress.vue_vue_type_script_setup_true_lang.js +31 -0
- package/dist/merge/merge-review.js +5 -0
- package/dist/merge/merge-review.vue_vue_type_script_setup_true_lang.js +305 -0
- package/dist/merge/merge-summary.js +5 -0
- package/dist/merge/merge-summary.vue_vue_type_script_setup_true_lang.js +76 -0
- package/dist/merge/merge-tree.js +5 -0
- package/dist/merge/merge-tree.vue_vue_type_script_setup_true_lang.js +86 -0
- package/dist/merge/merge.service.js +69 -0
- package/dist/merge/use-document-progress.js +27 -0
- package/dist/merge/use-merge-session.js +151 -0
- package/dist/ui.css +1 -1
- package/package.json +4 -2
- package/dist/external/.pnpm/@dialecte_core@0.4.2/node_modules/@dialecte/core/dist/helpers.js +0 -13
- package/dist/external/.pnpm/@dialecte_core@0.4.2/node_modules/@dialecte/core/dist/index.js +0 -3
package/dist/index.d.ts
CHANGED
|
@@ -1,15 +1,26 @@
|
|
|
1
1
|
import { AcceptableValue } from 'reka-ui';
|
|
2
|
+
import { ApplyResult } from '@dialecte/scl/v2019C1';
|
|
2
3
|
import { BoundExtensionMap } from '@dialecte/core';
|
|
3
4
|
import { Component } from 'vue';
|
|
4
5
|
import { ComponentOptionsMixin } from 'vue';
|
|
5
6
|
import { ComponentProvideOptions } from 'vue';
|
|
6
7
|
import { ComputedRef } from 'vue';
|
|
7
8
|
import { DefineComponent } from 'vue';
|
|
9
|
+
import { DiffNode } from '@dialecte/scl/v2019C1';
|
|
10
|
+
import { DiffReport } from '@dialecte/scl/v2019C1';
|
|
8
11
|
import { ExtensionModule } from '@dialecte/core';
|
|
12
|
+
import { GroupDecision } from '@dialecte/scl/v2019C1';
|
|
13
|
+
import { InjectionKey } from 'vue';
|
|
14
|
+
import { LifecycleScenario } from '@dialecte/scl/v2019C1';
|
|
15
|
+
import { LifecycleTarget } from '@dialecte/scl/v2019C1';
|
|
16
|
+
import { LifecycleVerb } from '@dialecte/scl/v2019C1';
|
|
9
17
|
import { MaybeRefOrGetter } from 'vue';
|
|
10
18
|
import { ProjectChannelMessage } from '@dialecte/core';
|
|
11
19
|
import { PublicProps } from 'vue';
|
|
20
|
+
import { Reactive } from 'vue';
|
|
12
21
|
import { Ref } from 'vue';
|
|
22
|
+
import { Scl } from '@dialecte/scl/v2019C1';
|
|
23
|
+
import { ShallowRef } from 'vue';
|
|
13
24
|
|
|
14
25
|
declare const __VLS_component: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLButtonElement>;
|
|
15
26
|
|
|
@@ -44,19 +55,30 @@ size: "xs" | "sm" | "md" | "lg" | "xl";
|
|
|
44
55
|
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
|
|
45
56
|
|
|
46
57
|
declare const __VLS_component_4: DefineComponent<__VLS_Props_4, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
58
|
+
"update:open": (value: boolean) => any;
|
|
59
|
+
}, string, PublicProps, Readonly<__VLS_Props_4> & Readonly<{
|
|
60
|
+
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
61
|
+
}>, {
|
|
62
|
+
size: DialogSize;
|
|
63
|
+
closable: boolean;
|
|
64
|
+
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
|
|
65
|
+
|
|
66
|
+
declare const __VLS_component_5: DefineComponent<__VLS_Props_6, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
47
67
|
select: (node: ExplorerNode) => any;
|
|
48
68
|
contextmenu: (payload: {
|
|
49
69
|
node: ExplorerNode;
|
|
50
70
|
event: MouseEvent;
|
|
51
71
|
}) => any;
|
|
52
|
-
|
|
72
|
+
"update:expanded": (state: ExplorerExpandedState) => any;
|
|
73
|
+
}, string, PublicProps, Readonly<__VLS_Props_6> & Readonly<{
|
|
53
74
|
onSelect?: ((node: ExplorerNode) => any) | undefined;
|
|
54
75
|
onContextmenu?: ((payload: {
|
|
55
76
|
node: ExplorerNode;
|
|
56
77
|
event: MouseEvent;
|
|
57
78
|
}) => any) | undefined;
|
|
79
|
+
"onUpdate:expanded"?: ((state: ExplorerExpandedState) => any) | undefined;
|
|
58
80
|
}>, {
|
|
59
|
-
|
|
81
|
+
expanded: ExplorerExpandedState;
|
|
60
82
|
ariaLabel: string;
|
|
61
83
|
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
|
|
62
84
|
|
|
@@ -69,6 +91,25 @@ declare type __VLS_Props = {
|
|
|
69
91
|
modifier?: 'wide' | 'block' | 'square' | 'circle';
|
|
70
92
|
};
|
|
71
93
|
|
|
94
|
+
declare type __VLS_Props_10 = {
|
|
95
|
+
detail: ElementDetailVM | undefined;
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
declare type __VLS_Props_11 = MergeSessionParams & {
|
|
99
|
+
source?: FileMeta;
|
|
100
|
+
target?: FileMeta;
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
declare type __VLS_Props_12 = {
|
|
104
|
+
items: ExplorerNode[];
|
|
105
|
+
/** Per-node metadata keyed by node id (change, role, groupId, path). */
|
|
106
|
+
meta: Record<string, MergeNodeMeta>;
|
|
107
|
+
/** Current decision per group id. */
|
|
108
|
+
decisions: Record<string, DecisionAction>;
|
|
109
|
+
/** Node ids to expand by default (the path to every change). */
|
|
110
|
+
expandedItems?: string[];
|
|
111
|
+
};
|
|
112
|
+
|
|
72
113
|
declare type __VLS_Props_2 = {
|
|
73
114
|
/** Trigger color */
|
|
74
115
|
color?: 'neutral' | 'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error';
|
|
@@ -99,15 +140,62 @@ declare type __VLS_Props_3 = {
|
|
|
99
140
|
};
|
|
100
141
|
|
|
101
142
|
declare type __VLS_Props_4 = {
|
|
143
|
+
/** Controlled open state (v-model:open). */
|
|
144
|
+
open: boolean;
|
|
145
|
+
title?: string;
|
|
146
|
+
size?: DialogSize;
|
|
147
|
+
closable?: boolean;
|
|
148
|
+
/**
|
|
149
|
+
* Render in place (no teleport) and position `absolute`, so the dialog is
|
|
150
|
+
* confined to its nearest positioned ancestor instead of the whole viewport.
|
|
151
|
+
* The container must be `relative` + `overflow-hidden`.
|
|
152
|
+
*/
|
|
153
|
+
scoped?: boolean;
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
declare type __VLS_Props_5 = {
|
|
157
|
+
host?: DialogController;
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
declare type __VLS_Props_6 = {
|
|
102
161
|
items: ExplorerNode[];
|
|
103
|
-
|
|
162
|
+
expanded?: ExplorerExpandedState;
|
|
104
163
|
ariaLabel?: string;
|
|
105
164
|
};
|
|
106
165
|
|
|
166
|
+
declare type __VLS_Props_7 = {
|
|
167
|
+
/** Code to render. */
|
|
168
|
+
code?: string;
|
|
169
|
+
/** Shiki language id. Defaults to `xml`. */
|
|
170
|
+
lang?: string;
|
|
171
|
+
/** Optional per-line diff status, index-aligned with `code` lines. */
|
|
172
|
+
lineStatuses?: readonly LineStatus[];
|
|
173
|
+
loading?: boolean;
|
|
174
|
+
/** Start with word wrap enabled. */
|
|
175
|
+
wrap?: boolean;
|
|
176
|
+
};
|
|
177
|
+
|
|
178
|
+
declare type __VLS_Props_8 = {
|
|
179
|
+
/** Baseline XML. Omit (or empty) for a purely-added element. */
|
|
180
|
+
before?: string;
|
|
181
|
+
/** Resulting XML. */
|
|
182
|
+
after?: string;
|
|
183
|
+
loading?: boolean;
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
declare type __VLS_Props_9 = {
|
|
187
|
+
size?: 'xs' | 'sm' | 'md';
|
|
188
|
+
disabled?: boolean;
|
|
189
|
+
};
|
|
190
|
+
|
|
107
191
|
declare type __VLS_PublicProps = {
|
|
108
192
|
modelValue?: AcceptableValue;
|
|
109
193
|
} & __VLS_Props_3;
|
|
110
194
|
|
|
195
|
+
declare type __VLS_PublicProps_2 = {
|
|
196
|
+
modelValue: DecisionAction;
|
|
197
|
+
} & __VLS_Props_9;
|
|
198
|
+
|
|
111
199
|
declare function __VLS_template(): {
|
|
112
200
|
attrs: Partial<{}>;
|
|
113
201
|
slots: {
|
|
@@ -141,6 +229,17 @@ declare function __VLS_template_3(): {
|
|
|
141
229
|
};
|
|
142
230
|
|
|
143
231
|
declare function __VLS_template_4(): {
|
|
232
|
+
attrs: Partial<{}>;
|
|
233
|
+
slots: {
|
|
234
|
+
header?(_: {}): any;
|
|
235
|
+
default?(_: {}): any;
|
|
236
|
+
footer?(_: {}): any;
|
|
237
|
+
};
|
|
238
|
+
refs: {};
|
|
239
|
+
rootEl: any;
|
|
240
|
+
};
|
|
241
|
+
|
|
242
|
+
declare function __VLS_template_5(): {
|
|
144
243
|
attrs: Partial<{}>;
|
|
145
244
|
slots: Readonly<{
|
|
146
245
|
'node-prefix'(props: {
|
|
@@ -175,6 +274,8 @@ declare type __VLS_TemplateResult_3 = ReturnType<typeof __VLS_template_3>;
|
|
|
175
274
|
|
|
176
275
|
declare type __VLS_TemplateResult_4 = ReturnType<typeof __VLS_template_4>;
|
|
177
276
|
|
|
277
|
+
declare type __VLS_TemplateResult_5 = ReturnType<typeof __VLS_template_5>;
|
|
278
|
+
|
|
178
279
|
declare type __VLS_WithTemplateSlots<T, S> = T & {
|
|
179
280
|
new (): {
|
|
180
281
|
$slots: S;
|
|
@@ -199,14 +300,80 @@ declare type __VLS_WithTemplateSlots_4<T, S> = T & {
|
|
|
199
300
|
};
|
|
200
301
|
};
|
|
201
302
|
|
|
303
|
+
declare type __VLS_WithTemplateSlots_5<T, S> = T & {
|
|
304
|
+
new (): {
|
|
305
|
+
$slots: S;
|
|
306
|
+
};
|
|
307
|
+
};
|
|
308
|
+
|
|
309
|
+
/** The component + props + options currently mounted in the host. */
|
|
310
|
+
export declare type ActiveDialog = {
|
|
311
|
+
component: Component;
|
|
312
|
+
props?: Record<string, unknown>;
|
|
313
|
+
options: DialogOptions;
|
|
314
|
+
};
|
|
315
|
+
|
|
316
|
+
/**
|
|
317
|
+
* Shell-agnostic observable used for the active document id — a current `value`
|
|
318
|
+
* plus `subscribe` (mirrors the shell's `Observable<T>`, whose value is
|
|
319
|
+
* `T | undefined`). Structural so the UI layer stays decoupled from
|
|
320
|
+
* `@septkit/shell-lib`.
|
|
321
|
+
*/
|
|
322
|
+
export declare type ActiveDocumentObservable<GenericValue> = {
|
|
323
|
+
readonly value: GenericValue | undefined;
|
|
324
|
+
subscribe(listener: (value: GenericValue | undefined) => void): () => void;
|
|
325
|
+
};
|
|
326
|
+
|
|
327
|
+
/**
|
|
328
|
+
* Minimal project surface `useActiveDocument` needs: the cross-realm readiness
|
|
329
|
+
* probe and the document opener. Real core/scl `Project`s satisfy it as-is.
|
|
330
|
+
*/
|
|
331
|
+
export declare type ActiveDocumentProject<GenericDocument> = {
|
|
332
|
+
getDocumentStatus: (documentId: string) => Promise<{
|
|
333
|
+
live: boolean;
|
|
334
|
+
ready: boolean;
|
|
335
|
+
}>;
|
|
336
|
+
openDocument: (documentId: string) => GenericDocument;
|
|
337
|
+
};
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* Consumer hook run INSIDE the merge transaction, right after `tx.lifecycle.apply`.
|
|
341
|
+
* Receives the `ApplyResult` (the instance roots the write produced) so a caller can
|
|
342
|
+
* layer domain-specific post-steps (e.g. naming, wiring) onto the same atomic tx for
|
|
343
|
+
* both preview and commit, keeping this service domain-agnostic.
|
|
344
|
+
*/
|
|
345
|
+
export declare type AfterApply = (tx: MergeTx, ctx: AfterApplyContext) => Promise<void> | void;
|
|
346
|
+
|
|
347
|
+
/** Context handed to {@link AfterApply}: the target plus what `apply` produced. */
|
|
348
|
+
declare type AfterApplyContext = {
|
|
349
|
+
target: LifecycleTarget;
|
|
350
|
+
report: DiffReport;
|
|
351
|
+
decisions: Map<string, GroupDecision>;
|
|
352
|
+
result: ApplyResult;
|
|
353
|
+
};
|
|
354
|
+
|
|
202
355
|
export declare const Button: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
203
356
|
|
|
204
357
|
export declare const CATEGORY_ELEMENTS: Record<string, string[]>;
|
|
205
358
|
|
|
359
|
+
/** How an element or attribute changed between the template and the instance. */
|
|
360
|
+
export declare type ChangeStatus = 'added' | 'removed' | 'modified' | 'unchanged';
|
|
361
|
+
|
|
206
362
|
declare function closeDropdown(): void;
|
|
207
363
|
|
|
364
|
+
export declare const CodeBlock: DefineComponent<__VLS_Props_7, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_7> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
365
|
+
|
|
366
|
+
/**
|
|
367
|
+
* Collects the ids of every node that has children, for binding to
|
|
368
|
+
* Explorer's `expanded` v-model to expand the whole tree.
|
|
369
|
+
*/
|
|
370
|
+
export declare function collectExpandableNodeIds(items: ExplorerNode[]): string[];
|
|
371
|
+
|
|
208
372
|
export declare const Combobox: __VLS_WithTemplateSlots_3<typeof __VLS_component_3, __VLS_TemplateResult_3["slots"]>;
|
|
209
373
|
|
|
374
|
+
/** Create a standalone dialog host (pure reactive state, no store). */
|
|
375
|
+
export declare function createDialogHost(): DialogController;
|
|
376
|
+
|
|
210
377
|
/**
|
|
211
378
|
* Build a per-extension reactive document store.
|
|
212
379
|
*
|
|
@@ -235,6 +402,29 @@ export declare function createDocumentStore<GenericBaseDocument, GenericAugmente
|
|
|
235
402
|
clear: () => void;
|
|
236
403
|
};
|
|
237
404
|
|
|
405
|
+
/** A user's binary choice on a decision group. */
|
|
406
|
+
export declare type DecisionAction = 'accept' | 'skip';
|
|
407
|
+
|
|
408
|
+
export declare const DecisionToggle: DefineComponent<__VLS_PublicProps_2, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
409
|
+
"update:modelValue": (value: DecisionAction) => any;
|
|
410
|
+
}, string, PublicProps, Readonly<__VLS_PublicProps_2> & Readonly<{
|
|
411
|
+
"onUpdate:modelValue"?: ((value: DecisionAction) => any) | undefined;
|
|
412
|
+
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
413
|
+
|
|
414
|
+
/** One attribute row in the element-detail panel (write-oriented +/- view). */
|
|
415
|
+
export declare type DetailAttribute = {
|
|
416
|
+
name: string;
|
|
417
|
+
status: ChangeStatus;
|
|
418
|
+
/** The current/instance value — the `-` line, present when modified/removed. */
|
|
419
|
+
before?: string;
|
|
420
|
+
/** The final value that will be written — the `+` line, present when added/modified. */
|
|
421
|
+
after?: string;
|
|
422
|
+
/** When set, the attribute is user-editable and its value renders as an input. */
|
|
423
|
+
editable?: EditableMode;
|
|
424
|
+
/** The engine auto-resolved a placement collision on this field (value = the resolved one). */
|
|
425
|
+
conflict?: boolean;
|
|
426
|
+
};
|
|
427
|
+
|
|
238
428
|
/**
|
|
239
429
|
* Message shapes posted on a dialecte project's BroadcastChannel — the public
|
|
240
430
|
* event contract of @dialecte/core. Alias of core's `ProjectChannelMessage`
|
|
@@ -242,8 +432,51 @@ export declare function createDocumentStore<GenericBaseDocument, GenericAugmente
|
|
|
242
432
|
*/
|
|
243
433
|
export declare type DialecteChannelMessage = ProjectChannelMessage;
|
|
244
434
|
|
|
435
|
+
export declare const Dialog: __VLS_WithTemplateSlots_4<typeof __VLS_component_4, __VLS_TemplateResult_4["slots"]>;
|
|
436
|
+
|
|
437
|
+
export declare type DialogController = {
|
|
438
|
+
/** Whether the host dialog is open. */
|
|
439
|
+
readonly open: Ref<boolean>;
|
|
440
|
+
/** The active dialog payload, or `undefined` when closed/empty. */
|
|
441
|
+
readonly active: ShallowRef<ActiveDialog | undefined>;
|
|
442
|
+
/** Open `component` in the host dialog with (type-checked) `props` and `options`. */
|
|
443
|
+
openDialog: <C extends Component>(component: C, props?: PropsOf<C>, options?: DialogOptions) => void;
|
|
444
|
+
/** Close the host dialog. */
|
|
445
|
+
close: () => void;
|
|
446
|
+
};
|
|
447
|
+
|
|
448
|
+
export declare const DialogHost: DefineComponent<__VLS_Props_5, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_5> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
|
|
449
|
+
|
|
450
|
+
/** Injection key for the ambient dialog host. */
|
|
451
|
+
export declare const dialogHostKey: InjectionKey<DialogController>;
|
|
452
|
+
|
|
453
|
+
/** Presentation options for a hosted dialog (passed through the dialog host). */
|
|
454
|
+
export declare type DialogOptions = {
|
|
455
|
+
/** Size preset. `full` fills the viewport, `fit` shrinks to the content. Default `md`. */
|
|
456
|
+
size?: DialogSize;
|
|
457
|
+
/** Optional heading shown in the dialog chrome. */
|
|
458
|
+
title?: string;
|
|
459
|
+
/** Whether the user may dismiss it (close button, escape, click-outside). Default `true`. */
|
|
460
|
+
closable?: boolean;
|
|
461
|
+
/** Confine the dialog to the host's container (in place, `absolute`) instead of the viewport. */
|
|
462
|
+
scoped?: boolean;
|
|
463
|
+
};
|
|
464
|
+
|
|
465
|
+
/** The width/height presets a {@link Dialog} supports. */
|
|
466
|
+
export declare type DialogSize = 'sm' | 'md' | 'lg' | 'xl' | 'full' | 'fit';
|
|
467
|
+
|
|
468
|
+
/**
|
|
469
|
+
* Line-level unified diff (LCS). Unchanged lines are shared; a divergent region
|
|
470
|
+
* emits its removed lines (from `before`) then its added lines (from `after`),
|
|
471
|
+
* matching the familiar GitHub-style ordering.
|
|
472
|
+
*/
|
|
473
|
+
export declare function diffLines(before: string, after: string): UnifiedDiff;
|
|
474
|
+
|
|
245
475
|
export declare const Dropdown: __VLS_WithTemplateSlots_2<typeof __VLS_component_2, __VLS_TemplateResult_2["slots"]>;
|
|
246
476
|
|
|
477
|
+
/** How the UI may edit an attribute (schema-derived classifier). */
|
|
478
|
+
export declare type EditableMode = 'rename' | 'free';
|
|
479
|
+
|
|
247
480
|
export declare const ELEMENT_TO_COLOR: Record<string, ElementColor>;
|
|
248
481
|
|
|
249
482
|
export declare const ELEMENT_TO_ICON: Record<string, Component>;
|
|
@@ -253,6 +486,30 @@ export declare interface ElementColor {
|
|
|
253
486
|
background: string;
|
|
254
487
|
}
|
|
255
488
|
|
|
489
|
+
export declare const ElementDetail: DefineComponent<__VLS_Props_10, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
490
|
+
edit: (attr: string, value: string) => any;
|
|
491
|
+
}, string, PublicProps, Readonly<__VLS_Props_10> & Readonly<{
|
|
492
|
+
onEdit?: ((attr: string, value: string) => any) | undefined;
|
|
493
|
+
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
|
|
494
|
+
|
|
495
|
+
/** View-model for the selected element's detail panel. */
|
|
496
|
+
export declare type ElementDetailVM = {
|
|
497
|
+
tag: string;
|
|
498
|
+
title: string;
|
|
499
|
+
change: ChangeStatus;
|
|
500
|
+
attributes: DetailAttribute[];
|
|
501
|
+
};
|
|
502
|
+
|
|
503
|
+
/**
|
|
504
|
+
* Controlled expand state (v-model:expanded). `scoped` is the exact list of
|
|
505
|
+
* expanded node ids; `all` expands every node with children and takes
|
|
506
|
+
* precedence over `scoped` when true.
|
|
507
|
+
*/
|
|
508
|
+
export declare type ExplorerExpandedState = {
|
|
509
|
+
scoped: string[];
|
|
510
|
+
all: boolean;
|
|
511
|
+
};
|
|
512
|
+
|
|
256
513
|
export declare type ExplorerNode = {
|
|
257
514
|
tag: string;
|
|
258
515
|
id: string;
|
|
@@ -280,6 +537,33 @@ export declare type ExtendedDocument<GenericDocument, GenericQuery, GenericTrans
|
|
|
280
537
|
/** Map of named extension modules. */
|
|
281
538
|
export declare type ExtensionsConfig = Record<string, ExtensionModule>;
|
|
282
539
|
|
|
540
|
+
/** Display metadata for a merged file (source or target), shown in the review header. */
|
|
541
|
+
export declare type FileMeta = {
|
|
542
|
+
/** Display name (filename, typically without extension). */
|
|
543
|
+
label: string;
|
|
544
|
+
/** File-type badge (`Header.fileType` or extension). */
|
|
545
|
+
type?: string;
|
|
546
|
+
/** SCL `Header` @version. */
|
|
547
|
+
version: string;
|
|
548
|
+
/** SCL `Header` @revision. */
|
|
549
|
+
revision: string;
|
|
550
|
+
};
|
|
551
|
+
|
|
552
|
+
/**
|
|
553
|
+
* Render code to syntax-highlighted HTML using Shiki's VSCode grammars/themes.
|
|
554
|
+
* The JavaScript RegExp engine is used (not the WASM/oniguruma engine) so the
|
|
555
|
+
* build stays self-contained with no separate WASM asset to ship.
|
|
556
|
+
*
|
|
557
|
+
* When `lineStatuses` is provided, each line node gets a `diff add` / `diff remove`
|
|
558
|
+
* class so a diff background can be painted on top of the highlighting.
|
|
559
|
+
*/
|
|
560
|
+
export declare function highlightCode(code: string, options?: {
|
|
561
|
+
lang?: string;
|
|
562
|
+
lineStatuses?: readonly LineStatus[];
|
|
563
|
+
}): Promise<string>;
|
|
564
|
+
|
|
565
|
+
export declare type LineStatus = 'added' | 'removed' | 'unchanged';
|
|
566
|
+
|
|
283
567
|
/**
|
|
284
568
|
* Minimal slice of a `Document` consumed by `useLiveData`: the id it queries
|
|
285
569
|
* and the project channel it listens on. Structural (not `Pick<Document, ...>`)
|
|
@@ -290,16 +574,123 @@ export declare type LiveDataDocument = {
|
|
|
290
574
|
channelName: string;
|
|
291
575
|
};
|
|
292
576
|
|
|
577
|
+
/**
|
|
578
|
+
* Per-node metadata the merge tree overlays on an `ExplorerNode` (keyed by node id).
|
|
579
|
+
* The tree itself is a plain `ExplorerNode[]`; this side map drives change colour, the
|
|
580
|
+
* decision control, and the spotlight/skip styling.
|
|
581
|
+
*/
|
|
582
|
+
export declare type MergeNodeMeta = {
|
|
583
|
+
change: ChangeStatus;
|
|
584
|
+
/** `primary` rows carry the decision control; `companion` rows are read-only side effects. */
|
|
585
|
+
role: 'primary' | 'companion' | 'plain';
|
|
586
|
+
/** The decision group this node belongs to (primary + companions share it). */
|
|
587
|
+
groupId?: string;
|
|
588
|
+
/** For a satellite companion that lives elsewhere: its real document path (shown as subtitle). */
|
|
589
|
+
path?: string;
|
|
590
|
+
};
|
|
591
|
+
|
|
592
|
+
export declare const MergeReview: DefineComponent<__VLS_Props_11, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
593
|
+
close: () => any;
|
|
594
|
+
applied: () => any;
|
|
595
|
+
}, string, PublicProps, Readonly<__VLS_Props_11> & Readonly<{
|
|
596
|
+
onClose?: (() => any) | undefined;
|
|
597
|
+
onApplied?: (() => any) | undefined;
|
|
598
|
+
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
599
|
+
|
|
600
|
+
export declare type MergeSessionParams = {
|
|
601
|
+
targetDocument: Scl.Document;
|
|
602
|
+
sourceQuery: Scl.Query;
|
|
603
|
+
verb: LifecycleVerb;
|
|
604
|
+
/** Operation to perform: place a new instance, or reconcile the existing one. */
|
|
605
|
+
scenario: LifecycleScenario;
|
|
606
|
+
/** Source (template) element: a Function (fsd) or Application (asd). */
|
|
607
|
+
sourceRef: Scl.Ref<'Function'> | Scl.Ref<'Application'>;
|
|
608
|
+
/** Target parent the instance lives under / is placed into. */
|
|
609
|
+
anchor: Scl.Ref<Scl.ElementsOf>;
|
|
610
|
+
/** Optional consumer post-step run inside the merge tx (preview + commit). */
|
|
611
|
+
afterApply?: AfterApply;
|
|
612
|
+
};
|
|
613
|
+
|
|
614
|
+
export declare const MergeTree: DefineComponent<__VLS_Props_12, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
615
|
+
select: (node: ExplorerNode) => any;
|
|
616
|
+
"update:decision": (groupId: string, action: DecisionAction) => any;
|
|
617
|
+
}, string, PublicProps, Readonly<__VLS_Props_12> & Readonly<{
|
|
618
|
+
onSelect?: ((node: ExplorerNode) => any) | undefined;
|
|
619
|
+
"onUpdate:decision"?: ((groupId: string, action: DecisionAction) => any) | undefined;
|
|
620
|
+
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
|
|
621
|
+
|
|
622
|
+
/** The transaction handle passed to `prepare`/`transaction` callbacks. */
|
|
623
|
+
declare type MergeTx = Parameters<Parameters<Scl.Document['prepare']>[0]>[0];
|
|
624
|
+
|
|
625
|
+
/** The props a component accepts (declared props + Vue built-ins like `onXxx` listeners). */
|
|
626
|
+
declare type PropsOf<C extends Component> = C extends new (...args: never[]) => {
|
|
627
|
+
$props: infer P;
|
|
628
|
+
} ? P : Record<string, never>;
|
|
629
|
+
|
|
630
|
+
/** Create (or adopt) a dialog host and provide it to descendants. Call once at the root. */
|
|
631
|
+
export declare function provideDialogHost(host?: DialogController): DialogController;
|
|
632
|
+
|
|
293
633
|
declare type QueryMapOf<GenericExtensions extends ExtensionsConfig> = {
|
|
294
634
|
[ExtensionName in keyof GenericExtensions as GenericExtensions[ExtensionName]['query'] extends object ? ExtensionName : never]: NonNullable<GenericExtensions[ExtensionName]['query']>;
|
|
295
635
|
};
|
|
296
636
|
|
|
297
|
-
export declare const SclExplorer:
|
|
637
|
+
export declare const SclExplorer: __VLS_WithTemplateSlots_5<typeof __VLS_component_5, __VLS_TemplateResult_5["slots"]>;
|
|
638
|
+
|
|
639
|
+
/** Per-node selection payload: what to preview and (if any) the change it carries. */
|
|
640
|
+
declare type StructuralNodeInfo = {
|
|
641
|
+
previewRef: Scl.Ref<Scl.ElementsOf>;
|
|
642
|
+
change: ChangeStatus;
|
|
643
|
+
role: 'primary' | 'companion' | 'plain';
|
|
644
|
+
groupId?: string;
|
|
645
|
+
node?: DiffNode;
|
|
646
|
+
};
|
|
647
|
+
|
|
648
|
+
declare type StructuralTree = {
|
|
649
|
+
items: ExplorerNode[];
|
|
650
|
+
/** Per node-id metadata (change, role, groupId) for the explorer decoration. */
|
|
651
|
+
meta: Record<string, MergeNodeMeta>;
|
|
652
|
+
/** Selection payload per node id. */
|
|
653
|
+
index: Record<string, StructuralNodeInfo>;
|
|
654
|
+
/** Ids on the path to any change — the explorer opens these by default. */
|
|
655
|
+
expanded: string[];
|
|
656
|
+
};
|
|
298
657
|
|
|
299
658
|
declare type TransactionMapOf<GenericExtensions extends ExtensionsConfig> = {
|
|
300
659
|
[ExtensionName in keyof GenericExtensions as GenericExtensions[ExtensionName]['transaction'] extends object ? ExtensionName : never]: NonNullable<GenericExtensions[ExtensionName]['transaction']>;
|
|
301
660
|
};
|
|
302
661
|
|
|
662
|
+
export declare type UnifiedDiff = {
|
|
663
|
+
/** Every line (removed + added + unchanged), joined for a single highlight pass. */
|
|
664
|
+
code: string;
|
|
665
|
+
/** Per-line status, index-aligned with the lines of `code`. */
|
|
666
|
+
statuses: LineStatus[];
|
|
667
|
+
};
|
|
668
|
+
|
|
669
|
+
/**
|
|
670
|
+
* Reactively hydrate the shell's active document — race-safe across realms.
|
|
671
|
+
*
|
|
672
|
+
* The active-document id (shell `localStorage` `storage` event) and the
|
|
673
|
+
* project's document registry (BroadcastChannel) are not ordered across realms,
|
|
674
|
+
* so in an iframe extension the id can arrive before the document is registered
|
|
675
|
+
* / its records are readable. `project.getDocumentStatus(id)` reconciles this
|
|
676
|
+
* realm's store against persisted state first, so hydration never races ahead
|
|
677
|
+
* of the document. Results from a superseded switch are ignored.
|
|
678
|
+
*
|
|
679
|
+
* Cleanup runs automatically when used inside a component/effect scope; the
|
|
680
|
+
* returned `stop` lets scope-less callers (e.g. an extension bootstrap) tear it
|
|
681
|
+
* down manually.
|
|
682
|
+
*/
|
|
683
|
+
export declare function useActiveDocument<GenericDocument>(params: {
|
|
684
|
+
project: ActiveDocumentProject<GenericDocument>;
|
|
685
|
+
activeDocumentId: ActiveDocumentObservable<string>;
|
|
686
|
+
hydrate: (doc: GenericDocument) => void;
|
|
687
|
+
clear: () => void;
|
|
688
|
+
}): {
|
|
689
|
+
isReady: Ref<boolean>;
|
|
690
|
+
activeDocumentId: Ref<string | undefined>;
|
|
691
|
+
stop: () => void;
|
|
692
|
+
};
|
|
693
|
+
|
|
303
694
|
/**
|
|
304
695
|
* Listen to a dialecte project's BroadcastChannel.
|
|
305
696
|
*
|
|
@@ -319,6 +710,9 @@ export declare function useDialecteChannel(channelName: MaybeRefOrGetter<string
|
|
|
319
710
|
isSupported: Ref<boolean>;
|
|
320
711
|
};
|
|
321
712
|
|
|
713
|
+
/** Inject the ambient dialog host. Throws if no host was provided. */
|
|
714
|
+
export declare function useDialog(): DialogController;
|
|
715
|
+
|
|
322
716
|
/**
|
|
323
717
|
* Async data that refetches when its document changes.
|
|
324
718
|
*
|
|
@@ -338,6 +732,28 @@ export declare function useLiveData<T>(params: {
|
|
|
338
732
|
refresh: (delay?: number) => Promise<T | undefined>;
|
|
339
733
|
};
|
|
340
734
|
|
|
735
|
+
/**
|
|
736
|
+
* Drives one merge-review session: runs `report`, holds the decision map + selection,
|
|
737
|
+
* builds an element-scoped merged-XML preview from a single preview-apply, and commits.
|
|
738
|
+
* The UI panels read the reactive refs and call the setters.
|
|
739
|
+
*/
|
|
740
|
+
export declare function useMergeSession(params: MergeSessionParams): {
|
|
741
|
+
report: ShallowRef<DiffReport | undefined, DiffReport | undefined>;
|
|
742
|
+
decisions: Reactive<Map<string, GroupDecision>>;
|
|
743
|
+
structuralTree: ShallowRef<StructuralTree, StructuralTree>;
|
|
744
|
+
previewXml: ShallowRef<string | undefined, string | undefined>;
|
|
745
|
+
previewBeforeXml: ShallowRef<string | undefined, string | undefined>;
|
|
746
|
+
previewLoading: ShallowRef<boolean, boolean>;
|
|
747
|
+
load: () => Promise<void>;
|
|
748
|
+
setDecision: (groupId: string, action: "accept" | "skip") => void;
|
|
749
|
+
setValue: (groupId: string, attr: string, value: string) => void;
|
|
750
|
+
decisionOf: (groupId: string) => "accept" | "skip";
|
|
751
|
+
editedValue: (groupId: string, attr: string) => string | undefined;
|
|
752
|
+
select: (sel: StructuralNodeInfo | undefined) => void;
|
|
753
|
+
stagedAttributes: (ref: Scl.Ref<Scl.ElementsOf>) => Promise<Record<string, string | undefined>>;
|
|
754
|
+
commit: () => Promise<void>;
|
|
755
|
+
};
|
|
756
|
+
|
|
341
757
|
/**
|
|
342
758
|
* Async data that refetches when anything in the project changes:
|
|
343
759
|
* commits on any document, imports, removals, new documents.
|
|
@@ -356,4 +772,6 @@ export declare function useProjectLiveData<T>(params: {
|
|
|
356
772
|
refresh: (delay?: number) => Promise<T | undefined>;
|
|
357
773
|
};
|
|
358
774
|
|
|
775
|
+
export declare const XmlDiff: DefineComponent<__VLS_Props_8, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_8> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
776
|
+
|
|
359
777
|
export { }
|
package/dist/index.js
CHANGED
|
@@ -1,13 +1,30 @@
|
|
|
1
1
|
import { createDocumentStore as e } from "./dialecte/create-document-store.js";
|
|
2
2
|
import { useDialecteChannel as t } from "./dialecte/composables/use-dialecte-channel.js";
|
|
3
3
|
import { useLiveData as n, useProjectLiveData as r } from "./dialecte/composables/use-live-data.js";
|
|
4
|
+
import { useActiveDocument as i } from "./dialecte/composables/use-active-document.js";
|
|
4
5
|
import "./dialecte/index.js";
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
6
|
+
import a from "./button/button.js";
|
|
7
|
+
import o from "./dropdown/dropdown.js";
|
|
8
|
+
import s from "./dropdown/combobox.js";
|
|
8
9
|
import "./dropdown/index.js";
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
11
|
-
import
|
|
10
|
+
import c from "./dialog/dialog.js";
|
|
11
|
+
import { createDialogHost as l, dialogHostKey as u, provideDialogHost as d, useDialog as f } from "./dialog/use-dialog-host.js";
|
|
12
|
+
import p from "./dialog/dialog-host.js";
|
|
13
|
+
import "./dialog/index.js";
|
|
14
|
+
import { CATEGORY_ELEMENTS as m, ELEMENT_TO_COLOR as h } from "./icons/element-color-map.generated.js";
|
|
15
|
+
import { ELEMENT_TO_ICON as g } from "./icons/element-icon-mapper.js";
|
|
16
|
+
import { collectExpandableNodeIds as _ } from "./explorer/collect-expandable-node-ids.js";
|
|
17
|
+
import v from "./explorer/explorer.js";
|
|
12
18
|
import "./explorer/index.js";
|
|
13
|
-
|
|
19
|
+
import { highlightCode as y } from "./code/highlight.js";
|
|
20
|
+
import b from "./code/code-block.js";
|
|
21
|
+
import { diffLines as x } from "./code/diff.js";
|
|
22
|
+
import S from "./code/xml-diff.js";
|
|
23
|
+
import "./code/index.js";
|
|
24
|
+
import C from "./merge/decision-toggle.js";
|
|
25
|
+
import w from "./merge/element-detail.js";
|
|
26
|
+
import T from "./merge/merge-tree.js";
|
|
27
|
+
import { useMergeSession as E } from "./merge/use-merge-session.js";
|
|
28
|
+
import D from "./merge/merge-review.js";
|
|
29
|
+
import "./merge/index.js";
|
|
30
|
+
export { a as Button, m as CATEGORY_ELEMENTS, b as CodeBlock, s as Combobox, C as DecisionToggle, c as Dialog, p as DialogHost, o as Dropdown, h as ELEMENT_TO_COLOR, g as ELEMENT_TO_ICON, w as ElementDetail, D as MergeReview, T as MergeTree, v as SclExplorer, S as XmlDiff, _ as collectExpandableNodeIds, l as createDialogHost, e as createDocumentStore, u as dialogHostKey, x as diffLines, y as highlightCode, d as provideDialogHost, i as useActiveDocument, t as useDialecteChannel, f as useDialog, n as useLiveData, E as useMergeSession, r as useProjectLiveData };
|