@platforma-sdk/ui-vue 1.40.5 → 1.41.0
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 +52 -25
- package/.turbo/turbo-type-check.log +1 -1
- package/CHANGELOG.md +21 -0
- package/dist/AgGridVue/useAgGridOptions.js +54 -53
- package/dist/AgGridVue/useAgGridOptions.js.map +1 -1
- package/dist/components/BlockLayout.vue.d.ts.map +1 -1
- package/dist/components/BlockLayout.vue.js +7 -50
- package/dist/components/BlockLayout.vue.js.map +1 -1
- package/dist/components/BlockLayout.vue2.js +53 -2
- package/dist/components/BlockLayout.vue2.js.map +1 -1
- package/dist/components/BlockLayout.vue3.js +9 -0
- package/dist/components/BlockLayout.vue3.js.map +1 -0
- package/dist/components/NotFound.vue.d.ts.map +1 -1
- package/dist/components/NotFound.vue.js +12 -14
- package/dist/components/NotFound.vue.js.map +1 -1
- package/dist/components/PlAgDataTable/PlAgDataTableV2.vue.d.ts +1 -4
- package/dist/components/PlAgDataTable/PlAgDataTableV2.vue.d.ts.map +1 -1
- package/dist/components/PlAgDataTable/PlAgDataTableV2.vue2.js +155 -172
- package/dist/components/PlAgDataTable/PlAgDataTableV2.vue2.js.map +1 -1
- package/dist/components/PlAgDataTable/PlAgRowCount.vue.js +7 -6
- package/dist/components/PlAgDataTable/PlAgRowCount.vue.js.map +1 -1
- package/dist/components/PlAgDataTable/sources/table-source-v2.d.ts +2 -2
- package/dist/components/PlAgDataTable/sources/table-source-v2.d.ts.map +1 -1
- package/dist/components/PlAgDataTable/sources/table-source-v2.js +110 -105
- package/dist/components/PlAgDataTable/sources/table-source-v2.js.map +1 -1
- package/dist/components/PlAgDataTable/types.d.ts +27 -43
- package/dist/components/PlAgDataTable/types.d.ts.map +1 -1
- package/dist/components/PlAgDataTable/types.js +32 -43
- package/dist/components/PlAgDataTable/types.js.map +1 -1
- package/dist/components/PlAgRowNumCheckbox/PlAgRowNumCheckbox.vue.js +10 -9
- package/dist/components/PlAgRowNumCheckbox/PlAgRowNumCheckbox.vue.js.map +1 -1
- package/dist/components/PlAgRowNumHeader.vue.js +3 -2
- package/dist/components/PlAgRowNumHeader.vue.js.map +1 -1
- package/dist/components/PlAnnotations/components/DynamicForm.vue2.js +10 -10
- package/dist/components/PlAnnotations/components/PlAnnotationCreateDialog.vue.d.ts +1 -1
- package/dist/components/PlAnnotations/components/PlAnnotationCreateDialog.vue.d.ts.map +1 -1
- package/dist/components/PlMultiSequenceAlignment/data.js +51 -51
- package/dist/composition/fileContent.js +16 -16
- package/dist/defineApp.d.ts +19 -6
- package/dist/defineApp.d.ts.map +1 -1
- package/dist/defineApp.js +50 -30
- package/dist/defineApp.js.map +1 -1
- package/dist/internal/UpdateSerializer.d.ts +26 -0
- package/dist/internal/UpdateSerializer.d.ts.map +1 -0
- package/dist/internal/UpdateSerializer.js +65 -0
- package/dist/internal/UpdateSerializer.js.map +1 -0
- package/dist/internal/createAppModel.d.ts +1 -1
- package/dist/internal/createAppModel.d.ts.map +1 -1
- package/dist/internal/createAppModel.js +43 -51
- package/dist/internal/createAppModel.js.map +1 -1
- package/dist/internal/{createApp.d.ts → createAppV1.d.ts} +4 -4
- package/dist/internal/createAppV1.d.ts.map +1 -0
- package/dist/internal/{createApp.js → createAppV1.js} +17 -18
- package/dist/internal/createAppV1.js.map +1 -0
- package/dist/internal/createAppV2.d.ts +56 -0
- package/dist/internal/createAppV2.d.ts.map +1 -0
- package/dist/internal/createAppV2.js +158 -0
- package/dist/internal/createAppV2.js.map +1 -0
- package/dist/internal/test-helpers/BlockMock.d.ts +28 -0
- package/dist/internal/test-helpers/BlockMock.d.ts.map +1 -0
- package/dist/internal/test-helpers/createMockApi.d.ts +4 -0
- package/dist/internal/test-helpers/createMockApi.d.ts.map +1 -0
- package/dist/internal/test-helpers/utils.d.ts +4 -0
- package/dist/internal/test-helpers/utils.d.ts.map +1 -0
- package/dist/{types.static-test.d.ts → internal/v1.static-test.d.ts} +3 -3
- package/dist/internal/v1.static-test.d.ts.map +1 -0
- package/dist/internal/v2.static-test.d.ts +7 -0
- package/dist/internal/v2.static-test.d.ts.map +1 -0
- package/dist/lib/model/common/dist/index.js +214 -199
- package/dist/lib/model/common/dist/index.js.map +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/PlDialogModal/PlDialogModal.vue.js.map +1 -1
- package/dist/lib/ui/uikit/dist/lib/model/common/dist/index.js +7 -7
- package/dist/lib/ui/uikit/dist/sdk/model/dist/index.js +77 -56
- package/dist/lib/ui/uikit/dist/sdk/model/dist/index.js.map +1 -1
- package/dist/lib/util/helpers/dist/index.js +67 -56
- package/dist/lib/util/helpers/dist/index.js.map +1 -1
- package/dist/node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/index.js +29 -0
- package/dist/node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/index.js.map +1 -0
- package/dist/node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/module/core.js +208 -0
- package/dist/node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/module/core.js.map +1 -0
- package/dist/node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/module/duplex.js +95 -0
- package/dist/node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/module/duplex.js.map +1 -0
- package/dist/node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/module/helpers.js +112 -0
- package/dist/node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/module/helpers.js.map +1 -0
- package/dist/sdk/model/dist/index.js +165 -140
- package/dist/sdk/model/dist/index.js.map +1 -1
- package/dist/types.d.ts +2 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +9 -6
- package/src/components/BlockLayout.vue +9 -1
- package/src/components/NotFound.vue +1 -3
- package/src/components/PlAgDataTable/PlAgDataTableV2.vue +6 -31
- package/src/components/PlAgDataTable/sources/table-source-v2.ts +29 -29
- package/src/components/PlAgDataTable/types.ts +42 -70
- package/src/defineApp.ts +134 -36
- package/src/internal/UpdateSerializer.ts +112 -0
- package/src/internal/createAppModel.ts +7 -20
- package/src/internal/{createApp.ts → createAppV1.ts} +10 -6
- package/src/internal/createAppV2.test.ts +158 -0
- package/src/internal/createAppV2.ts +309 -0
- package/src/internal/test-helpers/BlockMock.ts +144 -0
- package/src/internal/test-helpers/createMockApi.ts +92 -0
- package/src/internal/test-helpers/utils.ts +65 -0
- package/src/{types.static-test.ts → internal/v1.static-test.ts} +5 -9
- package/src/internal/v2.static-test.ts +98 -0
- package/src/types.ts +2 -2
- package/dist/internal/createApp.d.ts.map +0 -1
- package/dist/internal/createApp.js.map +0 -1
- package/dist/lib/ui/uikit/dist/components/PlAccordion/ExpandTransition.vue.js.map +0 -1
- package/dist/types.static-test.d.ts.map +0 -1
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
var c = (r) => {
|
|
11
11
|
throw TypeError(r);
|
|
12
12
|
};
|
|
13
|
-
var d = (r,
|
|
14
|
-
var i = (r,
|
|
13
|
+
var d = (r, t, e) => t.has(r) || c("Cannot " + e);
|
|
14
|
+
var i = (r, t, e) => (d(r, t, "read from private field"), e ? e.call(r) : t.get(r)), g = (r, t, e) => t.has(r) ? c("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(r) : t.set(r, e), h = (r, t, e, a) => (d(r, t, "write to private field"), a ? a.call(r, e) : t.set(r, e), e);
|
|
15
15
|
import { shallowRef as C, computed as y, watch as f } from "vue";
|
|
16
16
|
import { AgGridTheme as T } from "../aggrid.js";
|
|
17
17
|
import "../sdk/model/dist/index.js";
|
|
@@ -25,6 +25,7 @@ import x from "../components/PlAgDataTable/PlAgOverlayNoRows.vue.js";
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
|
|
28
|
+
import "../node_modules/.pnpm/fast-json-patch@3.1.1/node_modules/fast-json-patch/index.js";
|
|
28
29
|
|
|
29
30
|
import "../plugins/Monetization/validation.js";
|
|
30
31
|
import { createAgGridColDef as D } from "./createAgGridColDef.js";
|
|
@@ -47,8 +48,8 @@ class R {
|
|
|
47
48
|
constructor() {
|
|
48
49
|
g(this, o, {});
|
|
49
50
|
}
|
|
50
|
-
options(
|
|
51
|
-
return h(this, o, Object.assign({}, i(this, o),
|
|
51
|
+
options(t) {
|
|
52
|
+
return h(this, o, Object.assign({}, i(this, o), t)), this;
|
|
52
53
|
}
|
|
53
54
|
get columnDefs() {
|
|
54
55
|
return i(this, o).columnDefs ?? [];
|
|
@@ -58,80 +59,80 @@ class R {
|
|
|
58
59
|
* @param def - column definition
|
|
59
60
|
* @returns this
|
|
60
61
|
*/
|
|
61
|
-
setDefaultColDef(
|
|
62
|
-
return i(this, o).defaultColDef =
|
|
62
|
+
setDefaultColDef(t) {
|
|
63
|
+
return i(this, o).defaultColDef = t, this;
|
|
63
64
|
}
|
|
64
65
|
/**
|
|
65
66
|
* Show loading overlay
|
|
66
67
|
* @param loading
|
|
67
68
|
* @returns this
|
|
68
69
|
*/
|
|
69
|
-
setLoading(
|
|
70
|
-
return i(this, o).loading =
|
|
70
|
+
setLoading(t) {
|
|
71
|
+
return i(this, o).loading = t, this;
|
|
71
72
|
}
|
|
72
73
|
/**
|
|
73
74
|
* Set loading overlay custom text (default is "Loading")
|
|
74
75
|
* @param loadingText
|
|
75
76
|
* @returns this
|
|
76
77
|
*/
|
|
77
|
-
setLoadingText(
|
|
78
|
-
return i(this, o).loadingText =
|
|
78
|
+
setLoadingText(t) {
|
|
79
|
+
return i(this, o).loadingText = t, this;
|
|
79
80
|
}
|
|
80
81
|
/**
|
|
81
82
|
* Show "not ready overlay
|
|
82
83
|
* @param notReady
|
|
83
84
|
* @returns this
|
|
84
85
|
*/
|
|
85
|
-
setNotReady(
|
|
86
|
-
return i(this, o).notReady =
|
|
86
|
+
setNotReady(t) {
|
|
87
|
+
return i(this, o).notReady = t, this;
|
|
87
88
|
}
|
|
88
89
|
/**
|
|
89
90
|
* Set loading overlay type
|
|
90
91
|
* @param type
|
|
91
92
|
* @returns this
|
|
92
93
|
*/
|
|
93
|
-
setLoadingOverlayType(
|
|
94
|
-
return i(this, o).loadingOverlayType =
|
|
94
|
+
setLoadingOverlayType(t) {
|
|
95
|
+
return i(this, o).loadingOverlayType = t, this;
|
|
95
96
|
}
|
|
96
97
|
/**
|
|
97
98
|
* Set "not ready" text
|
|
98
99
|
* @param notReadyText
|
|
99
100
|
* @returns this
|
|
100
101
|
*/
|
|
101
|
-
setNotReadyText(
|
|
102
|
-
return i(this, o).notReadyText =
|
|
102
|
+
setNotReadyText(t) {
|
|
103
|
+
return i(this, o).notReadyText = t, this;
|
|
103
104
|
}
|
|
104
105
|
/**
|
|
105
106
|
* Set "no rows" text when there are no rows (default is "Empty")
|
|
106
107
|
* @param noRowsText
|
|
107
108
|
* @returns this
|
|
108
109
|
*/
|
|
109
|
-
setNoRowsText(
|
|
110
|
-
return i(this, o).noRowsText =
|
|
110
|
+
setNoRowsText(t) {
|
|
111
|
+
return i(this, o).noRowsText = t, this;
|
|
111
112
|
}
|
|
112
113
|
/**
|
|
113
114
|
* Set row selection options
|
|
114
115
|
* @param rowSelection
|
|
115
116
|
* @returns this
|
|
116
117
|
*/
|
|
117
|
-
setRowSelection(
|
|
118
|
-
return i(this, o).rowSelection =
|
|
118
|
+
setRowSelection(t) {
|
|
119
|
+
return i(this, o).rowSelection = t, this;
|
|
119
120
|
}
|
|
120
121
|
/**
|
|
121
122
|
* Set row data
|
|
122
123
|
* @param rowData
|
|
123
124
|
* @returns this
|
|
124
125
|
*/
|
|
125
|
-
setRowData(
|
|
126
|
-
return i(this, o).rowData =
|
|
126
|
+
setRowData(t) {
|
|
127
|
+
return i(this, o).rowData = t, this;
|
|
127
128
|
}
|
|
128
129
|
/**
|
|
129
130
|
* Set components
|
|
130
131
|
* @param components
|
|
131
132
|
* @returns this
|
|
132
133
|
*/
|
|
133
|
-
setComponents(
|
|
134
|
-
return i(this, o).components =
|
|
134
|
+
setComponents(t) {
|
|
135
|
+
return i(this, o).components = t, this;
|
|
135
136
|
}
|
|
136
137
|
/**
|
|
137
138
|
* Set an option
|
|
@@ -139,24 +140,24 @@ class R {
|
|
|
139
140
|
* @param value - option value
|
|
140
141
|
* @returns this
|
|
141
142
|
*/
|
|
142
|
-
setOption(
|
|
143
|
-
return i(this, o)[
|
|
143
|
+
setOption(t, e) {
|
|
144
|
+
return i(this, o)[t] = e, this;
|
|
144
145
|
}
|
|
145
146
|
/**
|
|
146
147
|
* Add an extended column definition
|
|
147
148
|
* @param def - column definition
|
|
148
149
|
* @returns this
|
|
149
150
|
*/
|
|
150
|
-
column(
|
|
151
|
-
return i(this, o).columnDefs = [...this.columnDefs,
|
|
151
|
+
column(t) {
|
|
152
|
+
return i(this, o).columnDefs = [...this.columnDefs, t], this;
|
|
152
153
|
}
|
|
153
154
|
/**
|
|
154
155
|
* Show row numbers column
|
|
155
156
|
* @param show - show or hide row numbers column
|
|
156
157
|
* @returns this
|
|
157
158
|
*/
|
|
158
|
-
columnRowNumbers(
|
|
159
|
-
return i(this, o).rowNumbersColumn =
|
|
159
|
+
columnRowNumbers(t = !0) {
|
|
160
|
+
return i(this, o).rowNumbersColumn = t, this;
|
|
160
161
|
}
|
|
161
162
|
/**
|
|
162
163
|
* Add a file input column
|
|
@@ -164,45 +165,45 @@ class R {
|
|
|
164
165
|
* @param cb - callback to set params for the file input cell renderer
|
|
165
166
|
* @returns this
|
|
166
167
|
*/
|
|
167
|
-
columnFileInput(
|
|
168
|
+
columnFileInput(t) {
|
|
168
169
|
return this.column(Object.assign({
|
|
169
170
|
cellRenderer: "PlAgCellFile",
|
|
170
171
|
headerComponentParams: { type: "File" },
|
|
171
172
|
cellStyle: { padding: 0 },
|
|
172
|
-
valueSetter: (
|
|
173
|
+
valueSetter: (e) => {
|
|
173
174
|
var a;
|
|
174
|
-
return (a =
|
|
175
|
+
return (a = t.setImportFileHandle) == null || a.call(t, e), !0;
|
|
175
176
|
},
|
|
176
|
-
cellRendererSelector: (
|
|
177
|
+
cellRendererSelector: (e) => {
|
|
177
178
|
var a;
|
|
178
179
|
return {
|
|
179
180
|
component: "PlAgCellFile",
|
|
180
181
|
params: {
|
|
181
|
-
extensions:
|
|
182
|
-
value: (a =
|
|
182
|
+
extensions: t.extensions,
|
|
183
|
+
value: (a = t.resolveImportFileHandle) == null ? void 0 : a.call(t, e),
|
|
183
184
|
resolveProgress: () => {
|
|
184
185
|
var s;
|
|
185
|
-
return (s =
|
|
186
|
+
return (s = t.resolveImportProgress) == null ? void 0 : s.call(t, e);
|
|
186
187
|
}
|
|
187
188
|
}
|
|
188
189
|
};
|
|
189
190
|
}
|
|
190
|
-
},
|
|
191
|
+
}, t));
|
|
191
192
|
}
|
|
192
193
|
build() {
|
|
193
194
|
return i(this, o);
|
|
194
195
|
}
|
|
195
196
|
}
|
|
196
197
|
o = new WeakMap();
|
|
197
|
-
function
|
|
198
|
-
const
|
|
198
|
+
function mt(r) {
|
|
199
|
+
const t = C(), e = y(() => {
|
|
199
200
|
var u;
|
|
200
201
|
const s = {
|
|
201
202
|
theme: T,
|
|
202
203
|
loadingOverlayComponent: w,
|
|
203
204
|
noRowsOverlayComponent: x,
|
|
204
205
|
onGridReady: (m) => {
|
|
205
|
-
|
|
206
|
+
t.value = m.api, v(m.api);
|
|
206
207
|
}
|
|
207
208
|
}, p = (m) => m, l = r({ builder: new R(), column: p }), n = Object.assign({}, s, l instanceof R ? l.build() : l);
|
|
208
209
|
return n.rowNumbersColumn && (n.columnDefs = [O(), ...n.columnDefs ?? []]), n.noRowsText && (n.noRowsOverlayComponentParams = {
|
|
@@ -214,7 +215,7 @@ function le(r) {
|
|
|
214
215
|
PlAgCellStatusTag: A
|
|
215
216
|
}), n;
|
|
216
217
|
}), a = y(() => {
|
|
217
|
-
const s =
|
|
218
|
+
const s = e.value;
|
|
218
219
|
return {
|
|
219
220
|
...s,
|
|
220
221
|
loadingOverlayComponentParams: {
|
|
@@ -224,30 +225,30 @@ function le(r) {
|
|
|
224
225
|
}
|
|
225
226
|
};
|
|
226
227
|
});
|
|
227
|
-
return N(() =>
|
|
228
|
-
|
|
228
|
+
return N(() => e.value.rowNumbersColumn, () => {
|
|
229
|
+
t.value && v(t.value);
|
|
229
230
|
}), f([
|
|
230
|
-
() =>
|
|
231
|
-
() =>
|
|
231
|
+
() => e.value.notReady,
|
|
232
|
+
() => e.value.loading
|
|
232
233
|
], ([s, p]) => {
|
|
233
234
|
var n, u;
|
|
234
235
|
const l = {
|
|
235
236
|
notReady: s,
|
|
236
237
|
// we probably don't need to update the parameters below
|
|
237
|
-
notReadyText:
|
|
238
|
-
overlayType:
|
|
239
|
-
loadingText:
|
|
238
|
+
notReadyText: e.value.notReadyText,
|
|
239
|
+
overlayType: e.value.loadingOverlayType,
|
|
240
|
+
loadingText: e.value.loadingText
|
|
240
241
|
};
|
|
241
|
-
(n =
|
|
242
|
+
(n = t.value) == null || n.updateGridOptions({
|
|
242
243
|
loading: !p,
|
|
243
244
|
loadingOverlayComponentParams: l
|
|
244
|
-
}), (u =
|
|
245
|
+
}), (u = t.value) == null || u.updateGridOptions({
|
|
245
246
|
loading: p,
|
|
246
247
|
loadingOverlayComponentParams: l
|
|
247
248
|
});
|
|
248
|
-
}, { deep: !0, immediate: !0 }), { gridOptions: a, gridApi:
|
|
249
|
+
}, { deep: !0, immediate: !0 }), { gridOptions: a, gridApi: t };
|
|
249
250
|
}
|
|
250
251
|
export {
|
|
251
|
-
|
|
252
|
+
mt as useAgGridOptions
|
|
252
253
|
};
|
|
253
254
|
//# sourceMappingURL=useAgGridOptions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAgGridOptions.js","sources":["../../src/AgGridVue/useAgGridOptions.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport type { ColGroupDef, GridApi, GridOptions, GridReadyEvent, ICellRendererParams, RowSelectionOptions, ValueSetterParams } from 'ag-grid-enterprise';\nimport type { Component } from 'vue';\nimport { computed, shallowRef, watch } from 'vue';\nimport { AgGridTheme } from '../aggrid';\nimport { autoSizeRowNumberColumn, makeRowNumberColDef, PlAgOverlayLoading, type PlAgOverlayLoadingParams } from '../components/PlAgDataTable';\nimport { PlAgOverlayNoRows } from '../components/PlAgDataTable';\nimport { createAgGridColDef, type ColDefExtended } from './createAgGridColDef';\nimport { whenever } from '@vueuse/core';\nimport { PlAgCellFile } from '../components/PlAgCellFile';\nimport { PlAgChartStackedBarCell } from '../components/PlAgChartStackedBarCell';\nimport { PlAgChartHistogramCell } from '../components/PlAgChartHistogramCell';\nimport type { ImportFileHandle } from '@platforma-sdk/model';\nimport type { ImportProgress } from '@platforma-sdk/model';\nimport { PlAgCellStatusTag } from '../components/PlAgCellStatusTag';\ninterface GridOptionsExtended<TData = any> extends Omit<GridOptions<TData>, 'columnDefs' | 'loadingOverlayComponentParams'> {\n /**\n * Array of Column / Column Group definitions.\n */\n columnDefs?: (ColDefExtended<TData> | ColGroupDef<TData>)[] | null;\n /**\n * Show row numbers column\n */\n rowNumbersColumn?: boolean;\n /**\n * Loading overlay text\n */\n loadingText?: string;\n /**\n * Not ready overlay (No datasource). Takes priority over \"loading\"\n */\n notReady?: boolean;\n /**\n * \"No datasource\" by default\n */\n notReadyText?: string;\n /**\n * Use \"transparent\" to make table headers visible below the loading layer (experimental)\n */\n loadingOverlayType?: 'transparent' | undefined;\n /**\n * Override standard 'Empty' text for the \"no rows\" overlay\n */\n noRowsText?: string;\n /**\n * @deprecated Use loading, notReady, loadingText, loadingOverlayType instead\n */\n loadingOverlayComponentParams?: never;\n}\n\n// @TODO (super simple builder for now)\nclass Builder<TData> {\n #options: GridOptionsExtended<TData> = {};\n\n public options(options: GridOptionsExtended<TData>) {\n this.#options = Object.assign({}, this.#options, options);\n return this;\n }\n\n private get columnDefs() {\n return this.#options.columnDefs ?? [];\n }\n\n /**\n * Set default column definition\n * @param def - column definition\n * @returns this\n */\n public setDefaultColDef(def: ColDefExtended<TData>) {\n this.#options.defaultColDef = def;\n return this;\n }\n\n /**\n * Show loading overlay\n * @param loading\n * @returns this\n */\n public setLoading(loading?: boolean) {\n this.#options.loading = loading;\n return this;\n }\n\n /**\n * Set loading overlay custom text (default is \"Loading\")\n * @param loadingText\n * @returns this\n */\n public setLoadingText(loadingText?: string) {\n this.#options.loadingText = loadingText;\n return this;\n }\n\n /**\n * Show \"not ready overlay\n * @param notReady\n * @returns this\n */\n public setNotReady(notReady?: boolean) {\n this.#options.notReady = notReady;\n return this;\n }\n\n /**\n * Set loading overlay type\n * @param type\n * @returns this\n */\n public setLoadingOverlayType(type?: 'transparent') {\n this.#options.loadingOverlayType = type;\n return this;\n }\n\n /**\n * Set \"not ready\" text\n * @param notReadyText\n * @returns this\n */\n public setNotReadyText(notReadyText?: string) {\n this.#options.notReadyText = notReadyText;\n return this;\n }\n\n /**\n * Set \"no rows\" text when there are no rows (default is \"Empty\")\n * @param noRowsText\n * @returns this\n */\n public setNoRowsText(noRowsText?: string) {\n this.#options.noRowsText = noRowsText;\n return this;\n }\n\n /**\n * Set row selection options\n * @param rowSelection\n * @returns this\n */\n public setRowSelection(rowSelection?: RowSelectionOptions) {\n this.#options.rowSelection = rowSelection;\n return this;\n }\n\n /**\n * Set row data\n * @param rowData\n * @returns this\n */\n public setRowData(rowData?: TData[]) {\n this.#options.rowData = rowData;\n return this;\n }\n\n /**\n * Set components\n * @param components\n * @returns this\n */\n public setComponents(components?: Record<string, Component>) {\n this.#options.components = components;\n return this;\n }\n\n /**\n * Set an option\n * @param key - option key\n * @param value - option value\n * @returns this\n */\n public setOption<K extends keyof GridOptionsExtended<TData>>(key: K, value: GridOptionsExtended<TData>[K]) {\n this.#options[key] = value;\n return this;\n }\n\n /**\n * Add an extended column definition\n * @param def - column definition\n * @returns this\n */\n public column<TValue = any>(def: ColDefExtended<TData, TValue>) {\n this.#options.columnDefs = [...this.columnDefs, def];\n return this;\n }\n\n /**\n * Show row numbers column\n * @param show - show or hide row numbers column\n * @returns this\n */\n public columnRowNumbers(show: boolean = true) {\n this.#options.rowNumbersColumn = show;\n return this;\n }\n\n /**\n * Add a file input column\n * @param def - column definition\n * @param cb - callback to set params for the file input cell renderer\n * @returns this\n */\n public columnFileInput<TValue = any>(\n def: ColDefExtended<TData, TValue> & {\n /**\n * Allowed file extensions (like ['fastq.gz'])\n */\n extensions?: string[];\n /**\n * The resolveProgress function is an optional input parameter for the component\n * that allows tracking the file upload progress in real-time.\n * By passing resolveProgress, you can ensure that the component\n * displays accurate progress values for each file as they upload.\n * How to use it in AgGrid\n * cellRendererParams: {\n * resolveProgress: (cellData) => {\n * const progresses = app.progresses;\n * if (!cellData.value.importFileHandle) return undefined;\n * else return progresses[cellData.value.importFileHandle];\n * }\n * }\n */\n resolveImportProgress?: (cellData: ICellRendererParams<TData, TValue>) => ImportProgress | undefined;\n\n /**\n * The resolveFileHandle function is an optional input parameter for the component\n * that allows tracking the file upload progress in real-time.\n * By passing resolveFileHandle, you can ensure that the component\n * displays accurate progress values for each file as they upload.\n * How to use it in AgGrid\n * cellRendererParams: {\n * resolveFileHandle: (cellData) => {\n * return cellData.value.importFileHandle;\n * }\n * }\n */\n resolveImportFileHandle?: (cellData: ICellRendererParams<TData, TValue>) => ImportFileHandle | undefined;\n\n setImportFileHandle?: (d: ValueSetterParams<TData, ImportFileHandle | undefined>) => void;\n }) {\n return this.column(Object.assign({\n cellRenderer: 'PlAgCellFile',\n headerComponentParams: { type: 'File' },\n cellStyle: { padding: 0 },\n valueSetter: (d: ValueSetterParams<TData, ImportFileHandle | undefined>) => {\n def.setImportFileHandle?.(d);\n return true;\n },\n cellRendererSelector: (cellData: ICellRendererParams<TData, TValue>) => {\n return {\n component: 'PlAgCellFile',\n params: {\n extensions: def.extensions,\n value: def.resolveImportFileHandle?.(cellData),\n resolveProgress: () => {\n return def.resolveImportProgress?.(cellData);\n },\n },\n };\n },\n }, def));\n }\n\n public build() {\n return this.#options;\n }\n}\n\n// Simple helper to use like column<string> in grid options literal\ntype ColumnFunc<TData> = <TValue>(def: ColDefExtended<TData, TValue>) => ColDefExtended<TData, TValue>;\n\n/**\n * Returns a set of Ag Grid options along with a reference to the Ag Grid API.\n * (This is a fast prototype)\n *\n * @example\n * ```ts\n * const { gridOptions, gridApi } = useAgGridOptions(() => ({\n * // custom grid options here\n * }));\n *\n * // Usage in a template (v-bind is required!)\n * <template>\n * <AgGridVue :style=\"{ height: '100%' }\" v-bind=\"gridOptions\" />\n * </template>\n * ```\n */\nexport function useAgGridOptions<TData>(\n factory: (context: { builder: Builder<TData>; column: ColumnFunc<TData> }) => Builder<TData> | GridOptionsExtended<TData>,\n) {\n const gridApi = shallowRef<GridApi>();\n\n const extOptions = computed<GridOptionsExtended>(() => {\n const def: GridOptionsExtended<TData> = {\n theme: AgGridTheme,\n loadingOverlayComponent: PlAgOverlayLoading,\n noRowsOverlayComponent: PlAgOverlayNoRows,\n onGridReady: (e: GridReadyEvent) => {\n gridApi.value = e.api;\n autoSizeRowNumberColumn(e.api); // @TODO\n },\n };\n\n const column = <TValue>(def: ColDefExtended<TData, TValue>) => {\n return def;\n };\n\n const result = factory({ builder: new Builder(), column });\n\n const options = Object.assign({}, def, result instanceof Builder ? result.build() : result);\n\n if (options.rowNumbersColumn) {\n options.columnDefs = [makeRowNumberColDef(), ...(options.columnDefs ?? [])];\n }\n\n if (options.noRowsText) {\n options.noRowsOverlayComponentParams = {\n text: options.noRowsText,\n };\n }\n\n if ('loadingOverlayComponentParams' in options) {\n console.warn('useAgGridOptions: remove loadingOverlayComponentParams from options, use loading, notReady, loadingText, loadingOverlayType instead');\n }\n\n options.loading = options.notReady || options.loading;\n\n options.columnDefs = options.columnDefs?.map((it) => createAgGridColDef(it));\n\n // Register all special components\n options.components = Object.assign({}, options.components ?? {}, {\n PlAgCellFile,\n PlAgChartStackedBarCell,\n PlAgChartHistogramCell,\n PlAgCellStatusTag,\n });\n\n return options;\n });\n\n const gridOptions = computed<GridOptions>(() => {\n const options = extOptions.value;\n\n return {\n ...options,\n loadingOverlayComponentParams: {\n notReady: options.notReady,\n notReadyText: options.notReadyText,\n overlayType: options.loadingOverlayType,\n } satisfies PlAgOverlayLoadingParams,\n };\n });\n\n whenever(() => extOptions.value.rowNumbersColumn, () => {\n if (gridApi.value) {\n autoSizeRowNumberColumn(gridApi.value);\n }\n });\n\n watch([\n () => extOptions.value.notReady,\n () => extOptions.value.loading,\n ], ([notReady, loading]) => {\n const loadingOverlayComponentParams = {\n notReady,\n // we probably don't need to update the parameters below\n notReadyText: extOptions.value.notReadyText,\n overlayType: extOptions.value.loadingOverlayType,\n loadingText: extOptions.value.loadingText,\n } satisfies PlAgOverlayLoadingParams;\n\n // Hack to apply loadingOverlayComponentParams\n gridApi.value?.updateGridOptions({\n loading: !loading,\n loadingOverlayComponentParams,\n });\n\n gridApi.value?.updateGridOptions({\n loading,\n loadingOverlayComponentParams,\n });\n }, { deep: true, immediate: true });\n\n return { gridOptions, gridApi };\n};\n"],"names":["Builder","__privateAdd","_options","options","__privateSet","__privateGet","def","loading","loadingText","notReady","type","notReadyText","noRowsText","rowSelection","rowData","components","key","value","show","d","_a","cellData","useAgGridOptions","factory","gridApi","shallowRef","extOptions","computed","AgGridTheme","PlAgOverlayLoading","PlAgOverlayNoRows","e","autoSizeRowNumberColumn","column","result","makeRowNumberColDef","it","createAgGridColDef","PlAgCellFile","PlAgChartStackedBarCell","PlAgChartHistogramCell","PlAgCellStatusTag","gridOptions","whenever","watch","loadingOverlayComponentParams","_b"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useAgGridOptions.js","sources":["../../src/AgGridVue/useAgGridOptions.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport type { ColGroupDef, GridApi, GridOptions, GridReadyEvent, ICellRendererParams, RowSelectionOptions, ValueSetterParams } from 'ag-grid-enterprise';\nimport type { Component } from 'vue';\nimport { computed, shallowRef, watch } from 'vue';\nimport { AgGridTheme } from '../aggrid';\nimport { autoSizeRowNumberColumn, makeRowNumberColDef, PlAgOverlayLoading, type PlAgOverlayLoadingParams } from '../components/PlAgDataTable';\nimport { PlAgOverlayNoRows } from '../components/PlAgDataTable';\nimport { createAgGridColDef, type ColDefExtended } from './createAgGridColDef';\nimport { whenever } from '@vueuse/core';\nimport { PlAgCellFile } from '../components/PlAgCellFile';\nimport { PlAgChartStackedBarCell } from '../components/PlAgChartStackedBarCell';\nimport { PlAgChartHistogramCell } from '../components/PlAgChartHistogramCell';\nimport type { ImportFileHandle } from '@platforma-sdk/model';\nimport type { ImportProgress } from '@platforma-sdk/model';\nimport { PlAgCellStatusTag } from '../components/PlAgCellStatusTag';\ninterface GridOptionsExtended<TData = any> extends Omit<GridOptions<TData>, 'columnDefs' | 'loadingOverlayComponentParams'> {\n /**\n * Array of Column / Column Group definitions.\n */\n columnDefs?: (ColDefExtended<TData> | ColGroupDef<TData>)[] | null;\n /**\n * Show row numbers column\n */\n rowNumbersColumn?: boolean;\n /**\n * Loading overlay text\n */\n loadingText?: string;\n /**\n * Not ready overlay (No datasource). Takes priority over \"loading\"\n */\n notReady?: boolean;\n /**\n * \"No datasource\" by default\n */\n notReadyText?: string;\n /**\n * Use \"transparent\" to make table headers visible below the loading layer (experimental)\n */\n loadingOverlayType?: 'transparent' | undefined;\n /**\n * Override standard 'Empty' text for the \"no rows\" overlay\n */\n noRowsText?: string;\n /**\n * @deprecated Use loading, notReady, loadingText, loadingOverlayType instead\n */\n loadingOverlayComponentParams?: never;\n}\n\n// @TODO (super simple builder for now)\nclass Builder<TData> {\n #options: GridOptionsExtended<TData> = {};\n\n public options(options: GridOptionsExtended<TData>) {\n this.#options = Object.assign({}, this.#options, options);\n return this;\n }\n\n private get columnDefs() {\n return this.#options.columnDefs ?? [];\n }\n\n /**\n * Set default column definition\n * @param def - column definition\n * @returns this\n */\n public setDefaultColDef(def: ColDefExtended<TData>) {\n this.#options.defaultColDef = def;\n return this;\n }\n\n /**\n * Show loading overlay\n * @param loading\n * @returns this\n */\n public setLoading(loading?: boolean) {\n this.#options.loading = loading;\n return this;\n }\n\n /**\n * Set loading overlay custom text (default is \"Loading\")\n * @param loadingText\n * @returns this\n */\n public setLoadingText(loadingText?: string) {\n this.#options.loadingText = loadingText;\n return this;\n }\n\n /**\n * Show \"not ready overlay\n * @param notReady\n * @returns this\n */\n public setNotReady(notReady?: boolean) {\n this.#options.notReady = notReady;\n return this;\n }\n\n /**\n * Set loading overlay type\n * @param type\n * @returns this\n */\n public setLoadingOverlayType(type?: 'transparent') {\n this.#options.loadingOverlayType = type;\n return this;\n }\n\n /**\n * Set \"not ready\" text\n * @param notReadyText\n * @returns this\n */\n public setNotReadyText(notReadyText?: string) {\n this.#options.notReadyText = notReadyText;\n return this;\n }\n\n /**\n * Set \"no rows\" text when there are no rows (default is \"Empty\")\n * @param noRowsText\n * @returns this\n */\n public setNoRowsText(noRowsText?: string) {\n this.#options.noRowsText = noRowsText;\n return this;\n }\n\n /**\n * Set row selection options\n * @param rowSelection\n * @returns this\n */\n public setRowSelection(rowSelection?: RowSelectionOptions) {\n this.#options.rowSelection = rowSelection;\n return this;\n }\n\n /**\n * Set row data\n * @param rowData\n * @returns this\n */\n public setRowData(rowData?: TData[]) {\n this.#options.rowData = rowData;\n return this;\n }\n\n /**\n * Set components\n * @param components\n * @returns this\n */\n public setComponents(components?: Record<string, Component>) {\n this.#options.components = components;\n return this;\n }\n\n /**\n * Set an option\n * @param key - option key\n * @param value - option value\n * @returns this\n */\n public setOption<K extends keyof GridOptionsExtended<TData>>(key: K, value: GridOptionsExtended<TData>[K]) {\n this.#options[key] = value;\n return this;\n }\n\n /**\n * Add an extended column definition\n * @param def - column definition\n * @returns this\n */\n public column<TValue = any>(def: ColDefExtended<TData, TValue>) {\n this.#options.columnDefs = [...this.columnDefs, def];\n return this;\n }\n\n /**\n * Show row numbers column\n * @param show - show or hide row numbers column\n * @returns this\n */\n public columnRowNumbers(show: boolean = true) {\n this.#options.rowNumbersColumn = show;\n return this;\n }\n\n /**\n * Add a file input column\n * @param def - column definition\n * @param cb - callback to set params for the file input cell renderer\n * @returns this\n */\n public columnFileInput<TValue = any>(\n def: ColDefExtended<TData, TValue> & {\n /**\n * Allowed file extensions (like ['fastq.gz'])\n */\n extensions?: string[];\n /**\n * The resolveProgress function is an optional input parameter for the component\n * that allows tracking the file upload progress in real-time.\n * By passing resolveProgress, you can ensure that the component\n * displays accurate progress values for each file as they upload.\n * How to use it in AgGrid\n * cellRendererParams: {\n * resolveProgress: (cellData) => {\n * const progresses = app.progresses;\n * if (!cellData.value.importFileHandle) return undefined;\n * else return progresses[cellData.value.importFileHandle];\n * }\n * }\n */\n resolveImportProgress?: (cellData: ICellRendererParams<TData, TValue>) => ImportProgress | undefined;\n\n /**\n * The resolveFileHandle function is an optional input parameter for the component\n * that allows tracking the file upload progress in real-time.\n * By passing resolveFileHandle, you can ensure that the component\n * displays accurate progress values for each file as they upload.\n * How to use it in AgGrid\n * cellRendererParams: {\n * resolveFileHandle: (cellData) => {\n * return cellData.value.importFileHandle;\n * }\n * }\n */\n resolveImportFileHandle?: (cellData: ICellRendererParams<TData, TValue>) => ImportFileHandle | undefined;\n\n setImportFileHandle?: (d: ValueSetterParams<TData, ImportFileHandle | undefined>) => void;\n }) {\n return this.column(Object.assign({\n cellRenderer: 'PlAgCellFile',\n headerComponentParams: { type: 'File' },\n cellStyle: { padding: 0 },\n valueSetter: (d: ValueSetterParams<TData, ImportFileHandle | undefined>) => {\n def.setImportFileHandle?.(d);\n return true;\n },\n cellRendererSelector: (cellData: ICellRendererParams<TData, TValue>) => {\n return {\n component: 'PlAgCellFile',\n params: {\n extensions: def.extensions,\n value: def.resolveImportFileHandle?.(cellData),\n resolveProgress: () => {\n return def.resolveImportProgress?.(cellData);\n },\n },\n };\n },\n }, def));\n }\n\n public build() {\n return this.#options;\n }\n}\n\n// Simple helper to use like column<string> in grid options literal\ntype ColumnFunc<TData> = <TValue>(def: ColDefExtended<TData, TValue>) => ColDefExtended<TData, TValue>;\n\n/**\n * Returns a set of Ag Grid options along with a reference to the Ag Grid API.\n * (This is a fast prototype)\n *\n * @example\n * ```ts\n * const { gridOptions, gridApi } = useAgGridOptions(() => ({\n * // custom grid options here\n * }));\n *\n * // Usage in a template (v-bind is required!)\n * <template>\n * <AgGridVue :style=\"{ height: '100%' }\" v-bind=\"gridOptions\" />\n * </template>\n * ```\n */\nexport function useAgGridOptions<TData>(\n factory: (context: { builder: Builder<TData>; column: ColumnFunc<TData> }) => Builder<TData> | GridOptionsExtended<TData>,\n) {\n const gridApi = shallowRef<GridApi>();\n\n const extOptions = computed<GridOptionsExtended>(() => {\n const def: GridOptionsExtended<TData> = {\n theme: AgGridTheme,\n loadingOverlayComponent: PlAgOverlayLoading,\n noRowsOverlayComponent: PlAgOverlayNoRows,\n onGridReady: (e: GridReadyEvent) => {\n gridApi.value = e.api;\n autoSizeRowNumberColumn(e.api); // @TODO\n },\n };\n\n const column = <TValue>(def: ColDefExtended<TData, TValue>) => {\n return def;\n };\n\n const result = factory({ builder: new Builder(), column });\n\n const options = Object.assign({}, def, result instanceof Builder ? result.build() : result);\n\n if (options.rowNumbersColumn) {\n options.columnDefs = [makeRowNumberColDef(), ...(options.columnDefs ?? [])];\n }\n\n if (options.noRowsText) {\n options.noRowsOverlayComponentParams = {\n text: options.noRowsText,\n };\n }\n\n if ('loadingOverlayComponentParams' in options) {\n console.warn('useAgGridOptions: remove loadingOverlayComponentParams from options, use loading, notReady, loadingText, loadingOverlayType instead');\n }\n\n options.loading = options.notReady || options.loading;\n\n options.columnDefs = options.columnDefs?.map((it) => createAgGridColDef(it));\n\n // Register all special components\n options.components = Object.assign({}, options.components ?? {}, {\n PlAgCellFile,\n PlAgChartStackedBarCell,\n PlAgChartHistogramCell,\n PlAgCellStatusTag,\n });\n\n return options;\n });\n\n const gridOptions = computed<GridOptions>(() => {\n const options = extOptions.value;\n\n return {\n ...options,\n loadingOverlayComponentParams: {\n notReady: options.notReady,\n notReadyText: options.notReadyText,\n overlayType: options.loadingOverlayType,\n } satisfies PlAgOverlayLoadingParams,\n };\n });\n\n whenever(() => extOptions.value.rowNumbersColumn, () => {\n if (gridApi.value) {\n autoSizeRowNumberColumn(gridApi.value);\n }\n });\n\n watch([\n () => extOptions.value.notReady,\n () => extOptions.value.loading,\n ], ([notReady, loading]) => {\n const loadingOverlayComponentParams = {\n notReady,\n // we probably don't need to update the parameters below\n notReadyText: extOptions.value.notReadyText,\n overlayType: extOptions.value.loadingOverlayType,\n loadingText: extOptions.value.loadingText,\n } satisfies PlAgOverlayLoadingParams;\n\n // Hack to apply loadingOverlayComponentParams\n gridApi.value?.updateGridOptions({\n loading: !loading,\n loadingOverlayComponentParams,\n });\n\n gridApi.value?.updateGridOptions({\n loading,\n loadingOverlayComponentParams,\n });\n }, { deep: true, immediate: true });\n\n return { gridOptions, gridApi };\n};\n"],"names":["Builder","__privateAdd","_options","options","__privateSet","__privateGet","def","loading","loadingText","notReady","type","notReadyText","noRowsText","rowSelection","rowData","components","key","value","show","d","_a","cellData","useAgGridOptions","factory","gridApi","shallowRef","extOptions","computed","AgGridTheme","PlAgOverlayLoading","PlAgOverlayNoRows","e","autoSizeRowNumberColumn","column","result","makeRowNumberColDef","it","createAgGridColDef","PlAgCellFile","PlAgChartStackedBarCell","PlAgChartHistogramCell","PlAgCellStatusTag","gridOptions","whenever","watch","loadingOverlayComponentParams","_b"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlockLayout.vue.d.ts","sourceRoot":"","sources":["../../src/components/BlockLayout.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BlockLayout.vue.d.ts","sourceRoot":"","sources":["../../src/components/BlockLayout.vue"],"names":[],"mappings":"AAgEA,OAAO,sBAAsB,CAAC;;AA6J9B,wBAKG"}
|
|
@@ -1,53 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
import B from "./PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue.js";
|
|
8
|
-
import L from "./BlockLoader.vue.js";
|
|
9
|
-
import $ from "../plugins/Monetization/MonetizationSidebar.vue.js";
|
|
10
|
-
const A = { class: "block block__layout" }, P = { key: 0 }, q = /* @__PURE__ */ _({
|
|
11
|
-
__name: "BlockLayout",
|
|
12
|
-
setup(S) {
|
|
13
|
-
const o = E(), m = (e) => {
|
|
14
|
-
try {
|
|
15
|
-
return new URL(e, "http://dummy").pathname;
|
|
16
|
-
} catch {
|
|
17
|
-
console.error("Invalid href", e);
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
}, p = a(() => o.loaded ? o.useApp().href : void 0), l = a(() => {
|
|
21
|
-
if (o.loaded) {
|
|
22
|
-
const e = o.useApp(), r = m(e.snapshot.navigationState.href);
|
|
23
|
-
return r ? e.getRoute(r) : void 0;
|
|
24
|
-
}
|
|
25
|
-
}), u = a(() => o.loaded ? o.useApp() : void 0), d = a(() => u.value ? u.value.model.outputErrors : {}), v = a(() => {
|
|
26
|
-
var e;
|
|
27
|
-
return ((e = u.value) == null ? void 0 : e.showErrorsNotification) ?? !0;
|
|
28
|
-
}), f = a(() => {
|
|
29
|
-
var e, r;
|
|
30
|
-
return (r = (e = u.value) == null ? void 0 : e.progress) == null ? void 0 : r.call(e);
|
|
31
|
-
});
|
|
32
|
-
return (e, r) => (t(), i(k, null, [
|
|
33
|
-
h("div", A, [
|
|
34
|
-
y(L, { value: f.value }, null, 8, ["value"]),
|
|
35
|
-
n(o).error ? (t(), i("div", P, g(n(o).error), 1)) : n(o).loaded ? l.value ? (t(), s(C(l.value), { key: p.value })) : (t(), s(V, { key: 3 })) : (t(), s(x, { key: 1 }, {
|
|
36
|
-
default: N(() => r[0] || (r[0] = [
|
|
37
|
-
w("Loading...")
|
|
38
|
-
])),
|
|
39
|
-
_: 1
|
|
40
|
-
})),
|
|
41
|
-
n(o).loaded && v.value ? (t(), s(n(B), {
|
|
42
|
-
key: 4,
|
|
43
|
-
errors: d.value
|
|
44
|
-
}, null, 8, ["errors"])) : c("", !0)
|
|
45
|
-
]),
|
|
46
|
-
l.value ? (t(), s(n($), { key: 0 })) : c("", !0)
|
|
47
|
-
], 64));
|
|
48
|
-
}
|
|
49
|
-
});
|
|
1
|
+
import o from "./BlockLayout.vue2.js";
|
|
2
|
+
import s from "./BlockLayout.vue3.js";
|
|
3
|
+
import t from "../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
+
const r = {
|
|
5
|
+
$style: s
|
|
6
|
+
}, f = /* @__PURE__ */ t(o, [["__cssModules", r]]);
|
|
50
7
|
export {
|
|
51
|
-
|
|
8
|
+
f as default
|
|
52
9
|
};
|
|
53
10
|
//# sourceMappingURL=BlockLayout.vue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlockLayout.vue.js","sources":[
|
|
1
|
+
{"version":3,"file":"BlockLayout.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -1,5 +1,56 @@
|
|
|
1
|
-
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var o=document.createElement("style");o.appendChild(document.createTextNode('.block{flex:1;background-color:#fff;max-height:100%;max-width:100%;width:100%;height:100%;position:relative;display:flex;flex-direction:column;--thumb-color: var(--ic-02);overflow-y:auto;overflow-x:auto}.block::-webkit-scrollbar{width:var(--scrollbar-width, 6px);height:5px;background-color:transparent;display:block}.block::-webkit-scrollbar-thumb{background:var(--thumb-color);border-radius:5px}.block::-webkit-scrollbar-thumb:hover{--thumb-color: var(--border-color-focus)}.block__not-found,.block__loader-page{display:flex;flex-direction:column;flex:1;align-items:center;justify-content:center}.block__loader-page .loader-container{display:flex;transform:scale(8)}.block__loader-page .loader-icon{animation:spin 4s linear infinite;background-color:#ccc;margin:auto}.block__layout{padding:0}.block__loader{height:4px;background-color:transparent;position:absolute;z-index:1;top:0;right:0;left:0;overflow:hidden}.block__loader:before{content:"";position:absolute;left:-50%;height:4px;width:33%;background-color:var(--border-color-focus);animation:loader-animation 1.3s linear infinite}.block__progress{--progress-width: 0%;height:4px;background-color:transparent;position:absolute;top:0;right:0;left:0;overflow:hidden}.block__progress:before{content:"";position:absolute;left:0;height:4px;width:var(--progress-width);background-color:var(--border-color-focus);will-change:width;background-image:linear-gradient(90deg,#0000,#fffc,#0000);background-position:0 0;background-size:80px 100%;background-repeat:repeat-y;animation:shine-animation 1.2s linear infinite}@keyframes shine-animation{0%{background-position:-160px 0}to{background-position:calc(100% + 80px) 0}}.block__error{background:var(--txt-error);color:#fff;max-height:50vh;padding:16px 24px;-webkit-user-select:auto;user-select:auto;width:100%;overflow:auto;display:flex;flex-direction:column;--thumb-color: var(--ic-02);overflow-y:auto;overflow-x:auto}.block__error::-webkit-scrollbar{width:var(--scrollbar-width, 6px);height:5px;background-color:transparent;display:block}.block__error::-webkit-scrollbar-thumb{background:var(--thumb-color);border-radius:5px}.block__error::-webkit-scrollbar-thumb:hover{--thumb-color: var(--border-color-focus)}.block__error pre{white-space:pre-wrap;margin:0}.block .scroll-content{height:100%;display:flex;flex-direction:column}.block .scroll-content>div:last-child{flex:1;overflow:auto}@keyframes loader-animation{0%{left:-40%}50%{left:20%;width:38%}to{left:100%;width:50%}}')),document.head.appendChild(o)}}catch(r){console.error("vite-plugin-css-injected-by-js",r)}})();
|
|
2
|
+
import { defineComponent as _, computed as a, createElementBlock as i, openBlock as t, Fragment as k, createElementVNode as y, createBlock as s, createCommentVNode as c, createVNode as h, unref as n, normalizeClass as g, toDisplayString as C, withCtx as N, createTextVNode as w, resolveDynamicComponent as E } from "vue";
|
|
3
|
+
|
|
4
|
+
import { useSdkPlugin as V } from "../defineApp.js";
|
|
5
|
+
import $ from "./NotFound.vue.js";
|
|
6
|
+
import B from "./LoaderPage.vue.js";
|
|
7
|
+
import L from "./PlAppErrorNotificationAlert/PlAppErrorNotificationAlert.vue.js";
|
|
8
|
+
import x from "./BlockLoader.vue.js";
|
|
9
|
+
import A from "../plugins/Monetization/MonetizationSidebar.vue.js";
|
|
10
|
+
const P = { class: "block block__layout" }, j = /* @__PURE__ */ _({
|
|
11
|
+
__name: "BlockLayout",
|
|
12
|
+
setup(S) {
|
|
13
|
+
const o = V(), m = (e) => {
|
|
14
|
+
try {
|
|
15
|
+
return new URL(e, "http://dummy").pathname;
|
|
16
|
+
} catch {
|
|
17
|
+
console.error("Invalid href", e);
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
}, p = a(() => o.loaded ? o.useApp().href : void 0), u = a(() => {
|
|
21
|
+
if (o.loaded) {
|
|
22
|
+
const e = o.useApp(), r = m(e.snapshot.navigationState.href);
|
|
23
|
+
return r ? e.getRoute(r) : void 0;
|
|
24
|
+
}
|
|
25
|
+
}), l = a(() => o.loaded ? o.useApp() : void 0), d = a(() => l.value ? l.value.model.outputErrors : {}), v = a(() => {
|
|
26
|
+
var e;
|
|
27
|
+
return ((e = l.value) == null ? void 0 : e.showErrorsNotification) ?? !0;
|
|
28
|
+
}), f = a(() => {
|
|
29
|
+
var e, r;
|
|
30
|
+
return (r = (e = l.value) == null ? void 0 : e.progress) == null ? void 0 : r.call(e);
|
|
31
|
+
});
|
|
32
|
+
return (e, r) => (t(), i(k, null, [
|
|
33
|
+
y("div", P, [
|
|
34
|
+
h(x, { value: f.value }, null, 8, ["value"]),
|
|
35
|
+
n(o).error ? (t(), i("div", {
|
|
36
|
+
key: 0,
|
|
37
|
+
class: g(e.$style.error)
|
|
38
|
+
}, C(n(o).error), 3)) : n(o).loaded ? u.value ? (t(), s(E(u.value), { key: p.value })) : (t(), s($, { key: 3 })) : (t(), s(B, { key: 1 }, {
|
|
39
|
+
default: N(() => r[0] || (r[0] = [
|
|
40
|
+
w("Loading...")
|
|
41
|
+
])),
|
|
42
|
+
_: 1
|
|
43
|
+
})),
|
|
44
|
+
n(o).loaded && v.value ? (t(), s(n(L), {
|
|
45
|
+
key: 4,
|
|
46
|
+
errors: d.value
|
|
47
|
+
}, null, 8, ["errors"])) : c("", !0)
|
|
48
|
+
]),
|
|
49
|
+
u.value ? (t(), s(n(A), { key: 0 })) : c("", !0)
|
|
50
|
+
], 64));
|
|
51
|
+
}
|
|
52
|
+
});
|
|
2
53
|
export {
|
|
3
|
-
|
|
54
|
+
j as default
|
|
4
55
|
};
|
|
5
56
|
//# sourceMappingURL=BlockLayout.vue2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlockLayout.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
1
|
+
{"version":3,"file":"BlockLayout.vue2.js","sources":["../../src/components/BlockLayout.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport '../assets/block.scss';\nimport { computed } from 'vue';\nimport { useSdkPlugin } from '../defineApp';\nimport NotFound from './NotFound.vue';\nimport LoaderPage from './LoaderPage.vue';\nimport { PlAppErrorNotificationAlert } from './PlAppErrorNotificationAlert';\nimport BlockLoader from './BlockLoader.vue';\nimport { MonetizationSidebar } from '../plugins/Monetization';\n\nconst sdk = useSdkPlugin();\n\nconst parsePathname = (href: `/${string}`) => {\n try {\n return new URL(href, 'http://dummy').pathname as `/${string}`;\n } catch (_cause) {\n console.error('Invalid href', href);\n return undefined;\n }\n};\n\nconst href = computed(() => (sdk.loaded ? sdk.useApp().href : undefined));\n\nconst CurrentView = computed(() => {\n if (sdk.loaded) {\n const app = sdk.useApp();\n const pathname = parsePathname(app.snapshot.navigationState.href);\n return pathname ? app.getRoute(pathname) : undefined;\n }\n\n return undefined;\n});\n\nconst app = computed(() => (sdk.loaded ? sdk.useApp() : undefined));\n\nconst errors = computed(() => (app.value ? app.value.model.outputErrors : {}));\n\nconst showErrorsNotification = computed(() => app.value?.showErrorsNotification ?? true);\n\nconst progress = computed(() => app.value?.progress?.());\n</script>\n\n<template>\n <div class=\"block block__layout\">\n <BlockLoader :value=\"progress\" />\n <div v-if=\"sdk.error\" :class=\"$style.error\">{{ sdk.error }}</div>\n <LoaderPage v-else-if=\"!sdk.loaded\">Loading...</LoaderPage>\n <component :is=\"CurrentView\" v-else-if=\"CurrentView\" :key=\"href\" />\n <NotFound v-else />\n <PlAppErrorNotificationAlert v-if=\"sdk.loaded && showErrorsNotification\" :errors=\"errors\" />\n </div>\n <!-- Plugins -->\n <MonetizationSidebar v-if=\"CurrentView\" />\n</template>\n\n<style module>\n.error {\n color: red;\n font-weight: bold;\n padding: 24px;\n}\n</style>\n"],"names":["sdk","useSdkPlugin","parsePathname","href","computed","CurrentView","app","pathname","errors","showErrorsNotification","_a","progress","_b"],"mappings":";;;;;;;;;;;AAUA,UAAMA,IAAMC,EAAa,GAEnBC,IAAgB,CAACC,MAAuB;AACxC,UAAA;AACF,eAAO,IAAI,IAAIA,GAAM,cAAc,EAAE;AAAA,cACtB;AACP,gBAAA,MAAM,gBAAgBA,CAAI;AAC3B;AAAA,MAAA;AAAA,IAEX,GAEMA,IAAOC,EAAS,MAAOJ,EAAI,SAASA,EAAI,OAAA,EAAS,OAAO,MAAU,GAElEK,IAAcD,EAAS,MAAM;AACjC,UAAIJ,EAAI,QAAQ;AACRM,cAAAA,IAAMN,EAAI,OAAO,GACjBO,IAAWL,EAAcI,EAAI,SAAS,gBAAgB,IAAI;AAChE,eAAOC,IAAWD,EAAI,SAASC,CAAQ,IAAI;AAAA,MAAA;AAAA,IAGtC,CACR,GAEKD,IAAMF,EAAS,MAAOJ,EAAI,SAASA,EAAI,WAAW,MAAU,GAE5DQ,IAASJ,EAAS,MAAOE,EAAI,QAAQA,EAAI,MAAM,MAAM,eAAe,EAAG,GAEvEG,IAAyBL,EAAS,MAAA;;AAAM,eAAAM,IAAAJ,EAAI,UAAJ,gBAAAI,EAAW,2BAA0B;AAAA,KAAI,GAEjFC,IAAWP,EAAS,MAAA;;AAAM,cAAAQ,KAAAF,IAAAJ,EAAI,UAAJ,gBAAAI,EAAW,aAAX,gBAAAE,EAAA,KAAAF;AAAA,KAAuB;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode("._error_rqtei_2{color:red;font-weight:700;padding:24px}")),document.head.appendChild(e)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})();
|
|
2
|
+
const r = "_error_rqtei_2", e = {
|
|
3
|
+
error: r
|
|
4
|
+
};
|
|
5
|
+
export {
|
|
6
|
+
e as default,
|
|
7
|
+
r as error
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=BlockLayout.vue3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BlockLayout.vue3.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotFound.vue.d.ts","sourceRoot":"","sources":["../../src/components/NotFound.vue"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"NotFound.vue.d.ts","sourceRoot":"","sources":["../../src/components/NotFound.vue"],"names":[],"mappings":";AA0FA,wBAMG"}
|
|
@@ -1,21 +1,19 @@
|
|
|
1
|
-
import { defineComponent as
|
|
1
|
+
import { defineComponent as r, createElementBlock as i, openBlock as s, createElementVNode as a, createVNode as p, toDisplayString as u, unref as e, withModifiers as d, withCtx as c, createTextVNode as l } from "vue";
|
|
2
2
|
import "../lib/ui/uikit/dist/index.js";
|
|
3
3
|
import { useSdkPlugin as m } from "../defineApp.js";
|
|
4
|
-
import
|
|
5
|
-
const
|
|
4
|
+
import f from "../lib/ui/uikit/dist/components/PlBtnSecondary/PlBtnSecondary.vue.js";
|
|
5
|
+
const _ = { class: "block__not-found" }, S = /* @__PURE__ */ r({
|
|
6
6
|
__name: "NotFound",
|
|
7
|
-
setup(
|
|
8
|
-
const t = m().useApp(),
|
|
9
|
-
t.
|
|
10
|
-
o.href = "/";
|
|
11
|
-
});
|
|
7
|
+
setup(k) {
|
|
8
|
+
const t = m().useApp(), n = () => {
|
|
9
|
+
t.navigateTo("/");
|
|
12
10
|
};
|
|
13
|
-
return (
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
onClick:
|
|
11
|
+
return (h, o) => (s(), i("div", _, [
|
|
12
|
+
a("h1", null, "Not found route: " + u(e(t).snapshot.navigationState.href), 1),
|
|
13
|
+
p(e(f), {
|
|
14
|
+
onClick: d(n, ["stop"])
|
|
17
15
|
}, {
|
|
18
|
-
default:
|
|
16
|
+
default: c(() => o[0] || (o[0] = [
|
|
19
17
|
l("Return to main page")
|
|
20
18
|
])),
|
|
21
19
|
_: 1
|
|
@@ -24,6 +22,6 @@ const k = { class: "block__not-found" }, C = /* @__PURE__ */ a({
|
|
|
24
22
|
}
|
|
25
23
|
});
|
|
26
24
|
export {
|
|
27
|
-
|
|
25
|
+
S as default
|
|
28
26
|
};
|
|
29
27
|
//# sourceMappingURL=NotFound.vue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotFound.vue.js","sources":["../../src/components/NotFound.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { PlBtnSecondary } from '@milaboratories/uikit';\nimport { useSdkPlugin } from '../defineApp';\n\nconst sdk = useSdkPlugin();\n\nconst app = sdk.useApp();\n\nconst goToMain = () => {\n app.
|
|
1
|
+
{"version":3,"file":"NotFound.vue.js","sources":["../../src/components/NotFound.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { PlBtnSecondary } from '@milaboratories/uikit';\nimport { useSdkPlugin } from '../defineApp';\n\nconst sdk = useSdkPlugin();\n\nconst app = sdk.useApp();\n\nconst goToMain = () => {\n app.navigateTo('/');\n};\n</script>\n\n<template>\n <div class=\"block__not-found\">\n <h1>Not found route: {{ app.snapshot.navigationState.href }}</h1>\n <PlBtnSecondary @click.stop=\"goToMain\">Return to main page</PlBtnSecondary>\n </div>\n</template>\n"],"names":["app","useSdkPlugin","goToMain"],"mappings":";;;;;;;AAMM,UAAAA,IAFMC,EAAa,EAET,OAAO,GAEjBC,IAAW,MAAM;AACrB,MAAAF,EAAI,WAAW,GAAG;AAAA,IACpB;;;;;;;;;;;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AxisId, PlDataTableStateV2, PlSelectionModel, PTableKey } from '@platforma-sdk/model';
|
|
2
2
|
import { CellRendererSelectorFunc } from 'ag-grid-enterprise';
|
|
3
|
-
import { PlAgDataTableV2Row, PlDataTableSettingsV2
|
|
3
|
+
import { PlAgDataTableV2Row, PlDataTableSettingsV2 } from './types';
|
|
4
4
|
type __VLS_Props = {
|
|
5
5
|
/** Required component settings */
|
|
6
6
|
settings: Readonly<PlDataTableSettingsV2>;
|
|
@@ -52,7 +52,6 @@ type __VLS_Props = {
|
|
|
52
52
|
type __VLS_PublicProps = {
|
|
53
53
|
modelValue: PlDataTableStateV2;
|
|
54
54
|
'selection'?: PlSelectionModel;
|
|
55
|
-
'selectionLabeled'?: PlTableLabeledSelectionModel;
|
|
56
55
|
} & __VLS_Props;
|
|
57
56
|
declare function __VLS_template(): {
|
|
58
57
|
attrs: Partial<{}>;
|
|
@@ -71,13 +70,11 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_PublicProps,
|
|
|
71
70
|
rowDoubleClicked: (key?: PTableKey | undefined) => any;
|
|
72
71
|
cellButtonClicked: (key?: PTableKey | undefined) => any;
|
|
73
72
|
"update:selection": (value: PlSelectionModel) => any;
|
|
74
|
-
"update:selectionLabeled": (value: PlTableLabeledSelectionModel) => any;
|
|
75
73
|
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
76
74
|
"onUpdate:modelValue"?: ((value: PlDataTableStateV2) => any) | undefined;
|
|
77
75
|
onRowDoubleClicked?: ((key?: PTableKey | undefined) => any) | undefined;
|
|
78
76
|
onCellButtonClicked?: ((key?: PTableKey | undefined) => any) | undefined;
|
|
79
77
|
"onUpdate:selection"?: ((value: PlSelectionModel) => any) | undefined;
|
|
80
|
-
"onUpdate:selectionLabeled"?: ((value: PlTableLabeledSelectionModel) => any) | undefined;
|
|
81
78
|
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
82
79
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
83
80
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlAgDataTableV2.vue.d.ts","sourceRoot":"","sources":["../../../src/components/PlAgDataTable/PlAgDataTableV2.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PlAgDataTableV2.vue.d.ts","sourceRoot":"","sources":["../../../src/components/PlAgDataTable/PlAgDataTableV2.vue"],"names":[],"mappings":"AAijBA,OAAO,KAAK,EACV,MAAM,EAGN,kBAAkB,EAClB,gBAAgB,EAGhB,SAAS,EACV,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EACV,wBAAwB,EAQzB,MAAM,oBAAoB,CAAC;AAiB5B,OAAO,KAAK,EAEV,kBAAkB,EAGlB,qBAAqB,EAGtB,MAAM,SAAS,CAAC;AAOjB,KAAK,WAAW,GAAG;IACjB,kCAAkC;IAClC,QAAQ,EAAE,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IAE1C;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;;;;;OAMG;IACH,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAE5C,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;CACrE,CAAC;AAsZF,KAAK,iBAAiB,GAAG;IACzB,UAAU,EAAE,kBAAkB,CAAC;IAC/B,WAAW,CAAC,EAAE,gBAAgB,CAAC;CAC9B,GAAG,WAAW,CAAC;AAMhB,iBAAS,cAAc;WAuGT,OAAO,IAA6B;;iCAXZ,GAAG;gCACJ,GAAG;;;;EAevC;AAsBD,KAAK,oBAAoB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAC9D,QAAA,MAAM,eAAe;;;;;;;;;;;;6FASnB,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAAnG,wBAAoG;AAapG,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IACxC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
|