@platforma-sdk/ui-vue 1.42.15 → 1.42.19
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/.turbo/turbo-build.log +33 -28
- package/.turbo/turbo-type-check.log +1 -1
- package/CHANGELOG.md +14 -0
- package/dist/components/PlAgDataTable/PlAgDataTableSheets.vue2.js +5 -5
- package/dist/components/PlAgDataTable/PlAgDataTableV2.vue2.js +41 -41
- package/dist/components/PlAgDataTable/sources/table-source-v2.d.ts.map +1 -1
- package/dist/components/PlAgDataTable/sources/table-source-v2.js +124 -125
- package/dist/components/PlAgDataTable/sources/table-source-v2.js.map +1 -1
- package/dist/components/PlAgDataTable/sources/table-state-v2.js +3 -3
- package/dist/components/PlAgDataTable/sources/value-rendering.d.ts.map +1 -1
- package/dist/components/PlAgDataTable/sources/value-rendering.js +24 -25
- package/dist/components/PlAgDataTable/sources/value-rendering.js.map +1 -1
- package/dist/components/PlAgGridColumnManager/PlAgGridColumnManager.vue.d.ts.map +1 -1
- package/dist/components/PlAgGridColumnManager/PlAgGridColumnManager.vue.js +7 -86
- package/dist/components/PlAgGridColumnManager/PlAgGridColumnManager.vue.js.map +1 -1
- package/dist/components/PlAgGridColumnManager/PlAgGridColumnManager.vue2.js +103 -2
- package/dist/components/PlAgGridColumnManager/PlAgGridColumnManager.vue2.js.map +1 -1
- package/dist/components/PlAgGridColumnManager/PlAgGridColumnManager.vue3.js +9 -0
- package/dist/components/PlAgGridColumnManager/PlAgGridColumnManager.vue3.js.map +1 -0
- package/dist/components/PlAgGridColumnManager/useFilteredItems.d.ts +15 -0
- package/dist/components/PlAgGridColumnManager/useFilteredItems.d.ts.map +1 -0
- package/dist/components/PlAgGridColumnManager/useFilteredItems.js +35 -0
- package/dist/components/PlAgGridColumnManager/useFilteredItems.js.map +1 -0
- package/dist/components/PlAnnotations/components/DynamicForm.vue2.js +12 -12
- package/dist/components/PlAnnotations/components/FilterSidebar.vue2.js +2 -2
- package/dist/components/PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue.d.ts.map +1 -1
- package/dist/components/PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue.js +21 -20
- package/dist/components/PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue.js.map +1 -1
- package/dist/components/PlMultiSequenceAlignment/data.d.ts.map +1 -1
- package/dist/components/PlMultiSequenceAlignment/data.js +170 -185
- package/dist/components/PlMultiSequenceAlignment/data.js.map +1 -1
- package/dist/components/PlTableFilters/filters-state.js +8 -8
- package/dist/components/PlTableFilters/filters_logic.d.ts.map +1 -1
- package/dist/components/PlTableFilters/filters_logic.js +67 -77
- package/dist/components/PlTableFilters/filters_logic.js.map +1 -1
- package/dist/defineApp.js +20 -20
- package/dist/internal/UpdateSerializer.js +3 -3
- package/dist/lib/model/common/dist/index.js +523 -414
- package/dist/lib/model/common/dist/index.js.map +1 -1
- package/dist/lib/ui/uikit/dist/components/DataTable/TableComponent.vue.js +1 -1
- package/dist/lib/ui/uikit/dist/components/PlAccordion/{ExpandTransition.vue.js → ExpandTransition.vue2.js} +1 -1
- package/dist/lib/ui/uikit/dist/components/PlAccordion/ExpandTransition.vue2.js.map +1 -0
- package/dist/lib/ui/uikit/dist/components/PlAccordion/PlAccordionSection.vue2.js +1 -1
- package/dist/lib/ui/uikit/dist/components/PlAutocomplete/PlAutocomplete.vue.js +1 -1
- package/dist/lib/ui/uikit/dist/components/PlDropdown/PlDropdown.vue.js +1 -1
- package/dist/lib/ui/uikit/dist/components/PlDropdownLegacy/PlDropdownLegacy.vue.js +1 -1
- package/dist/lib/ui/uikit/dist/components/PlDropdownMulti/PlDropdownMulti.vue.js +1 -1
- package/dist/lib/ui/uikit/dist/components/PlFileDialog/Local.vue.js +6 -6
- package/dist/lib/ui/uikit/dist/components/PlFileInput/PlFileInput.vue.js +28 -28
- package/dist/lib/ui/uikit/dist/components/PlFileInput/PlFileInput.vue.js.map +1 -1
- package/dist/lib/ui/uikit/dist/components/PlLogView/PlLogView.vue.js +89 -63
- package/dist/lib/ui/uikit/dist/components/PlLogView/PlLogView.vue.js.map +1 -1
- package/dist/lib/ui/uikit/dist/components/PlSlideModal/PlPureSlideModal.vue.js +1 -1
- package/dist/lib/ui/uikit/dist/components/PlTextArea/PlTextArea.vue.js +1 -1
- package/dist/lib/ui/uikit/dist/components/PlTextField/PlTextField.vue.js +1 -1
- package/dist/lib/ui/uikit/dist/generated/components/svg/images/{SvgRequired.vue.js → SvgRequired.vue2.js} +1 -1
- package/dist/lib/ui/uikit/dist/generated/components/svg/images/SvgRequired.vue2.js.map +1 -0
- package/dist/lib/ui/uikit/dist/helpers/dom.js.map +1 -1
- package/dist/lib/ui/uikit/dist/helpers/downloadContent.js +32 -0
- package/dist/lib/ui/uikit/dist/helpers/downloadContent.js.map +1 -0
- package/dist/lib/ui/uikit/dist/lib/model/common/dist/index.js +201 -159
- package/dist/lib/ui/uikit/dist/lib/model/common/dist/index.js.map +1 -1
- package/dist/lib/ui/uikit/dist/sdk/model/dist/index.js +521 -517
- package/dist/lib/ui/uikit/dist/sdk/model/dist/index.js.map +1 -1
- package/dist/lib.js +52 -50
- package/dist/lib.js.map +1 -1
- package/dist/sdk/model/dist/index.js +410 -406
- package/dist/sdk/model/dist/index.js.map +1 -1
- package/package.json +6 -6
- package/src/components/PlAgDataTable/sources/table-source-v2.ts +20 -16
- package/src/components/PlAgDataTable/sources/value-rendering.ts +15 -7
- package/src/components/PlAgGridColumnManager/PlAgGridColumnManager.vue +28 -4
- package/src/components/PlAgGridColumnManager/useFilteredItems.ts +68 -0
- package/src/components/PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue +1 -0
- package/src/components/PlMultiSequenceAlignment/data.ts +12 -12
- package/src/components/PlTableFilters/filters_logic.ts +18 -15
- package/dist/lib/ui/uikit/dist/components/PlAccordion/ExpandTransition.vue.js.map +0 -1
- package/dist/lib/ui/uikit/dist/generated/components/svg/images/SvgRequired.vue.js.map +0 -1
|
@@ -1,89 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
import "
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
import A from "../../lib/ui/uikit/dist/components/PlElementList/PlElementList.vue.js";
|
|
8
|
-
const j = /* @__PURE__ */ b({
|
|
9
|
-
__name: "PlAgGridColumnManager",
|
|
10
|
-
props: {
|
|
11
|
-
api: {},
|
|
12
|
-
width: {}
|
|
13
|
-
},
|
|
14
|
-
setup(p) {
|
|
15
|
-
const f = p, { api: n } = k(f), i = d([]);
|
|
16
|
-
V(
|
|
17
|
-
() => n.value,
|
|
18
|
-
(o) => {
|
|
19
|
-
o.isDestroyed() || (o.addEventListener("displayedColumnsChanged", (t) => {
|
|
20
|
-
i.value = t.api.getAllGridColumns();
|
|
21
|
-
}), i.value = o.getAllGridColumns(), i.value.length > 0 && o.moveColumns(i.value, 0));
|
|
22
|
-
},
|
|
23
|
-
{ immediate: !0 }
|
|
24
|
-
);
|
|
25
|
-
const c = w(() => i.value.map((o) => ({
|
|
26
|
-
column: o,
|
|
27
|
-
id: o.getId(),
|
|
28
|
-
label: o.getColDef().headerName
|
|
29
|
-
}))), s = d(!1), u = G("PlAgGridColumnManager");
|
|
30
|
-
return (o, t) => (g(), y("div", null, [
|
|
31
|
-
l(u) ? (g(), D(P, {
|
|
32
|
-
key: 0,
|
|
33
|
-
to: l(u)
|
|
34
|
-
}, [
|
|
35
|
-
r(l(h), {
|
|
36
|
-
icon: "columns",
|
|
37
|
-
onClick: t[0] || (t[0] = M((e) => s.value = !s.value, ["stop"]))
|
|
38
|
-
}, {
|
|
39
|
-
default: a(() => t[2] || (t[2] = [
|
|
40
|
-
m(" Columns ")
|
|
41
|
-
])),
|
|
42
|
-
_: 1
|
|
43
|
-
})
|
|
44
|
-
], 8, ["to"])) : T("", !0),
|
|
45
|
-
r(l(x), {
|
|
46
|
-
modelValue: s.value,
|
|
47
|
-
"onUpdate:modelValue": t[1] || (t[1] = (e) => s.value = e),
|
|
48
|
-
width: o.width,
|
|
49
|
-
"close-on-outside-click": ""
|
|
50
|
-
}, {
|
|
51
|
-
title: a(() => t[3] || (t[3] = [
|
|
52
|
-
m("Manage Columns")
|
|
53
|
-
])),
|
|
54
|
-
default: a(() => [
|
|
55
|
-
r(l(A), {
|
|
56
|
-
items: c.value,
|
|
57
|
-
"get-item-key": (e) => e.id,
|
|
58
|
-
"is-draggable": (e) => !e.column.getColDef().lockPosition,
|
|
59
|
-
"on-sort": (e, v) => {
|
|
60
|
-
if (!l(n).isDestroyed()) {
|
|
61
|
-
const C = i.value[e];
|
|
62
|
-
l(n).moveColumns([C], v);
|
|
63
|
-
}
|
|
64
|
-
return !0;
|
|
65
|
-
},
|
|
66
|
-
"on-toggle": (e) => {
|
|
67
|
-
l(n).isDestroyed() || l(n).setColumnsVisible([e.column], !e.column.isVisible());
|
|
68
|
-
},
|
|
69
|
-
"is-toggled": (e) => !e.column.isVisible(),
|
|
70
|
-
"is-toggable": (e) => e.id !== l(B),
|
|
71
|
-
"is-pinned": (e) => !!e.column.getColDef().lockPosition,
|
|
72
|
-
"is-pinnable": () => !1,
|
|
73
|
-
"disable-removing": ""
|
|
74
|
-
}, {
|
|
75
|
-
"item-title": a(({ item: e }) => [
|
|
76
|
-
m(N(e.label), 1)
|
|
77
|
-
]),
|
|
78
|
-
_: 1
|
|
79
|
-
}, 8, ["items", "get-item-key", "is-draggable", "on-sort", "on-toggle", "is-toggled", "is-toggable", "is-pinned"])
|
|
80
|
-
]),
|
|
81
|
-
_: 1
|
|
82
|
-
}, 8, ["modelValue", "width"])
|
|
83
|
-
]));
|
|
84
|
-
}
|
|
85
|
-
});
|
|
1
|
+
import o from "./PlAgGridColumnManager.vue2.js";
|
|
2
|
+
import s from "./PlAgGridColumnManager.vue3.js";
|
|
3
|
+
import r from "../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
+
const t = {
|
|
5
|
+
$style: s
|
|
6
|
+
}, c = /* @__PURE__ */ r(o, [["__cssModules", t]]);
|
|
86
7
|
export {
|
|
87
|
-
|
|
8
|
+
c as default
|
|
88
9
|
};
|
|
89
10
|
//# sourceMappingURL=PlAgGridColumnManager.vue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlAgGridColumnManager.vue.js","sources":[
|
|
1
|
+
{"version":3,"file":"PlAgGridColumnManager.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -1,5 +1,106 @@
|
|
|
1
|
-
import f from "
|
|
1
|
+
import { defineComponent as w, toRefs as D, ref as p, watch as T, computed as P, createElementBlock as f, openBlock as m, createBlock as M, createCommentVNode as N, createVNode as u, unref as t, Teleport as h, withModifiers as B, withCtx as d, createTextVNode as v, createElementVNode as G, Fragment as I, renderList as A, normalizeClass as E, toDisplayString as R } from "vue";
|
|
2
|
+
import "../../lib/ui/uikit/dist/index.js";
|
|
3
|
+
import { PlAgDataTableRowNumberColId as $ } from "../PlAgDataTable/sources/row-number.js";
|
|
4
|
+
import { useFilteredItems as q } from "./useFilteredItems.js";
|
|
5
|
+
import { usePlBlockPageTitleTeleportTarget as x } from "../../lib/ui/uikit/dist/layout/PlBlockPage/usePlBlockPageTitleTeleportTarget.js";
|
|
6
|
+
import F from "../../lib/ui/uikit/dist/components/PlBtnGhost/PlBtnGhost.vue.js";
|
|
7
|
+
import L from "../../lib/ui/uikit/dist/components/PlSlideModal/PlSlideModal.vue.js";
|
|
8
|
+
import S from "../../lib/ui/uikit/dist/components/PlSearchField/PlSearchField.vue.js";
|
|
9
|
+
import U from "../../lib/ui/uikit/dist/components/PlElementList/PlElementList.vue.js";
|
|
10
|
+
const Y = /* @__PURE__ */ w({
|
|
11
|
+
__name: "PlAgGridColumnManager",
|
|
12
|
+
props: {
|
|
13
|
+
api: {},
|
|
14
|
+
width: {}
|
|
15
|
+
},
|
|
16
|
+
setup(C) {
|
|
17
|
+
const b = C, { api: n } = D(b), i = p([]);
|
|
18
|
+
T(
|
|
19
|
+
() => n.value,
|
|
20
|
+
(l) => {
|
|
21
|
+
l.isDestroyed() || (l.addEventListener("displayedColumnsChanged", (o) => {
|
|
22
|
+
i.value = o.api.getAllGridColumns();
|
|
23
|
+
}), i.value = l.getAllGridColumns(), i.value.length > 0 && l.moveColumns(i.value, 0));
|
|
24
|
+
},
|
|
25
|
+
{ immediate: !0 }
|
|
26
|
+
);
|
|
27
|
+
const V = P(() => i.value.map((l) => ({
|
|
28
|
+
column: l,
|
|
29
|
+
id: l.getId(),
|
|
30
|
+
label: l.getColDef().headerName
|
|
31
|
+
}))), s = p(""), a = p(!1), c = x("PlAgGridColumnManager"), { filteredItems: k, segments: y } = q(() => ({
|
|
32
|
+
items: V.value,
|
|
33
|
+
query: s.value,
|
|
34
|
+
getStrings: (l) => [l.label]
|
|
35
|
+
}));
|
|
36
|
+
return (l, o) => (m(), f("div", null, [
|
|
37
|
+
t(c) ? (m(), M(h, {
|
|
38
|
+
key: 0,
|
|
39
|
+
to: t(c)
|
|
40
|
+
}, [
|
|
41
|
+
u(t(F), {
|
|
42
|
+
icon: "columns",
|
|
43
|
+
onClick: o[0] || (o[0] = B((e) => a.value = !a.value, ["stop"]))
|
|
44
|
+
}, {
|
|
45
|
+
default: d(() => o[3] || (o[3] = [
|
|
46
|
+
v(" Columns ")
|
|
47
|
+
])),
|
|
48
|
+
_: 1
|
|
49
|
+
})
|
|
50
|
+
], 8, ["to"])) : N("", !0),
|
|
51
|
+
u(t(L), {
|
|
52
|
+
modelValue: a.value,
|
|
53
|
+
"onUpdate:modelValue": o[2] || (o[2] = (e) => a.value = e),
|
|
54
|
+
width: l.width,
|
|
55
|
+
"close-on-outside-click": ""
|
|
56
|
+
}, {
|
|
57
|
+
title: d(() => o[4] || (o[4] = [
|
|
58
|
+
v("Manage Columns")
|
|
59
|
+
])),
|
|
60
|
+
default: d(() => [
|
|
61
|
+
u(t(S), {
|
|
62
|
+
modelValue: s.value,
|
|
63
|
+
"onUpdate:modelValue": o[1] || (o[1] = (e) => s.value = e),
|
|
64
|
+
clearable: ""
|
|
65
|
+
}, null, 8, ["modelValue"]),
|
|
66
|
+
u(t(U), {
|
|
67
|
+
items: t(k),
|
|
68
|
+
"get-item-key": (e) => e.id,
|
|
69
|
+
"is-draggable": (e) => !e.column.getColDef().lockPosition,
|
|
70
|
+
"on-sort": (e, r) => {
|
|
71
|
+
if (!t(n).isDestroyed()) {
|
|
72
|
+
const g = i.value[e];
|
|
73
|
+
t(n).moveColumns([g], r);
|
|
74
|
+
}
|
|
75
|
+
return !0;
|
|
76
|
+
},
|
|
77
|
+
"on-toggle": (e) => {
|
|
78
|
+
t(n).isDestroyed() || t(n).setColumnsVisible([e.column], !e.column.isVisible());
|
|
79
|
+
},
|
|
80
|
+
"is-toggled": (e) => !e.column.isVisible(),
|
|
81
|
+
"is-toggable": (e) => e.id !== t($),
|
|
82
|
+
"is-pinned": (e) => !!e.column.getColDef().lockPosition,
|
|
83
|
+
"is-pinnable": () => !1,
|
|
84
|
+
"disable-dragging": s.value.length > 0,
|
|
85
|
+
"disable-removing": ""
|
|
86
|
+
}, {
|
|
87
|
+
"item-title": d(({ item: e }) => [
|
|
88
|
+
G("span", null, [
|
|
89
|
+
(m(!0), f(I, null, A(t(y).get(e.label), (r, g) => (m(), f("span", {
|
|
90
|
+
key: g,
|
|
91
|
+
class: E({ [l.$style.match]: r.match })
|
|
92
|
+
}, R(r.value), 3))), 128))
|
|
93
|
+
])
|
|
94
|
+
]),
|
|
95
|
+
_: 1
|
|
96
|
+
}, 8, ["items", "get-item-key", "is-draggable", "on-sort", "on-toggle", "is-toggled", "is-toggable", "is-pinned", "disable-dragging"])
|
|
97
|
+
]),
|
|
98
|
+
_: 1
|
|
99
|
+
}, 8, ["modelValue", "width"])
|
|
100
|
+
]));
|
|
101
|
+
}
|
|
102
|
+
});
|
|
2
103
|
export {
|
|
3
|
-
|
|
104
|
+
Y as default
|
|
4
105
|
};
|
|
5
106
|
//# sourceMappingURL=PlAgGridColumnManager.vue2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlAgGridColumnManager.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
1
|
+
{"version":3,"file":"PlAgGridColumnManager.vue2.js","sources":["../../../src/components/PlAgGridColumnManager/PlAgGridColumnManager.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { PlBtnGhost, PlElementList, PlSearchField, PlSlideModal, usePlBlockPageTitleTeleportTarget } from '@milaboratories/uikit';\nimport { type Column, type DisplayedColumnsChangedEvent, type GridApi } from 'ag-grid-enterprise';\nimport { computed, ref, toRefs, watch } from 'vue';\nimport { PlAgDataTableRowNumberColId } from '../PlAgDataTable/sources/row-number';\nimport { useFilteredItems } from './useFilteredItems';\n\nconst props = defineProps<{\n /**\n * The GridApi is an API interface provided by the table/grid component\n * for interacting programmatically with the grid's features and functionality.\n * It allows you to control and manipulate grid behavior, access data, and\n * trigger specific actions.\n */\n api: GridApi;\n /**\n * Css Column Manager (Panel) modal width (default value is `368px`)\n */\n width?: string;\n}>();\n\nconst { api: gridApi } = toRefs(props);\n\nconst columns = ref<Column[]>([]);\nwatch(\n () => gridApi.value,\n (gridApi) => {\n if (gridApi.isDestroyed()) return;\n\n gridApi.addEventListener('displayedColumnsChanged', (event: DisplayedColumnsChangedEvent) => {\n columns.value = event.api.getAllGridColumns();\n });\n\n columns.value = gridApi.getAllGridColumns();\n if (columns.value.length > 0) {\n gridApi.moveColumns(columns.value, 0);\n }\n },\n { immediate: true },\n);\n\nconst items = computed(() => {\n return columns.value.map((col) => ({\n column: col,\n id: col.getId(),\n label: col.getColDef().headerName!,\n }));\n});\n\nconst query = ref('');\n\nconst slideModal = ref(false);\nconst teleportTarget = usePlBlockPageTitleTeleportTarget('PlAgGridColumnManager');\n\nconst { filteredItems, segments } = useFilteredItems(() => ({\n items: items.value,\n query: query.value,\n getStrings: (item) => [item.label],\n}));\n</script>\n\n<template>\n <div>\n <Teleport v-if=\"teleportTarget\" :to=\"teleportTarget\">\n <PlBtnGhost icon=\"columns\" @click.stop=\"slideModal = !slideModal\">\n Columns\n </PlBtnGhost>\n </Teleport>\n\n <PlSlideModal v-model=\"slideModal\" :width=\"width\" close-on-outside-click>\n <template #title>Manage Columns</template>\n <PlSearchField v-model=\"query\" clearable />\n <PlElementList\n :items=\"filteredItems\"\n :get-item-key=\"(item) => item.id\"\n :is-draggable=\"(item) => !item.column.getColDef().lockPosition\"\n :on-sort=\"(fromIndex, toIndex) => {\n if (!gridApi.isDestroyed()) {\n const columnToMove = columns[fromIndex];\n gridApi.moveColumns([columnToMove], toIndex);\n }\n return true; // Let PlElementList handle the visual update\n }\"\n :on-toggle=\"(item) => {\n if (!gridApi.isDestroyed()) {\n gridApi.setColumnsVisible([item.column], !item.column.isVisible());\n }\n }\"\n :is-toggled=\"(item) => !item.column.isVisible()\"\n :is-toggable=\"(item) => item.id !== PlAgDataTableRowNumberColId\"\n :is-pinned=\"(item) => !!item.column.getColDef().lockPosition\"\n :is-pinnable=\"() => false\"\n :disable-dragging=\"query.length > 0\"\n disable-removing\n >\n <template #item-title=\"{ item }\">\n <span>\n <span\n v-for=\"(segment, i) of segments.get(item.label)\"\n :key=\"i\"\n :class=\"{ [$style.match]: segment.match }\"\n >{{ segment.value }}</span>\n </span>\n </template>\n </PlElementList>\n </PlSlideModal>\n </div>\n</template>\n\n<style module>\n.match {\n background-color: var(--color-active-select);\n border-radius: 2px;\n}\n</style>\n"],"names":["props","__props","gridApi","toRefs","columns","ref","watch","event","items","computed","col","query","slideModal","teleportTarget","usePlBlockPageTitleTeleportTarget","filteredItems","segments","useFilteredItems","item"],"mappings":";;;;;;;;;;;;;;;;AAOA,UAAMA,IAAQC,GAcR,EAAE,KAAKC,MAAYC,EAAOH,CAAK,GAE/BI,IAAUC,EAAc,EAAE;AAChC,IAAAC;AAAA,MACE,MAAMJ,EAAQ;AAAA,MACd,CAACA,MAAY;AACPA,QAAAA,EAAQ,kBAEZA,EAAQ,iBAAiB,2BAA2B,CAACK,MAAwC;AACnF,UAAAH,EAAA,QAAQG,EAAM,IAAI,kBAAkB;AAAA,QAAA,CAC7C,GAEOH,EAAA,QAAQF,EAAQ,kBAAkB,GACtCE,EAAQ,MAAM,SAAS,KACzBF,EAAQ,YAAYE,EAAQ,OAAO,CAAC;AAAA,MAExC;AAAA,MACA,EAAE,WAAW,GAAK;AAAA,IACpB;AAEM,UAAAI,IAAQC,EAAS,MACdL,EAAQ,MAAM,IAAI,CAACM,OAAS;AAAA,MACjC,QAAQA;AAAA,MACR,IAAIA,EAAI,MAAM;AAAA,MACd,OAAOA,EAAI,YAAY;AAAA,IAAA,EACvB,CACH,GAEKC,IAAQN,EAAI,EAAE,GAEdO,IAAaP,EAAI,EAAK,GACtBQ,IAAiBC,EAAkC,uBAAuB,GAE1E,EAAE,eAAAC,GAAe,UAAAC,EAAS,IAAIC,EAAiB,OAAO;AAAA,MAC1D,OAAOT,EAAM;AAAA,MACb,OAAOG,EAAM;AAAA,MACb,YAAY,CAACO,MAAS,CAACA,EAAK,KAAK;AAAA,IAAA,EACjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode("._match_pckgk_2{background-color:var(--color-active-select);border-radius:2px}")),document.head.appendChild(e)}}catch(c){console.error("vite-plugin-css-injected-by-js",c)}})();
|
|
2
|
+
const t = "_match_pckgk_2", c = {
|
|
3
|
+
match: t
|
|
4
|
+
};
|
|
5
|
+
export {
|
|
6
|
+
c as default,
|
|
7
|
+
t as match
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=PlAgGridColumnManager.vue3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlAgGridColumnManager.vue3.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { MaybeRefOrGetter } from 'vue';
|
|
2
|
+
export declare function useFilteredItems<T>(props: MaybeRefOrGetter<{
|
|
3
|
+
items: T[];
|
|
4
|
+
query: string;
|
|
5
|
+
getStrings: (item: T) => Iterable<string>;
|
|
6
|
+
}>): {
|
|
7
|
+
filteredItems: import('vue').ComputedRef<T[]>;
|
|
8
|
+
segments: import('vue').ComputedRef<Map<string, StringSegment[]>>;
|
|
9
|
+
};
|
|
10
|
+
type StringSegment = {
|
|
11
|
+
value: string;
|
|
12
|
+
match: boolean;
|
|
13
|
+
};
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=useFilteredItems.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFilteredItems.d.ts","sourceRoot":"","sources":["../../../src/components/PlAgGridColumnManager/useFilteredItems.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,gBAAgB,EAAW,MAAM,KAAK,CAAC;AAE/D,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,KAAK,EAAE,gBAAgB,CAAC;IACtB,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC3C,CAAC;;;EA0BH;AA+BD,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { computed as m, toValue as g } from "vue";
|
|
2
|
+
function d(t) {
|
|
3
|
+
const o = m(() => {
|
|
4
|
+
const { items: f, query: u, getStrings: r } = g(t), s = [], e = /* @__PURE__ */ new Map();
|
|
5
|
+
for (const l of f) {
|
|
6
|
+
let n = !1;
|
|
7
|
+
for (const c of r(l)) {
|
|
8
|
+
let i = e.get(c);
|
|
9
|
+
i || (i = p(c, u), e.set(c, i)), !n && (!u || i.some(({ match: a }) => a)) && (s.push(l), n = !0);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return { filteredItems: s, segments: e };
|
|
13
|
+
});
|
|
14
|
+
return {
|
|
15
|
+
filteredItems: m(() => o.value.filteredItems),
|
|
16
|
+
segments: m(() => o.value.segments)
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
function p(t, o) {
|
|
20
|
+
if (!o) return [{ value: t, match: !1 }];
|
|
21
|
+
const f = t.toLowerCase(), u = o.toLowerCase(), r = [];
|
|
22
|
+
let s = 0;
|
|
23
|
+
for (; ; ) {
|
|
24
|
+
const e = f.indexOf(u, s), l = e + o.length;
|
|
25
|
+
if (e < 0) break;
|
|
26
|
+
s !== e && r.push({ value: t.slice(s, e), match: !1 });
|
|
27
|
+
const n = r.at(-1);
|
|
28
|
+
n != null && n.match ? n.value += t.slice(e, l) : r.push({ value: t.slice(e, l), match: !0 }), s = l;
|
|
29
|
+
}
|
|
30
|
+
return s < t.length && r.push({ value: t.slice(s), match: !1 }), r;
|
|
31
|
+
}
|
|
32
|
+
export {
|
|
33
|
+
d as useFilteredItems
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=useFilteredItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFilteredItems.js","sources":["../../../src/components/PlAgGridColumnManager/useFilteredItems.ts"],"sourcesContent":["import { computed, type MaybeRefOrGetter, toValue } from 'vue';\n\nexport function useFilteredItems<T>(\n props: MaybeRefOrGetter<{\n items: T[];\n query: string;\n getStrings: (item: T) => Iterable<string>;\n }>,\n) {\n const result = computed(() => {\n const { items, query, getStrings } = toValue(props);\n const filteredItems: T[] = [];\n const segments = new Map<string, StringSegment[]>();\n for (const item of items) {\n let kept = false;\n for (const string of getStrings(item)) {\n let stringSegments = segments.get(string);\n if (!stringSegments) {\n stringSegments = matchSubstrings(string, query);\n segments.set(string, stringSegments);\n }\n if (!kept && (!query || stringSegments.some(({ match }) => match))) {\n filteredItems.push(item);\n kept = true;\n }\n }\n }\n return { filteredItems, segments };\n });\n return {\n filteredItems: computed(() => result.value.filteredItems),\n segments: computed(() => result.value.segments),\n };\n}\n\n// Very naïve implementation of substring matching, doesn't handle Unicode well\n// Maybe one day we'll have nice things: https://github.com/tc39/ecma402/issues/506\nfunction matchSubstrings(haystack: string, needle: string): StringSegment[] {\n if (!needle) return [{ value: haystack, match: false }];\n const haystackLower = haystack.toLowerCase();\n const needleLower = needle.toLowerCase();\n const result: StringSegment[] = [];\n let prevEnd = 0;\n while (true) {\n const start = haystackLower.indexOf(needleLower, prevEnd);\n const end = start + needle.length;\n if (start < 0) break;\n if (prevEnd !== start) {\n result.push({ value: haystack.slice(prevEnd, start), match: false });\n }\n const prevSegment = result.at(-1);\n if (prevSegment?.match) {\n prevSegment.value += haystack.slice(start, end);\n } else {\n result.push({ value: haystack.slice(start, end), match: true });\n }\n prevEnd = end;\n }\n if (prevEnd < haystack.length) {\n result.push({ value: haystack.slice(prevEnd), match: false });\n }\n return result;\n}\n\ntype StringSegment = {\n value: string;\n match: boolean;\n};\n"],"names":["useFilteredItems","props","result","computed","items","query","getStrings","toValue","filteredItems","segments","item","kept","string","stringSegments","matchSubstrings","match","haystack","needle","haystackLower","needleLower","prevEnd","start","end","prevSegment"],"mappings":";AAEO,SAASA,EACdC,GAKA;AACM,QAAAC,IAASC,EAAS,MAAM;AAC5B,UAAM,EAAE,OAAAC,GAAO,OAAAC,GAAO,YAAAC,EAAW,IAAIC,EAAQN,CAAK,GAC5CO,IAAqB,CAAC,GACtBC,wBAAe,IAA6B;AAClD,eAAWC,KAAQN,GAAO;AACxB,UAAIO,IAAO;AACA,iBAAAC,KAAUN,EAAWI,CAAI,GAAG;AACjC,YAAAG,IAAiBJ,EAAS,IAAIG,CAAM;AACxC,QAAKC,MACcA,IAAAC,EAAgBF,GAAQP,CAAK,GACrCI,EAAA,IAAIG,GAAQC,CAAc,IAEjC,CAACF,MAAS,CAACN,KAASQ,EAAe,KAAK,CAAC,EAAE,OAAAE,EAAA,MAAYA,CAAK,OAC9DP,EAAc,KAAKE,CAAI,GAChBC,IAAA;AAAA,MACT;AAAA,IACF;AAEK,WAAA,EAAE,eAAAH,GAAe,UAAAC,EAAS;AAAA,EAAA,CAClC;AACM,SAAA;AAAA,IACL,eAAeN,EAAS,MAAMD,EAAO,MAAM,aAAa;AAAA,IACxD,UAAUC,EAAS,MAAMD,EAAO,MAAM,QAAQ;AAAA,EAChD;AACF;AAIA,SAASY,EAAgBE,GAAkBC,GAAiC;AACtE,MAAA,CAACA,EAAe,QAAA,CAAC,EAAE,OAAOD,GAAU,OAAO,IAAO;AAChD,QAAAE,IAAgBF,EAAS,YAAY,GACrCG,IAAcF,EAAO,YAAY,GACjCf,IAA0B,CAAC;AACjC,MAAIkB,IAAU;AACd,aAAa;AACX,UAAMC,IAAQH,EAAc,QAAQC,GAAaC,CAAO,GAClDE,IAAMD,IAAQJ,EAAO;AAC3B,QAAII,IAAQ,EAAG;AACf,IAAID,MAAYC,KACPnB,EAAA,KAAK,EAAE,OAAOc,EAAS,MAAMI,GAASC,CAAK,GAAG,OAAO,IAAO;AAE/D,UAAAE,IAAcrB,EAAO,GAAG,EAAE;AAChC,IAAIqB,KAAA,QAAAA,EAAa,QACfA,EAAY,SAASP,EAAS,MAAMK,GAAOC,CAAG,IAEvCpB,EAAA,KAAK,EAAE,OAAOc,EAAS,MAAMK,GAAOC,CAAG,GAAG,OAAO,IAAM,GAEtDF,IAAAE;AAAA,EAAA;AAER,SAAAF,IAAUJ,EAAS,UACdd,EAAA,KAAK,EAAE,OAAOc,EAAS,MAAMI,CAAO,GAAG,OAAO,IAAO,GAEvDlB;AACT;"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { defineComponent as g, mergeModels as O, useModel as D, computed as c, watch as _, resolveComponent as h, createElementBlock as v, createCommentVNode as V, openBlock as u, normalizeClass as B, Fragment as i, renderList as S, createBlock as p, unref as s, withCtx as j, createTextVNode as w, toDisplayString as U } from "vue";
|
|
2
|
-
import { isNil as
|
|
2
|
+
import { isNil as R } from "../../../lib/util/helpers/dist/index.js";
|
|
3
3
|
import "../../../lib/ui/uikit/dist/index.js";
|
|
4
|
-
import { getFilterUiMetadata as
|
|
4
|
+
import { getFilterUiMetadata as x, getFilterUiTypeOptions as z } from "../../../sdk/model/dist/index.js";
|
|
5
5
|
import k from "../../../lib/ui/uikit/dist/components/PlDropdown/PlDropdown.vue.js";
|
|
6
|
-
import
|
|
6
|
+
import E from "../../../lib/ui/uikit/dist/components/PlTextField/PlTextField.vue.js";
|
|
7
7
|
import T from "../../../lib/ui/uikit/dist/components/PlNumberField/PlNumberField.vue.js";
|
|
8
|
-
import
|
|
9
|
-
const
|
|
8
|
+
import I from "../../../lib/ui/uikit/dist/components/PlCheckbox/PlCheckbox.vue.js";
|
|
9
|
+
const L = { key: 7 }, K = /* @__PURE__ */ g({
|
|
10
10
|
__name: "DynamicForm",
|
|
11
11
|
props: /* @__PURE__ */ O({
|
|
12
12
|
columns: {},
|
|
@@ -25,8 +25,8 @@ const I = { key: 7 }, J = /* @__PURE__ */ g({
|
|
|
25
25
|
}), f = c(() => {
|
|
26
26
|
const o = t.value;
|
|
27
27
|
if (o.type && typeof o.type == "string")
|
|
28
|
-
return
|
|
29
|
-
}), M = c(() =>
|
|
28
|
+
return x(o.type);
|
|
29
|
+
}), M = c(() => z(b.value)), F = c(() => d.columns.map((o) => ({ label: o.label, value: o.id }))), C = c(() => {
|
|
30
30
|
const o = f.value, n = b.value;
|
|
31
31
|
return o && n ? d.columns.filter((r) => o.supportedFor(n, r.obj)).map((r) => ({
|
|
32
32
|
label: r.label,
|
|
@@ -41,7 +41,7 @@ const I = { key: 7 }, J = /* @__PURE__ */ g({
|
|
|
41
41
|
for (const [n, r] of Object.entries(o))
|
|
42
42
|
if (t.value[n] === void 0) {
|
|
43
43
|
const l = r.defaultValue();
|
|
44
|
-
|
|
44
|
+
R(l) || (t.value[n] = l);
|
|
45
45
|
}
|
|
46
46
|
},
|
|
47
47
|
{ immediate: !0, deep: !0 }
|
|
@@ -66,7 +66,7 @@ const I = { key: 7 }, J = /* @__PURE__ */ g({
|
|
|
66
66
|
label: l.label ?? e,
|
|
67
67
|
options: M.value,
|
|
68
68
|
"onUpdate:modelValue": (a) => m(e, a)
|
|
69
|
-
}, null, 8, ["model-value", "label", "options", "onUpdate:modelValue"])) : l.fieldType === "string" ? (u(), p(s(
|
|
69
|
+
}, null, 8, ["model-value", "label", "options", "onUpdate:modelValue"])) : l.fieldType === "string" ? (u(), p(s(E), {
|
|
70
70
|
key: 2,
|
|
71
71
|
"model-value": t.value[e],
|
|
72
72
|
label: l.label ?? e,
|
|
@@ -88,7 +88,7 @@ const I = { key: 7 }, J = /* @__PURE__ */ g({
|
|
|
88
88
|
label: l.label ?? e,
|
|
89
89
|
clearable: !0,
|
|
90
90
|
"onUpdate:modelValue": (a) => m(e, a)
|
|
91
|
-
}, null, 8, ["model-value", "label", "onUpdate:modelValue"])) : l.fieldType === "boolean" || l.fieldType === "boolean?" ? (u(), p(s(
|
|
91
|
+
}, null, 8, ["model-value", "label", "onUpdate:modelValue"])) : l.fieldType === "boolean" || l.fieldType === "boolean?" ? (u(), p(s(I), {
|
|
92
92
|
key: 6,
|
|
93
93
|
"model-value": !!t.value[e],
|
|
94
94
|
label: l.label ?? e,
|
|
@@ -98,13 +98,13 @@ const I = { key: 7 }, J = /* @__PURE__ */ g({
|
|
|
98
98
|
w(U(l.label ?? e), 1)
|
|
99
99
|
]),
|
|
100
100
|
_: 2
|
|
101
|
-
}, 1032, ["model-value", "label", "onUpdate:modelValue"])) : (u(), v("pre",
|
|
101
|
+
}, 1032, ["model-value", "label", "onUpdate:modelValue"])) : (u(), v("pre", L, "TODO:" + U(l.fieldType), 1))
|
|
102
102
|
], 64))), 128))
|
|
103
103
|
], 2)) : V("", !0);
|
|
104
104
|
};
|
|
105
105
|
}
|
|
106
106
|
});
|
|
107
107
|
export {
|
|
108
|
-
|
|
108
|
+
K as default
|
|
109
109
|
};
|
|
110
110
|
//# sourceMappingURL=DynamicForm.vue2.js.map
|
|
@@ -8,7 +8,7 @@ import D from "../../../lib/ui/uikit/dist/components/PlSidebar/PlSidebarItem.vue
|
|
|
8
8
|
import V from "../../../lib/ui/uikit/dist/components/PlBtnSecondary/PlBtnSecondary.vue.js";
|
|
9
9
|
import j from "../../../lib/ui/uikit/dist/components/PlElementList/PlElementList.vue.js";
|
|
10
10
|
import q from "../../../lib/ui/uikit/dist/components/PlEditableTitle/PlEditableTitle.vue.js";
|
|
11
|
-
const I = { key: 1 },
|
|
11
|
+
const I = { key: 1 }, O = /* @__PURE__ */ E({
|
|
12
12
|
__name: "FilterSidebar",
|
|
13
13
|
props: /* @__PURE__ */ S({
|
|
14
14
|
columns: {},
|
|
@@ -119,6 +119,6 @@ const I = { key: 1 }, K = /* @__PURE__ */ E({
|
|
|
119
119
|
}
|
|
120
120
|
});
|
|
121
121
|
export {
|
|
122
|
-
|
|
122
|
+
O as default
|
|
123
123
|
};
|
|
124
124
|
//# sourceMappingURL=FilterSidebar.vue2.js.map
|
package/dist/components/PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlAppErrorNotificationAlert.vue.d.ts","sourceRoot":"","sources":["../../../src/components/PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PlAppErrorNotificationAlert.vue.d.ts","sourceRoot":"","sources":["../../../src/components/PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue"],"names":[],"mappings":"AA4DA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,wCAAwC,CAAC;AAIhD,MAAM,MAAM,WAAW,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAElD,KAAK,WAAW,GAAG;IAAE,MAAM,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAA;CAAE,CAAC;;AA4J9D,wBAOG"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
(function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode(".pl-app-notification-alert{position:fixed;bottom:12px;right:12px;width:256px;height:auto;z-index:87}.pl-app-notification-alert__content{display:flex;flex-direction:column;gap:12px;max-height:100%}.pl-app-notification-alert__item{position:relative}.pl-app-notification-alert__title{color:var(--txt-01);font-size:14px;font-style:normal;font-weight:600;line-height:20px;margin-bottom:6px}")),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
|
|
2
|
-
import { defineComponent as x, ref as c, computed as
|
|
2
|
+
import { defineComponent as x, ref as c, computed as w, watch as y, createElementBlock as i, openBlock as p, createVNode as t, unref as r, withCtx as l, createElementVNode as v, Fragment as E, renderList as k, toDisplayString as C, createTextVNode as u } from "vue";
|
|
3
3
|
|
|
4
4
|
import "../../lib/ui/uikit/dist/index.js";
|
|
5
5
|
import b from "../../lib/ui/uikit/dist/components/PlDialogModal/PlDialogModal.vue.js";
|
|
@@ -13,20 +13,20 @@ const B = { class: "pl-app-notification-alert" }, M = { class: "pl-app-notificat
|
|
|
13
13
|
errors: {}
|
|
14
14
|
},
|
|
15
15
|
setup(_) {
|
|
16
|
-
const d = _, s = c(!1),
|
|
16
|
+
const d = _, s = c(!1), n = c(!0), g = w(() => Object.entries(d.errors).filter((a) => !!a[1]));
|
|
17
17
|
function V() {
|
|
18
18
|
s.value = !0;
|
|
19
19
|
}
|
|
20
|
-
return
|
|
20
|
+
return y(
|
|
21
21
|
() => d.errors,
|
|
22
22
|
(a) => {
|
|
23
|
-
|
|
23
|
+
n.value = Object.values(a).some((e) => !!e);
|
|
24
24
|
},
|
|
25
25
|
{ immediate: !0, deep: !0 }
|
|
26
|
-
), (a, e) => (p(),
|
|
27
|
-
|
|
26
|
+
), (a, e) => (p(), i("div", B, [
|
|
27
|
+
t(r(b), {
|
|
28
28
|
modelValue: s.value,
|
|
29
|
-
"onUpdate:modelValue": e[0] || (e[0] = (
|
|
29
|
+
"onUpdate:modelValue": e[0] || (e[0] = (o) => s.value = o),
|
|
30
30
|
width: "720px",
|
|
31
31
|
style: { "max-height": "100vh" }
|
|
32
32
|
}, {
|
|
@@ -35,31 +35,32 @@ const B = { class: "pl-app-notification-alert" }, M = { class: "pl-app-notificat
|
|
|
35
35
|
])),
|
|
36
36
|
default: l(() => [
|
|
37
37
|
v("div", M, [
|
|
38
|
-
(p(!0),
|
|
38
|
+
(p(!0), i(E, null, k(g.value, (o) => {
|
|
39
39
|
var m, f;
|
|
40
|
-
return p(),
|
|
41
|
-
key:
|
|
40
|
+
return p(), i("div", {
|
|
41
|
+
key: o[0],
|
|
42
42
|
class: "pl-app-notification-alert__item"
|
|
43
43
|
}, [
|
|
44
|
-
v("div", S, "Block output: " + C(
|
|
45
|
-
|
|
46
|
-
value: (m =
|
|
47
|
-
valueToCopy: "fullMessage" in (
|
|
48
|
-
|
|
44
|
+
v("div", S, "Block output: " + C(o[0]), 1),
|
|
45
|
+
t(r(A), {
|
|
46
|
+
value: (m = o[1]) == null ? void 0 : m.message,
|
|
47
|
+
valueToCopy: "fullMessage" in (o[1] ?? {}) ? o[1].fullMessage : (f = o[1]) == null ? void 0 : f.message,
|
|
48
|
+
"download-filename": `output-${o[0]}-error.txt`
|
|
49
|
+
}, null, 8, ["value", "valueToCopy", "download-filename"])
|
|
49
50
|
]);
|
|
50
51
|
}), 128))
|
|
51
52
|
])
|
|
52
53
|
]),
|
|
53
54
|
_: 1
|
|
54
55
|
}, 8, ["modelValue"]),
|
|
55
|
-
|
|
56
|
-
modelValue:
|
|
57
|
-
"onUpdate:modelValue": e[1] || (e[1] = (
|
|
56
|
+
t(r(N), {
|
|
57
|
+
modelValue: n.value,
|
|
58
|
+
"onUpdate:modelValue": e[1] || (e[1] = (o) => n.value = o),
|
|
58
59
|
type: "error",
|
|
59
60
|
closable: ""
|
|
60
61
|
}, {
|
|
61
62
|
actions: l(() => [
|
|
62
|
-
|
|
63
|
+
t(r(O), {
|
|
63
64
|
icon: "arrow-right",
|
|
64
65
|
onClick: V
|
|
65
66
|
}, {
|
|
@@ -68,7 +69,7 @@ const B = { class: "pl-app-notification-alert" }, M = { class: "pl-app-notificat
|
|
|
68
69
|
])),
|
|
69
70
|
_: 1
|
|
70
71
|
}),
|
|
71
|
-
|
|
72
|
+
t(r(h))
|
|
72
73
|
]),
|
|
73
74
|
default: l(() => [
|
|
74
75
|
e[4] || (e[4] = u(" Some outputs have errors. "))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlAppErrorNotificationAlert.vue.js","sources":["../../../src/components/PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { BlockOutputsBase } from '@platforma-sdk/model';\nimport type { OutputErrors } from '../../types';\n// @TODO module\nimport './pl-app-error-notification-alert.scss';\nimport { PlBtnPrimary, PlDialogModal, PlNotificationAlert, PlSpacer, PlLogView } from '@milaboratories/uikit';\nimport { computed, ref, watch } from 'vue';\n\nexport type FullMessage = { fullMessage: string };\n\nconst props = defineProps<{ errors: OutputErrors<BlockOutputsBase> }>();\n\nconst isModalOpen = ref(false);\n\nconst isAlertOpen = ref(true);\n\nconst existingErrors = computed(() => Object.entries(props.errors).filter((item) => !!item[1]));\n\nfunction showErrors() {\n isModalOpen.value = true;\n}\n\n// @TODO (temp)\nwatch(\n () => props.errors,\n (errors) => {\n isAlertOpen.value = Object.values(errors).some((v) => !!v);\n },\n { immediate: true, deep: true },\n);\n</script>\n<template>\n <div class=\"pl-app-notification-alert\">\n <PlDialogModal v-model=\"isModalOpen\" width=\"720px\" style=\"max-height: 100vh\">\n <template #title> Errors </template>\n <div class=\"pl-app-notification-alert__content\">\n <template v-for=\"item in existingErrors\" :key=\"item[0]\">\n <div class=\"pl-app-notification-alert__item\">\n <div class=\"pl-app-notification-alert__title\">Block output: {{ item[0] }}</div>\n <PlLogView\n :value=\"item[1]?.message\"\n :valueToCopy=\"'fullMessage' in (item[1] ?? {}) ? (item[1] as unknown as FullMessage).fullMessage : item[1]?.message\"\n />\n </div>\n </template>\n </div>\n </PlDialogModal>\n\n <PlNotificationAlert v-model=\"isAlertOpen\" type=\"error\" closable>\n Some outputs have errors.\n <template #actions>\n <PlBtnPrimary icon=\"arrow-right\" @click=\"showErrors\">See errors</PlBtnPrimary>\n <PlSpacer />\n </template>\n </PlNotificationAlert>\n </div>\n</template>\n"],"names":["props","__props","isModalOpen","ref","isAlertOpen","existingErrors","computed","item","showErrors","watch","errors","v"],"mappings":";;;;;;;;;;;;;;AAUA,UAAMA,IAAQC,GAERC,IAAcC,EAAI,EAAK,GAEvBC,IAAcD,EAAI,EAAI,GAEtBE,IAAiBC,EAAS,MAAM,OAAO,QAAQN,EAAM,MAAM,EAAE,OAAO,CAACO,MAAS,CAAC,CAACA,EAAK,CAAC,CAAC,CAAC;AAE9F,aAASC,IAAa;AACpB,MAAAN,EAAY,QAAQ;AAAA,IAAA;AAItB,WAAAO;AAAA,MACE,MAAMT,EAAM;AAAA,MACZ,CAACU,MAAW;AACE,QAAAN,EAAA,QAAQ,OAAO,OAAOM,CAAM,EAAE,KAAK,CAACC,MAAM,CAAC,CAACA,CAAC;AAAA,MAC3D;AAAA,MACA,EAAE,WAAW,IAAM,MAAM,GAAK;AAAA,IAChC
|
|
1
|
+
{"version":3,"file":"PlAppErrorNotificationAlert.vue.js","sources":["../../../src/components/PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { BlockOutputsBase } from '@platforma-sdk/model';\nimport type { OutputErrors } from '../../types';\n// @TODO module\nimport './pl-app-error-notification-alert.scss';\nimport { PlBtnPrimary, PlDialogModal, PlNotificationAlert, PlSpacer, PlLogView } from '@milaboratories/uikit';\nimport { computed, ref, watch } from 'vue';\n\nexport type FullMessage = { fullMessage: string };\n\nconst props = defineProps<{ errors: OutputErrors<BlockOutputsBase> }>();\n\nconst isModalOpen = ref(false);\n\nconst isAlertOpen = ref(true);\n\nconst existingErrors = computed(() => Object.entries(props.errors).filter((item) => !!item[1]));\n\nfunction showErrors() {\n isModalOpen.value = true;\n}\n\n// @TODO (temp)\nwatch(\n () => props.errors,\n (errors) => {\n isAlertOpen.value = Object.values(errors).some((v) => !!v);\n },\n { immediate: true, deep: true },\n);\n</script>\n<template>\n <div class=\"pl-app-notification-alert\">\n <PlDialogModal v-model=\"isModalOpen\" width=\"720px\" style=\"max-height: 100vh\">\n <template #title> Errors </template>\n <div class=\"pl-app-notification-alert__content\">\n <template v-for=\"item in existingErrors\" :key=\"item[0]\">\n <div class=\"pl-app-notification-alert__item\">\n <div class=\"pl-app-notification-alert__title\">Block output: {{ item[0] }}</div>\n <PlLogView\n :value=\"item[1]?.message\"\n :valueToCopy=\"'fullMessage' in (item[1] ?? {}) ? (item[1] as unknown as FullMessage).fullMessage : item[1]?.message\"\n :download-filename=\"`output-${item[0]}-error.txt`\"\n />\n </div>\n </template>\n </div>\n </PlDialogModal>\n\n <PlNotificationAlert v-model=\"isAlertOpen\" type=\"error\" closable>\n Some outputs have errors.\n <template #actions>\n <PlBtnPrimary icon=\"arrow-right\" @click=\"showErrors\">See errors</PlBtnPrimary>\n <PlSpacer />\n </template>\n </PlNotificationAlert>\n </div>\n</template>\n"],"names":["props","__props","isModalOpen","ref","isAlertOpen","existingErrors","computed","item","showErrors","watch","errors","v"],"mappings":";;;;;;;;;;;;;;AAUA,UAAMA,IAAQC,GAERC,IAAcC,EAAI,EAAK,GAEvBC,IAAcD,EAAI,EAAI,GAEtBE,IAAiBC,EAAS,MAAM,OAAO,QAAQN,EAAM,MAAM,EAAE,OAAO,CAACO,MAAS,CAAC,CAACA,EAAK,CAAC,CAAC,CAAC;AAE9F,aAASC,IAAa;AACpB,MAAAN,EAAY,QAAQ;AAAA,IAAA;AAItB,WAAAO;AAAA,MACE,MAAMT,EAAM;AAAA,MACZ,CAACU,MAAW;AACE,QAAAN,EAAA,QAAQ,OAAO,OAAOM,CAAM,EAAE,KAAK,CAACC,MAAM,CAAC,CAACA,CAAC;AAAA,MAC3D;AAAA,MACA,EAAE,WAAW,IAAM,MAAM,GAAK;AAAA,IAChC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../src/components/PlMultiSequenceAlignment/data.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAaL,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,yCAAyC,EAC9C,KAAK,gCAAgC,EACrC,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,cAAc,
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../src/components/PlMultiSequenceAlignment/data.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAaL,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,yCAAyC,EAC9C,KAAK,gCAAgC,EACrC,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,cAAc,EAMpB,MAAM,sBAAsB,CAAC;AAU9B,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAI9D,eAAO,MAAM,aAAa,OAAO,CAAC;AAElC,eAAO,MAAM,yBAAyB;YAoB5B,YAAY,GAAG,SAAS;6BACP,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO;;;;;CAnB/D,CAAC;AAEF,eAAO,MAAM,sBAAsB;YAsCzB,YAAY,GAAG,SAAS;uBACb,SAAS,EAAE,GAAG,SAAS;;;;;CArC3C,CAAC;AAEF,eAAO,MAAM,uBAAuB;YAyG1B,YAAY,GAAG,SAAS;uBACb,SAAS,EAAE,GAAG,SAAS;;;;;CAxG3C,CAAC;AAEF,eAAO,MAAM,wBAAwB;YA0I3B,YAAY,GAAG,SAAS;uBACb,SAAS,EAAE,GAAG,SAAS;oBAC1B,cAAc,EAAE,GAAG,SAAS;eACjC,gBAAgB,GAAG,SAAS;iBAC1B,yCAAyC;qBACrC,gCAAgC,CAAC,iBAAiB,CAAC;;;;;CA7IrE,CAAC;AAwXF,KAAK,qBAAqB,GAAG;IAC3B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,cAAc,CAAC,EAAE;QACf,IAAI,EAAE,IAAI,CAAC;QACX,MAAM,EAAE,eAAe,CAAC;KACzB,CAAC;IACF,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,KAAK,mBAAmB,CAAC,CAAC,IAAI;IAC5B,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;IACnC,QAAQ,EAAE,CAAC,EAAE,CAAC;CACf,CAAC"}
|