@wisemen/wise-invoicing-web 0.3.0 → 0.4.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/dist/{ApprovalReminderSettingsViewDataProvider-DwtfyQpx.js → ApprovalReminderSettingsViewDataProvider-IuReavOR.js} +3 -3
- package/dist/{BillingDocumentDetailViewDataProvider-TJUwMhtn.js → BillingDocumentDetailViewDataProvider-B3I6UIKY.js} +2201 -1728
- package/dist/BillingDocumentDetailViewDataProvider.css +1 -1
- package/dist/{BillingDocumentPdf-PU9Ldfhs.js → BillingDocumentPdf-rFqmLUPy.js} +226 -219
- package/dist/{CreditNoteDetailViewDataProvider-DOPmal5D.js → CreditNoteDetailViewDataProvider-CQRnG2Fz.js} +42 -42
- package/dist/{CreditNotePdfViewDataProvider-BH7MaReQ.js → CreditNotePdfViewDataProvider-RytwPWH5.js} +2 -2
- package/dist/{CustomFieldValueText-BjRVovZL.js → CustomFieldValueText-DA0aPKwC.js} +2 -2
- package/dist/{DunningCaseDetailViewDataProvider-CW8ijY3H.js → DunningCaseDetailViewDataProvider-BRYbYgTw.js} +65 -65
- package/dist/{DunningCaseOverviewView-Cfo-4VIw.js → DunningCaseOverviewView-D0vScVF1.js} +125 -125
- package/dist/{DunningCaseReminderPdfViewDataProvider-Dr-CS_VQ.js → DunningCaseReminderPdfViewDataProvider-I_ZQiAuK.js} +2 -2
- package/dist/{DunningCaseSendDialog-BYFXJYMM.js → DunningCaseSendDialog-CV66_tMv.js} +8 -8
- package/dist/{InvoiceApprovalOutOfSyncIndicator-CP2GLaeh.js → InvoiceApprovalOutOfSyncIndicator-AJOQe8j8.js} +2 -2
- package/dist/{InvoiceApprovalOverviewView-Cjdu9iZC.js → InvoiceApprovalOverviewView-CcMqr2jH.js} +213 -213
- package/dist/{InvoiceApprovalStatusBadge-CcX8agTF.js → InvoiceApprovalStatusBadge-BJ3Q18bf.js} +4 -4
- package/dist/{InvoiceApproveDialogDataProvider-4wNAetBn.js → InvoiceApproveDialogDataProvider-DaCEHgs0.js} +7 -7
- package/dist/{InvoiceDetailViewDataProvider-C9O3hXGo.js → InvoiceDetailViewDataProvider-B5uZY8Qy.js} +47 -47
- package/dist/{InvoiceOverviewViewDataProvider-DBdw7FvZ.js → InvoiceOverviewViewDataProvider-BrgmweRE.js} +57 -57
- package/dist/{InvoicePdfView-CvU9bRVd.js → InvoicePdfView-CPEX7E9W.js} +1 -1
- package/dist/{InvoicePdfViewDataProvider-CFjHQ58K.js → InvoicePdfViewDataProvider-T4-8A2OD.js} +3 -3
- package/dist/{InvoicePublicPdfViewDataProvider-DDv-LdBU.js → InvoicePublicPdfViewDataProvider-BkHZoPSZ.js} +3 -3
- package/dist/{InvoicePublicProFormaPdfViewDataProvider-BTjJnELb.js → InvoicePublicProFormaPdfViewDataProvider-CfkArXbC.js} +3 -3
- package/dist/{InvoicingFileUploadProvider-Kcq7kSSt.js → InvoicingFileUploadProvider-BLBjPKqx.js} +1 -1
- package/dist/{IssuerSettingsViewDataProvider-BuSIVnIl.js → IssuerSettingsViewDataProvider-BStn0jFI.js} +2 -2
- package/dist/{ReminderSettingsViewDataProvider-CH7gSXnj.js → ReminderSettingsViewDataProvider-CjX7afDs.js} +3 -3
- package/dist/{api.util-CkIRZS3h.js → api.util-D6m6OY3_.js} +15 -6
- package/dist/{billingDocumentDetail.transformer-Bfd8geNo.js → billingDocumentDetail.transformer-Da-Nt4bI.js} +37 -29
- package/dist/client/index.d.ts +1 -1
- package/dist/client/types.gen.d.ts +16 -2
- package/dist/client/zod.gen.d.ts +28 -0
- package/dist/{creditNoteDetail.query-tLnfqsEB.js → creditNoteDetail.query-Yb8TdZNm.js} +22 -18
- package/dist/{dist-D5agTXFI.js → dist-BpDuRYDT.js} +132 -132
- package/dist/{dist-boJIIxnT.js → dist-Cdbpkd3Y.js} +1 -1
- package/dist/{dist-BD7Allff.js → dist-DCbLgB6Y.js} +182 -102
- package/dist/{i18n.lib--mzprLMR.js → i18n.lib-CKs3ExEl.js} +28 -0
- package/dist/index.d.ts +28 -0
- package/dist/index.js +33 -32
- package/dist/{invoice.service-B1w16_Md.js → invoice.service-DWDl9XRh.js} +214 -209
- package/dist/{invoiceApproval.service-BHAJmFkU.js → invoiceApproval.service-Fwlxgd9o.js} +2 -2
- package/dist/{invoiceApprovalStatus.util-DohOKR4q.js → invoiceApprovalStatus.util-q-zHLdFV.js} +1 -1
- package/dist/{invoiceCustomer.service-DpVfpQUD.js → invoiceCustomer.service-DOexR54S.js} +2 -2
- package/dist/{invoiceDetail.query-CfyNSXLS.js → invoiceDetail.query-B5w0Vlsy.js} +1 -1
- package/dist/{invoiceIndexCache.util-jHsrFwcA.js → invoiceIndexCache.util-CUlp4R7R.js} +2 -2
- package/dist/{invoicingConfig.composable-COn1rKRf.js → invoicingConfig.composable-DjFexycc.js} +2 -2
- package/dist/{issuerSettings.query-CDFk2GiP.js → issuerSettings.query-BHuLjV9P.js} +1 -1
- package/dist/libs/i18n.lib.d.ts +28 -0
- package/dist/locales/en-US.json.d.ts +14 -0
- package/dist/locales/nl-BE.json.d.ts +14 -0
- package/dist/models/billing-document/billingDocumentDetail.model.d.ts +1 -0
- package/dist/models/billing-document/billingDocumentLineGroup.util.d.ts +15 -0
- package/dist/models/billing-document/billingDocumentLineGroup.util.spec.d.ts +1 -0
- package/dist/models/billing-document/billingDocumentUpdateLines.model.d.ts +1 -0
- package/dist/modules/invoice/models/invoice/pdf/invoicePdfDetail.model.d.ts +1 -0
- package/dist/modules/invoice/use-cases/pdf/components/invoicePdf.types.d.ts +4 -1
- package/dist/modules/invoice/use-cases/pdf/utils/invoicePdf.util.d.ts +5 -0
- package/dist/{reminderConfig.query-DSO0ekC_.js → reminderConfig.query-C4J6m4ER.js} +1 -1
- package/dist/style.css +1 -1
- package/dist/types/apiError.type.d.ts +2 -2
- package/dist/ui/billing-document/table/BillingDocumentLineItemDeleteDialog.vue.d.ts +1 -0
- package/dist/ui/billing-document/table/BillingDocumentLineItemsInsertIndicator.vue.d.ts +3 -0
- package/dist/ui/billing-document/table/BillingDocumentLineItemsTableGroupRow.vue.d.ts +5 -2
- package/dist/ui/billing-document/table/BillingDocumentLineItemsTreeIndent.vue.d.ts +17 -0
- package/dist/ui/billing-document/table/billingDocumentLineItemsTable.context.d.ts +78 -18
- package/dist/ui/billing-document/table/composables/useBillingDocumentLineItemsEditor.composable.d.ts +14 -4
- package/dist/ui/billing-document/table/composables/useBillingDocumentLineItemsKeyboardNav.composable.d.ts +6 -0
- package/dist/ui/billing-document/table/composables/useBillingDocumentLineItemsRowMutations.composable.d.ts +8 -4
- package/dist/ui/billing-document/table/composables/useBillingDocumentLineItemsTableDrag.composable.d.ts +16 -3
- package/dist/ui/billing-document/table/utils/billingDocumentLineItemsEditor.util.d.ts +163 -26
- package/package.json +2 -2
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { n as s } from "./dist-
|
|
1
|
+
import { P as e, Q as t, T as n, W as r, Z as i, a, n as o } from "./dist-DCbLgB6Y.js";
|
|
2
|
+
import { n as s } from "./dist-Cdbpkd3Y.js";
|
|
3
3
|
import c from "zod";
|
|
4
4
|
import { useI18n as l } from "vue-i18n";
|
|
5
5
|
import { Fragment as u, computed as d, createBlock as f, createCommentVNode as p, createElementBlock as m, createElementVNode as h, createVNode as g, defineComponent as _, inject as v, mergeProps as y, normalizeClass as ee, onUnmounted as te, openBlock as b, provide as ne, ref as x, renderList as S, renderSlot as C, resolveDynamicComponent as re, toDisplayString as ie, unref as w, useId as ae, watch as oe, withCtx as T } from "vue";
|
|
6
6
|
import { UIActionDropdownMenu as se, UIActionFocus as ce, UIActionTooltip as le, UIActionTrigger as E, UIButton as ue, UIClickableElement as D, UIDatePicker as de, UIDateRangePicker as fe, UIDialog as pe, UIDialogBody as me, UIDialogFooter as he, UIDialogFooterCancel as ge, UIDialogFooterPrimary as _e, UIDialogFooterSecondary as ve, UIDialogFooterSubmit as ye, UIDialogHeader as be, UIDropdownMenu as xe, UIDropdownMenuGroup as Se, UIDropdownMenuRadioGroup as Ce, UIDropdownMenuRadioItem as we, UIFormDialog as Te, UIIconButton as Ee, UINumberField as De, UIRowLayout as Oe, UISeparator as ke, UIText as O, toFormField as Ae, useNumberFormat as je, useOverlay as Me } from "@wisemen/vue-core-design-system";
|
|
7
7
|
import { GroupPriority as Ne, createAction as k, useTemporaryActions as Pe } from "@wisemen/vue-core-actions";
|
|
8
8
|
import { useForm as Fe } from "formango";
|
|
9
|
-
//#region ../../../node_modules/.pnpm/@wisemen+vue-core-filters@10.0.
|
|
9
|
+
//#region ../../../node_modules/.pnpm/@wisemen+vue-core-filters@10.0.2_03a6160facfdab48591f0fceaa1735a8/node_modules/@wisemen/vue-core-filters/dist/index.js
|
|
10
10
|
function Ie(e) {
|
|
11
11
|
let t = Symbol(e);
|
|
12
12
|
function n(e) {
|
|
@@ -21,20 +21,20 @@ function Ie(e) {
|
|
|
21
21
|
}
|
|
22
22
|
var [Le, A] = Ie("filtersContext"), Re = /* @__PURE__ */ _({
|
|
23
23
|
__name: "FiltersActiveAddFilters",
|
|
24
|
-
setup(
|
|
25
|
-
let
|
|
26
|
-
return (
|
|
24
|
+
setup(e) {
|
|
25
|
+
let t = l(), { action: n } = A();
|
|
26
|
+
return (e, r) => (b(), f(w(se), {
|
|
27
27
|
metadata: { filters: { hideClearAll: !0 } },
|
|
28
28
|
"is-current-context-only": !1,
|
|
29
|
-
"parent-action": w(
|
|
29
|
+
"parent-action": w(n),
|
|
30
30
|
"popover-collision-padding": 10,
|
|
31
31
|
"fixed-content-position": !0,
|
|
32
32
|
"popover-align": "start",
|
|
33
33
|
"popover-side": "bottom"
|
|
34
34
|
}, {
|
|
35
35
|
default: T(() => [g(w(Ee), {
|
|
36
|
-
icon: w(
|
|
37
|
-
label: w(
|
|
36
|
+
icon: w(i),
|
|
37
|
+
label: w(t).t("component.filters.add_filter"),
|
|
38
38
|
variant: "tertiary",
|
|
39
39
|
size: "sm"
|
|
40
40
|
}, null, 8, ["icon", "label"])]),
|
|
@@ -44,28 +44,28 @@ var [Le, A] = Ie("filtersContext"), Re = /* @__PURE__ */ _({
|
|
|
44
44
|
}), ze = { class: "flex h-6 items-center rounded-sm border border-secondary select-none" }, j = /* @__PURE__ */ _({
|
|
45
45
|
__name: "FiltersActiveBadgeBase",
|
|
46
46
|
props: { filter: {} },
|
|
47
|
-
setup(
|
|
48
|
-
let
|
|
49
|
-
id: `clear-filter-${
|
|
50
|
-
name: () =>
|
|
47
|
+
setup(t) {
|
|
48
|
+
let n = t, i = l(), { clearFilter: a } = A(), o = k({
|
|
49
|
+
id: `clear-filter-${n.filter.key}`,
|
|
50
|
+
name: () => i.t("component.filters.remove_filter"),
|
|
51
51
|
execute: () => {
|
|
52
|
-
|
|
52
|
+
a(n.filter.key);
|
|
53
53
|
},
|
|
54
54
|
group: {
|
|
55
|
-
name: () =>
|
|
56
|
-
category: () =>
|
|
55
|
+
name: () => n.filter.label,
|
|
56
|
+
category: () => i.t("component.filters.action_category"),
|
|
57
57
|
priority: Ne.HOVER
|
|
58
58
|
},
|
|
59
|
-
icon: () =>
|
|
59
|
+
icon: () => e,
|
|
60
60
|
keyboardShortcut: { key: "Backspace" }
|
|
61
61
|
});
|
|
62
|
-
return (e,
|
|
63
|
-
default: T(() => [h("div", ze, [C(e.$slots, "default"),
|
|
62
|
+
return (e, t) => (b(), f(w(ce), { actions: [w(o)] }, {
|
|
63
|
+
default: T(() => [h("div", ze, [C(e.$slots, "default"), n.filter.isPersistent === !0 ? p("", !0) : (b(), m(u, { key: 0 }, [g(w(ke), { orientation: "vertical" }), g(w(E), {
|
|
64
64
|
action: w(o),
|
|
65
65
|
"is-current-context-only": !0
|
|
66
66
|
}, {
|
|
67
67
|
default: T(({ keyboardShortcut: e, label: t }) => [g(w(Ee), {
|
|
68
|
-
icon: w(
|
|
68
|
+
icon: w(r),
|
|
69
69
|
"keyboard-shortcut": e,
|
|
70
70
|
label: t,
|
|
71
71
|
size: "xs",
|
|
@@ -183,8 +183,8 @@ var [Le, A] = Ie("filtersContext"), Re = /* @__PURE__ */ _({
|
|
|
183
183
|
until: {}
|
|
184
184
|
},
|
|
185
185
|
emits: ["navigate"],
|
|
186
|
-
setup(e, { emit:
|
|
187
|
-
let r = e,
|
|
186
|
+
setup(e, { emit: t }) {
|
|
187
|
+
let r = e, i = t, { actionGroup: s } = A(), c = l(), f = d(() => {
|
|
188
188
|
let { from: e, until: t } = r;
|
|
189
189
|
return e === null || t === null || e.equals(t) ? "day" : e.month === 1 && e.day === 1 && t.month === 12 && t.day === 31 && e.year === t.year ? "year" : e.day === 1 && t.equals(e.add({ months: 1 }).add({ days: -1 })) ? "month" : e.add({ days: 6 }).equals(t) ? "week" : "custom";
|
|
190
190
|
}), p = d(() => {
|
|
@@ -209,35 +209,35 @@ var [Le, A] = Ie("filtersContext"), Re = /* @__PURE__ */ _({
|
|
|
209
209
|
function v(e) {
|
|
210
210
|
let t = Temporal.Now.plainDateISO();
|
|
211
211
|
if (r.from === null) {
|
|
212
|
-
|
|
212
|
+
i("navigate", t, t);
|
|
213
213
|
return;
|
|
214
214
|
}
|
|
215
|
-
let n = r.from,
|
|
215
|
+
let n = r.from, a = r.until ?? n;
|
|
216
216
|
switch (f.value) {
|
|
217
217
|
case "day": {
|
|
218
218
|
let t = n.add({ days: e });
|
|
219
|
-
|
|
219
|
+
i("navigate", t, t);
|
|
220
220
|
break;
|
|
221
221
|
}
|
|
222
222
|
case "week":
|
|
223
|
-
|
|
223
|
+
i("navigate", n.add({ weeks: e }), a.add({ weeks: e }));
|
|
224
224
|
break;
|
|
225
225
|
case "month": {
|
|
226
226
|
let t = n.add({ months: e });
|
|
227
|
-
|
|
227
|
+
i("navigate", t, t.add({ months: 1 }).add({ days: -1 }));
|
|
228
228
|
break;
|
|
229
229
|
}
|
|
230
230
|
case "year": {
|
|
231
231
|
let t = n.add({ years: e });
|
|
232
|
-
|
|
232
|
+
i("navigate", t, t.with({
|
|
233
233
|
day: 31,
|
|
234
234
|
month: 12
|
|
235
235
|
}));
|
|
236
236
|
break;
|
|
237
237
|
}
|
|
238
238
|
case "custom": {
|
|
239
|
-
let t =
|
|
240
|
-
|
|
239
|
+
let t = a.since(n, { largestUnit: "day" }).days + 1;
|
|
240
|
+
i("navigate", n.add({ days: e * t }), a.add({ days: e * t }));
|
|
241
241
|
break;
|
|
242
242
|
}
|
|
243
243
|
}
|
|
@@ -248,7 +248,7 @@ var [Le, A] = Ie("filtersContext"), Re = /* @__PURE__ */ _({
|
|
|
248
248
|
name: () => p.value,
|
|
249
249
|
execute: () => v(-1),
|
|
250
250
|
group: s,
|
|
251
|
-
icon: () =>
|
|
251
|
+
icon: () => n,
|
|
252
252
|
keyboardShortcut: { key: "ArrowLeft" }
|
|
253
253
|
}), ee = k({
|
|
254
254
|
id: `${r.filterId}-next`,
|
|
@@ -265,12 +265,12 @@ var [Le, A] = Ie("filtersContext"), Re = /* @__PURE__ */ _({
|
|
|
265
265
|
name: () => c.t("component.filters_date_navigation.today"),
|
|
266
266
|
execute: () => {
|
|
267
267
|
let e = Temporal.Now.plainDateISO();
|
|
268
|
-
|
|
268
|
+
i("navigate", e, e);
|
|
269
269
|
},
|
|
270
270
|
group: s,
|
|
271
|
-
icon: () =>
|
|
271
|
+
icon: () => a,
|
|
272
272
|
keyboardShortcut: { key: "T" }
|
|
273
|
-
})), (e,
|
|
273
|
+
})), (e, t) => (b(), m(u, null, [
|
|
274
274
|
g(w(E), {
|
|
275
275
|
action: w(y),
|
|
276
276
|
"is-current-context-only": !1
|
|
@@ -284,8 +284,8 @@ var [Le, A] = Ie("filtersContext"), Re = /* @__PURE__ */ _({
|
|
|
284
284
|
"aria-label": e,
|
|
285
285
|
type: "button",
|
|
286
286
|
class: "flex h-full w-4 shrink-0 items-center justify-center rounded-none! hover:bg-fg-primary/2 dark:hover:bg-fg-primary/5",
|
|
287
|
-
onClick:
|
|
288
|
-
}, [g(w(
|
|
287
|
+
onClick: t[0] ||= (e) => v(-1)
|
|
288
|
+
}, [g(w(n), { class: "size-3.5 text-primary" })], 8, He)]),
|
|
289
289
|
_: 2
|
|
290
290
|
}, 1024)]),
|
|
291
291
|
_: 2
|
|
@@ -299,16 +299,16 @@ var [Le, A] = Ie("filtersContext"), Re = /* @__PURE__ */ _({
|
|
|
299
299
|
action: w(ee),
|
|
300
300
|
"is-current-context-only": !1
|
|
301
301
|
}, {
|
|
302
|
-
default: T(({ label: e, keyboardShortcut:
|
|
302
|
+
default: T(({ label: e, keyboardShortcut: n }) => [g(w(le), {
|
|
303
303
|
label: e,
|
|
304
|
-
"keyboard-shortcut":
|
|
304
|
+
"keyboard-shortcut": n
|
|
305
305
|
}, {
|
|
306
306
|
default: T(() => [g(w(D), null, {
|
|
307
307
|
default: T(() => [h("button", {
|
|
308
308
|
"aria-label": e,
|
|
309
309
|
type: "button",
|
|
310
310
|
class: "flex h-full w-4 shrink-0 items-center justify-center rounded-none! hover:bg-fg-primary/2 dark:hover:bg-fg-primary/5",
|
|
311
|
-
onClick:
|
|
311
|
+
onClick: t[1] ||= (e) => v(1)
|
|
312
312
|
}, [g(w(o), { class: "size-3.5 text-primary" })], 8, Ue)]),
|
|
313
313
|
_: 2
|
|
314
314
|
}, 1024)]),
|
|
@@ -950,42 +950,42 @@ var qt = /* @__PURE__ */ _({
|
|
|
950
950
|
},
|
|
951
951
|
emits: ["submit"],
|
|
952
952
|
setup(e, { emit: t }) {
|
|
953
|
-
let
|
|
954
|
-
schema: c.object({ value: c.number().min(
|
|
953
|
+
let n = e, i = t, a = l(), o = ae(), s = Fe({
|
|
954
|
+
schema: c.object({ value: c.number().min(n.filter.min ?? -(2 ** 53 - 1)).max(n.filter.max ?? 2 ** 53 - 1).nullable() }),
|
|
955
955
|
onSubmit: (e) => {
|
|
956
956
|
i("submit", {
|
|
957
|
-
operator:
|
|
957
|
+
operator: n.initialValue.operator,
|
|
958
958
|
value: e.value
|
|
959
959
|
});
|
|
960
960
|
}
|
|
961
|
-
}), u = s.register("value",
|
|
961
|
+
}), u = s.register("value", n.initialValue.value);
|
|
962
962
|
return (e, t) => (b(), f(w(Te), {
|
|
963
963
|
form: w(s),
|
|
964
964
|
size: "xxs"
|
|
965
965
|
}, {
|
|
966
966
|
default: T(() => [
|
|
967
967
|
g(w(be), {
|
|
968
|
-
title:
|
|
968
|
+
title: n.filter.label,
|
|
969
969
|
"hide-description": !0,
|
|
970
|
-
description:
|
|
970
|
+
description: n.filter.label
|
|
971
971
|
}, null, 8, ["title", "description"]),
|
|
972
972
|
g(w(me), null, {
|
|
973
973
|
default: T(() => [h("label", {
|
|
974
974
|
for: w(o),
|
|
975
975
|
class: "sr-only"
|
|
976
|
-
}, ie(
|
|
976
|
+
}, ie(n.filter.label), 9, Yt), g(w(De), y(w(Ae)(w(u)), {
|
|
977
977
|
id: w(o),
|
|
978
|
-
"format-options":
|
|
979
|
-
placeholder:
|
|
978
|
+
"format-options": n.filter.formatOptions,
|
|
979
|
+
placeholder: n.filter.placeholder ?? w(a).t("component.filters_number_dialog.placeholder")
|
|
980
980
|
}), {
|
|
981
|
-
right: T(() => [
|
|
981
|
+
right: T(() => [n.filter.customUnit === void 0 ? p("", !0) : (b(), f(w(O), {
|
|
982
982
|
key: 0,
|
|
983
|
-
text:
|
|
983
|
+
text: n.filter.customUnit,
|
|
984
984
|
truncate: !1,
|
|
985
985
|
class: "mr-sm text-xs text-tertiary"
|
|
986
986
|
}, null, 8, ["text"])), w(u).value.value === null ? p("", !0) : (b(), f(w(Ee), {
|
|
987
987
|
key: 1,
|
|
988
|
-
icon: w(
|
|
988
|
+
icon: w(r),
|
|
989
989
|
label: w(a).t("component.filters_number_dialog.clear"),
|
|
990
990
|
size: "xs",
|
|
991
991
|
variant: "tertiary",
|
|
@@ -1052,151 +1052,151 @@ function an(e) {
|
|
|
1052
1052
|
function on(e) {
|
|
1053
1053
|
return typeof e == "object" && !!e && "items" in e && "pagination" in e;
|
|
1054
1054
|
}
|
|
1055
|
-
function sn(
|
|
1056
|
-
let
|
|
1057
|
-
switch (
|
|
1055
|
+
function sn(n) {
|
|
1056
|
+
let r = l(), i = Me(), a = i.create(Xt), o = i.create(qt), s = i.create(Jt), c = ae(), u = x(ee()), f = x(null), p = x(/* @__PURE__ */ new Set()), m = n.filters.map((e) => {
|
|
1057
|
+
switch (e.type) {
|
|
1058
1058
|
case "multi-select":
|
|
1059
1059
|
case "multi-autocomplete": return {
|
|
1060
1060
|
action: k({
|
|
1061
|
-
id:
|
|
1062
|
-
name:
|
|
1063
|
-
group:
|
|
1064
|
-
icon: () =>
|
|
1061
|
+
id: e.key,
|
|
1062
|
+
name: e.label,
|
|
1063
|
+
group: n.actionGroup,
|
|
1064
|
+
icon: () => e.icon ?? null,
|
|
1065
1065
|
multiSelectSubActions: !0,
|
|
1066
1066
|
parentScoreInfluence: "none",
|
|
1067
1067
|
searchSubActionsConfig: {
|
|
1068
1068
|
minLength: 1,
|
|
1069
|
-
placeholder:
|
|
1069
|
+
placeholder: r.t("component.filters_listbox.filter_placeholder")
|
|
1070
1070
|
},
|
|
1071
|
-
subActions: async (
|
|
1072
|
-
let
|
|
1073
|
-
id: K.stringify(
|
|
1074
|
-
name:
|
|
1071
|
+
subActions: async (t) => {
|
|
1072
|
+
let n = await e.options(t.searchInput, t.getPaginationOffsetForSubActionId), r = on(n) ? n.items : n, i = u.value[e.key].value, a = (t.getPaginationOffsetForSubActionId(e.key) === null ? [...i, ...r.filter((e) => !i.some((t) => K.stringify(t) === K.stringify(e)))] : r.filter((e) => !i.some((t) => K.stringify(t) === K.stringify(e)))).map((t) => k({
|
|
1073
|
+
id: K.stringify(t),
|
|
1074
|
+
name: e.displayFn(t),
|
|
1075
1075
|
execute: () => {
|
|
1076
|
-
let
|
|
1077
|
-
r.some((
|
|
1078
|
-
...
|
|
1079
|
-
value: r.filter((
|
|
1080
|
-
} : u.value[
|
|
1081
|
-
...
|
|
1082
|
-
value: [...r,
|
|
1076
|
+
let n = u.value[e.key], r = n.value;
|
|
1077
|
+
r.some((e) => K.stringify(e) === K.stringify(t)) ? u.value[e.key] = {
|
|
1078
|
+
...n,
|
|
1079
|
+
value: r.filter((e) => K.stringify(e) !== K.stringify(t))
|
|
1080
|
+
} : u.value[e.key] = {
|
|
1081
|
+
...n,
|
|
1082
|
+
value: [...r, t]
|
|
1083
1083
|
};
|
|
1084
1084
|
},
|
|
1085
1085
|
parentScoreInfluence: "direct",
|
|
1086
|
-
selected: () => u.value[
|
|
1087
|
-
skipFilterScoring:
|
|
1086
|
+
selected: () => u.value[e.key].value.some((e) => K.stringify(e) === K.stringify(t)),
|
|
1087
|
+
skipFilterScoring: e.type === "multi-autocomplete" && !i.some((e) => K.stringify(e) === K.stringify(t))
|
|
1088
1088
|
}));
|
|
1089
|
-
return on(
|
|
1089
|
+
return on(n) ? {
|
|
1090
1090
|
actions: a,
|
|
1091
|
-
pagination: { nextOffset:
|
|
1091
|
+
pagination: { nextOffset: n.pagination.nextOffset }
|
|
1092
1092
|
} : a;
|
|
1093
1093
|
}
|
|
1094
1094
|
}),
|
|
1095
|
-
key:
|
|
1095
|
+
key: e.key
|
|
1096
1096
|
};
|
|
1097
1097
|
case "boolean": return {
|
|
1098
1098
|
action: k({
|
|
1099
|
-
id:
|
|
1100
|
-
name:
|
|
1101
|
-
disabledReason: () => u.value[
|
|
1099
|
+
id: e.key,
|
|
1100
|
+
name: e.entityLabel,
|
|
1101
|
+
disabledReason: () => u.value[e.key] === null ? null : r.t("component.filters.boolean_filter_already_active"),
|
|
1102
1102
|
execute: () => {
|
|
1103
|
-
u.value[
|
|
1103
|
+
u.value[e.key] = !0;
|
|
1104
1104
|
},
|
|
1105
|
-
group:
|
|
1106
|
-
icon: () =>
|
|
1105
|
+
group: n.actionGroup,
|
|
1106
|
+
icon: () => e.icon ?? null,
|
|
1107
1107
|
parentScoreInfluence: "none"
|
|
1108
1108
|
}),
|
|
1109
|
-
key:
|
|
1109
|
+
key: e.key,
|
|
1110
1110
|
searchSubActionsConfig: { placeholder: "Filter..." }
|
|
1111
1111
|
};
|
|
1112
1112
|
case "number": return {
|
|
1113
1113
|
action: k({
|
|
1114
|
-
id:
|
|
1115
|
-
name:
|
|
1114
|
+
id: e.key,
|
|
1115
|
+
name: e.label,
|
|
1116
1116
|
execute: () => {
|
|
1117
|
-
|
|
1118
|
-
filter:
|
|
1119
|
-
initialValue: u.value[
|
|
1120
|
-
onSubmit: (
|
|
1121
|
-
u.value[
|
|
1117
|
+
a.open({
|
|
1118
|
+
filter: e,
|
|
1119
|
+
initialValue: u.value[e.key],
|
|
1120
|
+
onSubmit: (t) => {
|
|
1121
|
+
u.value[e.key] = t, a.close();
|
|
1122
1122
|
}
|
|
1123
1123
|
});
|
|
1124
1124
|
},
|
|
1125
|
-
group:
|
|
1126
|
-
icon: () =>
|
|
1125
|
+
group: n.actionGroup,
|
|
1126
|
+
icon: () => e.icon ?? null,
|
|
1127
1127
|
parentScoreInfluence: "none"
|
|
1128
1128
|
}),
|
|
1129
|
-
key:
|
|
1129
|
+
key: e.key
|
|
1130
1130
|
};
|
|
1131
1131
|
case "date": return {
|
|
1132
1132
|
action: k({
|
|
1133
|
-
id:
|
|
1134
|
-
name:
|
|
1133
|
+
id: e.key,
|
|
1134
|
+
name: e.label,
|
|
1135
1135
|
execute: () => {
|
|
1136
1136
|
o.open({
|
|
1137
|
-
filter:
|
|
1138
|
-
initialValue: u.value[
|
|
1139
|
-
onSubmit: (
|
|
1140
|
-
u.value[
|
|
1137
|
+
filter: e,
|
|
1138
|
+
initialValue: u.value[e.key],
|
|
1139
|
+
onSubmit: (t) => {
|
|
1140
|
+
u.value[e.key] = t, o.close();
|
|
1141
1141
|
}
|
|
1142
1142
|
});
|
|
1143
1143
|
},
|
|
1144
|
-
group:
|
|
1145
|
-
icon: () =>
|
|
1144
|
+
group: n.actionGroup,
|
|
1145
|
+
icon: () => e.icon ?? null,
|
|
1146
1146
|
parentScoreInfluence: "none"
|
|
1147
1147
|
}),
|
|
1148
|
-
key:
|
|
1148
|
+
key: e.key
|
|
1149
1149
|
};
|
|
1150
1150
|
case "date-range": return {
|
|
1151
1151
|
action: k({
|
|
1152
|
-
id:
|
|
1153
|
-
name:
|
|
1152
|
+
id: e.key,
|
|
1153
|
+
name: e.label,
|
|
1154
1154
|
execute: () => {
|
|
1155
1155
|
s.open({
|
|
1156
|
-
filter:
|
|
1157
|
-
initialValue: u.value[
|
|
1158
|
-
onSubmit: (
|
|
1159
|
-
u.value[
|
|
1156
|
+
filter: e,
|
|
1157
|
+
initialValue: u.value[e.key],
|
|
1158
|
+
onSubmit: (t) => {
|
|
1159
|
+
u.value[e.key] = t, s.close();
|
|
1160
1160
|
}
|
|
1161
1161
|
});
|
|
1162
1162
|
},
|
|
1163
|
-
group:
|
|
1164
|
-
icon: () =>
|
|
1163
|
+
group: n.actionGroup,
|
|
1164
|
+
icon: () => e.icon ?? null,
|
|
1165
1165
|
parentScoreInfluence: "none"
|
|
1166
1166
|
}),
|
|
1167
|
-
key:
|
|
1167
|
+
key: e.key
|
|
1168
1168
|
};
|
|
1169
1169
|
default: throw Error("Unsupported filter type");
|
|
1170
1170
|
}
|
|
1171
1171
|
}), h = k({
|
|
1172
1172
|
id: "clear-filters",
|
|
1173
1173
|
isApplicable: (e) => p.value.size > 0 && e.menuType !== "contextualMenu",
|
|
1174
|
-
name: () =>
|
|
1174
|
+
name: () => r.t("component.filters.clear_filters"),
|
|
1175
1175
|
execute: () => re(),
|
|
1176
|
-
group:
|
|
1177
|
-
icon: () =>
|
|
1176
|
+
group: n.actionGroup,
|
|
1177
|
+
icon: () => e,
|
|
1178
1178
|
keyboardShortcut: {
|
|
1179
1179
|
key: "F",
|
|
1180
1180
|
shift: !0
|
|
1181
1181
|
}
|
|
1182
1182
|
}), g = k({
|
|
1183
1183
|
id: c,
|
|
1184
|
-
name: () =>
|
|
1184
|
+
name: () => r.t("component.filters.add_filters"),
|
|
1185
1185
|
forceAsRootMenu: !0,
|
|
1186
|
-
group:
|
|
1187
|
-
icon: () =>
|
|
1188
|
-
nameAsParent:
|
|
1186
|
+
group: n.actionGroup,
|
|
1187
|
+
icon: () => t,
|
|
1188
|
+
nameAsParent: r.t("component.filters_dropdown_menu.filter"),
|
|
1189
1189
|
searchSubActionsConfig: {
|
|
1190
1190
|
minLength: 99,
|
|
1191
|
-
placeholder:
|
|
1191
|
+
placeholder: r.t("component.filters.add_filter_placeholder")
|
|
1192
1192
|
},
|
|
1193
1193
|
subActions: () => [...m.map((e) => e.action), k({
|
|
1194
1194
|
id: "add-filters-action-clear-filters",
|
|
1195
1195
|
isApplicable: (e) => p.value.size === 0 || e.menuType !== "contextualMenu" || e.metadata.filters?.hideClearAll === !0 ? !1 : e.searchInput.trim().length === 0,
|
|
1196
|
-
name: () =>
|
|
1196
|
+
name: () => r.t("component.filters.clear_filters"),
|
|
1197
1197
|
execute: () => re(),
|
|
1198
|
-
group:
|
|
1199
|
-
icon: () =>
|
|
1198
|
+
group: n.actionGroup,
|
|
1199
|
+
icon: () => e,
|
|
1200
1200
|
keyboardShortcut: {
|
|
1201
1201
|
key: "F",
|
|
1202
1202
|
shift: !0
|
|
@@ -1209,7 +1209,7 @@ function sn(e) {
|
|
|
1209
1209
|
action: ne(e.key)
|
|
1210
1210
|
})).sort((e, t) => (e.isPersistent === !0 ? 0 : 1) - (t.isPersistent === !0 ? 0 : 1)));
|
|
1211
1211
|
oe(u, () => {
|
|
1212
|
-
for (let
|
|
1212
|
+
for (let e of n.filters) v(e.key) ? p.value.add(e.key) : p.value.delete(e.key);
|
|
1213
1213
|
}, {
|
|
1214
1214
|
deep: !0,
|
|
1215
1215
|
immediate: !0
|
|
@@ -1233,7 +1233,7 @@ function sn(e) {
|
|
|
1233
1233
|
}
|
|
1234
1234
|
}
|
|
1235
1235
|
function ee() {
|
|
1236
|
-
return
|
|
1236
|
+
return n.filters.reduce((e, t) => (e[t.key] = t.defaultValue ?? te(t.key), e), {});
|
|
1237
1237
|
}
|
|
1238
1238
|
function te(e) {
|
|
1239
1239
|
switch (b(e).type) {
|
|
@@ -1260,8 +1260,8 @@ function sn(e) {
|
|
|
1260
1260
|
};
|
|
1261
1261
|
}
|
|
1262
1262
|
}
|
|
1263
|
-
function b(
|
|
1264
|
-
return
|
|
1263
|
+
function b(e) {
|
|
1264
|
+
return n.filters.find((t) => t.key === e);
|
|
1265
1265
|
}
|
|
1266
1266
|
function ne(e) {
|
|
1267
1267
|
return m.find((t) => t.key === e).action;
|
|
@@ -1273,12 +1273,12 @@ function sn(e) {
|
|
|
1273
1273
|
b(e).isPersistent !== !0 && (t && !y(e) || (u.value[e] = te(e), p.value.delete(e)));
|
|
1274
1274
|
}
|
|
1275
1275
|
function re() {
|
|
1276
|
-
for (let
|
|
1276
|
+
for (let e of n.filters) e.isPersistent !== !0 && (u.value[e.key] = te(e.key), p.value.delete(e.key));
|
|
1277
1277
|
}
|
|
1278
1278
|
Pe(h);
|
|
1279
1279
|
let ie = {
|
|
1280
1280
|
action: g,
|
|
1281
|
-
actionGroup:
|
|
1281
|
+
actionGroup: n.actionGroup,
|
|
1282
1282
|
activeFilters: _,
|
|
1283
1283
|
clearAll: re,
|
|
1284
1284
|
clearFilter: C,
|
|
@@ -2418,13 +2418,13 @@ function fr(e) {
|
|
|
2418
2418
|
var pr = /* @__PURE__ */ _({
|
|
2419
2419
|
__name: "FiltersDropdownMenu",
|
|
2420
2420
|
setup(e) {
|
|
2421
|
-
let
|
|
2421
|
+
let n = l(), { action: r } = A(), i = x(!1);
|
|
2422
2422
|
return dr("F", () => {
|
|
2423
2423
|
i.value = !0;
|
|
2424
2424
|
}), (e, a) => (b(), f(w(se), {
|
|
2425
2425
|
"is-open": i.value,
|
|
2426
2426
|
"onUpdate:isOpen": a[0] ||= (e) => i.value = e,
|
|
2427
|
-
"parent-action": w(
|
|
2427
|
+
"parent-action": w(r),
|
|
2428
2428
|
"popover-collision-padding": 10,
|
|
2429
2429
|
"is-current-context-only": !1,
|
|
2430
2430
|
"popover-align": "start",
|
|
@@ -2432,9 +2432,9 @@ var pr = /* @__PURE__ */ _({
|
|
|
2432
2432
|
}, {
|
|
2433
2433
|
default: T(() => [g(w(ue), {
|
|
2434
2434
|
"keyboard-shortcut": { key: "F" },
|
|
2435
|
-
"icon-left": w(
|
|
2436
|
-
label: w(
|
|
2437
|
-
"tooltip-label": w(
|
|
2435
|
+
"icon-left": w(t),
|
|
2436
|
+
label: w(n).t("component.filters_dropdown_menu.filter"),
|
|
2437
|
+
"tooltip-label": w(n).t("component.filters_dropdown_menu.add_filter"),
|
|
2438
2438
|
variant: "secondary"
|
|
2439
2439
|
}, null, 8, [
|
|
2440
2440
|
"icon-left",
|
|
@@ -2,7 +2,7 @@ import e from "zod";
|
|
|
2
2
|
import { useI18n as t } from "vue-i18n";
|
|
3
3
|
import { computed as n, ref as r } from "vue";
|
|
4
4
|
import { Temporal as i } from "temporal-polyfill";
|
|
5
|
-
//#region ../../../node_modules/.pnpm/@wisemen+vue-core-dates@1.1.0_temporal-polyfill@0.3.2_vue-i18n@11.4.8_vue@3.5.
|
|
5
|
+
//#region ../../../node_modules/.pnpm/@wisemen+vue-core-dates@1.1.0_temporal-polyfill@0.3.2_vue-i18n@11.4.8_vue@3.5.42_typesc_04df45ac11a613e7f392b23bc31cbaf9/node_modules/@wisemen/vue-core-dates/dist/index.js
|
|
6
6
|
var a = class {
|
|
7
7
|
static getCurrentLocale() {
|
|
8
8
|
let e = typeof navigator < "u" ? navigator.language : void 0;
|