@startinblox/components-ds4go 2.2.0 → 2.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -0
- package/dist/index.js +205 -185
- package/package.json +1 -1
- package/src/components/solid-dsif-explorer-poc.ts +44 -7
package/README.md
CHANGED
|
@@ -150,6 +150,31 @@ config.json, components:
|
|
|
150
150
|
},
|
|
151
151
|
```
|
|
152
152
|
|
|
153
|
+
### Fetch all catalogs
|
|
154
|
+
|
|
155
|
+
config.json, components:
|
|
156
|
+
|
|
157
|
+
```json
|
|
158
|
+
{
|
|
159
|
+
"type": "dsif-explorer-poc",
|
|
160
|
+
"parameters": {
|
|
161
|
+
"menu": {
|
|
162
|
+
"name": "DSIF Explorer",
|
|
163
|
+
"category": "none",
|
|
164
|
+
"icon": "mage-globe-fill"
|
|
165
|
+
},
|
|
166
|
+
"dataSrc": "https://poc.root-authority.dsif.eu/sectors",
|
|
167
|
+
"sectorId": "*",
|
|
168
|
+
"catalogId": "*"
|
|
169
|
+
},
|
|
170
|
+
"route": "dsif-explorer",
|
|
171
|
+
"integration": [
|
|
172
|
+
"menu",
|
|
173
|
+
"routing"
|
|
174
|
+
]
|
|
175
|
+
},
|
|
176
|
+
```
|
|
177
|
+
|
|
153
178
|
## DSP Connector
|
|
154
179
|
|
|
155
180
|
config.json, components:
|
package/dist/index.js
CHANGED
|
@@ -64,16 +64,16 @@ const { is: me, defineProperty: ge, getOwnPropertyDescriptor: ye, getOwnProperty
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
return r;
|
|
67
|
-
} }, ht = (e, t) => !me(e, t),
|
|
67
|
+
} }, ht = (e, t) => !me(e, t), It = { attribute: !0, type: String, converter: ot, reflect: !1, useDefault: !1, hasChanged: ht };
|
|
68
68
|
Symbol.metadata ??= /* @__PURE__ */ Symbol("metadata"), dt.litPropertyMetadata ??= /* @__PURE__ */ new WeakMap();
|
|
69
|
-
let
|
|
69
|
+
let F = class extends HTMLElement {
|
|
70
70
|
static addInitializer(t) {
|
|
71
71
|
this._$Ei(), (this.l ??= []).push(t);
|
|
72
72
|
}
|
|
73
73
|
static get observedAttributes() {
|
|
74
74
|
return this.finalize(), this._$Eh && [...this._$Eh.keys()];
|
|
75
75
|
}
|
|
76
|
-
static createProperty(t, r =
|
|
76
|
+
static createProperty(t, r = It) {
|
|
77
77
|
if (r.state && (r.attribute = !1), this._$Ei(), this.prototype.hasOwnProperty(t) && ((r = Object.create(r)).wrapped = !0), this.elementProperties.set(t, r), !r.noAccessor) {
|
|
78
78
|
const i = /* @__PURE__ */ Symbol(), s = this.getPropertyDescriptor(t, i, r);
|
|
79
79
|
s !== void 0 && ge(this.prototype, t, s);
|
|
@@ -91,7 +91,7 @@ let T = class extends HTMLElement {
|
|
|
91
91
|
}, configurable: !0, enumerable: !0 };
|
|
92
92
|
}
|
|
93
93
|
static getPropertyOptions(t) {
|
|
94
|
-
return this.elementProperties.get(t) ??
|
|
94
|
+
return this.elementProperties.get(t) ?? It;
|
|
95
95
|
}
|
|
96
96
|
static _$Ei() {
|
|
97
97
|
if (this.hasOwnProperty(K("elementProperties"))) return;
|
|
@@ -247,10 +247,10 @@ let T = class extends HTMLElement {
|
|
|
247
247
|
firstUpdated(t) {
|
|
248
248
|
}
|
|
249
249
|
};
|
|
250
|
-
|
|
251
|
-
const Pt = globalThis,
|
|
252
|
-
\f\r]`, W = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, Ft = /-->/g, Nt = />/g,
|
|
253
|
-
\f\r"'\`<>=]|("|')|))|$)`, "g"), Mt = /'/g, Bt = /"/g, ee = /^(?:script|style|textarea|title)$/i, xe = (e) => (t, ...r) => ({ _$litType$: e, strings: t, values: r }), d = xe(1), H = /* @__PURE__ */ Symbol.for("lit-noChange"), c = /* @__PURE__ */ Symbol.for("lit-nothing"), qt = /* @__PURE__ */ new WeakMap(),
|
|
250
|
+
F.elementStyles = [], F.shadowRootOptions = { mode: "open" }, F[K("elementProperties")] = /* @__PURE__ */ new Map(), F[K("finalized")] = /* @__PURE__ */ new Map(), we?.({ ReactiveElement: F }), (dt.reactiveElementVersions ??= []).push("2.1.2");
|
|
251
|
+
const Pt = globalThis, Lt = (e) => e, nt = Pt.trustedTypes, Tt = nt ? nt.createPolicy("lit-html", { createHTML: (e) => e }) : void 0, Yt = "$lit$", x = `lit$${Math.random().toFixed(9).slice(2)}$`, te = "?" + x, Ae = `<${te}>`, L = document, G = () => L.createComment(""), J = (e) => e === null || typeof e != "object" && typeof e != "function", jt = Array.isArray, Ce = (e) => jt(e) || typeof e?.[Symbol.iterator] == "function", mt = `[
|
|
252
|
+
\f\r]`, W = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, Ft = /-->/g, Nt = />/g, O = RegExp(`>|${mt}(?:([^\\s"'>=/]+)(${mt}*=${mt}*(?:[^
|
|
253
|
+
\f\r"'\`<>=]|("|')|))|$)`, "g"), Mt = /'/g, Bt = /"/g, ee = /^(?:script|style|textarea|title)$/i, xe = (e) => (t, ...r) => ({ _$litType$: e, strings: t, values: r }), d = xe(1), H = /* @__PURE__ */ Symbol.for("lit-noChange"), c = /* @__PURE__ */ Symbol.for("lit-nothing"), qt = /* @__PURE__ */ new WeakMap(), D = L.createTreeWalker(L, 129);
|
|
254
254
|
function re(e, t) {
|
|
255
255
|
if (!jt(e) || !e.hasOwnProperty("raw")) throw Error("invalid template strings array");
|
|
256
256
|
return Tt !== void 0 ? Tt.createHTML(t) : t;
|
|
@@ -260,10 +260,10 @@ const Se = (e, t) => {
|
|
|
260
260
|
let s, o = t === 2 ? "<svg>" : t === 3 ? "<math>" : "", n = W;
|
|
261
261
|
for (let a = 0; a < r; a++) {
|
|
262
262
|
const l = e[a];
|
|
263
|
-
let
|
|
264
|
-
for (; b < l.length && (n.lastIndex = b, f = n.exec(l), f !== null); ) b = n.lastIndex, n === W ? f[1] === "!--" ? n = Ft : f[1] !== void 0 ? n = Nt : f[2] !== void 0 ? (ee.test(f[2]) && (s = RegExp("</" + f[2], "g")), n =
|
|
265
|
-
const $ = n ===
|
|
266
|
-
o += n === W ? l + Ae :
|
|
263
|
+
let u, f, p = -1, b = 0;
|
|
264
|
+
for (; b < l.length && (n.lastIndex = b, f = n.exec(l), f !== null); ) b = n.lastIndex, n === W ? f[1] === "!--" ? n = Ft : f[1] !== void 0 ? n = Nt : f[2] !== void 0 ? (ee.test(f[2]) && (s = RegExp("</" + f[2], "g")), n = O) : f[3] !== void 0 && (n = O) : n === O ? f[0] === ">" ? (n = s ?? W, p = -1) : f[1] === void 0 ? p = -2 : (p = n.lastIndex - f[2].length, u = f[1], n = f[3] === void 0 ? O : f[3] === '"' ? Bt : Mt) : n === Bt || n === Mt ? n = O : n === Ft || n === Nt ? n = W : (n = O, s = void 0);
|
|
265
|
+
const $ = n === O && e[a + 1].startsWith("/>") ? " " : "";
|
|
266
|
+
o += n === W ? l + Ae : p >= 0 ? (i.push(u), l.slice(0, p) + Yt + l.slice(p) + x + $) : l + x + (p === -2 ? a : $);
|
|
267
267
|
}
|
|
268
268
|
return [re(e, o + (e[r] || "<?>") + (t === 2 ? "</svg>" : t === 3 ? "</math>" : "")), i];
|
|
269
269
|
};
|
|
@@ -272,29 +272,29 @@ class Z {
|
|
|
272
272
|
let s;
|
|
273
273
|
this.parts = [];
|
|
274
274
|
let o = 0, n = 0;
|
|
275
|
-
const a = t.length - 1, l = this.parts, [
|
|
276
|
-
if (this.el = Z.createElement(
|
|
277
|
-
const
|
|
278
|
-
|
|
275
|
+
const a = t.length - 1, l = this.parts, [u, f] = Se(t, r);
|
|
276
|
+
if (this.el = Z.createElement(u, i), D.currentNode = this.el.content, r === 2 || r === 3) {
|
|
277
|
+
const p = this.el.content.firstChild;
|
|
278
|
+
p.replaceWith(...p.childNodes);
|
|
279
279
|
}
|
|
280
|
-
for (; (s =
|
|
280
|
+
for (; (s = D.nextNode()) !== null && l.length < a; ) {
|
|
281
281
|
if (s.nodeType === 1) {
|
|
282
|
-
if (s.hasAttributes()) for (const
|
|
283
|
-
const b = f[n++], $ = s.getAttribute(
|
|
284
|
-
l.push({ type: 1, index: o, name: rt[2], strings: $, ctor: rt[1] === "." ? je : rt[1] === "?" ?
|
|
285
|
-
} else
|
|
282
|
+
if (s.hasAttributes()) for (const p of s.getAttributeNames()) if (p.endsWith(Yt)) {
|
|
283
|
+
const b = f[n++], $ = s.getAttribute(p).split(x), rt = /([.?@])?(.*)/.exec(b);
|
|
284
|
+
l.push({ type: 1, index: o, name: rt[2], strings: $, ctor: rt[1] === "." ? je : rt[1] === "?" ? Ee : rt[1] === "@" ? Re : ut }), s.removeAttribute(p);
|
|
285
|
+
} else p.startsWith(x) && (l.push({ type: 6, index: o }), s.removeAttribute(p));
|
|
286
286
|
if (ee.test(s.tagName)) {
|
|
287
|
-
const
|
|
287
|
+
const p = s.textContent.split(x), b = p.length - 1;
|
|
288
288
|
if (b > 0) {
|
|
289
289
|
s.textContent = nt ? nt.emptyScript : "";
|
|
290
|
-
for (let $ = 0; $ < b; $++) s.append(
|
|
291
|
-
s.append(
|
|
290
|
+
for (let $ = 0; $ < b; $++) s.append(p[$], G()), D.nextNode(), l.push({ type: 2, index: ++o });
|
|
291
|
+
s.append(p[b], G());
|
|
292
292
|
}
|
|
293
293
|
}
|
|
294
294
|
} else if (s.nodeType === 8) if (s.data === te) l.push({ type: 2, index: o });
|
|
295
295
|
else {
|
|
296
|
-
let
|
|
297
|
-
for (; (
|
|
296
|
+
let p = -1;
|
|
297
|
+
for (; (p = s.data.indexOf(x, p + 1)) !== -1; ) l.push({ type: 7, index: o }), p += x.length - 1;
|
|
298
298
|
}
|
|
299
299
|
o++;
|
|
300
300
|
}
|
|
@@ -322,16 +322,16 @@ class Pe {
|
|
|
322
322
|
}
|
|
323
323
|
u(t) {
|
|
324
324
|
const { el: { content: r }, parts: i } = this._$AD, s = (t?.creationScope ?? L).importNode(r, !0);
|
|
325
|
-
|
|
326
|
-
let o =
|
|
325
|
+
D.currentNode = s;
|
|
326
|
+
let o = D.nextNode(), n = 0, a = 0, l = i[0];
|
|
327
327
|
for (; l !== void 0; ) {
|
|
328
328
|
if (n === l.index) {
|
|
329
|
-
let
|
|
330
|
-
l.type === 2 ?
|
|
329
|
+
let u;
|
|
330
|
+
l.type === 2 ? u = new tt(o, o.nextSibling, this, t) : l.type === 1 ? u = new l.ctor(o, l.name, l.strings, this, t) : l.type === 6 && (u = new Ue(o, this, t)), this._$AV.push(u), l = i[++a];
|
|
331
331
|
}
|
|
332
|
-
n !== l?.index && (o =
|
|
332
|
+
n !== l?.index && (o = D.nextNode(), n++);
|
|
333
333
|
}
|
|
334
|
-
return
|
|
334
|
+
return D.currentNode = L, s;
|
|
335
335
|
}
|
|
336
336
|
p(t) {
|
|
337
337
|
let r = 0;
|
|
@@ -389,8 +389,8 @@ class tt {
|
|
|
389
389
|
}
|
|
390
390
|
_$AR(t = this._$AA.nextSibling, r) {
|
|
391
391
|
for (this._$AP?.(!1, !0, r); t !== this._$AB; ) {
|
|
392
|
-
const i =
|
|
393
|
-
|
|
392
|
+
const i = Lt(t).nextSibling;
|
|
393
|
+
Lt(t).remove(), t = i;
|
|
394
394
|
}
|
|
395
395
|
}
|
|
396
396
|
setConnected(t) {
|
|
@@ -413,8 +413,8 @@ class ut {
|
|
|
413
413
|
if (o === void 0) t = z(this, t, r, 0), n = !J(t) || t !== this._$AH && t !== H, n && (this._$AH = t);
|
|
414
414
|
else {
|
|
415
415
|
const a = t;
|
|
416
|
-
let l,
|
|
417
|
-
for (t = o[0], l = 0; l < o.length - 1; l++)
|
|
416
|
+
let l, u;
|
|
417
|
+
for (t = o[0], l = 0; l < o.length - 1; l++) u = z(this, a[i + l], r, l), u === H && (u = this._$AH[l]), n ||= !J(u) || u !== this._$AH[l], u === c ? t = c : t !== c && (t += (u ?? "") + o[l + 1]), this._$AH[l] = u;
|
|
418
418
|
}
|
|
419
419
|
n && !s && this.j(t);
|
|
420
420
|
}
|
|
@@ -430,7 +430,7 @@ class je extends ut {
|
|
|
430
430
|
this.element[this.name] = t === c ? void 0 : t;
|
|
431
431
|
}
|
|
432
432
|
}
|
|
433
|
-
class
|
|
433
|
+
class Ee extends ut {
|
|
434
434
|
constructor() {
|
|
435
435
|
super(...arguments), this.type = 4;
|
|
436
436
|
}
|
|
@@ -438,7 +438,7 @@ class Re extends ut {
|
|
|
438
438
|
this.element.toggleAttribute(this.name, !!t && t !== c);
|
|
439
439
|
}
|
|
440
440
|
}
|
|
441
|
-
class
|
|
441
|
+
class Re extends ut {
|
|
442
442
|
constructor(t, r, i, s, o) {
|
|
443
443
|
super(t, r, i, s, o), this.type = 5;
|
|
444
444
|
}
|
|
@@ -473,8 +473,8 @@ const ke = (e, t, r) => {
|
|
|
473
473
|
}
|
|
474
474
|
return s._$AI(e), s;
|
|
475
475
|
};
|
|
476
|
-
const
|
|
477
|
-
let
|
|
476
|
+
const Et = globalThis;
|
|
477
|
+
let q = class extends F {
|
|
478
478
|
constructor() {
|
|
479
479
|
super(...arguments), this.renderOptions = { host: this }, this._$Do = void 0;
|
|
480
480
|
}
|
|
@@ -496,11 +496,11 @@ let B = class extends T {
|
|
|
496
496
|
return H;
|
|
497
497
|
}
|
|
498
498
|
};
|
|
499
|
-
|
|
500
|
-
const De =
|
|
501
|
-
De?.({ LitElement:
|
|
502
|
-
(
|
|
503
|
-
class
|
|
499
|
+
q._$litElement$ = !0, q.finalized = !0, Et.litElementHydrateSupport?.({ LitElement: q });
|
|
500
|
+
const De = Et.litElementPolyfillSupport;
|
|
501
|
+
De?.({ LitElement: q });
|
|
502
|
+
(Et.litElementVersions ??= []).push("4.2.2");
|
|
503
|
+
class Ie extends q {
|
|
504
504
|
constructor() {
|
|
505
505
|
super(...arguments), this.object = {
|
|
506
506
|
"@id": ""
|
|
@@ -515,7 +515,7 @@ const V = (e) => (t, r) => {
|
|
|
515
515
|
customElements.define(e, t);
|
|
516
516
|
}) : customElements.define(e, t);
|
|
517
517
|
};
|
|
518
|
-
const
|
|
518
|
+
const Le = { attribute: !0, type: String, converter: ot, reflect: !1, hasChanged: ht }, Te = (e = Le, t, r) => {
|
|
519
519
|
const { kind: i, metadata: s } = r;
|
|
520
520
|
let o = globalThis.litPropertyMetadata.get(s);
|
|
521
521
|
if (o === void 0 && globalThis.litPropertyMetadata.set(s, o = /* @__PURE__ */ new Map()), i === "setter" && ((e = Object.create(e)).wrapped = !0), o.set(r.name, e), i === "accessor") {
|
|
@@ -550,20 +550,20 @@ var Fe = Object.defineProperty, Ne = (e, t, r, i) => {
|
|
|
550
550
|
(n = e[o]) && (s = n(t, r, s) || s);
|
|
551
551
|
return s && Fe(t, r, s), s;
|
|
552
552
|
};
|
|
553
|
-
class
|
|
553
|
+
class Rt extends q {
|
|
554
554
|
constructor() {
|
|
555
555
|
super(...arguments), this.objects = [], this.hasType = (t, r = this.objects) => new Set(r.flatMap((s) => s["@type"])).has(t);
|
|
556
556
|
}
|
|
557
557
|
}
|
|
558
558
|
Ne([
|
|
559
559
|
y({ attribute: !1 })
|
|
560
|
-
],
|
|
561
|
-
var Me = Object.defineProperty,
|
|
560
|
+
], Rt.prototype, "objects");
|
|
561
|
+
var Me = Object.defineProperty, j = (e, t, r, i) => {
|
|
562
562
|
for (var s = void 0, o = e.length - 1, n; o >= 0; o--)
|
|
563
563
|
(n = e[o]) && (s = n(t, r, s) || s);
|
|
564
564
|
return s && Me(t, r, s), s;
|
|
565
565
|
};
|
|
566
|
-
class v extends
|
|
566
|
+
class v extends Rt {
|
|
567
567
|
constructor({
|
|
568
568
|
defaultRoute: t = !1,
|
|
569
569
|
setupSubscriptions: r = !0,
|
|
@@ -600,7 +600,7 @@ class v extends Et {
|
|
|
600
600
|
);
|
|
601
601
|
a && (i = a[0]?.uniq);
|
|
602
602
|
}
|
|
603
|
-
i &&
|
|
603
|
+
i && M(
|
|
604
604
|
(window.orbit ? window.orbit.getRoute(i, !0) : i) + (s ? `-${s}` : ""),
|
|
605
605
|
o
|
|
606
606
|
), t.preventDefault();
|
|
@@ -682,41 +682,41 @@ class v extends Et {
|
|
|
682
682
|
return c;
|
|
683
683
|
}
|
|
684
684
|
}
|
|
685
|
-
|
|
685
|
+
j([
|
|
686
686
|
y({ attribute: "default-data-src", reflect: !0 })
|
|
687
687
|
], v.prototype, "defaultDataSrc");
|
|
688
|
-
|
|
688
|
+
j([
|
|
689
689
|
y({ attribute: "data-src", reflect: !0 })
|
|
690
690
|
], v.prototype, "dataSrc");
|
|
691
|
-
|
|
691
|
+
j([
|
|
692
692
|
y({ attribute: "nested-field" })
|
|
693
693
|
], v.prototype, "nestedField");
|
|
694
|
-
|
|
694
|
+
j([
|
|
695
695
|
y({ attribute: "uniq" })
|
|
696
696
|
], v.prototype, "uniq");
|
|
697
|
-
|
|
697
|
+
j([
|
|
698
698
|
y({ attribute: "route" })
|
|
699
699
|
], v.prototype, "route");
|
|
700
|
-
|
|
700
|
+
j([
|
|
701
701
|
y({ attribute: !1 })
|
|
702
702
|
], v.prototype, "cherryPickedProperties");
|
|
703
|
-
|
|
703
|
+
j([
|
|
704
704
|
m()
|
|
705
705
|
], v.prototype, "orbit");
|
|
706
|
-
|
|
706
|
+
j([
|
|
707
707
|
m()
|
|
708
708
|
], v.prototype, "currentRoute");
|
|
709
|
-
function
|
|
709
|
+
function B(e) {
|
|
710
710
|
return e ? e.replace(/^urn:uuid:/i, "").replace(/^urn:tems:/i, "") : "";
|
|
711
711
|
}
|
|
712
712
|
function Be(e, t, r) {
|
|
713
713
|
if (!e) return null;
|
|
714
714
|
const i = JSON.parse(JSON.stringify(e));
|
|
715
|
-
i["@id"] && (i["@id"] =
|
|
716
|
-
const s =
|
|
717
|
-
return i.target =
|
|
715
|
+
i["@id"] && (i["@id"] = B(i["@id"]));
|
|
716
|
+
const s = N(t, ["@id"]) || "";
|
|
717
|
+
return i.target = B(s), i;
|
|
718
718
|
}
|
|
719
|
-
function
|
|
719
|
+
function N(e, t) {
|
|
720
720
|
if (t.length === 0)
|
|
721
721
|
return;
|
|
722
722
|
let r = e;
|
|
@@ -767,14 +767,14 @@ class qe {
|
|
|
767
767
|
* Maps a single field
|
|
768
768
|
*/
|
|
769
769
|
mapField(t, r, i) {
|
|
770
|
-
let s =
|
|
771
|
-
return r.transform && (s = r.transform(s, t, i)), (s == null || s === "") && r.fallback && (typeof r.fallback == "function" ? s = r.fallback(t, i) : s =
|
|
770
|
+
let s = N(t, r.source);
|
|
771
|
+
return r.transform && (s = r.transform(s, t, i)), (s == null || s === "") && r.fallback && (typeof r.fallback == "function" ? s = r.fallback(t, i) : s = N(t, [r.fallback])), (s == null || s === "") && (s = r.defaultValue), s;
|
|
772
772
|
}
|
|
773
773
|
/**
|
|
774
774
|
* Maps a container field (array wrapped in LDP container)
|
|
775
775
|
*/
|
|
776
776
|
mapContainerField(t, r, i) {
|
|
777
|
-
let s =
|
|
777
|
+
let s = N(t, r.source);
|
|
778
778
|
if (!s)
|
|
779
779
|
return null;
|
|
780
780
|
r.transform && (s = r.transform(s, t, i)), Array.isArray(s) || (s = [s]), r.filter && (s = s.filter(
|
|
@@ -784,9 +784,9 @@ class qe {
|
|
|
784
784
|
const l = {
|
|
785
785
|
"@type": r.itemType
|
|
786
786
|
};
|
|
787
|
-
for (const [
|
|
788
|
-
const
|
|
789
|
-
|
|
787
|
+
for (const [u, f] of Object.entries(r.itemFields)) {
|
|
788
|
+
const p = f(n, a, i);
|
|
789
|
+
p !== void 0 && (l[u] = p);
|
|
790
790
|
}
|
|
791
791
|
return l;
|
|
792
792
|
});
|
|
@@ -799,14 +799,14 @@ class qe {
|
|
|
799
799
|
* Maps a nested object
|
|
800
800
|
*/
|
|
801
801
|
mapNestedObject(t, r, i) {
|
|
802
|
-
const s =
|
|
802
|
+
const s = N(t, r.source);
|
|
803
803
|
if (!s)
|
|
804
804
|
return null;
|
|
805
805
|
const o = {};
|
|
806
806
|
r.type && (o["@type"] = r.type);
|
|
807
807
|
for (const [n, a] of Object.entries(r.fields)) {
|
|
808
808
|
let l;
|
|
809
|
-
Array.isArray(a) ? l =
|
|
809
|
+
Array.isArray(a) ? l = N(s, a) : l = this.mapField(s, a, i), l !== void 0 && (o[n] = l);
|
|
810
810
|
}
|
|
811
811
|
return Object.keys(o).length > (r.type ? 1 : 0) ? o : null;
|
|
812
812
|
}
|
|
@@ -841,7 +841,7 @@ const ze = {
|
|
|
841
841
|
"@id": {
|
|
842
842
|
source: ["@id"],
|
|
843
843
|
transform: (e, t, r) => {
|
|
844
|
-
const s =
|
|
844
|
+
const s = B(e || t.id || "") || e?.split("/").pop() || "unknown", o = r.providerParticipantId ? `${encodeURIComponent(r.providerParticipantId)}/` : "";
|
|
845
845
|
return `${r.temsServiceBase || "https://api.tems.example.com/services/"}${o}${encodeURIComponent(s)}/`;
|
|
846
846
|
}
|
|
847
847
|
},
|
|
@@ -1060,11 +1060,11 @@ const ze = {
|
|
|
1060
1060
|
},
|
|
1061
1061
|
assetId: {
|
|
1062
1062
|
source: ["@id"],
|
|
1063
|
-
transform: (e, t) =>
|
|
1063
|
+
transform: (e, t) => B(e || t.id || "")
|
|
1064
1064
|
},
|
|
1065
1065
|
datasetId: {
|
|
1066
1066
|
source: ["@id"],
|
|
1067
|
-
transform: (e, t) =>
|
|
1067
|
+
transform: (e, t) => B(e || t.id || "")
|
|
1068
1068
|
},
|
|
1069
1069
|
// Index endpoint URL for index assets - try multiple property variations
|
|
1070
1070
|
// Priority: source-level dcat:endpointUrl (index endpoint) over props-level dcat:endpointURL (protocol URL)
|
|
@@ -1093,7 +1093,7 @@ const ze = {
|
|
|
1093
1093
|
if (!e) return;
|
|
1094
1094
|
const i = Be(e, t);
|
|
1095
1095
|
if (i) {
|
|
1096
|
-
const s = (o) => Array.isArray(o) ? o.map((n) => (n["@id"] && (n["@id"] =
|
|
1096
|
+
const s = (o) => Array.isArray(o) ? o.map((n) => (n["@id"] && (n["@id"] = B(n["@id"])), n)) : o;
|
|
1097
1097
|
i["odrl:permission"] && (i["odrl:permission"] = s(
|
|
1098
1098
|
i["odrl:permission"]
|
|
1099
1099
|
)), i["odrl:prohibition"] && (i["odrl:prohibition"] = s(
|
|
@@ -1115,7 +1115,7 @@ const ze = {
|
|
|
1115
1115
|
_providerParticipantId: r.providerParticipantId
|
|
1116
1116
|
})
|
|
1117
1117
|
};
|
|
1118
|
-
var Ve = Object.defineProperty,
|
|
1118
|
+
var Ve = Object.defineProperty, E = (e, t, r, i) => {
|
|
1119
1119
|
for (var s = void 0, o = e.length - 1, n; o >= 0; o--)
|
|
1120
1120
|
(n = e[o]) && (s = n(t, r, s) || s);
|
|
1121
1121
|
return s && Ve(t, r, s), s;
|
|
@@ -1184,8 +1184,8 @@ class C extends v {
|
|
|
1184
1184
|
try {
|
|
1185
1185
|
const a = await this.storeService.getCatalog(n.address);
|
|
1186
1186
|
if (a?.["dcat:dataset"]) {
|
|
1187
|
-
const l = a["dcat:dataset"],
|
|
1188
|
-
return
|
|
1187
|
+
const l = a["dcat:dataset"], u = Array.isArray(l) ? l : [l], f = a.participantId || a["edc:participantId"] || a["https://w3id.org/edc/v0.0.1/ns/participantId"], p = n.participantId || f;
|
|
1188
|
+
return u.map((b) => {
|
|
1189
1189
|
const $ = {
|
|
1190
1190
|
temsServiceBase: t,
|
|
1191
1191
|
temsCategoryBase: t.replace(
|
|
@@ -1201,7 +1201,7 @@ class C extends v {
|
|
|
1201
1201
|
providerName: n.name,
|
|
1202
1202
|
providerAddress: n.address,
|
|
1203
1203
|
providerColor: n.color,
|
|
1204
|
-
providerParticipantId:
|
|
1204
|
+
providerParticipantId: p
|
|
1205
1205
|
};
|
|
1206
1206
|
return r.map(b, $);
|
|
1207
1207
|
});
|
|
@@ -1223,28 +1223,28 @@ class C extends v {
|
|
|
1223
1223
|
return this.storeService;
|
|
1224
1224
|
}
|
|
1225
1225
|
}
|
|
1226
|
-
|
|
1226
|
+
E([
|
|
1227
1227
|
y({ attribute: "participant-connector-uri", reflect: !0 })
|
|
1228
1228
|
], C.prototype, "participantConnectorUri");
|
|
1229
|
-
|
|
1229
|
+
E([
|
|
1230
1230
|
y({ attribute: "participant-id", reflect: !0 })
|
|
1231
1231
|
], C.prototype, "participantId");
|
|
1232
|
-
|
|
1232
|
+
E([
|
|
1233
1233
|
y({ attribute: "participant-api-key", reflect: !0 })
|
|
1234
1234
|
], C.prototype, "participantApiKey");
|
|
1235
|
-
|
|
1235
|
+
E([
|
|
1236
1236
|
y({ attribute: "api-gateway-config", reflect: !0 })
|
|
1237
1237
|
], C.prototype, "apiGatewayConfig");
|
|
1238
|
-
|
|
1238
|
+
E([
|
|
1239
1239
|
m()
|
|
1240
1240
|
], C.prototype, "storeService");
|
|
1241
|
-
|
|
1241
|
+
E([
|
|
1242
1242
|
m()
|
|
1243
1243
|
], C.prototype, "dspStoreService");
|
|
1244
|
-
|
|
1244
|
+
E([
|
|
1245
1245
|
m()
|
|
1246
1246
|
], C.prototype, "_apiGatewayConfigParsed");
|
|
1247
|
-
|
|
1247
|
+
E([
|
|
1248
1248
|
y({ type: Array })
|
|
1249
1249
|
], C.prototype, "providers");
|
|
1250
1250
|
function We() {
|
|
@@ -1401,8 +1401,8 @@ const bt = (e, t, r, i) => {
|
|
|
1401
1401
|
a = null;
|
|
1402
1402
|
break;
|
|
1403
1403
|
}
|
|
1404
|
-
let
|
|
1405
|
-
return a && (
|
|
1404
|
+
let u = 0;
|
|
1405
|
+
return a && (u = $t(a, i)), { obj: n, score: u };
|
|
1406
1406
|
}).filter((n) => n.score > 0);
|
|
1407
1407
|
return o.sort((n, a) => a.score - n.score), o.map((n) => n.obj);
|
|
1408
1408
|
}, Qe = (e, t) => t ? e.filter((r) => {
|
|
@@ -1448,7 +1448,7 @@ const bt = (e, t, r, i) => {
|
|
|
1448
1448
|
for (let i = 0; i < t.length && (r && t[i] in r); i++)
|
|
1449
1449
|
r = r[t[i]];
|
|
1450
1450
|
return r;
|
|
1451
|
-
},
|
|
1451
|
+
}, P = (e, t, r = "asc") => e.sort((i, s) => {
|
|
1452
1452
|
let o = i, n = s;
|
|
1453
1453
|
Array.isArray(t) ? (o = Vt(i, t), n = Vt(s, t)) : (o = i[t], n = s[t]);
|
|
1454
1454
|
let a = 0;
|
|
@@ -1461,7 +1461,7 @@ const bt = (e, t, r, i) => {
|
|
|
1461
1461
|
else
|
|
1462
1462
|
throw new TypeError(`Unsupported data type for key "${t}"`);
|
|
1463
1463
|
return r === "asc" ? a : -a;
|
|
1464
|
-
}),
|
|
1464
|
+
}), I = (e, t = {
|
|
1465
1465
|
day: "2-digit",
|
|
1466
1466
|
month: "2-digit",
|
|
1467
1467
|
year: "2-digit"
|
|
@@ -1469,7 +1469,7 @@ const bt = (e, t, r, i) => {
|
|
|
1469
1469
|
if (!e) return "";
|
|
1470
1470
|
const i = (typeof e == "string" ? new Date(e) : e).toLocaleString(void 0, t);
|
|
1471
1471
|
return typeof e == "string" && i === "Invalid Date" ? e : i;
|
|
1472
|
-
},
|
|
1472
|
+
}, M = (e, t = !1) => {
|
|
1473
1473
|
window.dispatchEvent(
|
|
1474
1474
|
new CustomEvent("requestNavigation", {
|
|
1475
1475
|
detail: {
|
|
@@ -1489,18 +1489,18 @@ const sr = (e, ...t) => ({
|
|
|
1489
1489
|
strTag: !0,
|
|
1490
1490
|
strings: e,
|
|
1491
1491
|
values: t
|
|
1492
|
-
}),
|
|
1492
|
+
}), S = sr, ir = (e) => typeof e != "string" && "strTag" in e, oe = (e, t, r) => {
|
|
1493
1493
|
let i = e[0];
|
|
1494
1494
|
for (let s = 1; s < e.length; s++)
|
|
1495
1495
|
i += t[r ? r[s - 1] : s - 1], i += e[s];
|
|
1496
1496
|
return i;
|
|
1497
1497
|
};
|
|
1498
1498
|
const ne = ((e) => ir(e) ? oe(e.strings, e.values) : e);
|
|
1499
|
-
let
|
|
1499
|
+
let h = ne, Kt = !1;
|
|
1500
1500
|
function or(e) {
|
|
1501
1501
|
if (Kt)
|
|
1502
1502
|
throw new Error("lit-localize can only be configured once");
|
|
1503
|
-
|
|
1503
|
+
h = e, Kt = !0;
|
|
1504
1504
|
}
|
|
1505
1505
|
class nr {
|
|
1506
1506
|
constructor(t) {
|
|
@@ -1535,8 +1535,8 @@ for (let e = 0; e < 256; e++)
|
|
|
1535
1535
|
A[e] = (e >> 4 & 15).toString(16) + (e & 15).toString(16);
|
|
1536
1536
|
function dr(e) {
|
|
1537
1537
|
let t = 0, r = 8997, i = 0, s = 33826, o = 0, n = 40164, a = 0, l = 52210;
|
|
1538
|
-
for (let
|
|
1539
|
-
r ^= e.charCodeAt(
|
|
1538
|
+
for (let u = 0; u < e.length; u++)
|
|
1539
|
+
r ^= e.charCodeAt(u), t = r * 435, i = s * 435, o = n * 435, a = l * 435, o += r << 8, a += s << 8, i += t >>> 16, r = t & 65535, o += i >>> 16, s = i & 65535, l = a + (o >>> 16) & 65535, n = o & 65535;
|
|
1540
1540
|
return A[l >> 8] + A[l & 255] + A[n >> 8] + A[n & 255] + A[s >> 8] + A[s & 255] + A[r >> 8] + A[r & 255];
|
|
1541
1541
|
}
|
|
1542
1542
|
const hr = "", ur = "h", pr = "s";
|
|
@@ -1577,39 +1577,39 @@ function gr(e) {
|
|
|
1577
1577
|
function gt(e) {
|
|
1578
1578
|
window.dispatchEvent(new CustomEvent(wt, { detail: e }));
|
|
1579
1579
|
}
|
|
1580
|
-
let at = "", yt, ce, ct, At, le,
|
|
1581
|
-
|
|
1580
|
+
let at = "", yt, ce, ct, At, le, k = new ae();
|
|
1581
|
+
k.resolve();
|
|
1582
1582
|
let st = 0;
|
|
1583
1583
|
const yr = (e) => (or(((t, r) => mr(le, t, r))), at = ce = e.sourceLocale, ct = new Set(e.targetLocales), ct.add(e.sourceLocale), At = e.loadLocale, { getLocale: vr, setLocale: br }), vr = () => at, br = (e) => {
|
|
1584
1584
|
if (e === (yt ?? at))
|
|
1585
|
-
return
|
|
1585
|
+
return k.promise;
|
|
1586
1586
|
if (!ct || !At)
|
|
1587
1587
|
throw new Error("Internal error");
|
|
1588
1588
|
if (!ct.has(e))
|
|
1589
1589
|
throw new Error("Invalid locale code");
|
|
1590
1590
|
st++;
|
|
1591
1591
|
const t = st;
|
|
1592
|
-
return yt = e,
|
|
1592
|
+
return yt = e, k.settled && (k = new ae()), gt({ status: "loading", loadingLocale: e }), (e === ce ? (
|
|
1593
1593
|
// We could switch to the source locale synchronously, but we prefer to
|
|
1594
1594
|
// queue it on a microtask so that switching locales is consistently
|
|
1595
1595
|
// asynchronous.
|
|
1596
1596
|
Promise.resolve({ templates: void 0 })
|
|
1597
1597
|
) : At(e)).then((i) => {
|
|
1598
|
-
st === t && (at = e, yt = void 0, le = i.templates, gt({ status: "ready", readyLocale: e }),
|
|
1598
|
+
st === t && (at = e, yt = void 0, le = i.templates, gt({ status: "ready", readyLocale: e }), k.resolve());
|
|
1599
1599
|
}, (i) => {
|
|
1600
1600
|
st === t && (gt({
|
|
1601
1601
|
status: "error",
|
|
1602
1602
|
errorLocale: e,
|
|
1603
1603
|
errorMessage: i.toString()
|
|
1604
|
-
}),
|
|
1605
|
-
}),
|
|
1604
|
+
}), k.reject(i));
|
|
1605
|
+
}), k.promise;
|
|
1606
1606
|
};
|
|
1607
1607
|
var $r = Object.defineProperty, _r = Object.getOwnPropertyDescriptor, Ut = (e, t, r, i) => {
|
|
1608
1608
|
for (var s = i > 1 ? void 0 : i ? _r(t, r) : t, o = e.length - 1, n; o >= 0; o--)
|
|
1609
1609
|
(n = e[o]) && (s = (i ? n(t, r, s) : n(s)) || s);
|
|
1610
1610
|
return i && s && $r(t, r, s), s;
|
|
1611
1611
|
};
|
|
1612
|
-
let X = class extends
|
|
1612
|
+
let X = class extends Rt {
|
|
1613
1613
|
constructor() {
|
|
1614
1614
|
super(...arguments), this.search = [], this._displayObjects = [];
|
|
1615
1615
|
}
|
|
@@ -1693,7 +1693,7 @@ let X = class extends Et {
|
|
|
1693
1693
|
${this._displayObjects.map((e) => {
|
|
1694
1694
|
const t = [
|
|
1695
1695
|
{
|
|
1696
|
-
name: `${e.facts.length} ${e.facts.length > 1 ?
|
|
1696
|
+
name: `${e.facts.length} ${e.facts.length > 1 ? h("facts") : h("fact")}`,
|
|
1697
1697
|
type: "information"
|
|
1698
1698
|
}
|
|
1699
1699
|
];
|
|
@@ -1743,7 +1743,7 @@ var Ar = Object.defineProperty, Cr = Object.getOwnPropertyDescriptor, de = (e, t
|
|
|
1743
1743
|
(n = e[o]) && (s = (i ? n(t, r, s) : n(s)) || s);
|
|
1744
1744
|
return i && s && Ar(t, r, s), s;
|
|
1745
1745
|
};
|
|
1746
|
-
let lt = class extends
|
|
1746
|
+
let lt = class extends Ie {
|
|
1747
1747
|
constructor() {
|
|
1748
1748
|
super(...arguments), this.object = { "@id": "" };
|
|
1749
1749
|
}
|
|
@@ -1769,7 +1769,7 @@ let lt = class extends Le {
|
|
|
1769
1769
|
><div>${String(this.object.description)}</div></tems-division
|
|
1770
1770
|
>
|
|
1771
1771
|
<tems-division type="h4"
|
|
1772
|
-
><div>${
|
|
1772
|
+
><div>${h("All facts in this bundle")}</div></tems-division
|
|
1773
1773
|
>
|
|
1774
1774
|
<div class="card-grid card-grid-vertical">
|
|
1775
1775
|
${this.object.facts.map((e) => {
|
|
@@ -1780,7 +1780,7 @@ let lt = class extends Le {
|
|
|
1780
1780
|
if (t.length > 3) {
|
|
1781
1781
|
const r = t.length - 3;
|
|
1782
1782
|
t.splice(3, r), t.push({
|
|
1783
|
-
name: `+${r} ${
|
|
1783
|
+
name: `+${r} ${h("more")}`,
|
|
1784
1784
|
type: "information"
|
|
1785
1785
|
});
|
|
1786
1786
|
}
|
|
@@ -1796,10 +1796,10 @@ let lt = class extends Le {
|
|
|
1796
1796
|
<tems-division type="body-sm"
|
|
1797
1797
|
><div>
|
|
1798
1798
|
<div>
|
|
1799
|
-
${
|
|
1799
|
+
${h("Bundle created on")} ${String(this.object.created_at)}
|
|
1800
1800
|
</div>
|
|
1801
1801
|
<div>
|
|
1802
|
-
${
|
|
1802
|
+
${h("Bundle updated on")} ${String(this.object.updated_at)}
|
|
1803
1803
|
</div>
|
|
1804
1804
|
</div></tems-division
|
|
1805
1805
|
>
|
|
@@ -1935,9 +1935,7 @@ let _ = class extends v {
|
|
|
1935
1935
|
}
|
|
1936
1936
|
if (t) {
|
|
1937
1937
|
this.catalogs = [];
|
|
1938
|
-
const i = this.sectors.filter(
|
|
1939
|
-
(s) => s.id === t
|
|
1940
|
-
);
|
|
1938
|
+
const i = t === "*" ? this.sectors : this.sectors.filter((s) => s.id === t);
|
|
1941
1939
|
if (i.length > 0 && (this.catalogs = (await Promise.all(
|
|
1942
1940
|
i.map(async (s) => {
|
|
1943
1941
|
try {
|
|
@@ -1952,12 +1950,30 @@ let _ = class extends v {
|
|
|
1952
1950
|
}
|
|
1953
1951
|
})
|
|
1954
1952
|
)).flat()), r) {
|
|
1953
|
+
if (r === "*")
|
|
1954
|
+
return this.object = {
|
|
1955
|
+
"@id": "urn:uuid:all-catalogs",
|
|
1956
|
+
"dct:title": h("All Catalogs"),
|
|
1957
|
+
"dct:description": "",
|
|
1958
|
+
"dcat:dataset": (await Promise.all(
|
|
1959
|
+
this.catalogs.map(async (o) => {
|
|
1960
|
+
try {
|
|
1961
|
+
return (await (await fetch(o.endpoints.catalog)).json())["dcat:dataset"];
|
|
1962
|
+
} catch (n) {
|
|
1963
|
+
return console.warn(
|
|
1964
|
+
`Failed to fetch catalog from ${o.endpoints.catalog}`,
|
|
1965
|
+
n
|
|
1966
|
+
), [];
|
|
1967
|
+
}
|
|
1968
|
+
})
|
|
1969
|
+
)).flat()
|
|
1970
|
+
}, this.object;
|
|
1955
1971
|
const s = this.catalogs.find(
|
|
1956
1972
|
(o) => o.catalogId === r
|
|
1957
1973
|
);
|
|
1958
1974
|
if (s)
|
|
1959
1975
|
try {
|
|
1960
|
-
return this.object = await (await fetch(s.endpoints.catalog)).json(), this.object["dcat:dataset"] =
|
|
1976
|
+
return this.object = await (await fetch(s.endpoints.catalog)).json(), this.object["dcat:dataset"] = P(
|
|
1961
1977
|
this.object["dcat:dataset"],
|
|
1962
1978
|
"dct:title",
|
|
1963
1979
|
"asc"
|
|
@@ -1970,9 +1986,9 @@ let _ = class extends v {
|
|
|
1970
1986
|
return;
|
|
1971
1987
|
}
|
|
1972
1988
|
}
|
|
1973
|
-
return
|
|
1989
|
+
return P(this.catalogs, "catalogId", "asc");
|
|
1974
1990
|
}
|
|
1975
|
-
return
|
|
1991
|
+
return P(this.sectors, "id", "asc");
|
|
1976
1992
|
}
|
|
1977
1993
|
},
|
|
1978
1994
|
args: () => [
|
|
@@ -2011,13 +2027,13 @@ let _ = class extends v {
|
|
|
2011
2027
|
complete: (e) => d`<tems-viewport>
|
|
2012
2028
|
<tems-header
|
|
2013
2029
|
slot="header"
|
|
2014
|
-
heading=${this.catalogId ? `${
|
|
2015
|
-
${e["dct:title"]} (From ${this.sectorId})` : this.sectorId ? `${
|
|
2016
|
-
>${this.sectorId || this.catalogId ? d
|
|
2030
|
+
heading=${this.catalogId ? e ? this.catalogId === "*" ? `${h("All Datasets")}` : `${h("Datasets from")}
|
|
2031
|
+
${e["dct:title"]} (From ${this.sectorId})` : `${h(S`Error while loading catalog ${this.catalogId}`)}` : this.sectorId ? this.sectorId === "*" ? `${h("All Sectors")}` : `${h("Catalogs available in")} ${this.sectorId}` : `${h("Root Authority")}`}
|
|
2032
|
+
>${(this.sectorId || this.catalogId) && !(this.catalogId === "*" && this.sectorId === "*") && !(this.sectorId === "*" && !this.catalogId) ? d`<div slot="cta">
|
|
2017
2033
|
<tems-button
|
|
2018
2034
|
type="primary"
|
|
2019
|
-
label=${
|
|
2020
|
-
|
|
2035
|
+
label=${h(
|
|
2036
|
+
S`Back to ${this.catalogId ? this.sectorId : "Root Authority"}`
|
|
2021
2037
|
)}
|
|
2022
2038
|
@click=${this._back}
|
|
2023
2039
|
></tems-button>
|
|
@@ -2043,7 +2059,7 @@ let _ = class extends v {
|
|
|
2043
2059
|
type=${"bill-image"}
|
|
2044
2060
|
.header=${t.catalogId || c}
|
|
2045
2061
|
.content=${t.description || c}
|
|
2046
|
-
date=${
|
|
2062
|
+
date=${I(t.lastUpdated) || c}
|
|
2047
2063
|
@click=${() => this._selectCatalog(t.catalogId)}
|
|
2048
2064
|
></tems-card-catalog>`
|
|
2049
2065
|
)}` : d`${e.map(
|
|
@@ -2053,23 +2069,23 @@ let _ = class extends v {
|
|
|
2053
2069
|
type=${"bill-image"}
|
|
2054
2070
|
.header=${t.id || c}
|
|
2055
2071
|
.content=${t.description || c}
|
|
2056
|
-
date=${
|
|
2072
|
+
date=${I(t.lastUpdated) || c}
|
|
2057
2073
|
@click=${() => this._selectSector(t.id)}
|
|
2058
2074
|
></tems-card-catalog>`
|
|
2059
2075
|
)}`}
|
|
2060
2076
|
</div>
|
|
2061
2077
|
</div>` : d`<p>
|
|
2062
|
-
${
|
|
2078
|
+
${h(
|
|
2063
2079
|
"No data available, data source may be temporarily unavailable."
|
|
2064
2080
|
)}
|
|
2065
2081
|
</p>
|
|
2066
2082
|
${this.sectorId || this.catalogId ? d`<tems-button
|
|
2067
2083
|
type="primary"
|
|
2068
|
-
label=${
|
|
2084
|
+
label=${h("Back")}
|
|
2069
2085
|
@click=${this._back}
|
|
2070
2086
|
></tems-button>` : d`<tems-button
|
|
2071
2087
|
type="primary"
|
|
2072
|
-
label=${
|
|
2088
|
+
label=${h("Retry")}
|
|
2073
2089
|
@click=${this.requestUpdate}
|
|
2074
2090
|
></tems-button>`}`}
|
|
2075
2091
|
</div>
|
|
@@ -2123,10 +2139,10 @@ R([
|
|
|
2123
2139
|
_ = R([
|
|
2124
2140
|
V("solid-dsif-explorer-poc")
|
|
2125
2141
|
], _);
|
|
2126
|
-
var
|
|
2127
|
-
for (var s = i > 1 ? void 0 : i ?
|
|
2142
|
+
var Er = Object.defineProperty, Rr = Object.getOwnPropertyDescriptor, ft = (e, t, r, i) => {
|
|
2143
|
+
for (var s = i > 1 ? void 0 : i ? Rr(t, r) : t, o = e.length - 1, n; o >= 0; o--)
|
|
2128
2144
|
(n = e[o]) && (s = (i ? n(t, r, s) : n(s)) || s);
|
|
2129
|
-
return i && s &&
|
|
2145
|
+
return i && s && Er(t, r, s), s;
|
|
2130
2146
|
};
|
|
2131
2147
|
let Q = class extends C {
|
|
2132
2148
|
constructor() {
|
|
@@ -2249,7 +2265,7 @@ Q = ft([
|
|
|
2249
2265
|
V("solid-dsp-connector")
|
|
2250
2266
|
], Q);
|
|
2251
2267
|
const Ur = ".flex{display:flex}.flex.flex-row{flex-direction:row}.flex.flex-column{flex-direction:column}.flex.wrap{flex-wrap:wrap}.flex.flex-1{flex:1}.flex .half,.flex.half{flex-basis:50%}.flex.justify-content-center{justify-content:center}.flex.justify-content-space-between{justify-content:space-between}.flex.align-items-center{align-items:center}.flex.align-items-flex-start{align-items:flex-start}.flex .align-items-flex-end{align-items:flex-end}.full-width{width:100%}";
|
|
2252
|
-
var Or = Object.defineProperty, kr = Object.getOwnPropertyDescriptor,
|
|
2268
|
+
var Or = Object.defineProperty, kr = Object.getOwnPropertyDescriptor, U = (e, t, r, i) => {
|
|
2253
2269
|
for (var s = i > 1 ? void 0 : i ? kr(t, r) : t, o = e.length - 1, n; o >= 0; o--)
|
|
2254
2270
|
(n = e[o]) && (s = (i ? n(t, r, s) : n(s)) || s);
|
|
2255
2271
|
return i && s && Or(t, r, s), s;
|
|
@@ -2257,8 +2273,8 @@ var Or = Object.defineProperty, kr = Object.getOwnPropertyDescriptor, E = (e, t,
|
|
|
2257
2273
|
let w = class extends v {
|
|
2258
2274
|
constructor() {
|
|
2259
2275
|
super(...arguments), this.header = "DS4GO Fact Bundling Creation", this.selectedFacts = [], this.bundleName = "", this.bundleDescription = "", this.filterFactText = "", this.spliceLength = 0, this.cherryPickedProperties = [
|
|
2260
|
-
{ key: "created_at", value: "created_at", cast:
|
|
2261
|
-
{ key: "updated_at", value: "updated_at", cast:
|
|
2276
|
+
{ key: "created_at", value: "created_at", cast: I },
|
|
2277
|
+
{ key: "updated_at", value: "updated_at", cast: I },
|
|
2262
2278
|
{ key: "name", value: "name" },
|
|
2263
2279
|
{ key: "description", value: "description" },
|
|
2264
2280
|
{ key: "author", value: "author" },
|
|
@@ -2266,7 +2282,7 @@ let w = class extends v {
|
|
|
2266
2282
|
key: "categories",
|
|
2267
2283
|
value: "categories",
|
|
2268
2284
|
expand: !0,
|
|
2269
|
-
cast: (t) =>
|
|
2285
|
+
cast: (t) => P(t, "name")
|
|
2270
2286
|
}
|
|
2271
2287
|
], this._getResource = new pt(this, {
|
|
2272
2288
|
task: async ([t, r, i]) => {
|
|
@@ -2275,7 +2291,7 @@ let w = class extends v {
|
|
|
2275
2291
|
if (!t) return;
|
|
2276
2292
|
this.facts = await this._getProxyValue(t), this.hasCachedDatas = !0;
|
|
2277
2293
|
}
|
|
2278
|
-
return this.oldDataSrc !== t && (this.oldDataSrc = t), Array.isArray(this.facts) || (this.facts = []), r ?
|
|
2294
|
+
return this.oldDataSrc !== t && (this.oldDataSrc = t), Array.isArray(this.facts) || (this.facts = []), r ? P(
|
|
2279
2295
|
ie(
|
|
2280
2296
|
this.facts.filter(
|
|
2281
2297
|
(s) => !i.includes(s)
|
|
@@ -2284,7 +2300,7 @@ let w = class extends v {
|
|
|
2284
2300
|
),
|
|
2285
2301
|
"name",
|
|
2286
2302
|
"asc"
|
|
2287
|
-
) : (i.length === 0 && (this.spliceLength = Math.floor((window.innerWidth - 800) / 354) * Math.floor((window.innerHeight - 255) / 500)),
|
|
2303
|
+
) : (i.length === 0 && (this.spliceLength = Math.floor((window.innerWidth - 800) / 354) * Math.floor((window.innerHeight - 255) / 500)), P(
|
|
2288
2304
|
this.facts.filter(
|
|
2289
2305
|
(s) => !this.selectedFacts.includes(s)
|
|
2290
2306
|
),
|
|
@@ -2361,7 +2377,7 @@ let w = class extends v {
|
|
|
2361
2377
|
<tems-button
|
|
2362
2378
|
type="primary"
|
|
2363
2379
|
disabled=${!s || c}
|
|
2364
|
-
label=${
|
|
2380
|
+
label=${h("Create bundle")}
|
|
2365
2381
|
@click=${this._createFactBundle}
|
|
2366
2382
|
></tems-button>
|
|
2367
2383
|
</div>
|
|
@@ -2372,8 +2388,8 @@ let w = class extends v {
|
|
|
2372
2388
|
<div>
|
|
2373
2389
|
<tems-input
|
|
2374
2390
|
type="text"
|
|
2375
|
-
label=${
|
|
2376
|
-
placeholder=${
|
|
2391
|
+
label=${h("Bundle name")}
|
|
2392
|
+
placeholder=${h("Bundle name")}
|
|
2377
2393
|
required=""
|
|
2378
2394
|
.value=${this.bundleName}
|
|
2379
2395
|
@change=${this._updateBundleName}
|
|
@@ -2382,16 +2398,16 @@ let w = class extends v {
|
|
|
2382
2398
|
<div>
|
|
2383
2399
|
<tems-textarea
|
|
2384
2400
|
rows="4"
|
|
2385
|
-
label=${
|
|
2386
|
-
placeholder=${
|
|
2401
|
+
label=${h("Bundle description")}
|
|
2402
|
+
placeholder=${h("Bundle description")}
|
|
2387
2403
|
.value=${this.bundleDescription}
|
|
2388
2404
|
@change=${this._updateBundleDescription}
|
|
2389
2405
|
></tems-textarea>
|
|
2390
2406
|
</div>
|
|
2391
2407
|
${i > 0 ? d`<tems-division type="h4">
|
|
2392
2408
|
<div>
|
|
2393
|
-
${
|
|
2394
|
-
|
|
2409
|
+
${h(
|
|
2410
|
+
S`${i} selected fact${i > 1 ? "s" : ""}`
|
|
2395
2411
|
)}
|
|
2396
2412
|
</div></tems-division
|
|
2397
2413
|
>
|
|
@@ -2404,7 +2420,7 @@ let w = class extends v {
|
|
|
2404
2420
|
if (n.length > 3) {
|
|
2405
2421
|
const a = n.length - 3;
|
|
2406
2422
|
n.splice(3, a), n.push({
|
|
2407
|
-
name: `+${a} ${
|
|
2423
|
+
name: `+${a} ${h("more")}`,
|
|
2408
2424
|
type: "information"
|
|
2409
2425
|
});
|
|
2410
2426
|
}
|
|
@@ -2447,7 +2463,7 @@ let w = class extends v {
|
|
|
2447
2463
|
if (n.length > 3) {
|
|
2448
2464
|
const a = n.length - 3;
|
|
2449
2465
|
n.splice(3, a), n.push({
|
|
2450
|
-
name: `+${a} ${
|
|
2466
|
+
name: `+${a} ${h("more")}`,
|
|
2451
2467
|
type: "information"
|
|
2452
2468
|
});
|
|
2453
2469
|
}
|
|
@@ -2468,8 +2484,8 @@ let w = class extends v {
|
|
|
2468
2484
|
class="flex flex-row justify-content-space-between align-items-flex-end"
|
|
2469
2485
|
>
|
|
2470
2486
|
<div>
|
|
2471
|
-
${
|
|
2472
|
-
|
|
2487
|
+
${h(
|
|
2488
|
+
S`Displaying ${r.length} of ${t.length} result${t.length > 1 ? "s" : ""}`
|
|
2473
2489
|
)}
|
|
2474
2490
|
</div>
|
|
2475
2491
|
<div class="flex flex-row gap-400">
|
|
@@ -2477,16 +2493,16 @@ let w = class extends v {
|
|
|
2477
2493
|
@click=${this._showMoreResults}
|
|
2478
2494
|
type="primary"
|
|
2479
2495
|
size="sm"
|
|
2480
|
-
label=${
|
|
2496
|
+
label=${h("Show more results")}
|
|
2481
2497
|
></tems-button>
|
|
2482
2498
|
<tems-button
|
|
2483
2499
|
@click=${this._showAllResults}
|
|
2484
2500
|
type="primary"
|
|
2485
2501
|
size="sm"
|
|
2486
|
-
label=${
|
|
2502
|
+
label=${h("Show all results")}
|
|
2487
2503
|
></tems-button>
|
|
2488
2504
|
</div>
|
|
2489
|
-
</div>` : c}` : d`${
|
|
2505
|
+
</div>` : c}` : d`${h("No results found")} ${this.filterFactText ? `for "${this.filterFactText}".` : ""}`}
|
|
2490
2506
|
</div>` : c}
|
|
2491
2507
|
</section>
|
|
2492
2508
|
</div>
|
|
@@ -2546,40 +2562,40 @@ w.styles = [
|
|
|
2546
2562
|
}
|
|
2547
2563
|
`
|
|
2548
2564
|
];
|
|
2549
|
-
|
|
2565
|
+
U([
|
|
2550
2566
|
y({ attribute: "header", type: String })
|
|
2551
2567
|
], w.prototype, "header", 2);
|
|
2552
|
-
|
|
2568
|
+
U([
|
|
2553
2569
|
y({ attribute: "facts-src", reflect: !0 })
|
|
2554
2570
|
], w.prototype, "factsSrc", 2);
|
|
2555
|
-
|
|
2571
|
+
U([
|
|
2556
2572
|
m()
|
|
2557
2573
|
], w.prototype, "selectedFacts", 2);
|
|
2558
|
-
|
|
2574
|
+
U([
|
|
2559
2575
|
m()
|
|
2560
2576
|
], w.prototype, "bundleName", 2);
|
|
2561
|
-
|
|
2577
|
+
U([
|
|
2562
2578
|
m()
|
|
2563
2579
|
], w.prototype, "bundleDescription", 2);
|
|
2564
|
-
|
|
2580
|
+
U([
|
|
2565
2581
|
m()
|
|
2566
2582
|
], w.prototype, "filterFactText", 2);
|
|
2567
|
-
|
|
2583
|
+
U([
|
|
2568
2584
|
m()
|
|
2569
2585
|
], w.prototype, "spliceLength", 2);
|
|
2570
|
-
w =
|
|
2586
|
+
w = U([
|
|
2571
2587
|
V("solid-fact-bundle-creation")
|
|
2572
2588
|
], w);
|
|
2573
|
-
var Dr = Object.defineProperty,
|
|
2574
|
-
for (var s = i > 1 ? void 0 : i ?
|
|
2589
|
+
var Dr = Object.defineProperty, Ir = Object.getOwnPropertyDescriptor, et = (e, t, r, i) => {
|
|
2590
|
+
for (var s = i > 1 ? void 0 : i ? Ir(t, r) : t, o = e.length - 1, n; o >= 0; o--)
|
|
2575
2591
|
(n = e[o]) && (s = (i ? n(t, r, s) : n(s)) || s);
|
|
2576
2592
|
return i && s && Dr(t, r, s), s;
|
|
2577
2593
|
};
|
|
2578
|
-
let
|
|
2594
|
+
let T = class extends v {
|
|
2579
2595
|
constructor() {
|
|
2580
2596
|
super(...arguments), this.header = "DS4GO Fact Bundling", this.search = [], this.resultCount = this.objects?.length || 0, this.cherryPickedProperties = [
|
|
2581
|
-
{ key: "created_at", value: "created_at", cast:
|
|
2582
|
-
{ key: "updated_at", value: "updated_at", cast:
|
|
2597
|
+
{ key: "created_at", value: "created_at", cast: I },
|
|
2598
|
+
{ key: "updated_at", value: "updated_at", cast: I },
|
|
2583
2599
|
{ key: "name", value: "name" },
|
|
2584
2600
|
{ key: "description", value: "description" }
|
|
2585
2601
|
], this._getResource = new pt(this, {
|
|
@@ -2593,7 +2609,7 @@ let I = class extends v {
|
|
|
2593
2609
|
if (!e) return;
|
|
2594
2610
|
this.objects = await this._getProxyValue(e), this.hasCachedDatas = !0;
|
|
2595
2611
|
}
|
|
2596
|
-
return this.oldDataSrc !== e && (this.oldDataSrc = e), Array.isArray(this.objects) || (this.objects = []), this.object = this.objects.find((r) => r["@id"] === t),
|
|
2612
|
+
return this.oldDataSrc !== e && (this.oldDataSrc = e), Array.isArray(this.objects) || (this.objects = []), this.object = this.objects.find((r) => r["@id"] === t), P(this.objects, "name", "asc");
|
|
2597
2613
|
}
|
|
2598
2614
|
},
|
|
2599
2615
|
args: () => [
|
|
@@ -2608,14 +2624,14 @@ let I = class extends v {
|
|
|
2608
2624
|
return e?._originalResource?.hasType("ds4go:FactBundle") && (e.facts = await Promise.all(
|
|
2609
2625
|
(await e._originalResource["ldp:contains"]).map(
|
|
2610
2626
|
(t) => this._getProxyValue(t["@id"], !1, [
|
|
2611
|
-
{ key: "updated_at", value: "updated_at", cast:
|
|
2627
|
+
{ key: "updated_at", value: "updated_at", cast: I },
|
|
2612
2628
|
{ key: "name", value: "name" },
|
|
2613
2629
|
{ key: "description", value: "description" },
|
|
2614
2630
|
{
|
|
2615
2631
|
key: "categories",
|
|
2616
2632
|
value: "categories",
|
|
2617
2633
|
expand: !0,
|
|
2618
|
-
cast: (r) =>
|
|
2634
|
+
cast: (r) => P(r, "name")
|
|
2619
2635
|
},
|
|
2620
2636
|
{ key: "author", value: "author" },
|
|
2621
2637
|
{ key: "link", value: "link" },
|
|
@@ -2645,28 +2661,28 @@ let I = class extends v {
|
|
|
2645
2661
|
_openModal(e) {
|
|
2646
2662
|
if (e.preventDefault(), this.route)
|
|
2647
2663
|
if ("use-id" in (this.component.routeAttributes || {}))
|
|
2648
|
-
|
|
2664
|
+
M(this.route, e.detail["@id"]);
|
|
2649
2665
|
else {
|
|
2650
2666
|
const t = e.detail["@type"]?.at(-1) ?? e.detail["@type"];
|
|
2651
2667
|
if (t) {
|
|
2652
2668
|
const r = window.orbit?.components?.filter(
|
|
2653
2669
|
(i) => i?.routeAttributes?.["rdf-type"] === t
|
|
2654
2670
|
);
|
|
2655
|
-
r?.[0]?.route &&
|
|
2671
|
+
r?.[0]?.route && M(r[0]?.route, e.detail["@id"]);
|
|
2656
2672
|
}
|
|
2657
2673
|
}
|
|
2658
2674
|
}
|
|
2659
2675
|
_closeModal(e) {
|
|
2660
|
-
e.preventDefault(), this.route &&
|
|
2676
|
+
e.preventDefault(), this.route && M(this.route, this.defaultDataSrc);
|
|
2661
2677
|
}
|
|
2662
2678
|
_closeModalFromBackground(e) {
|
|
2663
|
-
e.preventDefault(), this.route && e.target?.classList.contains("modal") &&
|
|
2679
|
+
e.preventDefault(), this.route && e.target?.classList.contains("modal") && M(this.route, this.defaultDataSrc);
|
|
2664
2680
|
}
|
|
2665
2681
|
_resultCountUpdate(e) {
|
|
2666
2682
|
this.resultCount = e.detail ?? 0;
|
|
2667
2683
|
}
|
|
2668
2684
|
_goToBundleCreation(e) {
|
|
2669
|
-
e.preventDefault(), this.bundleCreationComponent?.route &&
|
|
2685
|
+
e.preventDefault(), this.bundleCreationComponent?.route && M(this.bundleCreationComponent.route);
|
|
2670
2686
|
}
|
|
2671
2687
|
render() {
|
|
2672
2688
|
return this.gatekeeper() || this._getResource.render({
|
|
@@ -2678,7 +2694,7 @@ let I = class extends v {
|
|
|
2678
2694
|
<tems-button
|
|
2679
2695
|
type="primary"
|
|
2680
2696
|
disabled=${!this.bundleCreationComponent?.route || c}
|
|
2681
|
-
label=${
|
|
2697
|
+
label=${h("Create a bundle")}
|
|
2682
2698
|
@click=${this._goToBundleCreation}
|
|
2683
2699
|
></tems-button>
|
|
2684
2700
|
</div>
|
|
@@ -2712,7 +2728,7 @@ let I = class extends v {
|
|
|
2712
2728
|
});
|
|
2713
2729
|
}
|
|
2714
2730
|
};
|
|
2715
|
-
|
|
2731
|
+
T.styles = Y`
|
|
2716
2732
|
.modal {
|
|
2717
2733
|
position: fixed;
|
|
2718
2734
|
top: 0;
|
|
@@ -2728,33 +2744,37 @@ I.styles = Y`
|
|
|
2728
2744
|
`;
|
|
2729
2745
|
et([
|
|
2730
2746
|
y({ attribute: "header", type: String })
|
|
2731
|
-
],
|
|
2747
|
+
], T.prototype, "header", 2);
|
|
2732
2748
|
et([
|
|
2733
2749
|
m()
|
|
2734
|
-
],
|
|
2750
|
+
], T.prototype, "search", 2);
|
|
2735
2751
|
et([
|
|
2736
2752
|
m()
|
|
2737
|
-
],
|
|
2753
|
+
], T.prototype, "resultCount", 2);
|
|
2738
2754
|
et([
|
|
2739
2755
|
m()
|
|
2740
|
-
],
|
|
2741
|
-
|
|
2756
|
+
], T.prototype, "bundleCreationComponent", 2);
|
|
2757
|
+
T = et([
|
|
2742
2758
|
V("solid-fact-bundle")
|
|
2743
|
-
],
|
|
2744
|
-
const
|
|
2759
|
+
], T);
|
|
2760
|
+
const Lr = {
|
|
2761
|
+
s20acf344316637a0: "All Catalogs",
|
|
2762
|
+
s67269ab6dc51ec41: S`Error while loading catalog ${0}`,
|
|
2763
|
+
s0b88896b7338837d: "All Datasets",
|
|
2745
2764
|
s541d9cd11a5bc840: "Datasets from",
|
|
2765
|
+
s01ceffa02fa6bd7f: "All Sectors",
|
|
2746
2766
|
s4aaac20ff7887391: "Catalogs available in",
|
|
2747
2767
|
sa89a60c3e1230cec: "Root Authority",
|
|
2748
|
-
se5784a16a6799dad:
|
|
2768
|
+
se5784a16a6799dad: S`Back to ${0}`,
|
|
2749
2769
|
s6665daa6d6147db0: "No data available, data source may be temporarily unavailable.",
|
|
2750
2770
|
sc16e00a7a8b2fde2: "Back",
|
|
2751
2771
|
s2c8189544e3ea679: "Retry",
|
|
2752
2772
|
seb1a452f2df70baf: "Create bundle",
|
|
2753
2773
|
sed5b6ae54e00125c: "Bundle name",
|
|
2754
2774
|
s11099da36cbc3173: "Bundle description",
|
|
2755
|
-
sac1b0231875ff056:
|
|
2775
|
+
sac1b0231875ff056: S`${0} selected fact${1}`,
|
|
2756
2776
|
s0d1be7a2c400c080: "more",
|
|
2757
|
-
s8272d3578b7c78d5:
|
|
2777
|
+
s8272d3578b7c78d5: S`Displaying ${0} of ${1} result${2}`,
|
|
2758
2778
|
sa40e7f4f2a43e2f7: "Show more results",
|
|
2759
2779
|
sacf246e0fa11730d: "Show all results",
|
|
2760
2780
|
s9094c0cde8fb5058: "No results found",
|
|
@@ -2766,7 +2786,7 @@ const Ir = {
|
|
|
2766
2786
|
sd3682395cf86f913: "Bundle updated on"
|
|
2767
2787
|
}, Tr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
2768
2788
|
__proto__: null,
|
|
2769
|
-
templates:
|
|
2789
|
+
templates: Lr
|
|
2770
2790
|
}, Symbol.toStringTag, { value: "Module" })), Fr = "en", he = [
|
|
2771
2791
|
"en"
|
|
2772
2792
|
], Nr = /* @__PURE__ */ Object.assign({ "../../generated/locales/en.ts": Tr }), Mr = new Map(
|
package/package.json
CHANGED
|
@@ -131,9 +131,10 @@ export class SolidDsifExplorerPoc extends OrbitComponent {
|
|
|
131
131
|
if (sectorId) {
|
|
132
132
|
this.catalogs = [];
|
|
133
133
|
|
|
134
|
-
const selectedSectors =
|
|
135
|
-
|
|
136
|
-
|
|
134
|
+
const selectedSectors =
|
|
135
|
+
sectorId === "*"
|
|
136
|
+
? this.sectors
|
|
137
|
+
: this.sectors.filter((sector) => sector.id === sectorId);
|
|
137
138
|
|
|
138
139
|
if (selectedSectors.length > 0) {
|
|
139
140
|
this.catalogs = (
|
|
@@ -157,6 +158,34 @@ export class SolidDsifExplorerPoc extends OrbitComponent {
|
|
|
157
158
|
}
|
|
158
159
|
|
|
159
160
|
if (catalogId) {
|
|
161
|
+
if (catalogId === "*") {
|
|
162
|
+
this.object = {
|
|
163
|
+
"@id": "urn:uuid:all-catalogs",
|
|
164
|
+
"dct:title": msg("All Catalogs"),
|
|
165
|
+
"dct:description": "",
|
|
166
|
+
"dcat:dataset": (
|
|
167
|
+
await Promise.all(
|
|
168
|
+
this.catalogs.map(async (catalog) => {
|
|
169
|
+
try {
|
|
170
|
+
return (
|
|
171
|
+
(await (
|
|
172
|
+
await fetch(catalog.endpoints.catalog)
|
|
173
|
+
).json()) as CatalogEntry
|
|
174
|
+
)["dcat:dataset"];
|
|
175
|
+
} catch (error) {
|
|
176
|
+
console.warn(
|
|
177
|
+
`Failed to fetch catalog from ${catalog.endpoints.catalog}`,
|
|
178
|
+
error,
|
|
179
|
+
);
|
|
180
|
+
return [];
|
|
181
|
+
}
|
|
182
|
+
}),
|
|
183
|
+
)
|
|
184
|
+
).flat() as Dataset[],
|
|
185
|
+
};
|
|
186
|
+
|
|
187
|
+
return this.object;
|
|
188
|
+
}
|
|
160
189
|
// FIXME: What if both sbx and sa use the same catalogId?
|
|
161
190
|
const selectedCatalog = this.catalogs.find(
|
|
162
191
|
(catalog) => catalog.catalogId === catalogId,
|
|
@@ -245,13 +274,21 @@ export class SolidDsifExplorerPoc extends OrbitComponent {
|
|
|
245
274
|
<tems-header
|
|
246
275
|
slot="header"
|
|
247
276
|
heading=${this.catalogId
|
|
248
|
-
?
|
|
277
|
+
? !datas
|
|
278
|
+
? `${msg(str`Error while loading catalog ${this.catalogId}`)}`
|
|
279
|
+
: this.catalogId === "*"
|
|
280
|
+
? `${msg("All Datasets")}`
|
|
281
|
+
: `${msg("Datasets from")}
|
|
249
282
|
${(datas as CatalogEntry)["dct:title"]} (From ${this.sectorId})`
|
|
250
283
|
: this.sectorId
|
|
251
|
-
?
|
|
284
|
+
? this.sectorId === "*"
|
|
285
|
+
? `${msg("All Sectors")}`
|
|
286
|
+
: `${msg("Catalogs available in")} ${this.sectorId}`
|
|
252
287
|
: `${msg("Root Authority")}`}
|
|
253
|
-
>${this.sectorId || this.catalogId
|
|
254
|
-
|
|
288
|
+
>${(this.sectorId || this.catalogId) &&
|
|
289
|
+
!(this.catalogId === "*" && this.sectorId === "*") &&
|
|
290
|
+
!(this.sectorId === "*" && !this.catalogId)
|
|
291
|
+
? html`<div slot="cta">
|
|
255
292
|
<tems-button
|
|
256
293
|
type="primary"
|
|
257
294
|
label=${msg(
|