@septkit/ui 0.0.49 → 0.0.51

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.
Files changed (28) hide show
  1. package/dist/dialecte/composables/use-active-document.js +27 -17
  2. package/dist/dialecte/composables/use-live-data.js +13 -13
  3. package/dist/dialecte/create-document-store.js +3 -3
  4. package/dist/external/.pnpm/{@dialecte_core@0.4.7 → @dialecte_core@0.4.9}/node_modules/@dialecte/core/dist/helpers.js +16 -19
  5. package/dist/external/.pnpm/{@dialecte_core@0.4.7 → @dialecte_core@0.4.9}/node_modules/@dialecte/core/dist/index.js +1 -1
  6. package/dist/external/.pnpm/{@dialecte_core@0.4.7/node_modules/@dialecte/core/dist/project-DxIu-3AU.js → @dialecte_core@0.4.9/node_modules/@dialecte/core/dist/project-D-KS3OPN.js} +1 -1
  7. package/dist/external/.pnpm/{@dialecte_core@0.4.7 → @dialecte_core@0.4.9}/node_modules/@dialecte/core/dist/utils-C5_11hqg.js +1 -1
  8. package/dist/external/.pnpm/{@dialecte_scl@0.3.8/node_modules/@dialecte/scl/dist/hooks-DJJN-WU2.js → @dialecte_scl@0.3.12/node_modules/@dialecte/scl/dist/hooks-Cm_UYBBt.js} +48 -5277
  9. package/dist/external/.pnpm/@dialecte_scl@0.3.12/node_modules/@dialecte/scl/dist/v2019C1/index.js +22 -0
  10. package/dist/index.d.ts +48 -10
  11. package/dist/merge/build-view-model.js +101 -74
  12. package/dist/merge/decision-toggle.vue_vue_type_script_setup_true_lang.js +2 -2
  13. package/dist/merge/element-detail.vue_vue_type_script_setup_true_lang.js +154 -45
  14. package/dist/merge/merge-correlate.js +46 -0
  15. package/dist/merge/merge-decision.js +6 -0
  16. package/dist/merge/merge-highlight.js +44 -0
  17. package/dist/merge/merge-preflight.js +5 -0
  18. package/dist/merge/merge-preflight.vue_vue_type_script_setup_true_lang.js +41 -0
  19. package/dist/merge/merge-progress.vue_vue_type_script_setup_true_lang.js +12 -20
  20. package/dist/merge/merge-review.vue_vue_type_script_setup_true_lang.js +230 -181
  21. package/dist/merge/merge-summary.vue_vue_type_script_setup_true_lang.js +47 -25
  22. package/dist/merge/merge-tree.vue_vue_type_script_setup_true_lang.js +73 -62
  23. package/dist/merge/merge.service.js +36 -23
  24. package/dist/merge/use-document-progress.js +8 -9
  25. package/dist/merge/use-merge-session.js +122 -108
  26. package/dist/ui.css +1 -1
  27. package/package.json +3 -3
  28. package/dist/external/.pnpm/@dialecte_scl@0.3.8/node_modules/@dialecte/scl/dist/v2019C1/index.js +0 -3
@@ -6,48 +6,56 @@ import { StepperRoot_default as i } from "../external/.pnpm/reka-ui@2.10.1_vue@3
6
6
  import { StepperItem_default as a } from "../external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Stepper/StepperItem.js";
7
7
  import { StepperIndicator_default as o } from "../external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Stepper/StepperIndicator.js";
8
8
  import { StepperTitle_default as ee } from "../external/.pnpm/reka-ui@2.10.1_vue@3.5.39_typescript@5.8.3_/node_modules/reka-ui/dist/Stepper/StepperTitle.js";
9
- import te from "../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";
10
- import ne from "../external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/check.js";
11
- import re from "../external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/eye-off.js";
12
- import ie from "../external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/eye.js";
13
- import ae from "../external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/list-tree.js";
14
- import oe from "../code/xml-diff.js";
9
+ import s from "../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";
10
+ import c from "../external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/check.js";
11
+ import te from "../external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/eye-off.js";
12
+ import ne from "../external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/eye.js";
13
+ import re from "../external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/link.js";
14
+ import ie from "../external/.pnpm/@lucide_vue@1.23.0_vue@3.5.39_typescript@5.8.3_/node_modules/@lucide/vue/dist/esm/icons/list-tree.js";
15
+ import ae from "../code/xml-diff.js";
15
16
  import "../code/index.js";
16
- import se from "./element-detail.js";
17
- import { buildDetail as ce, buildSummary as s } from "./build-view-model.js";
17
+ import oe from "./element-detail.js";
18
+ import { allGroups as l, buildDetail as u, buildSummary as se } from "./build-view-model.js";
19
+ import ce from "./merge-preflight.js";
18
20
  import le from "./merge-progress.js";
19
21
  import ue from "./merge-summary.js";
20
22
  import de from "./merge-tree.js";
21
23
  import fe from "./type-name-authority.js";
22
24
  import { useDocumentProgress as pe } from "./use-document-progress.js";
23
25
  import { useMergeSession as me } from "./use-merge-session.js";
24
- import { Fragment as c, computed as l, createBlock as u, createCommentVNode as d, createElementBlock as f, createElementVNode as p, createTextVNode as m, createVNode as h, defineComponent as g, normalizeClass as _, onMounted as he, openBlock as v, ref as y, renderList as ge, resolveDynamicComponent as _e, toDisplayString as b, unref as x, vShow as ve, watch as ye, withCtx as S, withDirectives as C } from "vue";
26
+ import { Fragment as d, computed as f, createBlock as p, createCommentVNode as m, createElementBlock as h, createElementVNode as g, createTextVNode as _, createVNode as v, defineComponent as y, normalizeClass as b, onMounted as he, openBlock as x, ref as S, renderList as ge, resolveDynamicComponent as _e, toDisplayString as C, unref as w, vShow as ve, watch as ye, withCtx as T, withDirectives as be } from "vue";
25
27
  //#region lib/merge/merge-review.vue?vue&type=script&setup=true&lang.ts
26
- var w = { class: "flex h-full flex-col" }, T = { class: "flex flex-wrap items-center justify-between gap-x-8 gap-y-3 border-b border-base-300 px-4 py-2.5" }, E = {
28
+ var xe = { class: "flex h-full flex-col" }, E = { class: "flex flex-wrap items-center justify-between gap-x-8 gap-y-3 border-b border-base-300 px-4 py-2.5" }, D = {
27
29
  key: 0,
28
30
  class: "flex flex-col items-start gap-x-4 gap-y-1 text-xs md:flex-row md:items-center"
29
- }, D = {
31
+ }, O = {
30
32
  key: 0,
31
33
  class: "flex items-baseline gap-1.5"
32
- }, O = { class: "font-semibold" }, k = { class: "text-base-content/60" }, A = {
34
+ }, k = { class: "font-semibold" }, A = { class: "text-base-content/60" }, j = {
33
35
  key: 0,
34
36
  class: "uppercase"
35
- }, j = { key: 1 }, M = {
37
+ }, M = { key: 1 }, Se = {
36
38
  key: 1,
37
39
  class: "flex items-baseline gap-1.5"
38
- }, N = { class: "font-semibold" }, P = { class: "text-base-content/60" }, be = {
40
+ }, Ce = { class: "font-semibold" }, we = { class: "text-base-content/60" }, Te = {
39
41
  key: 0,
40
42
  class: "uppercase"
41
- }, xe = { key: 1 }, Se = {
43
+ }, Ee = { key: 1 }, De = {
42
44
  key: 0,
43
45
  class: "border-b border-error/40 bg-error/10 p-2 text-xs whitespace-pre-wrap text-error"
44
- }, Ce = { class: "min-h-0 flex-1" }, we = { class: "h-full" }, Te = { class: "flex shrink-0 items-center gap-3 border-b border-base-300 px-3 py-1.5 text-xs" }, Ee = { class: "flex items-center gap-1" }, De = ["title"], Oe = { class: "min-h-0 flex-1 overflow-y-auto" }, ke = {
45
- key: 2,
46
+ }, Oe = { class: "min-h-0 flex-1" }, ke = {
47
+ key: 1,
48
+ class: "h-full"
49
+ }, Ae = {
50
+ key: 0,
46
51
  class: "grid h-full place-items-center p-6 text-center"
47
- }, Ae = { class: "flex flex-col items-center gap-1" }, je = {
52
+ }, je = { class: "max-w-md space-y-2" }, Me = { class: "h-full" }, Ne = { class: "flex shrink-0 items-center gap-3 border-b border-base-300 px-3 py-1.5 text-xs" }, Pe = { class: "flex items-center gap-1" }, Fe = ["title"], Ie = { class: "min-h-0 flex-1 overflow-y-auto" }, Le = {
53
+ key: 3,
54
+ class: "grid h-full place-items-center p-6 text-center"
55
+ }, Re = { class: "flex flex-col items-center gap-1" }, ze = {
48
56
  key: 0,
49
57
  class: "text-xs opacity-70"
50
- }, Me = { class: "flex items-center justify-end gap-2 border-t border-base-300 p-2" }, F = /*@__PURE__*/ g({
58
+ }, Be = { class: "flex items-center justify-end gap-2 border-t border-base-300 p-2" }, N = /*@__PURE__*/ y({
51
59
  __name: "merge-review",
52
60
  props: {
53
61
  targetDocument: {},
@@ -62,25 +70,31 @@ var w = { class: "flex h-full flex-col" }, T = { class: "flex flex-wrap items-ce
62
70
  affixMask: { type: Function }
63
71
  },
64
72
  emits: ["applied", "close"],
65
- setup(g, { emit: F }) {
66
- let I = g, L = F, R = me(I), { structuralTree: z, previewXml: B, previewBeforeXml: Ne, previewLoading: Pe } = R, V = l({
67
- get: () => R.keepNameTypesFrom.value,
68
- set: (e) => R.setKeepNameTypesFrom(e)
69
- }), { progress: Fe, history: Ie, track: H } = pe(() => I.targetDocument.state), U = y("review"), W = y(!1), G = y(), K = y(), q = y(), J = y(), Y = y(), X = y(!0), Z = y(), Le = [
70
- "Review",
71
- "Confirm",
72
- "Done"
73
- ], Q = l(() => ({
74
- review: 0,
75
- confirm: 1,
76
- done: 2
77
- })[U.value]), Re = l(() => {
73
+ setup(y, { emit: N }) {
74
+ let P = y, F = N, I = me(P), { structuralTree: L, previewXml: Ve, previewBeforeXml: He, previewLoading: Ue } = I, R = f({
75
+ get: () => I.keepNameTypesFrom.value,
76
+ set: (e) => I.setKeepNameTypesFrom(e)
77
+ }), { progress: We, track: z } = pe(() => P.targetDocument.state), B = S("review"), V = S(!1), H = S(), U = S(), W = S(), G = S(), Ge = f(() => !!G.value && I.decisionOf(G.value) === "skip"), K = S(), q = S(!0), J = S(), Y = f(() => !!I.report.value && l(I.report.value).length === 0), X = f(() => I.warnings.value), Ke = f(() => Y.value || X.value.length > 0), Z = f(() => Y.value ? ["preflight"] : X.value.length > 0 ? [
78
+ "preflight",
79
+ "review",
80
+ "confirm",
81
+ "done"
82
+ ] : [
83
+ "review",
84
+ "confirm",
85
+ "done"
86
+ ]), qe = {
87
+ preflight: "Information",
88
+ review: "Review",
89
+ confirm: "Confirm",
90
+ done: "Done"
91
+ }, Je = f(() => Z.value.map((e) => qe[e])), Q = f(() => Math.max(0, Z.value.indexOf(B.value))), Ye = f(() => {
78
92
  let e = {};
79
- for (let t of R.report.value?.groups ?? []) e[t.id] = R.decisionOf(t.id);
93
+ for (let t of I.report.value ? l(I.report.value) : []) e[t.id] = I.decisionOf(t.id);
80
94
  return e;
81
- }), ze = l(() => {
82
- let e = z.value;
83
- if (X.value) return e.items;
95
+ }), Xe = f(() => {
96
+ let e = L.value;
97
+ if (q.value) return e.items;
84
98
  let t = new Set(e.expanded);
85
99
  function n(e) {
86
100
  let r = [];
@@ -95,161 +109,164 @@ var w = { class: "flex h-full flex-col" }, T = { class: "flex flex-wrap items-ce
95
109
  return r;
96
110
  }
97
111
  return n(e.items);
98
- }), Be = l(() => Z.value ?? z.value.expanded);
99
- ye(z, () => {
100
- Z.value = void 0;
112
+ }), Ze = f(() => J.value ?? L.value.expanded);
113
+ ye(L, () => {
114
+ J.value = void 0;
101
115
  }), he(async () => {
102
- G.value = "Analyzing template…", W.value = !0;
116
+ H.value = "Analyzing template…", V.value = !0;
103
117
  try {
104
- await H(R.load());
118
+ await z(I.load()), Ke.value && (B.value = "preflight");
105
119
  } catch (e) {
106
- K.value = e instanceof Error ? e.stack ?? e.message : String(e);
120
+ U.value = e instanceof Error ? e.stack ?? e.message : String(e);
107
121
  } finally {
108
- W.value = !1;
122
+ V.value = !1;
109
123
  }
110
124
  });
111
125
  function $() {
112
126
  return {
113
- sourceQuery: I.sourceQuery,
114
- targetQuery: I.targetDocument.query
127
+ sourceQuery: P.sourceQuery,
128
+ targetQuery: P.targetDocument.query
115
129
  };
116
130
  }
117
- function Ve() {
118
- let e = z.value, t = new Set(e.expanded);
131
+ function Qe() {
132
+ let e = L.value, t = new Set(e.expanded);
119
133
  function n(r, i) {
120
134
  for (let a of r) {
121
135
  let r = (e.meta[a.id]?.change ?? "unchanged") !== "unchanged", o = i || r;
122
136
  o && a.children?.length && t.add(a.id), a.children && n(a.children, o);
123
137
  }
124
138
  }
125
- n(e.items, !1), Z.value = [...t];
139
+ n(e.items, !1), J.value = [...t];
126
140
  }
127
- async function He(e) {
128
- let t = z.value.index[e.id];
141
+ async function $e(e) {
142
+ let t = L.value.index[e.id];
129
143
  if (!t) return;
130
- R.select(t), J.value = t.role === "primary" ? t.groupId : void 0;
131
- let n = J.value ? R.report.value?.groups.find((e) => e.id === J.value) : void 0, r = t.node ? await ce(t.node, n, $()) : void 0;
144
+ I.select(t), G.value = t.role === "primary" ? t.groupId : void 0;
145
+ let n = G.value && I.report.value ? l(I.report.value).find((e) => e.id === G.value) : void 0, r = t.node ? await u(t.node, n, $()) : void 0;
132
146
  if (r) {
133
- let e = await R.stagedAttributes(t.previewRef);
134
- for (let t of r.attributes) t.editable && e[t.name] != null && (t.after = e[t.name]);
147
+ let e = await I.stagedAttributes(t.previewRef);
148
+ for (let t of r.attributes) t.editable && e[t.name] != null && (t.written = e[t.name]);
135
149
  }
136
- q.value = r;
150
+ W.value = r;
137
151
  }
138
- function Ue(e, t) {
139
- R.setDecision(e, t);
152
+ function et(e, t) {
153
+ I.setDecision(e, t);
140
154
  }
141
- function We(e, t) {
142
- if (!J.value || !q.value) return;
143
- R.setValue(J.value, e, t);
144
- let n = q.value.attributes.find((t) => t.name === e);
145
- n && (n.after = t);
155
+ function tt(e, t) {
156
+ if (!G.value || !W.value) return;
157
+ I.setValue(G.value, e, t);
158
+ let n = W.value.attributes.find((t) => t.name === e);
159
+ n && (n.written = t);
146
160
  }
147
- async function Ge() {
148
- let e = R.report.value;
149
- e && (Y.value = await s(e, R.decisionOf, R.editedValue, $()), U.value = "confirm");
161
+ async function nt() {
162
+ let e = I.report.value;
163
+ e && (K.value = await se(e, I.decisionOf, I.editedValue, $()), B.value = "confirm");
150
164
  }
151
- async function Ke() {
152
- G.value = "Applying changes…", W.value = !0;
165
+ async function rt() {
166
+ H.value = "Applying changes…", V.value = !0;
153
167
  try {
154
- await H(R.commit()), U.value = "done";
168
+ await z(I.commit()), B.value = "done";
155
169
  } catch (e) {
156
- K.value = e instanceof Error ? e.stack ?? e.message : String(e);
170
+ U.value = e instanceof Error ? e.stack ?? e.message : String(e);
157
171
  } finally {
158
- W.value = !1;
172
+ V.value = !1;
159
173
  }
160
174
  }
161
- return (ce, s) => (v(), f("div", w, [
162
- p("header", T, [h(x(i), {
175
+ return (l, u) => (x(), h("div", xe, [
176
+ g("header", E, [v(w(i), {
163
177
  "model-value": Q.value + 1,
164
178
  class: "flex items-center",
165
179
  "aria-label": "Merge steps"
166
180
  }, {
167
- default: S(() => [(v(), f(c, null, ge(Le, (e, t) => (v(), f(c, { key: e }, [t > 0 ? (v(), f("div", {
181
+ default: T(() => [(x(!0), h(d, null, ge(Je.value, (e, t) => (x(), h(d, { key: e }, [t > 0 ? (x(), h("div", {
168
182
  key: 0,
169
- class: _(["mx-3 h-px w-8 transition-colors", t <= Q.value ? "bg-primary" : "bg-base-300"])
170
- }, null, 2)) : d("", !0), h(x(a), {
183
+ class: b(["mx-3 h-px w-8 transition-colors", t <= Q.value ? "bg-primary" : "bg-base-300"])
184
+ }, null, 2)) : m("", !0), v(w(a), {
171
185
  step: t + 1,
172
186
  class: "flex items-center gap-2"
173
187
  }, {
174
- default: S(() => [h(x(o), { class: _(["grid size-6 place-items-center rounded-full border text-xs font-semibold transition-colors", t < Q.value ? "border-primary bg-primary text-primary-content" : t === Q.value ? "border-primary text-primary" : "border-base-300 text-base-content/40"]) }, {
175
- default: S(() => [t < Q.value ? (v(), u(x(ne), {
188
+ default: T(() => [v(w(o), { class: b(["grid size-6 place-items-center rounded-full border text-xs font-semibold transition-colors", t < Q.value ? "border-primary bg-primary text-primary-content" : t === Q.value ? "border-primary text-primary" : "border-base-300 text-base-content/40"]) }, {
189
+ default: T(() => [t < Q.value ? (x(), p(w(c), {
176
190
  key: 0,
177
191
  class: "size-3.5"
178
- })) : (v(), f(c, { key: 1 }, [m(b(t + 1), 1)], 64))]),
192
+ })) : (x(), h(d, { key: 1 }, [_(C(t + 1), 1)], 64))]),
179
193
  _: 2
180
- }, 1032, ["class"]), h(x(ee), { class: _(["text-xs font-medium transition-colors", t === Q.value ? "text-base-content" : t < Q.value ? "text-base-content/70" : "text-base-content/40"]) }, {
181
- default: S(() => [m(b(e), 1)]),
194
+ }, 1032, ["class"]), v(w(ee), { class: b(["text-xs font-medium transition-colors", t === Q.value ? "text-base-content" : t < Q.value ? "text-base-content/70" : "text-base-content/40"]) }, {
195
+ default: T(() => [_(C(e), 1)]),
182
196
  _: 2
183
197
  }, 1032, ["class"])]),
184
198
  _: 2
185
- }, 1032, ["step"])], 64))), 64))]),
199
+ }, 1032, ["step"])], 64))), 128))]),
186
200
  _: 1
187
- }, 8, ["model-value"]), g.source || g.target ? (v(), f("div", E, [
188
- g.source ? (v(), f("span", D, [
189
- s[5] ||= p("span", { class: "text-[10px] font-medium uppercase tracking-wide text-base-content/45" }, " Source ", -1),
190
- p("span", O, b(g.source.label), 1),
191
- p("span", k, [
192
- g.source.type ? (v(), f("span", A, b(g.source.type), 1)) : d("", !0),
193
- g.source.type ? (v(), f("span", j, " · ")) : d("", !0),
194
- m("v" + b(g.source.version || "0") + "." + b(g.source.revision || "0"), 1)
201
+ }, 8, ["model-value"]), y.source || y.target ? (x(), h("div", D, [
202
+ y.source ? (x(), h("span", O, [
203
+ u[8] ||= g("span", { class: "text-[10px] font-medium uppercase tracking-wide text-base-content/45" }, " Source ", -1),
204
+ g("span", k, C(y.source.label), 1),
205
+ g("span", A, [
206
+ y.source.type ? (x(), h("span", j, C(y.source.type), 1)) : m("", !0),
207
+ y.source.type ? (x(), h("span", M, " · ")) : m("", !0),
208
+ _("v" + C(y.source.version || "0") + "." + C(y.source.revision || "0"), 1)
195
209
  ])
196
- ])) : d("", !0),
197
- h(x(te), { class: "hidden size-4 shrink-0 text-base-content/40 md:block" }),
198
- g.target ? (v(), f("span", M, [
199
- s[6] ||= p("span", { class: "text-[10px] font-medium uppercase tracking-wide text-base-content/45" }, " Target ", -1),
200
- p("span", N, b(g.target.label), 1),
201
- p("span", P, [
202
- g.target.type ? (v(), f("span", be, b(g.target.type), 1)) : d("", !0),
203
- g.target.type ? (v(), f("span", xe, " · ")) : d("", !0),
204
- m("v" + b(g.target.version || "0") + "." + b(g.target.revision || "0"), 1)
210
+ ])) : m("", !0),
211
+ v(w(s), { class: "hidden size-4 shrink-0 text-base-content/40 md:block" }),
212
+ y.target ? (x(), h("span", Se, [
213
+ u[9] ||= g("span", { class: "text-[10px] font-medium uppercase tracking-wide text-base-content/45" }, " Target ", -1),
214
+ g("span", Ce, C(y.target.label), 1),
215
+ g("span", we, [
216
+ y.target.type ? (x(), h("span", Te, C(y.target.type), 1)) : m("", !0),
217
+ y.target.type ? (x(), h("span", Ee, " · ")) : m("", !0),
218
+ _("v" + C(y.target.version || "0") + "." + C(y.target.revision || "0"), 1)
205
219
  ])
206
- ])) : d("", !0)
207
- ])) : d("", !0)]),
208
- K.value ? (v(), f("div", Se, b(K.value), 1)) : d("", !0),
209
- p("div", Ce, [
210
- W.value ? (v(), u(le, {
220
+ ])) : m("", !0)
221
+ ])) : m("", !0)]),
222
+ U.value ? (x(), h("div", De, C(U.value), 1)) : m("", !0),
223
+ g("div", Oe, [
224
+ V.value ? (x(), p(le, {
211
225
  key: 0,
212
- label: G.value,
213
- progress: x(Fe),
214
- history: x(Ie)
215
- }, null, 8, [
216
- "label",
217
- "progress",
218
- "history"
219
- ])) : d("", !0),
220
- C(p("div", we, [h(x(t), {
226
+ label: H.value,
227
+ progress: w(We)
228
+ }, null, 8, ["label", "progress"])) : m("", !0),
229
+ !V.value && B.value === "preflight" ? (x(), h("div", ke, [Y.value ? (x(), h("div", Ae, [g("div", je, [
230
+ v(w(re), { class: "mx-auto size-8 text-info" }),
231
+ u[10] ||= g("h2", { class: "text-base font-semibold" }, "Already up to date", -1),
232
+ u[11] ||= g("p", { class: "text-sm text-base-content/70" }, " This instance is already up to date with the template — nothing to apply. ", -1)
233
+ ])])) : (x(), p(ce, {
234
+ key: 1,
235
+ warnings: X.value
236
+ }, null, 8, ["warnings"]))])) : m("", !0),
237
+ be(g("div", Me, [v(w(t), {
221
238
  direction: "horizontal",
222
239
  class: "h-full min-h-0"
223
240
  }, {
224
- default: S(() => [
225
- h(x(n), {
241
+ default: T(() => [
242
+ v(w(n), {
226
243
  "default-size": 42,
227
244
  class: "flex h-full min-h-0 flex-col"
228
245
  }, {
229
- default: S(() => [p("div", Te, [
230
- h(fe, {
231
- modelValue: V.value,
232
- "onUpdate:modelValue": s[0] ||= (e) => V.value = e
246
+ default: T(() => [g("div", Ne, [
247
+ v(fe, {
248
+ modelValue: R.value,
249
+ "onUpdate:modelValue": u[0] ||= (e) => R.value = e
233
250
  }, null, 8, ["modelValue"]),
234
- s[7] ||= p("div", { class: "ml-auto h-4 w-px shrink-0 bg-base-300" }, null, -1),
235
- p("div", Ee, [p("button", {
251
+ u[12] ||= g("div", { class: "ml-auto h-4 w-px shrink-0 bg-base-300" }, null, -1),
252
+ g("div", Pe, [g("button", {
236
253
  type: "button",
237
- class: _(["btn btn-ghost btn-xs btn-square", { "text-primary": X.value }]),
238
- title: X.value ? "Hide unchanged elements" : "Show unchanged elements",
239
- onClick: s[1] ||= (e) => X.value = !X.value
240
- }, [(v(), u(_e(X.value ? x(ie) : x(re)), { class: "h-4 w-4" }))], 10, De), p("button", {
254
+ class: b(["btn btn-ghost btn-xs btn-square", { "text-primary": q.value }]),
255
+ title: q.value ? "Hide unchanged elements" : "Show unchanged elements",
256
+ onClick: u[1] ||= (e) => q.value = !q.value
257
+ }, [(x(), p(_e(q.value ? w(ne) : w(te)), { class: "h-4 w-4" }))], 10, Fe), g("button", {
241
258
  type: "button",
242
259
  class: "btn btn-ghost btn-xs btn-square",
243
260
  title: "Expand all differences",
244
- onClick: Ve
245
- }, [h(x(ae), { class: "h-4 w-4" })])])
246
- ]), p("div", Oe, [h(de, {
247
- items: ze.value,
248
- meta: x(z).meta,
249
- decisions: Re.value,
250
- "expanded-items": Be.value,
251
- onSelect: He,
252
- "onUpdate:decision": Ue
261
+ onClick: Qe
262
+ }, [v(w(ie), { class: "h-4 w-4" })])])
263
+ ]), g("div", Ie, [v(de, {
264
+ items: Xe.value,
265
+ meta: w(L).meta,
266
+ decisions: Ye.value,
267
+ "expanded-items": Ze.value,
268
+ onSelect: $e,
269
+ "onUpdate:decision": et
253
270
  }, null, 8, [
254
271
  "items",
255
272
  "meta",
@@ -258,30 +275,35 @@ var w = { class: "flex h-full flex-col" }, T = { class: "flex flex-wrap items-ce
258
275
  ])])]),
259
276
  _: 1
260
277
  }),
261
- h(x(r), { class: "w-px bg-base-300" }),
262
- h(x(n), { class: "h-full border-s border-base-300" }, {
263
- default: S(() => [h(x(t), {
278
+ v(w(r), { class: "w-px bg-base-300" }),
279
+ v(w(n), { class: "h-full border-s border-base-300" }, {
280
+ default: T(() => [v(w(t), {
264
281
  direction: "vertical",
265
282
  class: "h-full"
266
283
  }, {
267
- default: S(() => [
268
- h(x(n), {
284
+ default: T(() => [
285
+ v(w(n), {
269
286
  "default-size": 55,
270
287
  class: "min-h-0 overflow-auto"
271
288
  }, {
272
- default: S(() => [h(se, {
273
- detail: q.value,
274
- "affix-mask": g.affixMask,
275
- onEdit: We
276
- }, null, 8, ["detail", "affix-mask"])]),
289
+ default: T(() => [v(oe, {
290
+ detail: W.value,
291
+ "affix-mask": y.affixMask,
292
+ disabled: Ge.value,
293
+ onEdit: tt
294
+ }, null, 8, [
295
+ "detail",
296
+ "affix-mask",
297
+ "disabled"
298
+ ])]),
277
299
  _: 1
278
300
  }),
279
- h(x(r), { class: "h-px bg-base-300" }),
280
- h(x(n), { class: "min-h-0" }, {
281
- default: S(() => [h(x(oe), {
282
- before: x(Ne),
283
- after: x(B),
284
- loading: x(Pe)
301
+ v(w(r), { class: "h-px bg-base-300" }),
302
+ v(w(n), { class: "min-h-0" }, {
303
+ default: T(() => [v(w(ae), {
304
+ before: w(He),
305
+ after: w(Ve),
306
+ loading: w(Ue)
285
307
  }, null, 8, [
286
308
  "before",
287
309
  "after",
@@ -296,65 +318,92 @@ var w = { class: "flex h-full flex-col" }, T = { class: "flex flex-wrap items-ce
296
318
  })
297
319
  ]),
298
320
  _: 1
299
- })], 512), [[ve, !W.value && U.value === "review"]]),
300
- !W.value && U.value === "confirm" && Y.value ? (v(), u(ue, {
301
- key: 1,
302
- summary: Y.value,
303
- scenario: g.scenario,
304
- verb: g.verb
321
+ })], 512), [[ve, !V.value && B.value === "review"]]),
322
+ !V.value && B.value === "confirm" && K.value ? (x(), p(ue, {
323
+ key: 2,
324
+ summary: K.value,
325
+ scenario: y.scenario,
326
+ verb: y.verb
305
327
  }, null, 8, [
306
328
  "summary",
307
329
  "scenario",
308
330
  "verb"
309
- ])) : d("", !0),
310
- !W.value && U.value === "done" ? (v(), f("div", ke, [p("div", Ae, [
311
- s[8] ||= p("span", { class: "text-3xl text-success" }, "✓", -1),
312
- s[9] ||= p("p", { class: "font-medium" }, "Applied", -1),
313
- Y.value ? (v(), f("p", je, b(Y.value.added.length) + " added · " + b(Y.value.updated.length) + " updated · " + b(Y.value.skipped.length) + " skipped ", 1)) : d("", !0)
314
- ])])) : d("", !0)
331
+ ])) : m("", !0),
332
+ !V.value && B.value === "done" ? (x(), h("div", Le, [g("div", Re, [
333
+ u[13] ||= g("span", { class: "text-3xl text-success" }, "✓", -1),
334
+ u[14] ||= g("p", { class: "font-medium" }, "Applied", -1),
335
+ K.value ? (x(), h("p", ze, C(K.value.added.length) + " added · " + C(K.value.updated.length) + " updated · " + C(K.value.skipped.length) + " skipped ", 1)) : m("", !0)
336
+ ])])) : m("", !0)
315
337
  ]),
316
- p("footer", Me, [U.value === "review" ? (v(), f(c, { key: 0 }, [h(e, {
338
+ g("footer", Be, [B.value === "preflight" ? (x(), h(d, { key: 0 }, [Y.value ? (x(), p(e, {
339
+ key: 0,
340
+ color: "primary",
341
+ size: "sm",
342
+ onClick: u[2] ||= (e) => F("close")
343
+ }, {
344
+ default: T(() => [...u[15] ||= [_("Close", -1)]]),
345
+ _: 1
346
+ })) : (x(), h(d, { key: 1 }, [
347
+ u[18] ||= g("span", { class: "mr-auto text-xs text-base-content/60" }, " Warnings only — you can continue and review the changes. ", -1),
348
+ v(e, {
349
+ variant: "ghost",
350
+ size: "sm",
351
+ onClick: u[3] ||= (e) => F("close")
352
+ }, {
353
+ default: T(() => [...u[16] ||= [_("Close", -1)]]),
354
+ _: 1
355
+ }),
356
+ v(e, {
357
+ color: "primary",
358
+ size: "sm",
359
+ disabled: V.value,
360
+ onClick: u[4] ||= (e) => B.value = "review"
361
+ }, {
362
+ default: T(() => [u[17] ||= _(" Next: Review ", -1), v(w(s), { class: "size-4" })]),
363
+ _: 1
364
+ }, 8, ["disabled"])
365
+ ], 64))], 64)) : B.value === "review" ? (x(), h(d, { key: 1 }, [v(e, {
317
366
  variant: "ghost",
318
367
  size: "sm",
319
- onClick: s[2] ||= (e) => L("close")
368
+ onClick: u[5] ||= (e) => F("close")
320
369
  }, {
321
- default: S(() => [...s[10] ||= [m("Close", -1)]]),
370
+ default: T(() => [...u[19] ||= [_("Close", -1)]]),
322
371
  _: 1
323
- }), h(e, {
372
+ }), v(e, {
324
373
  color: "primary",
325
374
  size: "sm",
326
- disabled: W.value || !!K.value,
327
- onClick: Ge
375
+ disabled: V.value || !!U.value,
376
+ onClick: nt
328
377
  }, {
329
- default: S(() => [...s[11] ||= [m(" Next: Confirm ", -1)]]),
378
+ default: T(() => [...u[20] ||= [_(" Next: Confirm ", -1)]]),
330
379
  _: 1
331
- }, 8, ["disabled"])], 64)) : U.value === "confirm" ? (v(), f(c, { key: 1 }, [h(e, {
380
+ }, 8, ["disabled"])], 64)) : B.value === "confirm" ? (x(), h(d, { key: 2 }, [v(e, {
332
381
  variant: "ghost",
333
382
  size: "sm",
334
- disabled: W.value,
335
- onClick: s[3] ||= (e) => U.value = "review"
383
+ disabled: V.value,
384
+ onClick: u[6] ||= (e) => B.value = "review"
336
385
  }, {
337
- default: S(() => [...s[12] ||= [m("Back", -1)]]),
386
+ default: T(() => [...u[21] ||= [_("Back", -1)]]),
338
387
  _: 1
339
- }, 8, ["disabled"]), h(e, {
388
+ }, 8, ["disabled"]), v(e, {
340
389
  color: "primary",
341
390
  size: "sm",
342
- disabled: W.value,
343
- onClick: Ke
391
+ disabled: V.value,
392
+ onClick: rt
344
393
  }, {
345
- default: S(() => [...s[13] ||= [m("Apply", -1)]]),
394
+ default: T(() => [...u[22] ||= [_("Apply", -1)]]),
346
395
  _: 1
347
- }, 8, ["disabled"])], 64)) : (v(), u(e, {
348
- key: 2,
396
+ }, 8, ["disabled"])], 64)) : (x(), p(e, {
397
+ key: 3,
349
398
  color: "primary",
350
399
  size: "sm",
351
- onClick: s[4] ||= (e) => L("applied")
400
+ onClick: u[7] ||= (e) => F("applied")
352
401
  }, {
353
- default: S(() => [...s[14] ||= [m("Close", -1)]]),
402
+ default: T(() => [...u[23] ||= [_("Close", -1)]]),
354
403
  _: 1
355
404
  }))])
356
405
  ]));
357
406
  }
358
407
  });
359
408
  //#endregion
360
- export { F as default };
409
+ export { N as default };