@feedmepos/mf-inventory-portal 1.3.7-dev.1 → 1.3.7
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/{App-CJwfIjMX.js → App-D1-fT3jF.js} +3 -3
- package/dist/ApprovalView-0FbsslVD.js +226 -0
- package/dist/{BindingsDialog-DCrRYbJJ.js → BindingsDialog-DeavyPY-.js} +5 -5
- package/dist/{BindingsPicker-B6gakVEN.js → BindingsPicker-BGzhKq8G.js} +3 -3
- package/dist/{BindingsTable-IVHY6t4x.js → BindingsTable-Dr9hWkE1.js} +5 -5
- package/dist/{ClosingDraftView-D1CJtcPl.js → ClosingDraftView-6gwWEWWB.js} +57 -57
- package/dist/{ClosingHistoryView-DMGhfS9R.js → ClosingHistoryView-D4rNnlsq.js} +4 -4
- package/dist/{ClosingTemplateView-Djo0juNV.js → ClosingTemplateView-DxCLH1GH.js} +16 -16
- package/dist/{DeliveryOrderPrintPreview-yIr0KaZ-.js → DeliveryOrderPrintPreview-D-XeZX-z.js} +17 -17
- package/dist/{FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-CboUeuGd.js → FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-DeoaPLQm.js} +14 -14
- package/dist/{FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang--Kdh7Lws.js → FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-BMhSHZ3Z.js} +2 -2
- package/dist/{FmMultiselectDialog-Dfd2CP8Q.js → FmMultiselectDialog-BQZmTWDb.js} +2 -2
- package/dist/{FmMultiselectDialog-CmT3UKF6.js → FmMultiselectDialog-DJFi54mG.js} +1 -1
- package/dist/{FmUnitInput.vue_vue_type_script_setup_true_lang-C0nfecTl.js → FmUnitInput.vue_vue_type_script_setup_true_lang-DAivpdPp.js} +4 -4
- package/dist/{ImportView-M6gfAQRh.js → ImportView-DPQY0ELT.js} +6 -6
- package/dist/{IngredientBindedItem.vue_vue_type_script_setup_true_lang-Cl1U0OoC.js → IngredientBindedItem.vue_vue_type_script_setup_true_lang-DeVYXEzb.js} +1 -1
- package/dist/{IngredientGroupView-C29gfI37.js → IngredientGroupView-5AuPbMDz.js} +7 -7
- package/dist/{IngredientsView-DnM7eqv0.js → IngredientsView-qMotWYnL.js} +17 -17
- package/dist/{IntegrationView-CxXZ90Dg.js → IntegrationView-CVdwhNTA.js} +13 -13
- package/dist/{InventoryBindingForm-FImVaTic.js → InventoryBindingForm-B5KUYKIu.js} +1 -1
- package/dist/{InventoryBindingForm.vue_vue_type_script_setup_true_lang-Bay13kwv.js → InventoryBindingForm.vue_vue_type_script_setup_true_lang-pbyMU879.js} +5 -5
- package/dist/{InventoryBindingSummary-DwHKeLyV.js → InventoryBindingSummary-Bm3A2kmC.js} +1 -1
- package/dist/{NumberPrecisionInput.vue_vue_type_script_setup_true_lang-cViXSxPS.js → NumberPrecisionInput.vue_vue_type_script_setup_true_lang-NnoVkA8W.js} +1 -1
- package/dist/{PremiumBadge.vue_vue_type_script_setup_true_lang-CCF4_Pyr.js → PremiumBadge.vue_vue_type_script_setup_true_lang-Dp4gFbs5.js} +1 -1
- package/dist/PublishView-DOIiAeDK.js +208 -0
- package/dist/{PurchaseOrderPrintPreview-CJSISF6B.js → PurchaseOrderPrintPreview-BE-8EJFv.js} +12 -12
- package/dist/ReceiveRequestView-ur3OeHuv.js +2802 -0
- package/dist/{RecipeView-HugMCN1V.js → RecipeView-CM-BrVSe.js} +21 -22
- package/dist/{StockView-B3hLSoWp.js → StockView-DDqlms0m.js} +20 -21
- package/dist/{SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-CuFB8tHC.js → SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-CcQ6bBWG.js} +1 -1
- package/dist/{SupplierView-DK9liRuA.js → SupplierView-CM2PrtHi.js} +14 -14
- package/dist/{SurchargeView-Cnz3QPAF.js → SurchargeView-q2NfASMH.js} +8 -8
- package/dist/{SystemTrailDialog.vue_vue_type_script_setup_true_lang-BsesD9UR.js → SystemTrailDialog.vue_vue_type_script_setup_true_lang-BbZQZQTQ.js} +2 -2
- package/dist/{TemplatePublishDialog.vue_vue_type_script_setup_true_lang-DHvOhMtd.js → TemplatePublishDialog.vue_vue_type_script_setup_true_lang-Bp3joqMK.js} +67 -60
- package/dist/TransferDetails.vue_vue_type_script_setup_true_lang-GhRFdMoW.js +3521 -0
- package/dist/{TransferTemplateView-hUBkM1Y0.js → TransferTemplateView-B26H_T9Q.js} +19 -20
- package/dist/{UnitCostHistoryView-gHpyp4-l.js → UnitCostHistoryView-BzumRVdx.js} +4 -4
- package/dist/{UnitDisplayControl.vue_vue_type_script_setup_true_lang-DOC0W_-a.js → UnitDisplayControl.vue_vue_type_script_setup_true_lang-CfWpv2Mv.js} +4 -4
- package/dist/{UnitView-Bt4EY0DU.js → UnitView-Cxfg--TU.js} +9 -9
- package/dist/{WarehouseView-C7Aa5MQz.js → WarehouseView-CvoafTrd.js} +7 -7
- package/dist/{WastageTemplateView-B59wFpmS.js → WastageTemplateView-Bqd4Wp3d.js} +16 -16
- package/dist/{app-Bd2n830Y.js → app-CrrDFeMj.js} +3181 -3267
- package/dist/app.d.ts +0 -32
- package/dist/app.js +2 -2
- package/dist/{closing-template-CbIMkUm-.js → closing-template-Ew74NLQj.js} +1 -1
- package/dist/{component-kqxARxvM.js → component-DpCUABT3.js} +21 -30
- package/dist/components/row-action.enum.d.ts +0 -3
- package/dist/{date2-CH3V-Ucj.js → date2-Bklbk2g-.js} +1 -1
- package/dist/{dayjs.min-0pcsGWEW.js → dayjs.min-B463GIlc.js} +1 -1
- package/dist/{decimal-DqMF4lgE.js → decimal-Dm2vbfDq.js} +2 -2
- package/dist/defineDeepModel-SD5OUepJ.js +19 -0
- package/dist/{duplicate-template-VcCheWzy.js → duplicate-template-CR79OmLy.js} +1 -1
- package/dist/{export-DAK4eXwZ.js → export-CQJcxfPC.js} +1 -1
- package/dist/{inventory-core-dart.default-BVmmW4IN.js → feature-CZHvliez.js} +1395 -322
- package/dist/{format-time-from-id-C1atPaNT.js → format-time-from-id-61ydd8RS.js} +1 -1
- package/dist/{format-unit-display-B4zjXa1i.js → format-unit-display-BLtW28yU.js} +13 -13
- package/dist/{import-export.helper-DWUpF27a.js → import-export.helper-uhFwjH6X.js} +6 -6
- package/dist/{index-Co-3wUpY.js → index-CouegIcG.js} +1 -1
- package/dist/{index-DoyDKyP_.js → index-Dx5HvWR_.js} +1 -1
- package/dist/{index-BFpquHWG.js → index-uA6bkf1x.js} +3 -3
- package/dist/{lodash-BsMM-AaB.js → lodash-CjyamSgJ.js} +1 -1
- package/dist/{lz-string-BfBty02S.js → lz-string-BbZdMrTL.js} +1 -1
- package/dist/{netsuite-B86m9YM_.js → netsuite-2v3F8ILe.js} +3 -3
- package/dist/{number-Bu93lKcU.js → number-BYbxsJHr.js} +3 -3
- package/dist/{purchase-order-template-DDmIZDfJ.js → purchase-order-template-s1AiueV_.js} +1 -1
- package/dist/router/name.d.ts +0 -1
- package/dist/{row-action.enum-Co_O4qD9.js → row-action.enum-BcW_L_nE.js} +3 -11
- package/dist/{rules-BXeKMOa6.js → rules-C7L-LFOd.js} +2 -2
- package/dist/{stock-BkjUFSH-.js → stock-CvYOcgWb.js} +3 -3
- package/dist/{stock-D6A9nUUq.js → stock-D2s88pz1.js} +1 -1
- package/dist/stores/feature.d.ts +0 -2
- package/dist/style.css +1 -1
- package/dist/{supplier-BEFK8KT8.js → supplier-DmobM7mD.js} +2 -2
- package/dist/{surcharge-BKuJQ1bw.js → surcharge-BdZOVfi0.js} +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{use-ingredient-select-dialog-CtkHGZVI.js → use-ingredient-select-dialog-BUCJBHjV.js} +2 -2
- package/dist/{use-inventory-binding-dialog-Df4UAdJI.js → use-inventory-binding-dialog-DiN1hBIm.js} +2 -2
- package/dist/{use-template-enabled-locations-2-CNT1brYI.js → use-template-enabled-locations-CmH6I2cy.js} +33 -21
- package/dist/views/receive-request/composables/use-receive-request-table.d.ts +0 -4
- package/dist/views/transfer-template/components/transfer-template-form/composables/use-template-enabled-locations.d.ts +7 -93
- package/dist/vue-i18n-D0Q6LFcu.js +2365 -0
- package/dist/{xlsx-Dig-xBj4.js → xlsx-D4PML26z.js} +398 -398
- package/dist/{xlsx.util-R4tPgyBp.js → xlsx.util-BWLcCmO_.js} +1 -1
- package/package.json +4 -7
- package/dist/ApprovalView-DOq2oFvo.js +0 -241
- package/dist/PublishView-D8aVGgPP.js +0 -234
- package/dist/ReceiveRequestView-DeOwJD3K.js +0 -2817
- package/dist/SettingsView-BqNC4kXc.js +0 -695
- package/dist/TransferDetails.vue_vue_type_script_setup_true_lang-xg5Ac0I2.js +0 -3790
- package/dist/defineDeepModel-nM-22Ofl.js +0 -19
- package/dist/feature-D9W_Z06D.js +0 -1081
- package/dist/modules/print-template/api/print-template.d.ts +0 -29
- package/dist/modules/print-template/components/BlockConfigPanel.vue.d.ts +0 -19
- package/dist/modules/print-template/components/CustomPrintTemplatePreview.vue.d.ts +0 -25
- package/dist/modules/print-template/components/PrintTemplateEditorDialog.vue.d.ts +0 -45
- package/dist/modules/print-template/components/TemplatePreview.vue.d.ts +0 -22
- package/dist/modules/print-template/composables/print-po-with-template.d.ts +0 -25
- package/dist/modules/print-template/definitions/block-definitions.d.ts +0 -88
- package/dist/modules/print-template/definitions/predefined-templates.d.ts +0 -22
- package/dist/modules/print-template/definitions/template-renderer.d.ts +0 -17
- package/dist/modules/print-template/index.d.ts +0 -11
- package/dist/modules/print-template/store/print-template.d.ts +0 -170
- package/dist/modules/print-template/types/print-data.d.ts +0 -52
- package/dist/modules/print-template/utils/sanitize-html.d.ts +0 -32
- package/dist/predefined-templates-swTNxWXc.js +0 -4542
- package/dist/views/settings/SettingsView.vue.d.ts +0 -2
- package/dist/views/transfer-template/components/transfer-template-form/composables/use-template-enabled-locations-2.d.ts +0 -13
- package/dist/vue-i18n-BaovYGY4.js +0 -2365
package/dist/{use-ingredient-select-dialog-CtkHGZVI.js → use-ingredient-select-dialog-BUCJBHjV.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineStore as y } from "pinia";
|
|
2
|
-
import { a as S } from "./app-
|
|
3
|
-
import { a as b } from "./FmMultiselectDialog-
|
|
2
|
+
import { a as S } from "./app-CrrDFeMj.js";
|
|
3
|
+
import { a as b } from "./FmMultiselectDialog-BQZmTWDb.js";
|
|
4
4
|
import { useDialog as A } from "@feedmepos/ui-library";
|
|
5
5
|
import { useI18n as I } from "@feedmepos/mf-common";
|
|
6
6
|
const B = y(
|
package/dist/{use-inventory-binding-dialog-Df4UAdJI.js → use-inventory-binding-dialog-DiN1hBIm.js}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as g } from "./FmMultiselectDialog-
|
|
2
|
-
import { a as P } from "./app-
|
|
1
|
+
import { a as g } from "./FmMultiselectDialog-BQZmTWDb.js";
|
|
2
|
+
import { a as P } from "./app-CrrDFeMj.js";
|
|
3
3
|
import { useDialog as E } from "@feedmepos/ui-library";
|
|
4
4
|
function A() {
|
|
5
5
|
const u = P(), _ = E();
|
|
@@ -1,17 +1,14 @@
|
|
|
1
|
-
import { a as A } from "./FmMultiselectDialog-
|
|
2
|
-
import { u as S } from "./app-
|
|
3
|
-
import { useI18n as v, useCoreStore as
|
|
4
|
-
import { useDialog as _, components as
|
|
1
|
+
import { a as A } from "./FmMultiselectDialog-BQZmTWDb.js";
|
|
2
|
+
import { u as S } from "./app-CrrDFeMj.js";
|
|
3
|
+
import { useI18n as v, useCoreStore as d, useCustomAttributes as w } from "@feedmepos/mf-common";
|
|
4
|
+
import { useDialog as _, components as m } from "@feedmepos/ui-library";
|
|
5
5
|
import { computed as r, h as c } from "vue";
|
|
6
|
-
function
|
|
7
|
-
const p = _(), n = S(), { t: i } = v(), b = r(() =>
|
|
8
|
-
(
|
|
9
|
-
{}
|
|
10
|
-
)), { attributes: f } = w({
|
|
11
|
-
valueSource: m().restaurants,
|
|
6
|
+
function F(a) {
|
|
7
|
+
const p = _(), n = S(), { t: i } = v(), b = r(() => d().restaurants.value.reduce((e, o) => (e[o._id] = o.customAttributes || {}, e), {})), { attributes: f } = w({
|
|
8
|
+
valueSource: d().restaurants,
|
|
12
9
|
entity: "restaurant"
|
|
13
10
|
});
|
|
14
|
-
function
|
|
11
|
+
function y() {
|
|
15
12
|
var u;
|
|
16
13
|
const s = a.getLocations() ?? [], e = n.locationById, o = s.filter((t) => !e[t.doc._id]);
|
|
17
14
|
p.open({
|
|
@@ -19,28 +16,43 @@ function K(a) {
|
|
|
19
16
|
contentComponent: c(
|
|
20
17
|
A,
|
|
21
18
|
{
|
|
22
|
-
modelValue: ((u =
|
|
19
|
+
modelValue: ((u = L.value) == null ? void 0 : u.map((t) => t.doc._id)) ?? [],
|
|
23
20
|
items: n.locations.map((t) => ({
|
|
24
21
|
label: `${t.name}(${t.doc.profile.code ?? "--"})`,
|
|
25
22
|
sublabel: t.type,
|
|
26
23
|
value: t.doc._id,
|
|
27
|
-
customAttributes:
|
|
24
|
+
customAttributes: {
|
|
25
|
+
...b.value[t.doc._id],
|
|
26
|
+
state: t.doc.profile.address.state
|
|
27
|
+
}
|
|
28
28
|
})),
|
|
29
|
-
filterAttributes:
|
|
29
|
+
filterAttributes: [
|
|
30
|
+
...f.value,
|
|
31
|
+
{
|
|
32
|
+
type: "string",
|
|
33
|
+
key: "state",
|
|
34
|
+
entity: "location",
|
|
35
|
+
values: [
|
|
36
|
+
...new Set(
|
|
37
|
+
n.locations.map((t) => t.doc.profile.address.state).filter(Boolean)
|
|
38
|
+
)
|
|
39
|
+
]
|
|
40
|
+
}
|
|
41
|
+
],
|
|
30
42
|
attributeKey: "customAttributes"
|
|
31
43
|
},
|
|
32
44
|
{
|
|
33
45
|
appendList() {
|
|
34
46
|
return o.map(
|
|
35
47
|
(t) => c(
|
|
36
|
-
|
|
48
|
+
m.FmListItem,
|
|
37
49
|
{
|
|
38
50
|
label: `${t.name}(${t.doc.profile.code ?? "--"})`,
|
|
39
51
|
sublabel: "This location is not manageable by your account.",
|
|
40
52
|
disabled: !0
|
|
41
53
|
},
|
|
42
54
|
{
|
|
43
|
-
prepend: c(
|
|
55
|
+
prepend: c(m.FmCheckbox, {
|
|
44
56
|
modelValue: !0,
|
|
45
57
|
value: "",
|
|
46
58
|
disabled: !0
|
|
@@ -65,11 +77,11 @@ function K(a) {
|
|
|
65
77
|
l.length ? a.setLocations(l) : a.setLocations(null);
|
|
66
78
|
});
|
|
67
79
|
}
|
|
68
|
-
const
|
|
80
|
+
const L = r(() => {
|
|
69
81
|
var e;
|
|
70
82
|
const s = /* @__PURE__ */ new Set([...n.locations.map((o) => o.doc._id)]);
|
|
71
83
|
return (e = a.getLocations()) == null ? void 0 : e.filter((o) => s.has(o.doc._id));
|
|
72
|
-
}),
|
|
84
|
+
}), h = r(() => {
|
|
73
85
|
const s = a.getLocations();
|
|
74
86
|
return s ? s.reduce(
|
|
75
87
|
(e, o) => {
|
|
@@ -99,7 +111,7 @@ function K(a) {
|
|
|
99
111
|
];
|
|
100
112
|
});
|
|
101
113
|
return {
|
|
102
|
-
promptSelectLocations:
|
|
114
|
+
promptSelectLocations: y,
|
|
103
115
|
columnDefs: [
|
|
104
116
|
{
|
|
105
117
|
accessorKey: "restaurants",
|
|
@@ -112,9 +124,9 @@ function K(a) {
|
|
|
112
124
|
enableSorting: !1
|
|
113
125
|
}
|
|
114
126
|
],
|
|
115
|
-
rowData:
|
|
127
|
+
rowData: h
|
|
116
128
|
};
|
|
117
129
|
}
|
|
118
130
|
export {
|
|
119
|
-
|
|
131
|
+
F as u
|
|
120
132
|
};
|
|
@@ -5552,8 +5552,4 @@ export declare function useReceiveRequestTable(scope: PO_SCOPE, receiveRequestFo
|
|
|
5552
5552
|
header?: undefined;
|
|
5553
5553
|
sortUndefined?: undefined;
|
|
5554
5554
|
})[]>;
|
|
5555
|
-
showCustomPrintDialog: Ref<boolean, boolean>;
|
|
5556
|
-
customPrintHtml: Ref<string, string>;
|
|
5557
|
-
customPrintTemplateName: Ref<string, string>;
|
|
5558
|
-
customPrintIsDefault: Ref<boolean, boolean>;
|
|
5559
5555
|
};
|
|
@@ -1,99 +1,13 @@
|
|
|
1
|
+
import { type ColumnDef } from '@feedmepos/ui-library';
|
|
2
|
+
export type ActiveLocationsCount = {
|
|
3
|
+
restaurants: number | string;
|
|
4
|
+
warehouses: number | string;
|
|
5
|
+
};
|
|
1
6
|
export declare function useTemplateEnabledLocations(controller: {
|
|
2
7
|
getLocations(): FdoInventoryLocation[] | undefined | null;
|
|
3
8
|
setLocations(locations: FdoInventoryLocation[] | undefined | null): void;
|
|
4
9
|
}): {
|
|
5
|
-
enabledLocations: import("vue").ComputedRef<{
|
|
6
|
-
inventory?: {
|
|
7
|
-
_id: string;
|
|
8
|
-
updatedAt: string;
|
|
9
|
-
} | null | undefined;
|
|
10
|
-
name: string;
|
|
11
|
-
type: "restaurant" | "warehouse";
|
|
12
|
-
acceptRequest: boolean;
|
|
13
|
-
dbName: string;
|
|
14
|
-
doc: {
|
|
15
|
-
_id: string;
|
|
16
|
-
businessId: string;
|
|
17
|
-
profile: {
|
|
18
|
-
code?: string | null | undefined;
|
|
19
|
-
url?: string | null | undefined;
|
|
20
|
-
description?: string | null | undefined;
|
|
21
|
-
_id?: string | null | undefined;
|
|
22
|
-
legalName?: string | null | undefined;
|
|
23
|
-
sstRegNo?: string | null | undefined;
|
|
24
|
-
discovery?: boolean | null | undefined;
|
|
25
|
-
coverPhoto?: string | null | undefined;
|
|
26
|
-
thumbnailPhoto?: string | null | undefined;
|
|
27
|
-
photos?: string[] | null | undefined;
|
|
28
|
-
operatingHours?: {
|
|
29
|
-
0: {
|
|
30
|
-
hours: {
|
|
31
|
-
end: string;
|
|
32
|
-
start: string;
|
|
33
|
-
}[];
|
|
34
|
-
enable: boolean;
|
|
35
|
-
};
|
|
36
|
-
2: {
|
|
37
|
-
hours: {
|
|
38
|
-
end: string;
|
|
39
|
-
start: string;
|
|
40
|
-
}[];
|
|
41
|
-
enable: boolean;
|
|
42
|
-
};
|
|
43
|
-
1: {
|
|
44
|
-
hours: {
|
|
45
|
-
end: string;
|
|
46
|
-
start: string;
|
|
47
|
-
}[];
|
|
48
|
-
enable: boolean;
|
|
49
|
-
};
|
|
50
|
-
3: {
|
|
51
|
-
hours: {
|
|
52
|
-
end: string;
|
|
53
|
-
start: string;
|
|
54
|
-
}[];
|
|
55
|
-
enable: boolean;
|
|
56
|
-
};
|
|
57
|
-
4: {
|
|
58
|
-
hours: {
|
|
59
|
-
end: string;
|
|
60
|
-
start: string;
|
|
61
|
-
}[];
|
|
62
|
-
enable: boolean;
|
|
63
|
-
};
|
|
64
|
-
5: {
|
|
65
|
-
hours: {
|
|
66
|
-
end: string;
|
|
67
|
-
start: string;
|
|
68
|
-
}[];
|
|
69
|
-
enable: boolean;
|
|
70
|
-
};
|
|
71
|
-
6: {
|
|
72
|
-
hours: {
|
|
73
|
-
end: string;
|
|
74
|
-
start: string;
|
|
75
|
-
}[];
|
|
76
|
-
enable: boolean;
|
|
77
|
-
};
|
|
78
|
-
} | null | undefined;
|
|
79
|
-
tags?: string[] | null | undefined;
|
|
80
|
-
name: string;
|
|
81
|
-
address: {
|
|
82
|
-
coordinates?: number[] | null | undefined;
|
|
83
|
-
line2?: string | null | undefined;
|
|
84
|
-
state: string;
|
|
85
|
-
country: string;
|
|
86
|
-
line1: string;
|
|
87
|
-
city: string;
|
|
88
|
-
postcode: string;
|
|
89
|
-
};
|
|
90
|
-
email: string;
|
|
91
|
-
phoneNo: string;
|
|
92
|
-
regNo: string;
|
|
93
|
-
};
|
|
94
|
-
};
|
|
95
|
-
}[] | undefined>;
|
|
96
|
-
enabledLocationsSwitch: import("vue").WritableComputedRef<boolean, boolean>;
|
|
97
10
|
promptSelectLocations: () => void;
|
|
98
|
-
|
|
11
|
+
columnDefs: ColumnDef<ActiveLocationsCount>[];
|
|
12
|
+
rowData: import("vue").ComputedRef<ActiveLocationsCount[]>;
|
|
99
13
|
};
|