react-semaphor 0.1.419 → 0.1.421
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/analytics-protocol/index.cjs +1 -1
- package/dist/analytics-protocol/index.js +28 -27
- package/dist/brand-studio/index.cjs +1 -1
- package/dist/brand-studio/index.js +2 -2
- package/dist/chunks/analyze-result-contract-B5Eeu7vD.js +1 -0
- package/dist/chunks/analyze-result-contract-sWcmvBOA.js +2070 -0
- package/dist/chunks/{calendar-preferences-dialog-f0Z7Kf-U.js → calendar-preferences-dialog-CscmhyuZ.js} +1 -1
- package/dist/chunks/{calendar-preferences-dialog-DIfAbE_y.js → calendar-preferences-dialog-cN3_2C-u.js} +3 -3
- package/dist/chunks/{dashboard-briefing-launcher-anh-Jy5v.js → dashboard-briefing-launcher-BYTBNetR.js} +4 -4
- package/dist/chunks/{dashboard-briefing-launcher-C3tNkGFG.js → dashboard-briefing-launcher-DmZkzIC3.js} +1 -1
- package/dist/chunks/{dashboard-controls-DQxlOxzy.js → dashboard-controls-9DFeKIP4.js} +1 -1
- package/dist/chunks/{dashboard-controls-8dCQaPaq.js → dashboard-controls-PhzuaTBj.js} +5 -5
- package/dist/chunks/{dashboard-json-i7Ae9KGD.js → dashboard-json-Cxhw2TZc.js} +3 -3
- package/dist/chunks/{dashboard-json-B309EInF.js → dashboard-json-DyRHI3mL.js} +1 -1
- package/dist/chunks/{edit-dashboard-visual-4HycwBHR.js → edit-dashboard-visual-3_jiBXsu.js} +1 -1
- package/dist/chunks/{edit-dashboard-visual-z3IqzYnj.js → edit-dashboard-visual-BigSJ3-x.js} +4 -4
- package/dist/chunks/{index-yxKWKFdr.js → index-BKDQw0aK.js} +2 -2
- package/dist/chunks/{index-B6DLEXRX.js → index-CH2ZzQo4.js} +5 -5
- package/dist/chunks/{switch-D6Ygf3wA.js → switch-CiOjVyVI.js} +1 -1
- package/dist/chunks/{switch-COWQU8aK.js → switch-TbCsyhv9.js} +1 -1
- package/dist/chunks/{update-policy-BzT2k4n6.js → update-policy-2MZ-Vf7v.js} +211 -187
- package/dist/chunks/update-policy-qpyAkOyO.js +3 -0
- package/dist/chunks/{use-create-flow-overlay-state-CX0D-6HM.js → use-create-flow-overlay-state-BzcJWNzh.js} +3 -3
- package/dist/chunks/{use-create-flow-overlay-state-DENfd7sW.js → use-create-flow-overlay-state-DUQmgb9H.js} +1 -1
- package/dist/chunks/{validators-Cxr9qbrR.js → validators-D0pfj3jJ.js} +93 -93
- package/dist/chunks/validators-Dj1Y-46V.js +1 -0
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/dashboard-authoring/index.cjs +1 -1
- package/dist/dashboard-authoring/index.js +14 -14
- package/dist/data-app-builder/index.cjs +1 -1
- package/dist/data-app-builder/index.js +2 -2
- package/dist/data-app-codegen/index.cjs +1 -1
- package/dist/data-app-codegen/index.js +2 -2
- package/dist/data-app-codegen-node/index.cjs +251 -139
- package/dist/data-app-codegen-node/index.js +806 -657
- package/dist/data-app-sdk/index.cjs +2 -2
- package/dist/data-app-sdk/index.js +743 -693
- package/dist/data-app-sdk-adapters/index.cjs +1 -1
- package/dist/data-app-sdk-adapters/index.js +51 -51
- package/dist/data-app-sdk-validation/index.cjs +1 -1
- package/dist/data-app-sdk-validation/index.js +2 -2
- package/dist/index.cjs +1 -1
- package/dist/index.js +7 -7
- package/dist/surfboard/index.cjs +1 -1
- package/dist/surfboard/index.js +2 -2
- package/dist/types/analytics-protocol.d.ts +12 -5
- package/dist/types/dashboard-assistant.d.ts +0 -5
- package/dist/types/data-app-codegen-node.d.ts +12 -2
- package/dist/types/data-app-codegen.d.ts +12 -2
- package/dist/types/data-app-sdk-validation.d.ts +0 -5
- package/dist/types/data-app-sdk.d.ts +17 -5
- package/package.json +1 -1
- package/dist/chunks/analyze-result-contract-DdhEt99q.js +0 -2004
- package/dist/chunks/analyze-result-contract-DwRzl7yJ.js +0 -1
- package/dist/chunks/update-policy-VloD-0YM.js +0 -3
- package/dist/chunks/validators-BMQo93Y0.js +0 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { S as
|
|
1
|
+
import { S as W, a as X, v as Z } from "./analyze-result-contract-sWcmvBOA.js";
|
|
2
2
|
import { toSemaphorInputOptionsIntent as ee, toSemaphorAnalysisQueryOptions as te, toSemaphorAnalysisIntent as re, toSemaphorMetricIntent as ne, toSemaphorRecordsIntent as ae, toSemaphorMatrixIntent as se, toSemaphorSqlIntent as ie } from "../data-app-sdk-adapters/index.js";
|
|
3
|
-
const
|
|
4
|
-
function
|
|
3
|
+
const Je = W, x = X, G = "semaphor-generated-data-app-contract/v1", T = "semaphor-generated-data-app-contract-manifest/v1";
|
|
4
|
+
function P(e) {
|
|
5
5
|
return w(e) ? [
|
|
6
6
|
...Z(e).issues,
|
|
7
7
|
...oe(e)
|
|
8
8
|
] : ["Plan artifact must be a Semaphor codegenSummary object."];
|
|
9
9
|
}
|
|
10
|
-
function
|
|
11
|
-
const t =
|
|
10
|
+
function Ye(e) {
|
|
11
|
+
const t = P(e);
|
|
12
12
|
if (t.length > 0)
|
|
13
13
|
throw new Error(`Invalid Semaphor codegenSummary:
|
|
14
14
|
- ${t.join(`
|
|
@@ -48,14 +48,17 @@ const ce = [
|
|
|
48
48
|
"metadata.ts",
|
|
49
49
|
"index.ts"
|
|
50
50
|
], de = [
|
|
51
|
+
"USAGE.md"
|
|
52
|
+
], ue = [
|
|
51
53
|
...ce,
|
|
54
|
+
...de,
|
|
52
55
|
"contract.manifest.json"
|
|
53
56
|
];
|
|
54
|
-
async function
|
|
57
|
+
async function Qe({
|
|
55
58
|
manifest: e,
|
|
56
59
|
generatedFiles: t
|
|
57
60
|
}) {
|
|
58
|
-
const n = [], r =
|
|
61
|
+
const n = [], r = y(e);
|
|
59
62
|
if (!r)
|
|
60
63
|
return {
|
|
61
64
|
issues: [
|
|
@@ -65,16 +68,16 @@ async function Je({
|
|
|
65
68
|
}
|
|
66
69
|
]
|
|
67
70
|
};
|
|
68
|
-
r.schemaVersion !==
|
|
71
|
+
r.schemaVersion !== T && n.push({
|
|
69
72
|
path: "schemaVersion",
|
|
70
|
-
message: `schemaVersion must be ${
|
|
73
|
+
message: `schemaVersion must be ${T}. Regenerate the contract with semaphor_create_data_app_contract.`,
|
|
71
74
|
repairHint: "Regenerate the contract with semaphor_create_data_app_contract."
|
|
72
|
-
}), r.generatedContractSchemaVersion !==
|
|
75
|
+
}), r.generatedContractSchemaVersion !== G && n.push({
|
|
73
76
|
path: "generatedContractSchemaVersion",
|
|
74
|
-
message: `generatedContractSchemaVersion must be ${
|
|
77
|
+
message: `generatedContractSchemaVersion must be ${G}. Regenerate the contract with semaphor_generate_data_app_contract.`,
|
|
75
78
|
repairHint: "Regenerate the contract with semaphor_generate_data_app_contract."
|
|
76
79
|
});
|
|
77
|
-
const s =
|
|
80
|
+
const s = y(r.generator);
|
|
78
81
|
S(s == null ? void 0 : s.name) || n.push({
|
|
79
82
|
path: "generator.name",
|
|
80
83
|
message: "generator.name is required.",
|
|
@@ -84,15 +87,15 @@ async function Je({
|
|
|
84
87
|
message: "generator.version is required.",
|
|
85
88
|
repairHint: "Regenerate the generated contract so manifest generator metadata is written deterministically."
|
|
86
89
|
});
|
|
87
|
-
for (const a of
|
|
90
|
+
for (const a of P(r.codegenSummary))
|
|
88
91
|
n.push({
|
|
89
92
|
path: `codegenSummary.${a}`,
|
|
90
93
|
message: `codegenSummary.${a}`,
|
|
91
94
|
repairHint: "Regenerate the generated contract from a valid Data App codegenSummary."
|
|
92
95
|
});
|
|
93
|
-
if (r.codegenSummaryValidatorVersion !==
|
|
96
|
+
if (r.codegenSummaryValidatorVersion !== x && n.push({
|
|
94
97
|
path: "codegenSummaryValidatorVersion",
|
|
95
|
-
message: `codegenSummaryValidatorVersion must be ${
|
|
98
|
+
message: `codegenSummaryValidatorVersion must be ${x}. Regenerate the contract with semaphor_generate_data_app_contract.`,
|
|
96
99
|
repairHint: "Regenerate the contract with semaphor_generate_data_app_contract."
|
|
97
100
|
}), typeof r.codegenSummaryHash != "string")
|
|
98
101
|
n.push({
|
|
@@ -100,8 +103,8 @@ async function Je({
|
|
|
100
103
|
message: "codegenSummaryHash is required.",
|
|
101
104
|
repairHint: "Regenerate the generated contract so manifest hashes are written deterministically."
|
|
102
105
|
});
|
|
103
|
-
else if (
|
|
104
|
-
const a = await
|
|
106
|
+
else if (y(r.codegenSummary)) {
|
|
107
|
+
const a = await me(
|
|
105
108
|
r.codegenSummary
|
|
106
109
|
);
|
|
107
110
|
r.codegenSummaryHash !== a && n.push({
|
|
@@ -110,16 +113,16 @@ async function Je({
|
|
|
110
113
|
repairHint: "Regenerate the generated contract instead of editing the manifest."
|
|
111
114
|
});
|
|
112
115
|
}
|
|
113
|
-
n.push(...
|
|
114
|
-
const o = t ?
|
|
115
|
-
if (n.push(...o), typeof r.generatedContentHash != "string")
|
|
116
|
+
n.push(...ge(r.codegenSummary));
|
|
117
|
+
const o = t ? fe(t) : [];
|
|
118
|
+
if (n.push(...o), t && o.length === 0 && n.push(...pe(t)), typeof r.generatedContentHash != "string")
|
|
116
119
|
n.push({
|
|
117
120
|
path: "generatedContentHash",
|
|
118
121
|
message: "generatedContentHash is required.",
|
|
119
122
|
repairHint: "Regenerate the generated contract so manifest hashes are written deterministically."
|
|
120
123
|
});
|
|
121
124
|
else if (t && o.length === 0) {
|
|
122
|
-
const a = await
|
|
125
|
+
const a = await le(t);
|
|
123
126
|
r.generatedContentHash !== a && n.push({
|
|
124
127
|
path: "generatedContentHash",
|
|
125
128
|
message: "generatedContentHash does not match generated TypeScript files. Regenerate the contract instead of hand-editing generated files.",
|
|
@@ -128,9 +131,9 @@ async function Je({
|
|
|
128
131
|
}
|
|
129
132
|
return { issues: n };
|
|
130
133
|
}
|
|
131
|
-
function
|
|
134
|
+
function fe(e) {
|
|
132
135
|
var r;
|
|
133
|
-
const t = [], n = new Set(
|
|
136
|
+
const t = [], n = new Set(ue);
|
|
134
137
|
for (const s of Object.keys(e)) {
|
|
135
138
|
if (s.includes("/") || s.includes("\\")) {
|
|
136
139
|
const o = ((r = s.split("/").pop()) == null ? void 0 : r.split("\\").pop()) || s;
|
|
@@ -149,36 +152,57 @@ function ue(e) {
|
|
|
149
152
|
}
|
|
150
153
|
return t;
|
|
151
154
|
}
|
|
152
|
-
function
|
|
153
|
-
const t =
|
|
155
|
+
function pe(e) {
|
|
156
|
+
const t = e["USAGE.md"];
|
|
157
|
+
return typeof t != "string" ? [{
|
|
158
|
+
path: "generatedFiles.USAGE.md",
|
|
159
|
+
message: "generatedFiles.USAGE.md is required.",
|
|
160
|
+
repairHint: "Regenerate the generated contract so the generated usage guide is written."
|
|
161
|
+
}] : [
|
|
162
|
+
"queries",
|
|
163
|
+
"queryOptionsForView",
|
|
164
|
+
"rowsForView",
|
|
165
|
+
"metricValuesForView",
|
|
166
|
+
"kpiPropsForView",
|
|
167
|
+
"roleValuesForView",
|
|
168
|
+
"appInputSpecs",
|
|
169
|
+
"inputOptionQueries"
|
|
170
|
+
].filter((r) => !t.includes(`\`${r}\``)).map((r) => ({
|
|
171
|
+
path: "generatedFiles.USAGE.md",
|
|
172
|
+
message: `generatedFiles.USAGE.md must document ${r}.`,
|
|
173
|
+
repairHint: "Regenerate the generated contract so the usage guide matches generated exports."
|
|
174
|
+
}));
|
|
175
|
+
}
|
|
176
|
+
function ge(e) {
|
|
177
|
+
const t = y(e);
|
|
154
178
|
if (!t)
|
|
155
179
|
return [];
|
|
156
180
|
const n = [], r = new Set(
|
|
157
|
-
|
|
181
|
+
C(t.inputs).map((o) => {
|
|
158
182
|
var a;
|
|
159
|
-
return (a =
|
|
183
|
+
return (a = y(o)) == null ? void 0 : a.id;
|
|
160
184
|
}).filter(S)
|
|
161
185
|
), s = new Set(
|
|
162
|
-
|
|
186
|
+
C(t.views).map((o) => {
|
|
163
187
|
var a;
|
|
164
|
-
return (a =
|
|
188
|
+
return (a = y(o)) == null ? void 0 : a.id;
|
|
165
189
|
}).filter(S)
|
|
166
190
|
);
|
|
167
|
-
return
|
|
168
|
-
const i =
|
|
191
|
+
return C(t.filterContracts).forEach((o, a) => {
|
|
192
|
+
const i = y(o), c = i == null ? void 0 : i.inputId;
|
|
169
193
|
(!S(c) || !r.has(c)) && n.push({
|
|
170
194
|
path: `codegenSummary.filterContracts.${a}.inputId`,
|
|
171
195
|
message: `codegenSummary.filterContracts.${a}.inputId must reference a generated input.`,
|
|
172
196
|
repairHint: "Regenerate the generated contract from a valid planner output."
|
|
173
197
|
}), Array.isArray(i == null ? void 0 : i.bindings) && i.bindings.forEach((u, f) => {
|
|
174
|
-
const
|
|
198
|
+
const p = y(u), m = p == null ? void 0 : p.viewId;
|
|
175
199
|
(!S(m) || !s.has(m)) && n.push({
|
|
176
200
|
path: `codegenSummary.filterContracts.${a}.bindings.${f}.viewId`,
|
|
177
201
|
message: `codegenSummary.filterContracts.${a}.bindings.${f}.viewId must reference a generated view.`,
|
|
178
202
|
repairHint: "Regenerate the generated contract from a valid planner output."
|
|
179
203
|
});
|
|
180
|
-
const
|
|
181
|
-
S(
|
|
204
|
+
const h = y(p == null ? void 0 : p.fieldRef);
|
|
205
|
+
S(h == null ? void 0 : h.name) || n.push({
|
|
182
206
|
path: `codegenSummary.filterContracts.${a}.bindings.${f}.fieldRef`,
|
|
183
207
|
message: `codegenSummary.filterContracts.${a}.bindings.${f}.fieldRef is required.`,
|
|
184
208
|
repairHint: "Regenerate the generated contract from a valid planner output."
|
|
@@ -186,49 +210,49 @@ function fe(e) {
|
|
|
186
210
|
});
|
|
187
211
|
}), n;
|
|
188
212
|
}
|
|
189
|
-
async function
|
|
213
|
+
async function le(e) {
|
|
190
214
|
const t = Object.keys(e).filter((r) => r.endsWith(".ts")).sort();
|
|
191
215
|
let n = "";
|
|
192
216
|
for (const r of t)
|
|
193
217
|
n += `${r}\0${e[r]}\0`;
|
|
194
|
-
return `sha256:${await
|
|
218
|
+
return `sha256:${await L(n)}`;
|
|
195
219
|
}
|
|
196
|
-
async function
|
|
197
|
-
return `sha256:${await
|
|
220
|
+
async function me(e) {
|
|
221
|
+
return `sha256:${await L(H(e))}`;
|
|
198
222
|
}
|
|
199
|
-
function
|
|
223
|
+
function H(e) {
|
|
200
224
|
if (e === null || typeof e != "object")
|
|
201
225
|
return JSON.stringify(e);
|
|
202
226
|
if (Array.isArray(e))
|
|
203
|
-
return `[${e.map((r) =>
|
|
227
|
+
return `[${e.map((r) => H(r)).join(",")}]`;
|
|
204
228
|
const t = e;
|
|
205
|
-
return `{${Object.keys(t).sort().filter((r) => t[r] !== void 0).map((r) => `${JSON.stringify(r)}:${
|
|
229
|
+
return `{${Object.keys(t).sort().filter((r) => t[r] !== void 0).map((r) => `${JSON.stringify(r)}:${H(t[r])}`).join(",")}}`;
|
|
206
230
|
}
|
|
207
|
-
async function
|
|
231
|
+
async function L(e) {
|
|
208
232
|
var r;
|
|
209
233
|
if (!((r = globalThis.crypto) != null && r.subtle))
|
|
210
234
|
throw new Error("SHA-256 digest support is required for generated contract validation.");
|
|
211
235
|
const t = new TextEncoder().encode(e), n = await globalThis.crypto.subtle.digest("SHA-256", t);
|
|
212
236
|
return Array.from(new Uint8Array(n)).map((s) => s.toString(16).padStart(2, "0")).join("");
|
|
213
237
|
}
|
|
214
|
-
function
|
|
238
|
+
function y(e) {
|
|
215
239
|
return e && typeof e == "object" && !Array.isArray(e) ? e : void 0;
|
|
216
240
|
}
|
|
217
|
-
function
|
|
241
|
+
function C(e) {
|
|
218
242
|
return Array.isArray(e) ? e : [];
|
|
219
243
|
}
|
|
220
244
|
function S(e) {
|
|
221
245
|
return typeof e == "string" && e.length > 0;
|
|
222
246
|
}
|
|
223
|
-
function
|
|
224
|
-
const t = d(e), n =
|
|
225
|
-
return
|
|
247
|
+
function We(e) {
|
|
248
|
+
const t = d(e), n = V(t), r = [], s = [];
|
|
249
|
+
return I(t == null ? void 0 : t.views).filter((o) => {
|
|
226
250
|
var i;
|
|
227
251
|
const a = d((i = d(o)) == null ? void 0 : i.sdkSpec);
|
|
228
252
|
return !!(a != null && a.builder && (a != null && a.spec));
|
|
229
253
|
}).forEach((o, a) => {
|
|
230
254
|
var u;
|
|
231
|
-
const i = String(((u = d(o)) == null ? void 0 : u.id) || `view_${a}`), c =
|
|
255
|
+
const i = String(((u = d(o)) == null ? void 0 : u.id) || `view_${a}`), c = he(
|
|
232
256
|
o,
|
|
233
257
|
n
|
|
234
258
|
);
|
|
@@ -243,18 +267,18 @@ function Ye(e) {
|
|
|
243
267
|
});
|
|
244
268
|
}), { requests: r, issues: s };
|
|
245
269
|
}
|
|
246
|
-
function
|
|
270
|
+
function he(e, t) {
|
|
247
271
|
const n = d(e), r = d(n == null ? void 0 : n.sdkSpec), s = d(r == null ? void 0 : r.spec);
|
|
248
272
|
if (!n || !(r != null && r.builder) || !s)
|
|
249
273
|
return null;
|
|
250
|
-
const o =
|
|
274
|
+
const o = ye(t) ? t : V(d(t)), a = He(r.builder), i = d(_(s, o)) || {}, c = Ae({
|
|
251
275
|
view: n,
|
|
252
276
|
builder: a,
|
|
253
277
|
rawSpec: s,
|
|
254
278
|
spec: {
|
|
255
279
|
...i,
|
|
256
280
|
id: n.id,
|
|
257
|
-
label:
|
|
281
|
+
label: Fe(n, s)
|
|
258
282
|
},
|
|
259
283
|
context: o
|
|
260
284
|
});
|
|
@@ -292,7 +316,7 @@ function le(e, t) {
|
|
|
292
316
|
}
|
|
293
317
|
return null;
|
|
294
318
|
}
|
|
295
|
-
function
|
|
319
|
+
function Xe({
|
|
296
320
|
input: e,
|
|
297
321
|
filterContract: t,
|
|
298
322
|
codegenSummary: n
|
|
@@ -300,12 +324,12 @@ function We({
|
|
|
300
324
|
const r = d(e), s = d(t), o = d(r == null ? void 0 : r.optionQuery) || d(s == null ? void 0 : s.optionQuery);
|
|
301
325
|
if (!r || !o)
|
|
302
326
|
return null;
|
|
303
|
-
const a =
|
|
327
|
+
const a = V(d(n)), i = d(o.spec), c = Se(o, i, a), u = o.valueFieldRef || o.valueField || (i == null ? void 0 : i.valueField), f = o.labelFieldRef || o.labelField || (i == null ? void 0 : i.labelField);
|
|
304
328
|
if (!c || !u || !f)
|
|
305
329
|
return null;
|
|
306
330
|
const m = {
|
|
307
331
|
...d(
|
|
308
|
-
|
|
332
|
+
_(i || {}, a)
|
|
309
333
|
) || {},
|
|
310
334
|
id: o.id || (i == null ? void 0 : i.id) || `${r.id}-options`,
|
|
311
335
|
inputId: r.id,
|
|
@@ -318,47 +342,47 @@ function We({
|
|
|
318
342
|
};
|
|
319
343
|
try {
|
|
320
344
|
return ee(
|
|
321
|
-
|
|
345
|
+
_(m, a)
|
|
322
346
|
);
|
|
323
347
|
} catch {
|
|
324
348
|
return null;
|
|
325
349
|
}
|
|
326
350
|
}
|
|
327
|
-
function
|
|
351
|
+
function Ze({
|
|
328
352
|
input: e,
|
|
329
353
|
filterContract: t,
|
|
330
354
|
binding: n,
|
|
331
355
|
option: r,
|
|
332
356
|
codegenSummary: s
|
|
333
357
|
}) {
|
|
334
|
-
const o =
|
|
358
|
+
const o = V(d(s)), a = d(e), i = d(t), c = d(n), u = _(
|
|
335
359
|
(c == null ? void 0 : c.fieldRef) || (i == null ? void 0 : i.fieldRef) || (a == null ? void 0 : a.fieldRef),
|
|
336
360
|
o
|
|
337
361
|
), f = String(
|
|
338
362
|
(i == null ? void 0 : i.operator) || (a == null ? void 0 : a.operator) || "in"
|
|
339
|
-
),
|
|
363
|
+
), p = ke(c);
|
|
340
364
|
return {
|
|
341
365
|
inputId: String((i == null ? void 0 : i.inputId) || (a == null ? void 0 : a.id) || ""),
|
|
342
366
|
kind: "filter",
|
|
343
367
|
operator: f,
|
|
344
|
-
value:
|
|
368
|
+
value: Ke(f, r.value),
|
|
345
369
|
isActive: !0,
|
|
346
370
|
...u ? { field: u } : {},
|
|
347
|
-
...
|
|
371
|
+
...p ? { relationshipHint: p } : {}
|
|
348
372
|
};
|
|
349
373
|
}
|
|
350
|
-
function
|
|
374
|
+
function V(e) {
|
|
351
375
|
return {
|
|
352
376
|
sourcesByKey: new Map(
|
|
353
|
-
|
|
377
|
+
I(e == null ? void 0 : e.sources).map(d).filter(Me).filter((t) => typeof t.sourceKey == "string").map((t) => [String(t.sourceKey), J(t)])
|
|
354
378
|
)
|
|
355
379
|
};
|
|
356
380
|
}
|
|
357
|
-
function
|
|
381
|
+
function ye(e) {
|
|
358
382
|
var t;
|
|
359
383
|
return e instanceof Object && ((t = d(e)) == null ? void 0 : t.sourcesByKey) instanceof Map;
|
|
360
384
|
}
|
|
361
|
-
function
|
|
385
|
+
function Se(e, t, n) {
|
|
362
386
|
if (typeof e.sourceKey == "string")
|
|
363
387
|
return n.sourcesByKey.get(e.sourceKey) || { sourceKey: e.sourceKey };
|
|
364
388
|
if (e.source)
|
|
@@ -368,7 +392,7 @@ function ye(e, t, n) {
|
|
|
368
392
|
if (typeof (t == null ? void 0 : t.sourceKey) == "string")
|
|
369
393
|
return n.sourcesByKey.get(t.sourceKey) || { sourceKey: t.sourceKey };
|
|
370
394
|
}
|
|
371
|
-
function
|
|
395
|
+
function Ae({
|
|
372
396
|
view: e,
|
|
373
397
|
builder: t,
|
|
374
398
|
rawSpec: n,
|
|
@@ -382,11 +406,11 @@ function he({
|
|
|
382
406
|
if (!o)
|
|
383
407
|
return r;
|
|
384
408
|
const a = { ...r };
|
|
385
|
-
if (
|
|
409
|
+
if (Ce(o) === "server" && (a.pagination = {
|
|
386
410
|
page: 1,
|
|
387
|
-
pageSize:
|
|
388
|
-
}), t === "records" &&
|
|
389
|
-
const c =
|
|
411
|
+
pageSize: _e({ tableBehavior: o, spec: r })
|
|
412
|
+
}), t === "records" && Ne(o) === "server") {
|
|
413
|
+
const c = we({
|
|
390
414
|
view: e,
|
|
391
415
|
rawSpec: n,
|
|
392
416
|
tableBehavior: o,
|
|
@@ -396,28 +420,28 @@ function he({
|
|
|
396
420
|
}
|
|
397
421
|
return a;
|
|
398
422
|
}
|
|
399
|
-
function
|
|
423
|
+
function _e({
|
|
400
424
|
tableBehavior: e,
|
|
401
425
|
spec: t
|
|
402
426
|
}) {
|
|
403
427
|
const n = d(e.pagination), r = d(t.pagination);
|
|
404
428
|
return N(n == null ? void 0 : n.pageSize) || N(r == null ? void 0 : r.pageSize) || N(t.limit) || 100;
|
|
405
429
|
}
|
|
406
|
-
function
|
|
430
|
+
function we({
|
|
407
431
|
view: e,
|
|
408
432
|
rawSpec: t,
|
|
409
433
|
tableBehavior: n,
|
|
410
434
|
context: r
|
|
411
435
|
}) {
|
|
412
|
-
const s = d(n.sorting), o =
|
|
436
|
+
const s = d(n.sorting), o = g(s == null ? void 0 : s.defaultField);
|
|
413
437
|
if (!o)
|
|
414
438
|
return;
|
|
415
|
-
const i =
|
|
439
|
+
const i = ve({
|
|
416
440
|
view: e,
|
|
417
441
|
rawSpec: t,
|
|
418
442
|
context: r
|
|
419
443
|
}).filter(
|
|
420
|
-
(c) =>
|
|
444
|
+
(c) => Ie(c.lookup).includes(o)
|
|
421
445
|
);
|
|
422
446
|
if (i.length === 1)
|
|
423
447
|
return {
|
|
@@ -425,55 +449,55 @@ function _e({
|
|
|
425
449
|
direction: (s == null ? void 0 : s.defaultDirection) === "desc" ? "desc" : "asc"
|
|
426
450
|
};
|
|
427
451
|
}
|
|
428
|
-
function
|
|
452
|
+
function ve({
|
|
429
453
|
view: e,
|
|
430
454
|
rawSpec: t,
|
|
431
455
|
context: n
|
|
432
456
|
}) {
|
|
433
457
|
var s;
|
|
434
458
|
const r = [];
|
|
435
|
-
for (const o of
|
|
459
|
+
for (const o of I(t.fields)) R(r, o, n);
|
|
436
460
|
R(r, t.dateField, n), R(r, (s = d(t.orderBy)) == null ? void 0 : s.field, n);
|
|
437
|
-
for (const o of
|
|
461
|
+
for (const o of I(e.fields))
|
|
438
462
|
R(r, o, n);
|
|
439
|
-
return
|
|
463
|
+
return xe(
|
|
440
464
|
r,
|
|
441
|
-
(o) =>
|
|
465
|
+
(o) => $e(o.lookup)
|
|
442
466
|
);
|
|
443
467
|
}
|
|
444
468
|
function R(e, t, n) {
|
|
445
469
|
const r = d(t);
|
|
446
470
|
if (typeof (r == null ? void 0 : r.name) != "string" || r.name.length === 0)
|
|
447
471
|
return;
|
|
448
|
-
const s = d(
|
|
472
|
+
const s = d(_(r, n)) || r;
|
|
449
473
|
e.push({
|
|
450
474
|
lookup: r,
|
|
451
475
|
field: s
|
|
452
476
|
});
|
|
453
477
|
}
|
|
454
|
-
function
|
|
455
|
-
return
|
|
456
|
-
|
|
478
|
+
function Ie(e) {
|
|
479
|
+
return Ge([
|
|
480
|
+
g(e.name),
|
|
457
481
|
z(e),
|
|
458
|
-
|
|
482
|
+
Ee(e)
|
|
459
483
|
]);
|
|
460
484
|
}
|
|
461
|
-
function
|
|
485
|
+
function $e(e) {
|
|
462
486
|
return [
|
|
463
487
|
z(e),
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
488
|
+
g(e.name),
|
|
489
|
+
g(e.role),
|
|
490
|
+
g(e.aggregate)
|
|
467
491
|
].join("|");
|
|
468
492
|
}
|
|
469
493
|
function z(e) {
|
|
470
494
|
return [
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
495
|
+
g(e.sourceKey) || Re(e.source),
|
|
496
|
+
g(e.name),
|
|
497
|
+
g(e.aggregate)
|
|
474
498
|
].filter(Boolean).join(":");
|
|
475
499
|
}
|
|
476
|
-
function
|
|
500
|
+
function Re(e) {
|
|
477
501
|
const t = d(e);
|
|
478
502
|
if (!t)
|
|
479
503
|
return "";
|
|
@@ -485,43 +509,43 @@ function $e(e) {
|
|
|
485
509
|
}
|
|
486
510
|
return JSON.stringify(t);
|
|
487
511
|
}
|
|
488
|
-
function
|
|
489
|
-
return
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
512
|
+
function Ee(e) {
|
|
513
|
+
return Te([
|
|
514
|
+
Oe(e),
|
|
515
|
+
g(e.aggregate).toLowerCase(),
|
|
516
|
+
g(e.label) || g(e.name)
|
|
493
517
|
].filter(Boolean));
|
|
494
518
|
}
|
|
495
|
-
function
|
|
496
|
-
return typeof e.sourceKey == "string" ?
|
|
519
|
+
function Oe(e) {
|
|
520
|
+
return typeof e.sourceKey == "string" ? be(e.sourceKey) : Ve(e.source);
|
|
497
521
|
}
|
|
498
|
-
function
|
|
522
|
+
function Ve(e) {
|
|
499
523
|
const t = d(e);
|
|
500
|
-
return t ?
|
|
524
|
+
return t ? g(t.datasetName) || g(t.datasetId) || g(t.name) || g(t.kind) : "";
|
|
501
525
|
}
|
|
502
|
-
function
|
|
526
|
+
function be(e) {
|
|
503
527
|
const t = String(e).split(":");
|
|
504
528
|
return t[t.length - 1] || String(e);
|
|
505
529
|
}
|
|
506
|
-
function
|
|
530
|
+
function Ce(e) {
|
|
507
531
|
var t;
|
|
508
|
-
return
|
|
532
|
+
return g((t = d(e.pagination)) == null ? void 0 : t.mode);
|
|
509
533
|
}
|
|
510
|
-
function
|
|
534
|
+
function Ne(e) {
|
|
511
535
|
var t;
|
|
512
|
-
return
|
|
536
|
+
return g((t = d(e.sorting)) == null ? void 0 : t.mode);
|
|
513
537
|
}
|
|
514
|
-
function
|
|
538
|
+
function _(e, t) {
|
|
515
539
|
if (!e || typeof e != "object")
|
|
516
540
|
return e;
|
|
517
541
|
if (Array.isArray(e))
|
|
518
|
-
return e.map((s) =>
|
|
542
|
+
return e.map((s) => _(s, t));
|
|
519
543
|
const n = e;
|
|
520
544
|
if (typeof n.sourceKey == "string" && typeof n.kind == "string" && (typeof n.datasetName == "string" || typeof n.datasetId == "string"))
|
|
521
545
|
return J(n);
|
|
522
546
|
const r = {};
|
|
523
547
|
for (const [s, o] of Object.entries(n))
|
|
524
|
-
s !== "sourceKey" && (r[s] =
|
|
548
|
+
s !== "sourceKey" && (r[s] = _(o, t));
|
|
525
549
|
if (typeof n.sourceKey == "string") {
|
|
526
550
|
const s = t.sourcesByKey.get(n.sourceKey);
|
|
527
551
|
s && !r.source && (r.source = s);
|
|
@@ -532,33 +556,33 @@ function J(e) {
|
|
|
532
556
|
const { sourceKey: t, ...n } = e;
|
|
533
557
|
return n;
|
|
534
558
|
}
|
|
535
|
-
function
|
|
559
|
+
function Fe(e, t) {
|
|
536
560
|
const n = d(e.visualSpec);
|
|
537
561
|
return (n == null ? void 0 : n.title) || e.title || t.label;
|
|
538
562
|
}
|
|
539
|
-
function
|
|
563
|
+
function He(e) {
|
|
540
564
|
const t = String(e || "").replace(/^semaphor\./, "");
|
|
541
565
|
return ["metric", "records", "analysis", "matrix", "sql"].includes(t) ? t : "";
|
|
542
566
|
}
|
|
543
|
-
function
|
|
567
|
+
function ke(e) {
|
|
544
568
|
if (e != null && e.relationshipHint)
|
|
545
569
|
return e.relationshipHint;
|
|
546
|
-
const t =
|
|
570
|
+
const t = I(e == null ? void 0 : e.relationshipsUsed).map((n) => {
|
|
547
571
|
var r;
|
|
548
572
|
return (r = d(n)) == null ? void 0 : r.id;
|
|
549
573
|
}).filter((n) => typeof n == "string" && n.length > 0);
|
|
550
574
|
return t.length > 0 ? { relationshipIds: t } : void 0;
|
|
551
575
|
}
|
|
552
|
-
function
|
|
576
|
+
function Ke(e, t) {
|
|
553
577
|
return e === "in" || e === "not_in" ? [t] : e === "between" ? Array.isArray(t) ? t : [t, t] : t;
|
|
554
578
|
}
|
|
555
579
|
function N(e) {
|
|
556
580
|
return typeof e == "number" && Number.isFinite(e) ? e : void 0;
|
|
557
581
|
}
|
|
558
|
-
function
|
|
582
|
+
function g(e) {
|
|
559
583
|
return typeof e == "string" ? e : "";
|
|
560
584
|
}
|
|
561
|
-
function
|
|
585
|
+
function xe(e, t) {
|
|
562
586
|
const n = /* @__PURE__ */ new Set(), r = [];
|
|
563
587
|
for (const s of e) {
|
|
564
588
|
const o = t(s);
|
|
@@ -566,10 +590,10 @@ function Fe(e, t) {
|
|
|
566
590
|
}
|
|
567
591
|
return r;
|
|
568
592
|
}
|
|
569
|
-
function
|
|
593
|
+
function Ge(e) {
|
|
570
594
|
return Array.from(new Set(e.filter(Boolean)));
|
|
571
595
|
}
|
|
572
|
-
function
|
|
596
|
+
function Te(e) {
|
|
573
597
|
return (Array.isArray(e) ? e.join(" ") : e).replace(/[^a-zA-Z0-9]+/g, " ").trim().split(/\s+/).filter(Boolean).map((n, r) => {
|
|
574
598
|
const s = n.toLowerCase();
|
|
575
599
|
return r === 0 ? s : s.charAt(0).toUpperCase() + s.slice(1);
|
|
@@ -578,13 +602,13 @@ function je(e) {
|
|
|
578
602
|
function d(e) {
|
|
579
603
|
return e && typeof e == "object" && !Array.isArray(e) ? e : void 0;
|
|
580
604
|
}
|
|
581
|
-
function
|
|
605
|
+
function I(e) {
|
|
582
606
|
return Array.isArray(e) ? e : [];
|
|
583
607
|
}
|
|
584
|
-
function
|
|
608
|
+
function Me(e) {
|
|
585
609
|
return e !== void 0;
|
|
586
610
|
}
|
|
587
|
-
const
|
|
611
|
+
const je = /* @__PURE__ */ new Set([
|
|
588
612
|
"diagnostic_fix",
|
|
589
613
|
"fix_diagnostics",
|
|
590
614
|
"fix_inspector_warnings",
|
|
@@ -595,12 +619,12 @@ const Me = /* @__PURE__ */ new Set([
|
|
|
595
619
|
"edit",
|
|
596
620
|
"mixed",
|
|
597
621
|
"remove"
|
|
598
|
-
]),
|
|
622
|
+
]), M = /* @__PURE__ */ new Set([
|
|
599
623
|
"fields",
|
|
600
624
|
"metricBindingKeys",
|
|
601
625
|
"sdkSpec"
|
|
602
626
|
]);
|
|
603
|
-
function
|
|
627
|
+
function et({
|
|
604
628
|
beforeSummary: e,
|
|
605
629
|
afterSummary: t,
|
|
606
630
|
migrationReport: n,
|
|
@@ -622,7 +646,7 @@ function Xe({
|
|
|
622
646
|
reason: "Use analytics_add, analytics_edit, analytics_remove, input_add, input_edit, layout_only, style_only, runtime_debug, semantic_model_repair, save_or_publish, or greenfield_create."
|
|
623
647
|
}
|
|
624
648
|
]
|
|
625
|
-
} :
|
|
649
|
+
} : j(o) ? {
|
|
626
650
|
ok: !1,
|
|
627
651
|
policy: {
|
|
628
652
|
kind: i,
|
|
@@ -635,7 +659,7 @@ function Xe({
|
|
|
635
659
|
reason: "preferences is retired. Move measureAggregateOverrides to operationIntent.measureAggregateOverrides for update calls."
|
|
636
660
|
}
|
|
637
661
|
]
|
|
638
|
-
} :
|
|
662
|
+
} : j(s) ? {
|
|
639
663
|
ok: !1,
|
|
640
664
|
policy: {
|
|
641
665
|
kind: i,
|
|
@@ -648,22 +672,22 @@ function Xe({
|
|
|
648
672
|
reason: "Move measureAggregateOverrides to operationIntent.measureAggregateOverrides for update calls."
|
|
649
673
|
}
|
|
650
674
|
]
|
|
651
|
-
} :
|
|
675
|
+
} : je.has(i) ? D({
|
|
652
676
|
beforeSummary: e,
|
|
653
677
|
afterSummary: t,
|
|
654
678
|
migrationReport: n,
|
|
655
679
|
operationIntent: a,
|
|
656
680
|
mode: "diagnostic_warning_fix",
|
|
657
|
-
allowedViewChangeReasons:
|
|
681
|
+
allowedViewChangeReasons: M,
|
|
658
682
|
label: "Diagnostic warning fixes",
|
|
659
683
|
reason: "Diagnostic warning fixes are preserve-by-default and may not add/remove views, inputs, or filter contracts."
|
|
660
|
-
}) : i === "analytics_edit" && Array.isArray(a == null ? void 0 : a.measureAggregateOverrides) && a.measureAggregateOverrides.length > 0 ?
|
|
684
|
+
}) : i === "analytics_edit" && Array.isArray(a == null ? void 0 : a.measureAggregateOverrides) && a.measureAggregateOverrides.length > 0 ? D({
|
|
661
685
|
beforeSummary: e,
|
|
662
686
|
afterSummary: t,
|
|
663
687
|
migrationReport: n,
|
|
664
688
|
operationIntent: a,
|
|
665
689
|
mode: "metric_aggregate_override_edit",
|
|
666
|
-
allowedViewChangeReasons:
|
|
690
|
+
allowedViewChangeReasons: M,
|
|
667
691
|
label: "Metric aggregate override edits",
|
|
668
692
|
reason: "Metric aggregate override edits are preserve-by-default and may only adjust fields/sdkSpec on targeted views."
|
|
669
693
|
}) : {
|
|
@@ -676,11 +700,11 @@ function Xe({
|
|
|
676
700
|
violations: []
|
|
677
701
|
};
|
|
678
702
|
}
|
|
679
|
-
function
|
|
703
|
+
function j(e) {
|
|
680
704
|
var t;
|
|
681
705
|
return Array.isArray((t = l(e)) == null ? void 0 : t.measureAggregateOverrides);
|
|
682
706
|
}
|
|
683
|
-
function
|
|
707
|
+
function D({
|
|
684
708
|
beforeSummary: e,
|
|
685
709
|
afterSummary: t,
|
|
686
710
|
migrationReport: n,
|
|
@@ -694,55 +718,55 @@ function B({
|
|
|
694
718
|
u.size === 0 && c.push({
|
|
695
719
|
path: "operationIntent.targetViewIds",
|
|
696
720
|
reason: `${a} must declare targetViewIds so the update cannot broaden to unrelated views.`
|
|
697
|
-
}),
|
|
721
|
+
}), F({
|
|
698
722
|
bucket: l(f.views),
|
|
699
723
|
label: "views",
|
|
700
724
|
operationLabel: a,
|
|
701
725
|
violations: c
|
|
702
|
-
}),
|
|
726
|
+
}), F({
|
|
703
727
|
bucket: l(f.inputs),
|
|
704
728
|
label: "inputs",
|
|
705
729
|
operationLabel: a,
|
|
706
730
|
violations: c
|
|
707
|
-
}),
|
|
731
|
+
}), B({
|
|
708
732
|
bucket: l(f.inputs),
|
|
709
733
|
label: "inputs",
|
|
710
734
|
operationLabel: a,
|
|
711
735
|
violations: c
|
|
712
|
-
}),
|
|
736
|
+
}), F({
|
|
713
737
|
bucket: l(f.filterContracts),
|
|
714
738
|
label: "filterContracts",
|
|
715
739
|
operationLabel: a,
|
|
716
740
|
violations: c
|
|
717
|
-
}),
|
|
741
|
+
}), B({
|
|
718
742
|
bucket: l(f.filterContracts),
|
|
719
743
|
label: "filterContracts",
|
|
720
744
|
operationLabel: a,
|
|
721
745
|
violations: c
|
|
722
746
|
});
|
|
723
747
|
for (const m of Y(l(f.views))) {
|
|
724
|
-
u.size > 0 && !u.has(
|
|
725
|
-
path: `views.${
|
|
748
|
+
u.size > 0 && !u.has(A(m.id)) && c.push({
|
|
749
|
+
path: `views.${A(m.id) || "<unknown>"}`,
|
|
726
750
|
reason: `${a} may only change explicitly targeted views.`
|
|
727
751
|
});
|
|
728
|
-
const
|
|
752
|
+
const h = Array.isArray(m.reasons) ? m.reasons.filter(
|
|
729
753
|
(v) => typeof v != "string" || !o.has(v)
|
|
730
754
|
) : [];
|
|
731
|
-
|
|
732
|
-
path: `views.${
|
|
733
|
-
reason: `${a} may only adjust fields/sdkSpec/metricBindingKeys; changed ${
|
|
755
|
+
h.length > 0 && c.push({
|
|
756
|
+
path: `views.${A(m.id) || "<unknown>"}`,
|
|
757
|
+
reason: `${a} may only adjust fields/sdkSpec/metricBindingKeys; changed ${h.join(", ")}.`
|
|
734
758
|
});
|
|
735
759
|
}
|
|
736
|
-
const
|
|
760
|
+
const p = qe({
|
|
737
761
|
beforeSummary: e,
|
|
738
762
|
afterSummary: t,
|
|
739
763
|
targetViewIds: u,
|
|
740
764
|
label: a
|
|
741
765
|
});
|
|
742
|
-
return
|
|
766
|
+
return p && c.push(p), {
|
|
743
767
|
ok: c.length === 0,
|
|
744
768
|
policy: {
|
|
745
|
-
kind:
|
|
769
|
+
kind: A(r == null ? void 0 : r.kind) || "diagnostic_fix",
|
|
746
770
|
mode: s,
|
|
747
771
|
allowedViewChangeReasons: Array.from(o).sort(),
|
|
748
772
|
targetViewIds: Array.from(u).sort(),
|
|
@@ -751,7 +775,7 @@ function B({
|
|
|
751
775
|
violations: c
|
|
752
776
|
};
|
|
753
777
|
}
|
|
754
|
-
function
|
|
778
|
+
function qe({
|
|
755
779
|
beforeSummary: e,
|
|
756
780
|
afterSummary: t,
|
|
757
781
|
targetViewIds: n,
|
|
@@ -763,30 +787,30 @@ function Te({
|
|
|
763
787
|
path: "codegenSummary",
|
|
764
788
|
reason: `${r} require before/after codegen summaries for full-scope verification.`
|
|
765
789
|
};
|
|
766
|
-
const a =
|
|
790
|
+
const a = q(s), i = q(o), c = U(s.views), u = U(o.views), f = Array.isArray(a.views) ? a.views : [];
|
|
767
791
|
a.views = f;
|
|
768
|
-
for (const
|
|
769
|
-
const m = c.get(
|
|
770
|
-
if (!m || !
|
|
792
|
+
for (const p of n) {
|
|
793
|
+
const m = c.get(p), h = u.get(p);
|
|
794
|
+
if (!m || !h)
|
|
771
795
|
continue;
|
|
772
796
|
const v = f.find(
|
|
773
|
-
(
|
|
797
|
+
(Q) => {
|
|
774
798
|
var K;
|
|
775
|
-
return ((K = l(
|
|
799
|
+
return ((K = l(Q)) == null ? void 0 : K.id) === p;
|
|
776
800
|
}
|
|
777
|
-
),
|
|
778
|
-
if (!v ||
|
|
801
|
+
), $ = l(h);
|
|
802
|
+
if (!v || !$)
|
|
779
803
|
continue;
|
|
780
|
-
const
|
|
781
|
-
|
|
804
|
+
const b = v;
|
|
805
|
+
b.fields = E($.fields), b.metricBindingKeys = E($.metricBindingKeys), b.sdkSpec = E($.sdkSpec);
|
|
782
806
|
}
|
|
783
807
|
return O(a) === O(i) ? null : {
|
|
784
808
|
path: "codegenSummary",
|
|
785
809
|
reason: `${r} may only change fields/sdkSpec/metricBindingKeys on targetViewIds; another generated contract section changed.`
|
|
786
810
|
};
|
|
787
811
|
}
|
|
788
|
-
function
|
|
789
|
-
const t =
|
|
812
|
+
function q(e) {
|
|
813
|
+
const t = E(e);
|
|
790
814
|
for (const n of [
|
|
791
815
|
"implementationChecklist",
|
|
792
816
|
"assumptions",
|
|
@@ -795,26 +819,26 @@ function G(e) {
|
|
|
795
819
|
"validation"
|
|
796
820
|
])
|
|
797
821
|
delete t[n];
|
|
798
|
-
return
|
|
822
|
+
return Pe(t.unsupportedInsights) && delete t.unsupportedInsights, t;
|
|
799
823
|
}
|
|
800
|
-
function
|
|
824
|
+
function F({
|
|
801
825
|
bucket: e,
|
|
802
826
|
label: t,
|
|
803
827
|
operationLabel: n,
|
|
804
828
|
violations: r
|
|
805
829
|
}) {
|
|
806
|
-
for (const s of
|
|
830
|
+
for (const s of k(e == null ? void 0 : e.added))
|
|
807
831
|
r.push({
|
|
808
|
-
path: `${t}.${
|
|
832
|
+
path: `${t}.${A(s.id) || "<unknown>"}`,
|
|
809
833
|
reason: `${n} may not add ${t}.`
|
|
810
834
|
});
|
|
811
|
-
for (const s of
|
|
835
|
+
for (const s of k(e == null ? void 0 : e.removed))
|
|
812
836
|
r.push({
|
|
813
|
-
path: `${t}.${
|
|
837
|
+
path: `${t}.${A(s.id) || "<unknown>"}`,
|
|
814
838
|
reason: `${n} may not remove ${t}.`
|
|
815
839
|
});
|
|
816
840
|
}
|
|
817
|
-
function
|
|
841
|
+
function B({
|
|
818
842
|
bucket: e,
|
|
819
843
|
label: t,
|
|
820
844
|
operationLabel: n,
|
|
@@ -822,22 +846,22 @@ function q({
|
|
|
822
846
|
}) {
|
|
823
847
|
for (const s of Y(e))
|
|
824
848
|
r.push({
|
|
825
|
-
path: `${t}.${
|
|
849
|
+
path: `${t}.${A(s.id) || "<unknown>"}`,
|
|
826
850
|
reason: `${n} may not change ${t}.`
|
|
827
851
|
});
|
|
828
852
|
}
|
|
829
853
|
function Y(e) {
|
|
830
|
-
return
|
|
854
|
+
return k(e == null ? void 0 : e.changed);
|
|
831
855
|
}
|
|
832
|
-
function
|
|
833
|
-
return Array.isArray(e) ? e.map(l).filter(
|
|
856
|
+
function k(e) {
|
|
857
|
+
return Array.isArray(e) ? e.map(l).filter(Ue) : [];
|
|
834
858
|
}
|
|
835
859
|
function Be(e) {
|
|
836
860
|
return Array.isArray(e) ? new Set(
|
|
837
861
|
e.filter((t) => typeof t == "string" && t.trim().length > 0).map((t) => t.trim())
|
|
838
862
|
) : /* @__PURE__ */ new Set();
|
|
839
863
|
}
|
|
840
|
-
function
|
|
864
|
+
function U(e) {
|
|
841
865
|
var n;
|
|
842
866
|
const t = /* @__PURE__ */ new Map();
|
|
843
867
|
for (const r of Array.isArray(e) ? e : []) {
|
|
@@ -846,7 +870,7 @@ function P(e) {
|
|
|
846
870
|
}
|
|
847
871
|
return t;
|
|
848
872
|
}
|
|
849
|
-
function
|
|
873
|
+
function E(e) {
|
|
850
874
|
return e === void 0 ? e : JSON.parse(JSON.stringify(e));
|
|
851
875
|
}
|
|
852
876
|
function O(e) {
|
|
@@ -860,28 +884,28 @@ function O(e) {
|
|
|
860
884
|
function l(e) {
|
|
861
885
|
return e && typeof e == "object" && !Array.isArray(e) ? e : void 0;
|
|
862
886
|
}
|
|
863
|
-
function
|
|
887
|
+
function Ue(e) {
|
|
864
888
|
return e !== void 0;
|
|
865
889
|
}
|
|
866
|
-
function
|
|
890
|
+
function Pe(e) {
|
|
867
891
|
return Array.isArray(e) && e.length === 0;
|
|
868
892
|
}
|
|
869
|
-
function
|
|
893
|
+
function A(e) {
|
|
870
894
|
return typeof e == "string" ? e : "";
|
|
871
895
|
}
|
|
872
896
|
export {
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
897
|
+
Je as C,
|
|
898
|
+
G,
|
|
899
|
+
ue as R,
|
|
900
|
+
x as a,
|
|
901
|
+
T as b,
|
|
902
|
+
Ye as c,
|
|
903
|
+
Qe as d,
|
|
880
904
|
ce as e,
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
905
|
+
Ze as f,
|
|
906
|
+
Xe as g,
|
|
907
|
+
he as h,
|
|
908
|
+
We as i,
|
|
909
|
+
et as j,
|
|
910
|
+
P as v
|
|
887
911
|
};
|