@amirjalili1374/ui-kit 1.3.26 → 1.3.28
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/components/layout/AppHeader.vue.d.ts +82 -50
- package/dist/components/layout/AppHeader.vue.d.ts.map +1 -1
- package/dist/components/layout/AppLayout.vue.d.ts +24 -43
- package/dist/components/layout/AppLayout.vue.d.ts.map +1 -1
- package/dist/components/layout/AppSidebar.vue.d.ts +52 -47
- package/dist/components/layout/AppSidebar.vue.d.ts.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/style.css +1 -1
- package/dist/ui-kit.cjs.js +1 -1
- package/dist/ui-kit.cjs.js.map +1 -1
- package/dist/ui-kit.es.js +1299 -459
- package/dist/ui-kit.es.js.map +1 -1
- package/package.json +1 -1
package/dist/ui-kit.es.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { capitalize, reactive, watchEffect, toRef, shallowRef, Fragment, camelize, isVNode, Comment, unref, warn, getCurrentInstance as getCurrentInstance$1, ref, computed, provide, inject, defineComponent as defineComponent$1, h, createElementVNode, normalizeStyle, normalizeClass, toValue, resolveDynamicComponent, nextTick, onScopeDispose, createVNode, mergeProps, toRefs, Text, isRef, TransitionGroup, Transition, watch, onBeforeMount, onBeforeUnmount, withDirectives, vShow, toDisplayString, effectScope, toRaw, readonly, createBlock, openBlock, withCtx, createCommentVNode, useId, onMounted, onUpdated, Teleport, createTextVNode, createElementBlock, renderSlot, onDeactivated, cloneVNode, renderList, createSlots, normalizeProps, guardReactiveProps, resolveComponent, onActivated, onBeforeUpdate, withModifiers, vModelText, withKeys, onUnmounted } from "vue";
|
|
2
|
-
import { IconHome, IconArrowBadgeLeft, IconChevronDown, IconChevronRight, IconMinus, IconPlus, IconRefresh, IconChevronLeft, IconDownload, IconPrinter, IconMaximize, IconMinimize, IconX, IconFileText, IconCheck, IconPencil, IconClock
|
|
2
|
+
import { IconHome, IconArrowBadgeLeft, IconChevronDown, IconChevronRight, IconMinus, IconPlus, IconRefresh, IconChevronLeft, IconDownload, IconPrinter, IconMaximize, IconMinimize, IconX, IconFileText, IconCheck, IconPencil, IconClock } from "@tabler/icons-vue";
|
|
3
3
|
import axios from "axios";
|
|
4
4
|
import { useDebounceFn } from "@vueuse/core";
|
|
5
5
|
import { useRouter as useRouter$1 } from "vue-router";
|
|
@@ -3886,9 +3886,9 @@ const VRow = genericComponent()({
|
|
|
3886
3886
|
});
|
|
3887
3887
|
const VSpacer = createSimpleFunctional("v-spacer", "div", "VSpacer");
|
|
3888
3888
|
const _hoisted_1$d = { class: "text-h3" };
|
|
3889
|
-
const _hoisted_2$
|
|
3890
|
-
const _hoisted_3$
|
|
3891
|
-
const _sfc_main$
|
|
3889
|
+
const _hoisted_2$7 = { class: "d-flex align-center gap-2" };
|
|
3890
|
+
const _hoisted_3$6 = { class: "d-flex align-center gap-2" };
|
|
3891
|
+
const _sfc_main$l = /* @__PURE__ */ defineComponent$1({
|
|
3892
3892
|
__name: "BaseBreadcrumb",
|
|
3893
3893
|
props: {
|
|
3894
3894
|
title: String,
|
|
@@ -3932,7 +3932,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent$1({
|
|
|
3932
3932
|
class: "text-h5 justify-md-end pa-1"
|
|
3933
3933
|
}, {
|
|
3934
3934
|
divider: withCtx(() => [
|
|
3935
|
-
createElementVNode("div", _hoisted_2$
|
|
3935
|
+
createElementVNode("div", _hoisted_2$7, [
|
|
3936
3936
|
createVNode(unref(IconArrowBadgeLeft), { stroke: "{2}" })
|
|
3937
3937
|
])
|
|
3938
3938
|
]),
|
|
@@ -3941,7 +3941,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent$1({
|
|
|
3941
3941
|
size: "16",
|
|
3942
3942
|
class: "text-secondary ml-2"
|
|
3943
3943
|
}),
|
|
3944
|
-
createElementVNode("div", _hoisted_3$
|
|
3944
|
+
createElementVNode("div", _hoisted_3$6, [
|
|
3945
3945
|
createVNode(unref(IconArrowBadgeLeft), { stroke: "{2}" })
|
|
3946
3946
|
])
|
|
3947
3947
|
]),
|
|
@@ -3965,7 +3965,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent$1({
|
|
|
3965
3965
|
};
|
|
3966
3966
|
}
|
|
3967
3967
|
});
|
|
3968
|
-
const _sfc_main$
|
|
3968
|
+
const _sfc_main$k = /* @__PURE__ */ defineComponent$1({
|
|
3969
3969
|
__name: "BaseIcon",
|
|
3970
3970
|
props: {
|
|
3971
3971
|
icon: {
|
|
@@ -6584,7 +6584,7 @@ const _hoisted_1$c = {
|
|
|
6584
6584
|
key: 0,
|
|
6585
6585
|
class: "mb-2"
|
|
6586
6586
|
};
|
|
6587
|
-
const _sfc_main$
|
|
6587
|
+
const _sfc_main$j = /* @__PURE__ */ defineComponent$1({
|
|
6588
6588
|
__name: "ConfirmDialog",
|
|
6589
6589
|
props: {
|
|
6590
6590
|
modelValue: { type: Boolean },
|
|
@@ -12592,16 +12592,16 @@ const VTooltip = genericComponent()({
|
|
|
12592
12592
|
}
|
|
12593
12593
|
});
|
|
12594
12594
|
const _hoisted_1$b = { class: "ca-item-title" };
|
|
12595
|
-
const _hoisted_2$
|
|
12596
|
-
const _hoisted_3$
|
|
12597
|
-
const _hoisted_4$
|
|
12598
|
-
const _hoisted_5$
|
|
12595
|
+
const _hoisted_2$6 = { class: "ca-item-subtitle" };
|
|
12596
|
+
const _hoisted_3$5 = { class: "ca-group-tooltip" };
|
|
12597
|
+
const _hoisted_4$3 = { class: "ca-group-tooltip-header" };
|
|
12598
|
+
const _hoisted_5$3 = { class: "ca-group-count" };
|
|
12599
12599
|
const _hoisted_6$2 = { class: "ca-group-members" };
|
|
12600
12600
|
const _hoisted_7$2 = { class: "ca-item-title" };
|
|
12601
12601
|
const _hoisted_8$2 = { class: "ca-item-subtitle" };
|
|
12602
12602
|
const _hoisted_9$2 = { class: "ca-chip-title" };
|
|
12603
12603
|
const _hoisted_10$2 = { class: "ca-chip-subtitle" };
|
|
12604
|
-
const _sfc_main$
|
|
12604
|
+
const _sfc_main$i = /* @__PURE__ */ defineComponent$1({
|
|
12605
12605
|
__name: "CustomAutocomplete",
|
|
12606
12606
|
props: {
|
|
12607
12607
|
fields: {},
|
|
@@ -12735,7 +12735,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
|
|
|
12735
12735
|
__props.displayStyle === "detailed" && resolveSubtitle(item.raw ?? item) ? {
|
|
12736
12736
|
name: "subtitle",
|
|
12737
12737
|
fn: withCtx(() => [
|
|
12738
|
-
createElementVNode("div", _hoisted_2$
|
|
12738
|
+
createElementVNode("div", _hoisted_2$6, toDisplayString(resolveSubtitle(item.raw ?? item)), 1)
|
|
12739
12739
|
]),
|
|
12740
12740
|
key: "0"
|
|
12741
12741
|
} : void 0
|
|
@@ -12746,10 +12746,10 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
|
|
|
12746
12746
|
item: item.raw ?? item,
|
|
12747
12747
|
groupMembers: getGroupMembers(item.raw ?? item)
|
|
12748
12748
|
}, () => [
|
|
12749
|
-
createElementVNode("div", _hoisted_3$
|
|
12750
|
-
createElementVNode("div", _hoisted_4$
|
|
12749
|
+
createElementVNode("div", _hoisted_3$5, [
|
|
12750
|
+
createElementVNode("div", _hoisted_4$3, [
|
|
12751
12751
|
createElementVNode("strong", null, toDisplayString(resolveTitle(item.raw ?? item)), 1),
|
|
12752
|
-
createElementVNode("span", _hoisted_5$
|
|
12752
|
+
createElementVNode("span", _hoisted_5$3, toDisplayString(getGroupMembers(item.raw ?? item).length) + " آیتم", 1)
|
|
12753
12753
|
]),
|
|
12754
12754
|
createElementVNode("div", _hoisted_6$2, [
|
|
12755
12755
|
(openBlock(true), createElementBlock(Fragment, null, renderList(getGroupMembers(item.raw ?? item), (member, idx) => {
|
|
@@ -12812,8 +12812,8 @@ const _export_sfc$1 = (sfc, props) => {
|
|
|
12812
12812
|
}
|
|
12813
12813
|
return target;
|
|
12814
12814
|
};
|
|
12815
|
-
const CustomAutocomplete = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
12816
|
-
const _sfc_main$
|
|
12815
|
+
const CustomAutocomplete = /* @__PURE__ */ _export_sfc$1(_sfc_main$i, [["__scopeId", "data-v-4c17f7bd"]]);
|
|
12816
|
+
const _sfc_main$h = /* @__PURE__ */ defineComponent$1({
|
|
12817
12817
|
__name: "MoneyInput",
|
|
12818
12818
|
props: {
|
|
12819
12819
|
modelValue: {
|
|
@@ -12920,7 +12920,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent$1({
|
|
|
12920
12920
|
}
|
|
12921
12921
|
});
|
|
12922
12922
|
const _hoisted_1$a = { class: "shamsi-date-picker" };
|
|
12923
|
-
const _sfc_main$
|
|
12923
|
+
const _sfc_main$g = /* @__PURE__ */ defineComponent$1({
|
|
12924
12924
|
__name: "ShamsiDatePicker",
|
|
12925
12925
|
props: {
|
|
12926
12926
|
modelValue: { default: "" },
|
|
@@ -13031,7 +13031,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent$1({
|
|
|
13031
13031
|
};
|
|
13032
13032
|
}
|
|
13033
13033
|
});
|
|
13034
|
-
const ShamsiDatePicker = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
13034
|
+
const ShamsiDatePicker = /* @__PURE__ */ _export_sfc$1(_sfc_main$g, [["__scopeId", "data-v-d56f50fe"]]);
|
|
13035
13035
|
function useTableSelection(items, options = {}) {
|
|
13036
13036
|
const selectedItems = ref([]);
|
|
13037
13037
|
const expandedGroups = ref(/* @__PURE__ */ new Set());
|
|
@@ -16921,13 +16921,13 @@ const _hoisted_1$9 = {
|
|
|
16921
16921
|
key: 0,
|
|
16922
16922
|
class: "page-title"
|
|
16923
16923
|
};
|
|
16924
|
-
const _hoisted_2$
|
|
16925
|
-
const _hoisted_3$
|
|
16926
|
-
const _hoisted_4$
|
|
16924
|
+
const _hoisted_2$5 = { class: "title-text" };
|
|
16925
|
+
const _hoisted_3$4 = { class: "action-buttons" };
|
|
16926
|
+
const _hoisted_4$2 = {
|
|
16927
16927
|
key: 3,
|
|
16928
16928
|
class: "selection-actions"
|
|
16929
16929
|
};
|
|
16930
|
-
const _hoisted_5$
|
|
16930
|
+
const _hoisted_5$2 = {
|
|
16931
16931
|
key: 0,
|
|
16932
16932
|
class: "selected-actions"
|
|
16933
16933
|
};
|
|
@@ -16975,7 +16975,7 @@ const _hoisted_24 = {
|
|
|
16975
16975
|
};
|
|
16976
16976
|
const _hoisted_25 = { class: "d-flex justify-space-between align-center pa-4" };
|
|
16977
16977
|
const _hoisted_26 = { class: "text-subtitle-2" };
|
|
16978
|
-
const _sfc_main$
|
|
16978
|
+
const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
|
|
16979
16979
|
...{ inheritAttrs: false },
|
|
16980
16980
|
__name: "CustomDataTable",
|
|
16981
16981
|
props: {
|
|
@@ -17885,9 +17885,9 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
|
|
|
17885
17885
|
var _a;
|
|
17886
17886
|
return openBlock(), createElementBlock(Fragment, null, [
|
|
17887
17887
|
props.title ? (openBlock(), createElementBlock("div", _hoisted_1$9, [
|
|
17888
|
-
createElementVNode("h3", _hoisted_2$
|
|
17888
|
+
createElementVNode("h3", _hoisted_2$5, toDisplayString(props.title), 1)
|
|
17889
17889
|
])) : createCommentVNode("", true),
|
|
17890
|
-
createElementVNode("div", _hoisted_3$
|
|
17890
|
+
createElementVNode("div", _hoisted_3$4, [
|
|
17891
17891
|
((_a = props.actions) == null ? void 0 : _a.includes("create")) ? (openBlock(), createBlock(VBtn, {
|
|
17892
17892
|
key: 0,
|
|
17893
17893
|
color: "green",
|
|
@@ -17920,7 +17920,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
|
|
|
17920
17920
|
])]),
|
|
17921
17921
|
_: 1
|
|
17922
17922
|
}, 8, ["onClick", "loading"])) : createCommentVNode("", true),
|
|
17923
|
-
props.selectable && hasSelection.value ? (openBlock(), createElementBlock("div", _hoisted_4$
|
|
17923
|
+
props.selectable && hasSelection.value ? (openBlock(), createElementBlock("div", _hoisted_4$2, [
|
|
17924
17924
|
createVNode(VChip, {
|
|
17925
17925
|
color: "primary",
|
|
17926
17926
|
class: "me-2"
|
|
@@ -17947,7 +17947,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
|
|
|
17947
17947
|
appear: ""
|
|
17948
17948
|
}, {
|
|
17949
17949
|
default: withCtx(() => [
|
|
17950
|
-
props.bulkMode && hasValidSelection.value || props.enableGroupDelete && hasSelection.value ? (openBlock(), createElementBlock("div", _hoisted_5$
|
|
17950
|
+
props.bulkMode && hasValidSelection.value || props.enableGroupDelete && hasSelection.value ? (openBlock(), createElementBlock("div", _hoisted_5$2, [
|
|
17951
17951
|
props.enableGroupDelete ? (openBlock(), createBlock(VBtn, {
|
|
17952
17952
|
key: 0,
|
|
17953
17953
|
color: "red",
|
|
@@ -18684,7 +18684,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
|
|
|
18684
18684
|
disabled: isHeaderDisabled(header),
|
|
18685
18685
|
clearable: "",
|
|
18686
18686
|
variant: "outlined"
|
|
18687
|
-
}, null, 8, ["modelValue", "onUpdate:modelValue", "label", "items", "item-title", "item-value", "return-object", "multiple", "chips", "closable-chips", "disabled"])) : isMoneyHeader(header) ? (openBlock(), createBlock(_sfc_main$
|
|
18687
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue", "label", "items", "item-title", "item-value", "return-object", "multiple", "chips", "closable-chips", "disabled"])) : isMoneyHeader(header) ? (openBlock(), createBlock(_sfc_main$h, {
|
|
18688
18688
|
key: 2,
|
|
18689
18689
|
modelValue: formModel.value[resolveHeaderKey(header)],
|
|
18690
18690
|
"onUpdate:modelValue": ($event) => formModel.value[resolveHeaderKey(header)] = $event,
|
|
@@ -19070,7 +19070,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
|
|
|
19070
19070
|
}
|
|
19071
19071
|
});
|
|
19072
19072
|
const _hoisted_1$8 = { class: "description-input" };
|
|
19073
|
-
const _sfc_main$
|
|
19073
|
+
const _sfc_main$e = /* @__PURE__ */ defineComponent$1({
|
|
19074
19074
|
__name: "DescriptionInput",
|
|
19075
19075
|
props: {
|
|
19076
19076
|
modelValue: { default: "" },
|
|
@@ -19192,7 +19192,7 @@ ${newLineNumber} - `;
|
|
|
19192
19192
|
};
|
|
19193
19193
|
}
|
|
19194
19194
|
});
|
|
19195
|
-
const DescriptionInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
19195
|
+
const DescriptionInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$e, [["__scopeId", "data-v-e8b64ecb"]]);
|
|
19196
19196
|
var mdiAlertCircle = "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z";
|
|
19197
19197
|
var mdiArrowRight = "M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z";
|
|
19198
19198
|
var mdiCheckCircle = "M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M10 17L5 12L6.41 10.59L10 14.17L17.59 6.58L19 8L10 17Z";
|
|
@@ -19224,7 +19224,7 @@ const icons = {
|
|
|
19224
19224
|
contentCopy: mdiContentCopy
|
|
19225
19225
|
};
|
|
19226
19226
|
const _hoisted_1$7 = { class: "download-title" };
|
|
19227
|
-
const _sfc_main$
|
|
19227
|
+
const _sfc_main$d = /* @__PURE__ */ defineComponent$1({
|
|
19228
19228
|
...{
|
|
19229
19229
|
inheritAttrs: false
|
|
19230
19230
|
},
|
|
@@ -19342,18 +19342,18 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent$1({
|
|
|
19342
19342
|
};
|
|
19343
19343
|
}
|
|
19344
19344
|
});
|
|
19345
|
-
const DownloadButton = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
19345
|
+
const DownloadButton = /* @__PURE__ */ _export_sfc$1(_sfc_main$d, [["__scopeId", "data-v-0a911831"]]);
|
|
19346
19346
|
const _hoisted_1$6 = {
|
|
19347
19347
|
key: 0,
|
|
19348
19348
|
class: "pdf-viewer-header"
|
|
19349
19349
|
};
|
|
19350
|
-
const _hoisted_2$
|
|
19351
|
-
const _hoisted_3$
|
|
19352
|
-
const _hoisted_4 = {
|
|
19350
|
+
const _hoisted_2$4 = { class: "pdf-viewer-title" };
|
|
19351
|
+
const _hoisted_3$3 = { class: "pdf-viewer-controls" };
|
|
19352
|
+
const _hoisted_4$1 = {
|
|
19353
19353
|
key: 0,
|
|
19354
19354
|
class: "zoom-controls"
|
|
19355
19355
|
};
|
|
19356
|
-
const _hoisted_5 = { class: "zoom-level" };
|
|
19356
|
+
const _hoisted_5$1 = { class: "zoom-level" };
|
|
19357
19357
|
const _hoisted_6 = {
|
|
19358
19358
|
key: 1,
|
|
19359
19359
|
class: "navigation-controls"
|
|
@@ -19386,7 +19386,7 @@ const _hoisted_16 = {
|
|
|
19386
19386
|
key: 0,
|
|
19387
19387
|
class: "file-info"
|
|
19388
19388
|
};
|
|
19389
|
-
const _sfc_main$
|
|
19389
|
+
const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
|
|
19390
19390
|
__name: "PdfViewer",
|
|
19391
19391
|
props: {
|
|
19392
19392
|
src: {},
|
|
@@ -19595,11 +19595,11 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent$1({
|
|
|
19595
19595
|
class: normalizeClass(["pdf-viewer-container", { "fullscreen": isFullscreen.value }])
|
|
19596
19596
|
}, [
|
|
19597
19597
|
__props.showHeader ? (openBlock(), createElementBlock("div", _hoisted_1$6, [
|
|
19598
|
-
createElementVNode("div", _hoisted_2$
|
|
19598
|
+
createElementVNode("div", _hoisted_2$4, [
|
|
19599
19599
|
createElementVNode("h3", null, toDisplayString(__props.title || "PDF Viewer"), 1)
|
|
19600
19600
|
]),
|
|
19601
|
-
createElementVNode("div", _hoisted_3$
|
|
19602
|
-
__props.showZoomControls ? (openBlock(), createElementBlock("div", _hoisted_4, [
|
|
19601
|
+
createElementVNode("div", _hoisted_3$3, [
|
|
19602
|
+
__props.showZoomControls ? (openBlock(), createElementBlock("div", _hoisted_4$1, [
|
|
19603
19603
|
createVNode(VBtn, {
|
|
19604
19604
|
size: "small",
|
|
19605
19605
|
variant: "text",
|
|
@@ -19615,7 +19615,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent$1({
|
|
|
19615
19615
|
]),
|
|
19616
19616
|
_: 1
|
|
19617
19617
|
}, 8, ["disabled"]),
|
|
19618
|
-
createElementVNode("span", _hoisted_5, toDisplayString(Math.round(zoom.value * 100)) + "%", 1),
|
|
19618
|
+
createElementVNode("span", _hoisted_5$1, toDisplayString(Math.round(zoom.value * 100)) + "%", 1),
|
|
19619
19619
|
createVNode(VBtn, {
|
|
19620
19620
|
size: "small",
|
|
19621
19621
|
variant: "text",
|
|
@@ -19813,8 +19813,8 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent$1({
|
|
|
19813
19813
|
};
|
|
19814
19814
|
}
|
|
19815
19815
|
});
|
|
19816
|
-
const PdfViewer = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
19817
|
-
const _sfc_main$
|
|
19816
|
+
const PdfViewer = /* @__PURE__ */ _export_sfc$1(_sfc_main$c, [["__scopeId", "data-v-f3e9c767"]]);
|
|
19817
|
+
const _sfc_main$b = /* @__PURE__ */ defineComponent$1({
|
|
19818
19818
|
__name: "UiChildCard",
|
|
19819
19819
|
props: {
|
|
19820
19820
|
title: String
|
|
@@ -19849,7 +19849,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent$1({
|
|
|
19849
19849
|
}
|
|
19850
19850
|
});
|
|
19851
19851
|
const _hoisted_1$5 = { class: "d-sm-flex align-center justify-space-between" };
|
|
19852
|
-
const _sfc_main$
|
|
19852
|
+
const _sfc_main$a = /* @__PURE__ */ defineComponent$1({
|
|
19853
19853
|
__name: "UiParentCard",
|
|
19854
19854
|
props: {
|
|
19855
19855
|
title: String
|
|
@@ -19886,7 +19886,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent$1({
|
|
|
19886
19886
|
};
|
|
19887
19887
|
}
|
|
19888
19888
|
});
|
|
19889
|
-
const _sfc_main$
|
|
19889
|
+
const _sfc_main$9 = /* @__PURE__ */ defineComponent$1({
|
|
19890
19890
|
__name: "VPriceTextField",
|
|
19891
19891
|
props: {
|
|
19892
19892
|
modelValue: {},
|
|
@@ -19991,9 +19991,9 @@ const _hoisted_1$4 = {
|
|
|
19991
19991
|
class: "app-stepper-root",
|
|
19992
19992
|
dir: "rtl"
|
|
19993
19993
|
};
|
|
19994
|
-
const _hoisted_2$
|
|
19995
|
-
const _hoisted_3$
|
|
19996
|
-
const _sfc_main$
|
|
19994
|
+
const _hoisted_2$3 = { class: "app-stepper-header-card" };
|
|
19995
|
+
const _hoisted_3$2 = { class: "app-stepper-title" };
|
|
19996
|
+
const _sfc_main$8 = /* @__PURE__ */ defineComponent$1({
|
|
19997
19997
|
__name: "AppStepper",
|
|
19998
19998
|
props: {
|
|
19999
19999
|
steps: {
|
|
@@ -20046,7 +20046,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent$1({
|
|
|
20046
20046
|
__expose({ currentStepComponentRef });
|
|
20047
20047
|
return (_ctx, _cache) => {
|
|
20048
20048
|
return openBlock(), createElementBlock("div", _hoisted_1$4, [
|
|
20049
|
-
createElementVNode("div", _hoisted_2$
|
|
20049
|
+
createElementVNode("div", _hoisted_2$3, [
|
|
20050
20050
|
createElementVNode("div", {
|
|
20051
20051
|
ref_key: "stepperHeaderRef",
|
|
20052
20052
|
ref: stepperHeaderRef,
|
|
@@ -20087,7 +20087,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent$1({
|
|
|
20087
20087
|
}))
|
|
20088
20088
|
], true)
|
|
20089
20089
|
], 2),
|
|
20090
|
-
createElementVNode("span", _hoisted_3$
|
|
20090
|
+
createElementVNode("span", _hoisted_3$2, toDisplayString(step.title), 1),
|
|
20091
20091
|
index2 < __props.steps.length - 1 ? (openBlock(), createElementBlock("span", {
|
|
20092
20092
|
key: 0,
|
|
20093
20093
|
class: normalizeClass([
|
|
@@ -20112,7 +20112,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent$1({
|
|
|
20112
20112
|
};
|
|
20113
20113
|
}
|
|
20114
20114
|
});
|
|
20115
|
-
const AppStepper = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
20115
|
+
const AppStepper = /* @__PURE__ */ _export_sfc$1(_sfc_main$8, [["__scopeId", "data-v-d5178633"]]);
|
|
20116
20116
|
var lottie = { exports: {} };
|
|
20117
20117
|
(function(module, exports) {
|
|
20118
20118
|
typeof navigator !== "undefined" && function(global2, factory) {
|
|
@@ -36528,7 +36528,7 @@ var _export_sfc = (sfc, props) => {
|
|
|
36528
36528
|
}
|
|
36529
36529
|
return target;
|
|
36530
36530
|
};
|
|
36531
|
-
const _sfc_main$
|
|
36531
|
+
const _sfc_main$7 = defineComponent$1({
|
|
36532
36532
|
props: {
|
|
36533
36533
|
animationData: {
|
|
36534
36534
|
type: Object,
|
|
@@ -36860,7 +36860,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
36860
36860
|
onMouseleave: _cache[1] || (_cache[1] = (...args) => _ctx.hoverEnded && _ctx.hoverEnded(...args))
|
|
36861
36861
|
}, null, 36);
|
|
36862
36862
|
}
|
|
36863
|
-
var Vue3Lottie = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
36863
|
+
var Vue3Lottie = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render]]);
|
|
36864
36864
|
const useCustomizerStore = defineStore({
|
|
36865
36865
|
id: "customizer",
|
|
36866
36866
|
state: () => ({
|
|
@@ -36918,9 +36918,9 @@ const _hoisted_1$3 = {
|
|
|
36918
36918
|
key: 0,
|
|
36919
36919
|
class: "loading-overlay"
|
|
36920
36920
|
};
|
|
36921
|
-
const _hoisted_2 = { class: "loading-wrapper" };
|
|
36922
|
-
const _hoisted_3 = { key: 0 };
|
|
36923
|
-
const _sfc_main$
|
|
36921
|
+
const _hoisted_2$2 = { class: "loading-wrapper" };
|
|
36922
|
+
const _hoisted_3$1 = { key: 0 };
|
|
36923
|
+
const _sfc_main$6 = /* @__PURE__ */ defineComponent$1({
|
|
36924
36924
|
__name: "Loading",
|
|
36925
36925
|
setup(__props) {
|
|
36926
36926
|
const customizer = useCustomizerStore();
|
|
@@ -36928,7 +36928,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent$1({
|
|
|
36928
36928
|
return openBlock(), createBlock(Transition, { name: "fade" }, {
|
|
36929
36929
|
default: withCtx(() => [
|
|
36930
36930
|
unref(customizer).loading ? (openBlock(), createElementBlock("div", _hoisted_1$3, [
|
|
36931
|
-
createElementVNode("div", _hoisted_2, [
|
|
36931
|
+
createElementVNode("div", _hoisted_2$2, [
|
|
36932
36932
|
createVNode(unref(Vue3Lottie), {
|
|
36933
36933
|
"animation-link": "/persian.json",
|
|
36934
36934
|
loop: true,
|
|
@@ -36937,7 +36937,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent$1({
|
|
|
36937
36937
|
}),
|
|
36938
36938
|
createVNode(Transition, { name: "fade-slide" }, {
|
|
36939
36939
|
default: withCtx(() => [
|
|
36940
|
-
unref(customizer).loading ? (openBlock(), createElementBlock("span", _hoisted_3, "لطفا منتظر بمانید")) : createCommentVNode("", true)
|
|
36940
|
+
unref(customizer).loading ? (openBlock(), createElementBlock("span", _hoisted_3$1, "لطفا منتظر بمانید")) : createCommentVNode("", true)
|
|
36941
36941
|
]),
|
|
36942
36942
|
_: 1
|
|
36943
36943
|
})
|
|
@@ -36949,7 +36949,808 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent$1({
|
|
|
36949
36949
|
};
|
|
36950
36950
|
}
|
|
36951
36951
|
});
|
|
36952
|
-
const Loading = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
36952
|
+
const Loading = /* @__PURE__ */ _export_sfc$1(_sfc_main$6, [["__scopeId", "data-v-9b533ee4"]]);
|
|
36953
|
+
const _sfc_main$5 = /* @__PURE__ */ defineComponent$1({
|
|
36954
|
+
__name: "NavItem",
|
|
36955
|
+
props: {
|
|
36956
|
+
item: {},
|
|
36957
|
+
level: {}
|
|
36958
|
+
},
|
|
36959
|
+
setup(__props) {
|
|
36960
|
+
const props = __props;
|
|
36961
|
+
return (_ctx, _cache) => {
|
|
36962
|
+
return openBlock(), createBlock(VListItem, {
|
|
36963
|
+
to: __props.item.type === "external" ? "" : __props.item.to,
|
|
36964
|
+
href: __props.item.type === "external" ? __props.item.to : "",
|
|
36965
|
+
rounded: "",
|
|
36966
|
+
class: "mb-1",
|
|
36967
|
+
color: "secondary",
|
|
36968
|
+
disabled: __props.item.disabled,
|
|
36969
|
+
target: __props.item.type === "external" ? "_blank" : ""
|
|
36970
|
+
}, createSlots({
|
|
36971
|
+
default: withCtx(() => [
|
|
36972
|
+
createVNode(VListItemTitle, null, {
|
|
36973
|
+
default: withCtx(() => [
|
|
36974
|
+
createTextVNode(toDisplayString(__props.item.title), 1)
|
|
36975
|
+
]),
|
|
36976
|
+
_: 1
|
|
36977
|
+
}),
|
|
36978
|
+
__props.item.subCaption ? (openBlock(), createBlock(VListItemSubtitle, {
|
|
36979
|
+
key: 0,
|
|
36980
|
+
class: "text-caption mt-n1 hide-menu"
|
|
36981
|
+
}, {
|
|
36982
|
+
default: withCtx(() => [
|
|
36983
|
+
createTextVNode(toDisplayString(__props.item.subCaption), 1)
|
|
36984
|
+
]),
|
|
36985
|
+
_: 1
|
|
36986
|
+
})) : createCommentVNode("", true)
|
|
36987
|
+
]),
|
|
36988
|
+
_: 2
|
|
36989
|
+
}, [
|
|
36990
|
+
props.item.icon ? {
|
|
36991
|
+
name: "prepend",
|
|
36992
|
+
fn: withCtx(() => [
|
|
36993
|
+
typeof props.item.icon === "string" ? (openBlock(), createBlock(VIcon, {
|
|
36994
|
+
key: 0,
|
|
36995
|
+
icon: props.item.icon
|
|
36996
|
+
}, null, 8, ["icon"])) : (openBlock(), createBlock(resolveDynamicComponent(props.item.icon), { key: 1 }))
|
|
36997
|
+
]),
|
|
36998
|
+
key: "0"
|
|
36999
|
+
} : void 0,
|
|
37000
|
+
__props.item.chip ? {
|
|
37001
|
+
name: "append",
|
|
37002
|
+
fn: withCtx(() => [
|
|
37003
|
+
createVNode(VChip, {
|
|
37004
|
+
color: __props.item.chipColor,
|
|
37005
|
+
class: "sidebarchip hide-menu",
|
|
37006
|
+
size: __props.item.chipIcon ? "small" : "default",
|
|
37007
|
+
variant: __props.item.chipVariant,
|
|
37008
|
+
"prepend-icon": __props.item.chipIcon
|
|
37009
|
+
}, {
|
|
37010
|
+
default: withCtx(() => [
|
|
37011
|
+
createTextVNode(toDisplayString(__props.item.chip), 1)
|
|
37012
|
+
]),
|
|
37013
|
+
_: 1
|
|
37014
|
+
}, 8, ["color", "size", "variant", "prepend-icon"])
|
|
37015
|
+
]),
|
|
37016
|
+
key: "1"
|
|
37017
|
+
} : void 0
|
|
37018
|
+
]), 1032, ["to", "href", "disabled", "target"]);
|
|
37019
|
+
};
|
|
37020
|
+
}
|
|
37021
|
+
});
|
|
37022
|
+
const _sfc_main$4 = /* @__PURE__ */ defineComponent$1({
|
|
37023
|
+
...{ name: "NavCollapse" },
|
|
37024
|
+
__name: "NavCollapse",
|
|
37025
|
+
props: {
|
|
37026
|
+
item: {},
|
|
37027
|
+
level: {}
|
|
37028
|
+
},
|
|
37029
|
+
setup(__props) {
|
|
37030
|
+
const props = __props;
|
|
37031
|
+
return (_ctx, _cache) => {
|
|
37032
|
+
const _component_NavCollapse = resolveComponent("NavCollapse", true);
|
|
37033
|
+
return openBlock(), createBlock(VListGroup, { "no-action": "" }, {
|
|
37034
|
+
activator: withCtx(({ props: props2 }) => [
|
|
37035
|
+
createVNode(VListItem, mergeProps(props2, {
|
|
37036
|
+
value: __props.item.title,
|
|
37037
|
+
rounded: "",
|
|
37038
|
+
class: "mb-1",
|
|
37039
|
+
color: "secondary"
|
|
37040
|
+
}), {
|
|
37041
|
+
prepend: withCtx(() => [
|
|
37042
|
+
typeof __props.item.icon === "string" ? (openBlock(), createBlock(VIcon, {
|
|
37043
|
+
key: 0,
|
|
37044
|
+
icon: __props.item.icon
|
|
37045
|
+
}, null, 8, ["icon"])) : __props.item.icon ? (openBlock(), createBlock(resolveDynamicComponent(__props.item.icon), { key: 1 })) : createCommentVNode("", true)
|
|
37046
|
+
]),
|
|
37047
|
+
default: withCtx(() => [
|
|
37048
|
+
createVNode(VListItemTitle, { class: "ml-auto" }, {
|
|
37049
|
+
default: withCtx(() => [
|
|
37050
|
+
createTextVNode(toDisplayString(__props.item.title), 1)
|
|
37051
|
+
]),
|
|
37052
|
+
_: 1
|
|
37053
|
+
}),
|
|
37054
|
+
__props.item.subCaption ? (openBlock(), createBlock(VListItemSubtitle, {
|
|
37055
|
+
key: 0,
|
|
37056
|
+
class: "text-caption mt-n1 hide-menu"
|
|
37057
|
+
}, {
|
|
37058
|
+
default: withCtx(() => [
|
|
37059
|
+
createTextVNode(toDisplayString(__props.item.subCaption), 1)
|
|
37060
|
+
]),
|
|
37061
|
+
_: 1
|
|
37062
|
+
})) : createCommentVNode("", true)
|
|
37063
|
+
]),
|
|
37064
|
+
_: 1
|
|
37065
|
+
}, 16, ["value"])
|
|
37066
|
+
]),
|
|
37067
|
+
default: withCtx(() => [
|
|
37068
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.item.children, (subitem, i) => {
|
|
37069
|
+
return openBlock(), createElementBlock(Fragment, { key: i }, [
|
|
37070
|
+
subitem.children ? (openBlock(), createBlock(_component_NavCollapse, {
|
|
37071
|
+
key: 0,
|
|
37072
|
+
item: subitem,
|
|
37073
|
+
level: props.level + 1
|
|
37074
|
+
}, null, 8, ["item", "level"])) : (openBlock(), createBlock(_sfc_main$5, {
|
|
37075
|
+
key: 1,
|
|
37076
|
+
item: subitem,
|
|
37077
|
+
level: props.level + 1
|
|
37078
|
+
}, null, 8, ["item", "level"]))
|
|
37079
|
+
], 64);
|
|
37080
|
+
}), 128))
|
|
37081
|
+
]),
|
|
37082
|
+
_: 1
|
|
37083
|
+
});
|
|
37084
|
+
};
|
|
37085
|
+
}
|
|
37086
|
+
});
|
|
37087
|
+
const _sfc_main$3 = {
|
|
37088
|
+
__name: "NavGroup",
|
|
37089
|
+
props: { item: Object },
|
|
37090
|
+
setup(__props) {
|
|
37091
|
+
const props = __props;
|
|
37092
|
+
return (_ctx, _cache) => {
|
|
37093
|
+
return openBlock(), createBlock(VListSubheader, {
|
|
37094
|
+
color: "darkText",
|
|
37095
|
+
class: "smallCap"
|
|
37096
|
+
}, {
|
|
37097
|
+
default: withCtx(() => [
|
|
37098
|
+
createTextVNode(toDisplayString(props.item.header), 1)
|
|
37099
|
+
]),
|
|
37100
|
+
_: 1
|
|
37101
|
+
});
|
|
37102
|
+
};
|
|
37103
|
+
}
|
|
37104
|
+
};
|
|
37105
|
+
function useSticky(_ref) {
|
|
37106
|
+
let {
|
|
37107
|
+
rootEl,
|
|
37108
|
+
isSticky,
|
|
37109
|
+
layoutItemStyles
|
|
37110
|
+
} = _ref;
|
|
37111
|
+
const isStuck = shallowRef(false);
|
|
37112
|
+
const stuckPosition = shallowRef(0);
|
|
37113
|
+
const stickyStyles = computed(() => {
|
|
37114
|
+
const side = typeof isStuck.value === "boolean" ? "top" : isStuck.value;
|
|
37115
|
+
return [isSticky.value ? {
|
|
37116
|
+
top: "auto",
|
|
37117
|
+
bottom: "auto",
|
|
37118
|
+
height: void 0
|
|
37119
|
+
} : void 0, isStuck.value ? {
|
|
37120
|
+
[side]: convertToUnit(stuckPosition.value)
|
|
37121
|
+
} : {
|
|
37122
|
+
top: layoutItemStyles.value.top
|
|
37123
|
+
}];
|
|
37124
|
+
});
|
|
37125
|
+
onMounted(() => {
|
|
37126
|
+
watch(isSticky, (val2) => {
|
|
37127
|
+
if (val2) {
|
|
37128
|
+
window.addEventListener("scroll", onScroll, {
|
|
37129
|
+
passive: true
|
|
37130
|
+
});
|
|
37131
|
+
} else {
|
|
37132
|
+
window.removeEventListener("scroll", onScroll);
|
|
37133
|
+
}
|
|
37134
|
+
}, {
|
|
37135
|
+
immediate: true
|
|
37136
|
+
});
|
|
37137
|
+
});
|
|
37138
|
+
onBeforeUnmount(() => {
|
|
37139
|
+
window.removeEventListener("scroll", onScroll);
|
|
37140
|
+
});
|
|
37141
|
+
let lastScrollTop = 0;
|
|
37142
|
+
function onScroll() {
|
|
37143
|
+
const direction = lastScrollTop > window.scrollY ? "up" : "down";
|
|
37144
|
+
const rect = rootEl.value.getBoundingClientRect();
|
|
37145
|
+
const layoutTop = parseFloat(layoutItemStyles.value.top ?? 0);
|
|
37146
|
+
const top = window.scrollY - Math.max(0, stuckPosition.value - layoutTop);
|
|
37147
|
+
const bottom = rect.height + Math.max(stuckPosition.value, layoutTop) - window.scrollY - window.innerHeight;
|
|
37148
|
+
const bodyScroll = parseFloat(getComputedStyle(rootEl.value).getPropertyValue("--v-body-scroll-y")) || 0;
|
|
37149
|
+
if (rect.height < window.innerHeight - layoutTop) {
|
|
37150
|
+
isStuck.value = "top";
|
|
37151
|
+
stuckPosition.value = layoutTop;
|
|
37152
|
+
} else if (direction === "up" && isStuck.value === "bottom" || direction === "down" && isStuck.value === "top") {
|
|
37153
|
+
stuckPosition.value = window.scrollY + rect.top - bodyScroll;
|
|
37154
|
+
isStuck.value = true;
|
|
37155
|
+
} else if (direction === "down" && bottom <= 0) {
|
|
37156
|
+
stuckPosition.value = 0;
|
|
37157
|
+
isStuck.value = "bottom";
|
|
37158
|
+
} else if (direction === "up" && top <= 0) {
|
|
37159
|
+
if (!bodyScroll) {
|
|
37160
|
+
stuckPosition.value = rect.top + top;
|
|
37161
|
+
isStuck.value = "top";
|
|
37162
|
+
} else if (isStuck.value !== "top") {
|
|
37163
|
+
stuckPosition.value = -top + bodyScroll + layoutTop;
|
|
37164
|
+
isStuck.value = "top";
|
|
37165
|
+
}
|
|
37166
|
+
}
|
|
37167
|
+
lastScrollTop = window.scrollY;
|
|
37168
|
+
}
|
|
37169
|
+
return {
|
|
37170
|
+
isStuck,
|
|
37171
|
+
stickyStyles
|
|
37172
|
+
};
|
|
37173
|
+
}
|
|
37174
|
+
const HORIZON = 100;
|
|
37175
|
+
const HISTORY = 20;
|
|
37176
|
+
function kineticEnergyToVelocity(work) {
|
|
37177
|
+
const sqrt2 = 1.41421356237;
|
|
37178
|
+
return (work < 0 ? -1 : 1) * Math.sqrt(Math.abs(work)) * sqrt2;
|
|
37179
|
+
}
|
|
37180
|
+
function calculateImpulseVelocity(samples) {
|
|
37181
|
+
if (samples.length < 2) {
|
|
37182
|
+
return 0;
|
|
37183
|
+
}
|
|
37184
|
+
if (samples.length === 2) {
|
|
37185
|
+
if (samples[1].t === samples[0].t) {
|
|
37186
|
+
return 0;
|
|
37187
|
+
}
|
|
37188
|
+
return (samples[1].d - samples[0].d) / (samples[1].t - samples[0].t);
|
|
37189
|
+
}
|
|
37190
|
+
let work = 0;
|
|
37191
|
+
for (let i = samples.length - 1; i > 0; i--) {
|
|
37192
|
+
if (samples[i].t === samples[i - 1].t) {
|
|
37193
|
+
continue;
|
|
37194
|
+
}
|
|
37195
|
+
const vprev = kineticEnergyToVelocity(work);
|
|
37196
|
+
const vcurr = (samples[i].d - samples[i - 1].d) / (samples[i].t - samples[i - 1].t);
|
|
37197
|
+
work += (vcurr - vprev) * Math.abs(vcurr);
|
|
37198
|
+
if (i === samples.length - 1) {
|
|
37199
|
+
work *= 0.5;
|
|
37200
|
+
}
|
|
37201
|
+
}
|
|
37202
|
+
return kineticEnergyToVelocity(work) * 1e3;
|
|
37203
|
+
}
|
|
37204
|
+
function useVelocity() {
|
|
37205
|
+
const touches = {};
|
|
37206
|
+
function addMovement(e) {
|
|
37207
|
+
Array.from(e.changedTouches).forEach((touch) => {
|
|
37208
|
+
const samples = touches[touch.identifier] ?? (touches[touch.identifier] = new CircularBuffer(HISTORY));
|
|
37209
|
+
samples.push([e.timeStamp, touch]);
|
|
37210
|
+
});
|
|
37211
|
+
}
|
|
37212
|
+
function endTouch(e) {
|
|
37213
|
+
Array.from(e.changedTouches).forEach((touch) => {
|
|
37214
|
+
delete touches[touch.identifier];
|
|
37215
|
+
});
|
|
37216
|
+
}
|
|
37217
|
+
function getVelocity(id) {
|
|
37218
|
+
var _a;
|
|
37219
|
+
const samples = (_a = touches[id]) == null ? void 0 : _a.values().reverse();
|
|
37220
|
+
if (!samples) {
|
|
37221
|
+
throw new Error(`No samples for touch id ${id}`);
|
|
37222
|
+
}
|
|
37223
|
+
const newest = samples[0];
|
|
37224
|
+
const x = [];
|
|
37225
|
+
const y = [];
|
|
37226
|
+
for (const val2 of samples) {
|
|
37227
|
+
if (newest[0] - val2[0] > HORIZON) break;
|
|
37228
|
+
x.push({
|
|
37229
|
+
t: val2[0],
|
|
37230
|
+
d: val2[1].clientX
|
|
37231
|
+
});
|
|
37232
|
+
y.push({
|
|
37233
|
+
t: val2[0],
|
|
37234
|
+
d: val2[1].clientY
|
|
37235
|
+
});
|
|
37236
|
+
}
|
|
37237
|
+
return {
|
|
37238
|
+
x: calculateImpulseVelocity(x),
|
|
37239
|
+
y: calculateImpulseVelocity(y),
|
|
37240
|
+
get direction() {
|
|
37241
|
+
const {
|
|
37242
|
+
x: x2,
|
|
37243
|
+
y: y2
|
|
37244
|
+
} = this;
|
|
37245
|
+
const [absX, absY] = [Math.abs(x2), Math.abs(y2)];
|
|
37246
|
+
return absX > absY && x2 >= 0 ? "right" : absX > absY && x2 <= 0 ? "left" : absY > absX && y2 >= 0 ? "down" : absY > absX && y2 <= 0 ? "up" : oops$1();
|
|
37247
|
+
}
|
|
37248
|
+
};
|
|
37249
|
+
}
|
|
37250
|
+
return {
|
|
37251
|
+
addMovement,
|
|
37252
|
+
endTouch,
|
|
37253
|
+
getVelocity
|
|
37254
|
+
};
|
|
37255
|
+
}
|
|
37256
|
+
function oops$1() {
|
|
37257
|
+
throw new Error();
|
|
37258
|
+
}
|
|
37259
|
+
function useTouch(_ref) {
|
|
37260
|
+
let {
|
|
37261
|
+
el,
|
|
37262
|
+
isActive,
|
|
37263
|
+
isTemporary,
|
|
37264
|
+
width: width2,
|
|
37265
|
+
touchless,
|
|
37266
|
+
position: position2
|
|
37267
|
+
} = _ref;
|
|
37268
|
+
onMounted(() => {
|
|
37269
|
+
window.addEventListener("touchstart", onTouchstart, {
|
|
37270
|
+
passive: true
|
|
37271
|
+
});
|
|
37272
|
+
window.addEventListener("touchmove", onTouchmove, {
|
|
37273
|
+
passive: false
|
|
37274
|
+
});
|
|
37275
|
+
window.addEventListener("touchend", onTouchend, {
|
|
37276
|
+
passive: true
|
|
37277
|
+
});
|
|
37278
|
+
});
|
|
37279
|
+
onBeforeUnmount(() => {
|
|
37280
|
+
window.removeEventListener("touchstart", onTouchstart);
|
|
37281
|
+
window.removeEventListener("touchmove", onTouchmove);
|
|
37282
|
+
window.removeEventListener("touchend", onTouchend);
|
|
37283
|
+
});
|
|
37284
|
+
const isHorizontal = computed(() => ["left", "right"].includes(position2.value));
|
|
37285
|
+
const {
|
|
37286
|
+
addMovement,
|
|
37287
|
+
endTouch,
|
|
37288
|
+
getVelocity
|
|
37289
|
+
} = useVelocity();
|
|
37290
|
+
let maybeDragging = false;
|
|
37291
|
+
const isDragging = shallowRef(false);
|
|
37292
|
+
const dragProgress = shallowRef(0);
|
|
37293
|
+
const offset = shallowRef(0);
|
|
37294
|
+
let start;
|
|
37295
|
+
function getOffset2(pos, active2) {
|
|
37296
|
+
return (position2.value === "left" ? pos : position2.value === "right" ? document.documentElement.clientWidth - pos : position2.value === "top" ? pos : position2.value === "bottom" ? document.documentElement.clientHeight - pos : oops()) - (active2 ? width2.value : 0);
|
|
37297
|
+
}
|
|
37298
|
+
function getProgress(pos) {
|
|
37299
|
+
let limit = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true;
|
|
37300
|
+
const progress = position2.value === "left" ? (pos - offset.value) / width2.value : position2.value === "right" ? (document.documentElement.clientWidth - pos - offset.value) / width2.value : position2.value === "top" ? (pos - offset.value) / width2.value : position2.value === "bottom" ? (document.documentElement.clientHeight - pos - offset.value) / width2.value : oops();
|
|
37301
|
+
return limit ? clamp(progress) : progress;
|
|
37302
|
+
}
|
|
37303
|
+
function onTouchstart(e) {
|
|
37304
|
+
if (touchless.value) return;
|
|
37305
|
+
const touchX = e.changedTouches[0].clientX;
|
|
37306
|
+
const touchY = e.changedTouches[0].clientY;
|
|
37307
|
+
const touchZone = 25;
|
|
37308
|
+
const inTouchZone = position2.value === "left" ? touchX < touchZone : position2.value === "right" ? touchX > document.documentElement.clientWidth - touchZone : position2.value === "top" ? touchY < touchZone : position2.value === "bottom" ? touchY > document.documentElement.clientHeight - touchZone : oops();
|
|
37309
|
+
const inElement = isActive.value && (position2.value === "left" ? touchX < width2.value : position2.value === "right" ? touchX > document.documentElement.clientWidth - width2.value : position2.value === "top" ? touchY < width2.value : position2.value === "bottom" ? touchY > document.documentElement.clientHeight - width2.value : oops());
|
|
37310
|
+
if (inTouchZone || inElement || isActive.value && isTemporary.value) {
|
|
37311
|
+
start = [touchX, touchY];
|
|
37312
|
+
offset.value = getOffset2(isHorizontal.value ? touchX : touchY, isActive.value);
|
|
37313
|
+
dragProgress.value = getProgress(isHorizontal.value ? touchX : touchY);
|
|
37314
|
+
maybeDragging = offset.value > -20 && offset.value < 80;
|
|
37315
|
+
endTouch(e);
|
|
37316
|
+
addMovement(e);
|
|
37317
|
+
}
|
|
37318
|
+
}
|
|
37319
|
+
function onTouchmove(e) {
|
|
37320
|
+
const touchX = e.changedTouches[0].clientX;
|
|
37321
|
+
const touchY = e.changedTouches[0].clientY;
|
|
37322
|
+
if (maybeDragging) {
|
|
37323
|
+
if (!e.cancelable) {
|
|
37324
|
+
maybeDragging = false;
|
|
37325
|
+
return;
|
|
37326
|
+
}
|
|
37327
|
+
const dx = Math.abs(touchX - start[0]);
|
|
37328
|
+
const dy = Math.abs(touchY - start[1]);
|
|
37329
|
+
const thresholdMet = isHorizontal.value ? dx > dy && dx > 3 : dy > dx && dy > 3;
|
|
37330
|
+
if (thresholdMet) {
|
|
37331
|
+
isDragging.value = true;
|
|
37332
|
+
maybeDragging = false;
|
|
37333
|
+
} else if ((isHorizontal.value ? dy : dx) > 3) {
|
|
37334
|
+
maybeDragging = false;
|
|
37335
|
+
}
|
|
37336
|
+
}
|
|
37337
|
+
if (!isDragging.value) return;
|
|
37338
|
+
e.preventDefault();
|
|
37339
|
+
addMovement(e);
|
|
37340
|
+
const progress = getProgress(isHorizontal.value ? touchX : touchY, false);
|
|
37341
|
+
dragProgress.value = Math.max(0, Math.min(1, progress));
|
|
37342
|
+
if (progress > 1) {
|
|
37343
|
+
offset.value = getOffset2(isHorizontal.value ? touchX : touchY, true);
|
|
37344
|
+
} else if (progress < 0) {
|
|
37345
|
+
offset.value = getOffset2(isHorizontal.value ? touchX : touchY, false);
|
|
37346
|
+
}
|
|
37347
|
+
}
|
|
37348
|
+
function onTouchend(e) {
|
|
37349
|
+
maybeDragging = false;
|
|
37350
|
+
if (!isDragging.value) return;
|
|
37351
|
+
addMovement(e);
|
|
37352
|
+
isDragging.value = false;
|
|
37353
|
+
const velocity2 = getVelocity(e.changedTouches[0].identifier);
|
|
37354
|
+
const vx = Math.abs(velocity2.x);
|
|
37355
|
+
const vy = Math.abs(velocity2.y);
|
|
37356
|
+
const thresholdMet = isHorizontal.value ? vx > vy && vx > 400 : vy > vx && vy > 3;
|
|
37357
|
+
if (thresholdMet) {
|
|
37358
|
+
isActive.value = velocity2.direction === ({
|
|
37359
|
+
left: "right",
|
|
37360
|
+
right: "left",
|
|
37361
|
+
top: "down",
|
|
37362
|
+
bottom: "up"
|
|
37363
|
+
}[position2.value] || oops());
|
|
37364
|
+
} else {
|
|
37365
|
+
isActive.value = dragProgress.value > 0.5;
|
|
37366
|
+
}
|
|
37367
|
+
}
|
|
37368
|
+
const dragStyles = computed(() => {
|
|
37369
|
+
return isDragging.value ? {
|
|
37370
|
+
transform: position2.value === "left" ? `translateX(calc(-100% + ${dragProgress.value * width2.value}px))` : position2.value === "right" ? `translateX(calc(100% - ${dragProgress.value * width2.value}px))` : position2.value === "top" ? `translateY(calc(-100% + ${dragProgress.value * width2.value}px))` : position2.value === "bottom" ? `translateY(calc(100% - ${dragProgress.value * width2.value}px))` : oops(),
|
|
37371
|
+
transition: "none"
|
|
37372
|
+
} : void 0;
|
|
37373
|
+
});
|
|
37374
|
+
useToggleScope(isDragging, () => {
|
|
37375
|
+
var _a, _b;
|
|
37376
|
+
const transform2 = ((_a = el.value) == null ? void 0 : _a.style.transform) ?? null;
|
|
37377
|
+
const transition = ((_b = el.value) == null ? void 0 : _b.style.transition) ?? null;
|
|
37378
|
+
watchEffect(() => {
|
|
37379
|
+
var _a2, _b2, _c, _d;
|
|
37380
|
+
(_b2 = el.value) == null ? void 0 : _b2.style.setProperty("transform", ((_a2 = dragStyles.value) == null ? void 0 : _a2.transform) || "none");
|
|
37381
|
+
(_d = el.value) == null ? void 0 : _d.style.setProperty("transition", ((_c = dragStyles.value) == null ? void 0 : _c.transition) || null);
|
|
37382
|
+
});
|
|
37383
|
+
onScopeDispose(() => {
|
|
37384
|
+
var _a2, _b2;
|
|
37385
|
+
(_a2 = el.value) == null ? void 0 : _a2.style.setProperty("transform", transform2);
|
|
37386
|
+
(_b2 = el.value) == null ? void 0 : _b2.style.setProperty("transition", transition);
|
|
37387
|
+
});
|
|
37388
|
+
});
|
|
37389
|
+
return {
|
|
37390
|
+
isDragging,
|
|
37391
|
+
dragProgress,
|
|
37392
|
+
dragStyles
|
|
37393
|
+
};
|
|
37394
|
+
}
|
|
37395
|
+
function oops() {
|
|
37396
|
+
throw new Error();
|
|
37397
|
+
}
|
|
37398
|
+
const locations = ["start", "end", "left", "right", "top", "bottom"];
|
|
37399
|
+
const makeVNavigationDrawerProps = propsFactory({
|
|
37400
|
+
color: String,
|
|
37401
|
+
disableResizeWatcher: Boolean,
|
|
37402
|
+
disableRouteWatcher: Boolean,
|
|
37403
|
+
expandOnHover: Boolean,
|
|
37404
|
+
floating: Boolean,
|
|
37405
|
+
modelValue: {
|
|
37406
|
+
type: Boolean,
|
|
37407
|
+
default: null
|
|
37408
|
+
},
|
|
37409
|
+
permanent: Boolean,
|
|
37410
|
+
rail: {
|
|
37411
|
+
type: Boolean,
|
|
37412
|
+
default: null
|
|
37413
|
+
},
|
|
37414
|
+
railWidth: {
|
|
37415
|
+
type: [Number, String],
|
|
37416
|
+
default: 56
|
|
37417
|
+
},
|
|
37418
|
+
scrim: {
|
|
37419
|
+
type: [Boolean, String],
|
|
37420
|
+
default: true
|
|
37421
|
+
},
|
|
37422
|
+
image: String,
|
|
37423
|
+
temporary: Boolean,
|
|
37424
|
+
persistent: Boolean,
|
|
37425
|
+
touchless: Boolean,
|
|
37426
|
+
width: {
|
|
37427
|
+
type: [Number, String],
|
|
37428
|
+
default: 256
|
|
37429
|
+
},
|
|
37430
|
+
location: {
|
|
37431
|
+
type: String,
|
|
37432
|
+
default: "start",
|
|
37433
|
+
validator: (value2) => locations.includes(value2)
|
|
37434
|
+
},
|
|
37435
|
+
sticky: Boolean,
|
|
37436
|
+
...makeBorderProps(),
|
|
37437
|
+
...makeComponentProps(),
|
|
37438
|
+
...makeDelayProps(),
|
|
37439
|
+
...makeDisplayProps({
|
|
37440
|
+
mobile: null
|
|
37441
|
+
}),
|
|
37442
|
+
...makeElevationProps(),
|
|
37443
|
+
...makeLayoutItemProps(),
|
|
37444
|
+
...makeRoundedProps(),
|
|
37445
|
+
...makeTagProps({
|
|
37446
|
+
tag: "nav"
|
|
37447
|
+
}),
|
|
37448
|
+
...makeThemeProps()
|
|
37449
|
+
}, "VNavigationDrawer");
|
|
37450
|
+
const VNavigationDrawer = genericComponent()({
|
|
37451
|
+
name: "VNavigationDrawer",
|
|
37452
|
+
props: makeVNavigationDrawerProps(),
|
|
37453
|
+
emits: {
|
|
37454
|
+
"update:modelValue": (val2) => true,
|
|
37455
|
+
"update:rail": (val2) => true
|
|
37456
|
+
},
|
|
37457
|
+
setup(props, _ref) {
|
|
37458
|
+
let {
|
|
37459
|
+
attrs,
|
|
37460
|
+
emit,
|
|
37461
|
+
slots
|
|
37462
|
+
} = _ref;
|
|
37463
|
+
const {
|
|
37464
|
+
isRtl
|
|
37465
|
+
} = useRtl();
|
|
37466
|
+
const {
|
|
37467
|
+
themeClasses
|
|
37468
|
+
} = provideTheme(props);
|
|
37469
|
+
const {
|
|
37470
|
+
borderClasses
|
|
37471
|
+
} = useBorder(props);
|
|
37472
|
+
const {
|
|
37473
|
+
backgroundColorClasses,
|
|
37474
|
+
backgroundColorStyles
|
|
37475
|
+
} = useBackgroundColor(() => props.color);
|
|
37476
|
+
const {
|
|
37477
|
+
elevationClasses
|
|
37478
|
+
} = useElevation(props);
|
|
37479
|
+
const {
|
|
37480
|
+
displayClasses,
|
|
37481
|
+
mobile
|
|
37482
|
+
} = useDisplay(props);
|
|
37483
|
+
const {
|
|
37484
|
+
roundedClasses
|
|
37485
|
+
} = useRounded(props);
|
|
37486
|
+
const router = useRouter();
|
|
37487
|
+
const isActive = useProxiedModel(props, "modelValue", null, (v) => !!v);
|
|
37488
|
+
const {
|
|
37489
|
+
ssrBootStyles
|
|
37490
|
+
} = useSsrBoot();
|
|
37491
|
+
const {
|
|
37492
|
+
scopeId
|
|
37493
|
+
} = useScopeId();
|
|
37494
|
+
const rootEl = ref();
|
|
37495
|
+
const isHovering = shallowRef(false);
|
|
37496
|
+
const {
|
|
37497
|
+
runOpenDelay,
|
|
37498
|
+
runCloseDelay
|
|
37499
|
+
} = useDelay(props, (value2) => {
|
|
37500
|
+
isHovering.value = value2;
|
|
37501
|
+
});
|
|
37502
|
+
const width2 = computed(() => {
|
|
37503
|
+
return props.rail && props.expandOnHover && isHovering.value ? Number(props.width) : Number(props.rail ? props.railWidth : props.width);
|
|
37504
|
+
});
|
|
37505
|
+
const location = computed(() => {
|
|
37506
|
+
return toPhysical(props.location, isRtl.value);
|
|
37507
|
+
});
|
|
37508
|
+
const isPersistent = toRef(() => props.persistent);
|
|
37509
|
+
const isTemporary = computed(() => !props.permanent && (mobile.value || props.temporary));
|
|
37510
|
+
const isSticky = computed(() => props.sticky && !isTemporary.value && location.value !== "bottom");
|
|
37511
|
+
useToggleScope(() => props.expandOnHover && props.rail != null, () => {
|
|
37512
|
+
watch(isHovering, (val2) => emit("update:rail", !val2));
|
|
37513
|
+
});
|
|
37514
|
+
useToggleScope(() => !props.disableResizeWatcher, () => {
|
|
37515
|
+
watch(isTemporary, (val2) => !props.permanent && nextTick(() => isActive.value = !val2));
|
|
37516
|
+
});
|
|
37517
|
+
useToggleScope(() => !props.disableRouteWatcher && !!router, () => {
|
|
37518
|
+
watch(router.currentRoute, () => isTemporary.value && (isActive.value = false));
|
|
37519
|
+
});
|
|
37520
|
+
watch(() => props.permanent, (val2) => {
|
|
37521
|
+
if (val2) isActive.value = true;
|
|
37522
|
+
});
|
|
37523
|
+
if (props.modelValue == null && !isTemporary.value) {
|
|
37524
|
+
isActive.value = props.permanent || !mobile.value;
|
|
37525
|
+
}
|
|
37526
|
+
const {
|
|
37527
|
+
isDragging,
|
|
37528
|
+
dragProgress
|
|
37529
|
+
} = useTouch({
|
|
37530
|
+
el: rootEl,
|
|
37531
|
+
isActive,
|
|
37532
|
+
isTemporary,
|
|
37533
|
+
width: width2,
|
|
37534
|
+
touchless: toRef(() => props.touchless),
|
|
37535
|
+
position: location
|
|
37536
|
+
});
|
|
37537
|
+
const layoutSize = computed(() => {
|
|
37538
|
+
const size = isTemporary.value ? 0 : props.rail && props.expandOnHover ? Number(props.railWidth) : width2.value;
|
|
37539
|
+
return isDragging.value ? size * dragProgress.value : size;
|
|
37540
|
+
});
|
|
37541
|
+
const {
|
|
37542
|
+
layoutItemStyles,
|
|
37543
|
+
layoutItemScrimStyles
|
|
37544
|
+
} = useLayoutItem({
|
|
37545
|
+
id: props.name,
|
|
37546
|
+
order: computed(() => parseInt(props.order, 10)),
|
|
37547
|
+
position: location,
|
|
37548
|
+
layoutSize,
|
|
37549
|
+
elementSize: width2,
|
|
37550
|
+
active: readonly(isActive),
|
|
37551
|
+
disableTransitions: toRef(() => isDragging.value),
|
|
37552
|
+
absolute: computed(() => (
|
|
37553
|
+
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
37554
|
+
props.absolute || isSticky.value && typeof isStuck.value !== "string"
|
|
37555
|
+
))
|
|
37556
|
+
});
|
|
37557
|
+
const {
|
|
37558
|
+
isStuck,
|
|
37559
|
+
stickyStyles
|
|
37560
|
+
} = useSticky({
|
|
37561
|
+
rootEl,
|
|
37562
|
+
isSticky,
|
|
37563
|
+
layoutItemStyles
|
|
37564
|
+
});
|
|
37565
|
+
const scrimColor = useBackgroundColor(() => {
|
|
37566
|
+
return typeof props.scrim === "string" ? props.scrim : null;
|
|
37567
|
+
});
|
|
37568
|
+
const scrimStyles = computed(() => ({
|
|
37569
|
+
...isDragging.value ? {
|
|
37570
|
+
opacity: dragProgress.value * 0.2,
|
|
37571
|
+
transition: "none"
|
|
37572
|
+
} : void 0,
|
|
37573
|
+
...layoutItemScrimStyles.value
|
|
37574
|
+
}));
|
|
37575
|
+
provideDefaults({
|
|
37576
|
+
VList: {
|
|
37577
|
+
bgColor: "transparent"
|
|
37578
|
+
}
|
|
37579
|
+
});
|
|
37580
|
+
useRender(() => {
|
|
37581
|
+
const hasImage = slots.image || props.image;
|
|
37582
|
+
return createElementVNode(Fragment, null, [createVNode(props.tag, mergeProps({
|
|
37583
|
+
"ref": rootEl,
|
|
37584
|
+
"onMouseenter": runOpenDelay,
|
|
37585
|
+
"onMouseleave": runCloseDelay,
|
|
37586
|
+
"class": ["v-navigation-drawer", `v-navigation-drawer--${location.value}`, {
|
|
37587
|
+
"v-navigation-drawer--expand-on-hover": props.expandOnHover,
|
|
37588
|
+
"v-navigation-drawer--floating": props.floating,
|
|
37589
|
+
"v-navigation-drawer--is-hovering": isHovering.value,
|
|
37590
|
+
"v-navigation-drawer--rail": props.rail,
|
|
37591
|
+
"v-navigation-drawer--temporary": isTemporary.value,
|
|
37592
|
+
"v-navigation-drawer--persistent": isPersistent.value,
|
|
37593
|
+
"v-navigation-drawer--active": isActive.value,
|
|
37594
|
+
"v-navigation-drawer--sticky": isSticky.value
|
|
37595
|
+
}, themeClasses.value, backgroundColorClasses.value, borderClasses.value, displayClasses.value, elevationClasses.value, roundedClasses.value, props.class],
|
|
37596
|
+
"style": [backgroundColorStyles.value, layoutItemStyles.value, ssrBootStyles.value, stickyStyles.value, props.style]
|
|
37597
|
+
}, scopeId, attrs), {
|
|
37598
|
+
default: () => {
|
|
37599
|
+
var _a, _b, _c;
|
|
37600
|
+
return [hasImage && createElementVNode("div", {
|
|
37601
|
+
"key": "image",
|
|
37602
|
+
"class": "v-navigation-drawer__img"
|
|
37603
|
+
}, [!slots.image ? createVNode(VImg, {
|
|
37604
|
+
"key": "image-img",
|
|
37605
|
+
"alt": "",
|
|
37606
|
+
"cover": true,
|
|
37607
|
+
"height": "inherit",
|
|
37608
|
+
"src": props.image
|
|
37609
|
+
}, null) : createVNode(VDefaultsProvider, {
|
|
37610
|
+
"key": "image-defaults",
|
|
37611
|
+
"disabled": !props.image,
|
|
37612
|
+
"defaults": {
|
|
37613
|
+
VImg: {
|
|
37614
|
+
alt: "",
|
|
37615
|
+
cover: true,
|
|
37616
|
+
height: "inherit",
|
|
37617
|
+
src: props.image
|
|
37618
|
+
}
|
|
37619
|
+
}
|
|
37620
|
+
}, slots.image)]), slots.prepend && createElementVNode("div", {
|
|
37621
|
+
"class": "v-navigation-drawer__prepend"
|
|
37622
|
+
}, [(_a = slots.prepend) == null ? void 0 : _a.call(slots)]), createElementVNode("div", {
|
|
37623
|
+
"class": "v-navigation-drawer__content"
|
|
37624
|
+
}, [(_b = slots.default) == null ? void 0 : _b.call(slots)]), slots.append && createElementVNode("div", {
|
|
37625
|
+
"class": "v-navigation-drawer__append"
|
|
37626
|
+
}, [(_c = slots.append) == null ? void 0 : _c.call(slots)])];
|
|
37627
|
+
}
|
|
37628
|
+
}), createVNode(Transition, {
|
|
37629
|
+
"name": "fade-transition"
|
|
37630
|
+
}, {
|
|
37631
|
+
default: () => [isTemporary.value && (isDragging.value || isActive.value) && !!props.scrim && createElementVNode("div", mergeProps({
|
|
37632
|
+
"class": ["v-navigation-drawer__scrim", scrimColor.backgroundColorClasses.value],
|
|
37633
|
+
"style": [scrimStyles.value, scrimColor.backgroundColorStyles.value],
|
|
37634
|
+
"onClick": () => {
|
|
37635
|
+
if (isPersistent.value) return;
|
|
37636
|
+
isActive.value = false;
|
|
37637
|
+
}
|
|
37638
|
+
}, scopeId), null)]
|
|
37639
|
+
})]);
|
|
37640
|
+
});
|
|
37641
|
+
return {
|
|
37642
|
+
isStuck
|
|
37643
|
+
};
|
|
37644
|
+
}
|
|
37645
|
+
});
|
|
37646
|
+
const _hoisted_1$2 = { class: "pa-5" };
|
|
37647
|
+
const _hoisted_2$1 = {
|
|
37648
|
+
key: 0,
|
|
37649
|
+
class: "pa-4 text-center"
|
|
37650
|
+
};
|
|
37651
|
+
const _sfc_main$2 = /* @__PURE__ */ defineComponent$1({
|
|
37652
|
+
__name: "AppSidebar",
|
|
37653
|
+
props: {
|
|
37654
|
+
sidebarItems: {
|
|
37655
|
+
type: Array,
|
|
37656
|
+
required: true
|
|
37657
|
+
},
|
|
37658
|
+
getFilteredSidebarItems: {
|
|
37659
|
+
type: Function,
|
|
37660
|
+
required: true
|
|
37661
|
+
},
|
|
37662
|
+
logoComponent: {
|
|
37663
|
+
type: Object,
|
|
37664
|
+
// Vue component
|
|
37665
|
+
required: true
|
|
37666
|
+
},
|
|
37667
|
+
sidebarDrawer: {
|
|
37668
|
+
type: Boolean,
|
|
37669
|
+
required: true
|
|
37670
|
+
},
|
|
37671
|
+
miniSidebar: {
|
|
37672
|
+
type: Boolean,
|
|
37673
|
+
required: true
|
|
37674
|
+
}
|
|
37675
|
+
},
|
|
37676
|
+
emits: ["update:sidebarDrawer"],
|
|
37677
|
+
setup(__props, { emit: __emit }) {
|
|
37678
|
+
const props = __props;
|
|
37679
|
+
const emit = __emit;
|
|
37680
|
+
const sidebarMenu = computed(() => {
|
|
37681
|
+
var _a;
|
|
37682
|
+
try {
|
|
37683
|
+
const filtered = (_a = props.getFilteredSidebarItems) == null ? void 0 : _a.call(props);
|
|
37684
|
+
if (Array.isArray(filtered)) return filtered;
|
|
37685
|
+
} catch {
|
|
37686
|
+
}
|
|
37687
|
+
return props.sidebarItems;
|
|
37688
|
+
});
|
|
37689
|
+
return (_ctx, _cache) => {
|
|
37690
|
+
const _component_perfect_scrollbar = resolveComponent("perfect-scrollbar");
|
|
37691
|
+
return openBlock(), createBlock(VNavigationDrawer, {
|
|
37692
|
+
right: "",
|
|
37693
|
+
"model-value": __props.sidebarDrawer,
|
|
37694
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => emit("update:sidebarDrawer", $event)),
|
|
37695
|
+
elevation: "0",
|
|
37696
|
+
"rail-width": "82",
|
|
37697
|
+
"mobile-breakpoint": "lg",
|
|
37698
|
+
app: "",
|
|
37699
|
+
rail: __props.miniSidebar,
|
|
37700
|
+
class: normalizeClass(["rightSidebar", { "sidebar-closed": !__props.sidebarDrawer }])
|
|
37701
|
+
}, {
|
|
37702
|
+
default: withCtx(() => [
|
|
37703
|
+
createElementVNode("div", _hoisted_1$2, [
|
|
37704
|
+
(openBlock(), createBlock(resolveDynamicComponent(__props.logoComponent)))
|
|
37705
|
+
]),
|
|
37706
|
+
createVNode(_component_perfect_scrollbar, { class: "scrollnavbar" }, {
|
|
37707
|
+
default: withCtx(() => [
|
|
37708
|
+
createVNode(VList, { class: "pa-4" }, {
|
|
37709
|
+
default: withCtx(() => [
|
|
37710
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(sidebarMenu.value, (item, i) => {
|
|
37711
|
+
return openBlock(), createElementBlock(Fragment, { key: i }, [
|
|
37712
|
+
item.header ? (openBlock(), createBlock(_sfc_main$3, {
|
|
37713
|
+
key: 0,
|
|
37714
|
+
item
|
|
37715
|
+
}, null, 8, ["item"])) : item.divider ? (openBlock(), createBlock(VDivider, {
|
|
37716
|
+
key: 1,
|
|
37717
|
+
class: "my-3"
|
|
37718
|
+
})) : item.children ? (openBlock(), createBlock(_sfc_main$4, {
|
|
37719
|
+
key: 2,
|
|
37720
|
+
item,
|
|
37721
|
+
level: 0,
|
|
37722
|
+
class: "leftPadding"
|
|
37723
|
+
}, null, 8, ["item"])) : (openBlock(), createBlock(_sfc_main$5, {
|
|
37724
|
+
key: 3,
|
|
37725
|
+
item,
|
|
37726
|
+
level: 0,
|
|
37727
|
+
class: "leftPadding"
|
|
37728
|
+
}, null, 8, ["item"]))
|
|
37729
|
+
], 64);
|
|
37730
|
+
}), 128))
|
|
37731
|
+
]),
|
|
37732
|
+
_: 1
|
|
37733
|
+
}),
|
|
37734
|
+
__props.sidebarDrawer ? (openBlock(), createElementBlock("div", _hoisted_2$1, [
|
|
37735
|
+
createVNode(VChip, {
|
|
37736
|
+
color: "inputBorder",
|
|
37737
|
+
size: "small"
|
|
37738
|
+
}, {
|
|
37739
|
+
default: withCtx(() => [..._cache[1] || (_cache[1] = [
|
|
37740
|
+
createTextVNode("نمایشی", -1)
|
|
37741
|
+
])]),
|
|
37742
|
+
_: 1
|
|
37743
|
+
})
|
|
37744
|
+
])) : createCommentVNode("", true)
|
|
37745
|
+
]),
|
|
37746
|
+
_: 1
|
|
37747
|
+
})
|
|
37748
|
+
]),
|
|
37749
|
+
_: 1
|
|
37750
|
+
}, 8, ["model-value", "rail", "class"]);
|
|
37751
|
+
};
|
|
37752
|
+
}
|
|
37753
|
+
});
|
|
36953
37754
|
const makeVToolbarTitleProps = propsFactory({
|
|
36954
37755
|
text: String,
|
|
36955
37756
|
...makeComponentProps(),
|
|
@@ -37332,400 +38133,449 @@ const VAppBar = genericComponent()({
|
|
|
37332
38133
|
return {};
|
|
37333
38134
|
}
|
|
37334
38135
|
});
|
|
37335
|
-
const
|
|
37336
|
-
|
|
37337
|
-
|
|
37338
|
-
|
|
37339
|
-
|
|
37340
|
-
|
|
37341
|
-
|
|
37342
|
-
|
|
37343
|
-
|
|
37344
|
-
|
|
37345
|
-
|
|
37346
|
-
|
|
37347
|
-
|
|
37348
|
-
|
|
37349
|
-
|
|
38136
|
+
const makeVAppBarNavIconProps = propsFactory({
|
|
38137
|
+
...omit(makeVBtnProps({
|
|
38138
|
+
icon: "$menu",
|
|
38139
|
+
variant: "text"
|
|
38140
|
+
}), ["spaced"])
|
|
38141
|
+
}, "VAppBarNavIcon");
|
|
38142
|
+
const VAppBarNavIcon = genericComponent()({
|
|
38143
|
+
name: "VAppBarNavIcon",
|
|
38144
|
+
props: makeVAppBarNavIconProps(),
|
|
38145
|
+
setup(props, _ref) {
|
|
38146
|
+
let {
|
|
38147
|
+
slots
|
|
38148
|
+
} = _ref;
|
|
38149
|
+
useRender(() => createVNode(VBtn, mergeProps(props, {
|
|
38150
|
+
"class": ["v-app-bar-nav-icon"]
|
|
38151
|
+
}), slots));
|
|
38152
|
+
return {};
|
|
38153
|
+
}
|
|
38154
|
+
});
|
|
38155
|
+
const VAppBarTitle = genericComponent()({
|
|
38156
|
+
name: "VAppBarTitle",
|
|
38157
|
+
props: makeVToolbarTitleProps(),
|
|
38158
|
+
setup(props, _ref) {
|
|
38159
|
+
let {
|
|
38160
|
+
slots
|
|
38161
|
+
} = _ref;
|
|
38162
|
+
useRender(() => createVNode(VToolbarTitle, mergeProps(props, {
|
|
38163
|
+
"class": "v-app-bar-title"
|
|
38164
|
+
}), slots));
|
|
38165
|
+
return {};
|
|
38166
|
+
}
|
|
38167
|
+
});
|
|
38168
|
+
const makeVBadgeProps = propsFactory({
|
|
38169
|
+
bordered: Boolean,
|
|
38170
|
+
color: String,
|
|
38171
|
+
content: [Number, String],
|
|
38172
|
+
dot: Boolean,
|
|
38173
|
+
floating: Boolean,
|
|
38174
|
+
icon: IconValue,
|
|
38175
|
+
inline: Boolean,
|
|
38176
|
+
label: {
|
|
38177
|
+
type: String,
|
|
38178
|
+
default: "$vuetify.badge"
|
|
37350
38179
|
},
|
|
37351
|
-
|
|
37352
|
-
|
|
37353
|
-
|
|
37354
|
-
|
|
37355
|
-
|
|
37356
|
-
|
|
38180
|
+
max: [Number, String],
|
|
38181
|
+
modelValue: {
|
|
38182
|
+
type: Boolean,
|
|
38183
|
+
default: true
|
|
38184
|
+
},
|
|
38185
|
+
offsetX: [Number, String],
|
|
38186
|
+
offsetY: [Number, String],
|
|
38187
|
+
textColor: String,
|
|
38188
|
+
...makeComponentProps(),
|
|
38189
|
+
...makeLocationProps({
|
|
38190
|
+
location: "top end"
|
|
38191
|
+
}),
|
|
38192
|
+
...makeRoundedProps(),
|
|
38193
|
+
...makeTagProps(),
|
|
38194
|
+
...makeThemeProps(),
|
|
38195
|
+
...makeTransitionProps$1({
|
|
38196
|
+
transition: "scale-rotate-transition"
|
|
38197
|
+
}),
|
|
38198
|
+
...makeDimensionProps()
|
|
38199
|
+
}, "VBadge");
|
|
38200
|
+
const VBadge = genericComponent()({
|
|
38201
|
+
name: "VBadge",
|
|
38202
|
+
inheritAttrs: false,
|
|
38203
|
+
props: makeVBadgeProps(),
|
|
38204
|
+
setup(props, ctx) {
|
|
38205
|
+
const {
|
|
38206
|
+
backgroundColorClasses,
|
|
38207
|
+
backgroundColorStyles
|
|
38208
|
+
} = useBackgroundColor(() => props.color);
|
|
38209
|
+
const {
|
|
38210
|
+
roundedClasses
|
|
38211
|
+
} = useRounded(props);
|
|
38212
|
+
const {
|
|
38213
|
+
t
|
|
38214
|
+
} = useLocale();
|
|
38215
|
+
const {
|
|
38216
|
+
textColorClasses,
|
|
38217
|
+
textColorStyles
|
|
38218
|
+
} = useTextColor(() => props.textColor);
|
|
38219
|
+
const {
|
|
38220
|
+
themeClasses
|
|
38221
|
+
} = useTheme();
|
|
38222
|
+
const {
|
|
38223
|
+
locationStyles
|
|
38224
|
+
} = useLocation(props, true, (side) => {
|
|
38225
|
+
const base = props.floating ? props.dot ? 2 : 4 : props.dot ? 8 : 12;
|
|
38226
|
+
return base + (["top", "bottom"].includes(side) ? Number(props.offsetY ?? 0) : ["left", "right"].includes(side) ? Number(props.offsetX ?? 0) : 0);
|
|
37357
38227
|
});
|
|
37358
|
-
|
|
37359
|
-
|
|
37360
|
-
|
|
37361
|
-
|
|
37362
|
-
|
|
37363
|
-
|
|
37364
|
-
|
|
37365
|
-
|
|
37366
|
-
|
|
37367
|
-
|
|
37368
|
-
|
|
37369
|
-
|
|
37370
|
-
|
|
37371
|
-
|
|
37372
|
-
|
|
37373
|
-
|
|
37374
|
-
|
|
37375
|
-
|
|
37376
|
-
|
|
37377
|
-
|
|
37378
|
-
|
|
37379
|
-
|
|
37380
|
-
|
|
37381
|
-
})) : createCommentVNode("", true),
|
|
37382
|
-
createVNode(VBtn, {
|
|
37383
|
-
class: "hidden-lg-and-up text-secondary ms-3",
|
|
37384
|
-
color: "lightsecondary",
|
|
37385
|
-
icon: "",
|
|
37386
|
-
rounded: "sm",
|
|
37387
|
-
variant: "flat",
|
|
37388
|
-
size: "small",
|
|
37389
|
-
onClick: _cache[1] || (_cache[1] = withModifiers(($event) => props.onToggleSidebarDrawer && props.onToggleSidebarDrawer(), ["stop"]))
|
|
37390
|
-
}, {
|
|
37391
|
-
default: withCtx(() => [
|
|
37392
|
-
createVNode(unref(IconMenu2), {
|
|
37393
|
-
size: "20",
|
|
37394
|
-
"stroke-width": "1.5"
|
|
37395
|
-
})
|
|
37396
|
-
]),
|
|
37397
|
-
_: 1
|
|
37398
|
-
}),
|
|
37399
|
-
createVNode(VBtn, {
|
|
37400
|
-
class: "hidden-md-and-down text-secondary mr-2 ml-2",
|
|
37401
|
-
color: "lightsecondary",
|
|
37402
|
-
icon: "",
|
|
37403
|
-
rounded: "sm",
|
|
37404
|
-
variant: "flat",
|
|
37405
|
-
size: "small",
|
|
37406
|
-
onClick: _cache[2] || (_cache[2] = withModifiers(($event) => props.onToggleCustomizer && props.onToggleCustomizer(), ["stop"]))
|
|
38228
|
+
const {
|
|
38229
|
+
dimensionStyles
|
|
38230
|
+
} = useDimension(props);
|
|
38231
|
+
useRender(() => {
|
|
38232
|
+
const value2 = Number(props.content);
|
|
38233
|
+
const content2 = !props.max || isNaN(value2) ? props.content : value2 <= Number(props.max) ? value2 : `${props.max}+`;
|
|
38234
|
+
const [badgeAttrs, attrs] = pickWithRest(ctx.attrs, ["aria-atomic", "aria-label", "aria-live", "role", "title"]);
|
|
38235
|
+
return createVNode(props.tag, mergeProps({
|
|
38236
|
+
"class": ["v-badge", {
|
|
38237
|
+
"v-badge--bordered": props.bordered,
|
|
38238
|
+
"v-badge--dot": props.dot,
|
|
38239
|
+
"v-badge--floating": props.floating,
|
|
38240
|
+
"v-badge--inline": props.inline
|
|
38241
|
+
}, props.class]
|
|
38242
|
+
}, attrs, {
|
|
38243
|
+
"style": props.style
|
|
38244
|
+
}), {
|
|
38245
|
+
default: () => {
|
|
38246
|
+
var _a, _b;
|
|
38247
|
+
return [createElementVNode("div", {
|
|
38248
|
+
"class": "v-badge__wrapper"
|
|
38249
|
+
}, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a), createVNode(MaybeTransition, {
|
|
38250
|
+
"transition": props.transition
|
|
37407
38251
|
}, {
|
|
37408
|
-
default:
|
|
37409
|
-
|
|
37410
|
-
|
|
37411
|
-
"
|
|
37412
|
-
|
|
37413
|
-
|
|
37414
|
-
|
|
37415
|
-
|
|
37416
|
-
|
|
37417
|
-
|
|
37418
|
-
|
|
37419
|
-
|
|
37420
|
-
|
|
37421
|
-
|
|
37422
|
-
|
|
37423
|
-
target: item.type === "external" ? "_blank" : "",
|
|
37424
|
-
variant: "text",
|
|
37425
|
-
disabled: item.disabled,
|
|
37426
|
-
class: "header-menu-btn mr-3",
|
|
37427
|
-
color: "primary"
|
|
37428
|
-
}, {
|
|
37429
|
-
default: withCtx(() => [
|
|
37430
|
-
item.icon ? (openBlock(), createBlock(resolveDynamicComponent(item.icon), {
|
|
37431
|
-
key: 0,
|
|
37432
|
-
class: "mr-2",
|
|
37433
|
-
size: "18"
|
|
37434
|
-
})) : createCommentVNode("", true),
|
|
37435
|
-
createElementVNode("span", null, toDisplayString(item.title), 1)
|
|
37436
|
-
]),
|
|
37437
|
-
_: 2
|
|
37438
|
-
}, 1032, ["to", "href", "target", "disabled"])) : (openBlock(), createBlock(VMenu, {
|
|
37439
|
-
key: 1,
|
|
37440
|
-
"offset-y": ""
|
|
37441
|
-
}, {
|
|
37442
|
-
activator: withCtx(({ props: mprops }) => [
|
|
37443
|
-
createVNode(VBtn, mergeProps({ ref_for: true }, mprops, {
|
|
37444
|
-
variant: "text",
|
|
37445
|
-
class: "header-menu-btn",
|
|
37446
|
-
color: "primary mr-3"
|
|
37447
|
-
}), {
|
|
37448
|
-
default: withCtx(() => [
|
|
37449
|
-
item.icon ? (openBlock(), createBlock(resolveDynamicComponent(item.icon), {
|
|
37450
|
-
key: 0,
|
|
37451
|
-
size: "18",
|
|
37452
|
-
class: "mr-2"
|
|
37453
|
-
})) : createCommentVNode("", true),
|
|
37454
|
-
createElementVNode("span", null, toDisplayString(item.title), 1),
|
|
37455
|
-
createVNode(unref(IconChevronDown), {
|
|
37456
|
-
size: "18",
|
|
37457
|
-
class: "ml-2"
|
|
37458
|
-
})
|
|
37459
|
-
]),
|
|
37460
|
-
_: 2
|
|
37461
|
-
}, 1040)
|
|
37462
|
-
]),
|
|
37463
|
-
default: withCtx(() => [
|
|
37464
|
-
createVNode(VList, null, {
|
|
37465
|
-
default: withCtx(() => [
|
|
37466
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(item.children, (child, c) => {
|
|
37467
|
-
return openBlock(), createBlock(VListItem, {
|
|
37468
|
-
key: c,
|
|
37469
|
-
to: child.type === "external" ? "" : child.to,
|
|
37470
|
-
href: child.type === "external" ? child.to : "",
|
|
37471
|
-
target: child.type === "external" ? "_blank" : ""
|
|
37472
|
-
}, {
|
|
37473
|
-
default: withCtx(() => [
|
|
37474
|
-
createVNode(VListItemTitle, null, {
|
|
37475
|
-
default: withCtx(() => [
|
|
37476
|
-
createTextVNode(toDisplayString(child.title), 1)
|
|
37477
|
-
]),
|
|
37478
|
-
_: 2
|
|
37479
|
-
}, 1024)
|
|
37480
|
-
]),
|
|
37481
|
-
_: 2
|
|
37482
|
-
}, 1032, ["to", "href", "target"]);
|
|
37483
|
-
}), 128))
|
|
37484
|
-
]),
|
|
37485
|
-
_: 2
|
|
37486
|
-
}, 1024)
|
|
37487
|
-
]),
|
|
37488
|
-
_: 2
|
|
37489
|
-
}, 1024))
|
|
37490
|
-
], 64);
|
|
37491
|
-
}), 128))
|
|
37492
|
-
])) : createCommentVNode("", true),
|
|
37493
|
-
createVNode(VSpacer),
|
|
37494
|
-
renderSlot(_ctx.$slots, "notifications", {}, () => [
|
|
37495
|
-
createVNode(VBtn, {
|
|
37496
|
-
icon: "",
|
|
37497
|
-
class: "text-secondary mx-3",
|
|
37498
|
-
color: "lightsecondary",
|
|
37499
|
-
rounded: "sm",
|
|
37500
|
-
size: "small",
|
|
37501
|
-
variant: "flat"
|
|
37502
|
-
}, {
|
|
37503
|
-
default: withCtx(() => [
|
|
37504
|
-
createVNode(unref(IconBell), {
|
|
37505
|
-
"stroke-width": "1.5",
|
|
37506
|
-
size: "20"
|
|
37507
|
-
})
|
|
37508
|
-
]),
|
|
37509
|
-
_: 1
|
|
37510
|
-
})
|
|
37511
|
-
], true),
|
|
37512
|
-
renderSlot(_ctx.$slots, "profile", {}, () => [
|
|
37513
|
-
createVNode(VBtn, {
|
|
37514
|
-
class: "profileBtn text-primary",
|
|
37515
|
-
color: "lightprimary",
|
|
37516
|
-
variant: "flat",
|
|
37517
|
-
rounded: "pill"
|
|
37518
|
-
}, {
|
|
37519
|
-
default: withCtx(() => [
|
|
37520
|
-
createVNode(unref(IconSettings))
|
|
37521
|
-
]),
|
|
37522
|
-
_: 1
|
|
37523
|
-
})
|
|
37524
|
-
], true)
|
|
37525
|
-
]),
|
|
37526
|
-
_: 3
|
|
38252
|
+
default: () => {
|
|
38253
|
+
var _a2, _b2;
|
|
38254
|
+
return [withDirectives(createElementVNode("span", mergeProps({
|
|
38255
|
+
"class": ["v-badge__badge", themeClasses.value, backgroundColorClasses.value, roundedClasses.value, textColorClasses.value],
|
|
38256
|
+
"style": [backgroundColorStyles.value, textColorStyles.value, dimensionStyles.value, props.inline ? {} : locationStyles.value],
|
|
38257
|
+
"aria-atomic": "true",
|
|
38258
|
+
"aria-label": t(props.label, value2),
|
|
38259
|
+
"aria-live": "polite",
|
|
38260
|
+
"role": "status"
|
|
38261
|
+
}, badgeAttrs), [props.dot ? void 0 : ctx.slots.badge ? (_b2 = (_a2 = ctx.slots).badge) == null ? void 0 : _b2.call(_a2) : props.icon ? createVNode(VIcon, {
|
|
38262
|
+
"icon": props.icon
|
|
38263
|
+
}, null) : content2]), [[vShow, props.modelValue]])];
|
|
38264
|
+
}
|
|
38265
|
+
})])];
|
|
38266
|
+
}
|
|
37527
38267
|
});
|
|
37528
|
-
};
|
|
38268
|
+
});
|
|
38269
|
+
return {};
|
|
37529
38270
|
}
|
|
37530
38271
|
});
|
|
37531
|
-
const AppSidebar = /* @__PURE__ */ _export_sfc$1(_sfc_main$2, [["__scopeId", "data-v-f9cc73a9"]]);
|
|
37532
38272
|
const _hoisted_1$1 = {
|
|
38273
|
+
key: 0,
|
|
38274
|
+
class: "text-h6"
|
|
38275
|
+
};
|
|
38276
|
+
const _hoisted_2 = {
|
|
37533
38277
|
key: 1,
|
|
37534
|
-
class: "
|
|
38278
|
+
class: "text-caption text-medium-emphasis"
|
|
37535
38279
|
};
|
|
38280
|
+
const _hoisted_3 = { key: 2 };
|
|
38281
|
+
const _hoisted_4 = { key: 2 };
|
|
38282
|
+
const _hoisted_5 = { key: 2 };
|
|
37536
38283
|
const _sfc_main$1 = /* @__PURE__ */ defineComponent$1({
|
|
37537
38284
|
__name: "AppHeader",
|
|
37538
38285
|
props: {
|
|
37539
|
-
|
|
37540
|
-
|
|
37541
|
-
|
|
37542
|
-
|
|
37543
|
-
|
|
37544
|
-
|
|
37545
|
-
|
|
37546
|
-
|
|
38286
|
+
title: {},
|
|
38287
|
+
subtitle: {},
|
|
38288
|
+
class: {},
|
|
38289
|
+
ariaLabel: { default: "Application header" },
|
|
38290
|
+
showSidebarToggle: { type: Boolean, default: true },
|
|
38291
|
+
showSearch: { type: Boolean, default: false },
|
|
38292
|
+
searchPlaceholder: { default: "جستجو..." },
|
|
38293
|
+
searchValue: {},
|
|
38294
|
+
showNotifications: { type: Boolean, default: false },
|
|
38295
|
+
notificationCount: { default: 0 },
|
|
38296
|
+
showProfile: { type: Boolean, default: false },
|
|
38297
|
+
profileAvatar: {},
|
|
38298
|
+
profileName: {},
|
|
38299
|
+
profileMenu: { default: () => [] },
|
|
38300
|
+
actions: { default: () => [] },
|
|
38301
|
+
color: { default: "surface" },
|
|
38302
|
+
elevation: { default: 1 },
|
|
38303
|
+
height: { default: 70 },
|
|
38304
|
+
hideDefaultTitle: { type: Boolean, default: false }
|
|
37547
38305
|
},
|
|
37548
|
-
|
|
38306
|
+
emits: ["update:searchValue", "toggle-sidebar", "search"],
|
|
38307
|
+
setup(__props, { emit: __emit }) {
|
|
37549
38308
|
const props = __props;
|
|
37550
|
-
|
|
37551
|
-
const
|
|
37552
|
-
|
|
37553
|
-
|
|
38309
|
+
const emit = __emit;
|
|
38310
|
+
const customizer = useCustomizerStore();
|
|
38311
|
+
const searchInput = computed({
|
|
38312
|
+
get: () => props.searchValue || "",
|
|
38313
|
+
set: (val2) => {
|
|
38314
|
+
emit("update:searchValue", val2);
|
|
38315
|
+
emit("search", val2);
|
|
38316
|
+
}
|
|
37554
38317
|
});
|
|
38318
|
+
const toggleSidebar = () => {
|
|
38319
|
+
customizer.SET_SIDEBAR_DRAWER();
|
|
38320
|
+
emit("toggle-sidebar");
|
|
38321
|
+
};
|
|
38322
|
+
const router = useRouter$1();
|
|
38323
|
+
const profileMenuItems = computed(
|
|
38324
|
+
() => props.profileMenu.map((item) => ({
|
|
38325
|
+
...item,
|
|
38326
|
+
prependIcon: item.icon,
|
|
38327
|
+
onClick: item.action || (() => {
|
|
38328
|
+
if (item.to) {
|
|
38329
|
+
router.push(item.to);
|
|
38330
|
+
} else if (item.href) {
|
|
38331
|
+
window.open(item.href, "_blank");
|
|
38332
|
+
}
|
|
38333
|
+
})
|
|
38334
|
+
}))
|
|
38335
|
+
);
|
|
37555
38336
|
return (_ctx, _cache) => {
|
|
37556
38337
|
return openBlock(), createBlock(VAppBar, {
|
|
37557
|
-
|
|
37558
|
-
|
|
38338
|
+
color: __props.color,
|
|
38339
|
+
elevation: __props.elevation,
|
|
38340
|
+
height: __props.height,
|
|
38341
|
+
class: normalizeClass(["app-header topbar", props.class]),
|
|
38342
|
+
"aria-label": __props.ariaLabel,
|
|
38343
|
+
fixed: ""
|
|
37559
38344
|
}, {
|
|
37560
38345
|
default: withCtx(() => [
|
|
37561
|
-
|
|
38346
|
+
renderSlot(_ctx.$slots, "left", {}, void 0, true),
|
|
38347
|
+
__props.showSidebarToggle ? (openBlock(), createBlock(VAppBarNavIcon, {
|
|
37562
38348
|
key: 0,
|
|
37563
|
-
|
|
37564
|
-
|
|
37565
|
-
|
|
37566
|
-
|
|
37567
|
-
|
|
37568
|
-
|
|
37569
|
-
|
|
38349
|
+
variant: "text",
|
|
38350
|
+
onClick: toggleSidebar
|
|
38351
|
+
})) : createCommentVNode("", true),
|
|
38352
|
+
renderSlot(_ctx.$slots, "title", {}, () => [
|
|
38353
|
+
!__props.hideDefaultTitle && (__props.title || __props.subtitle) ? (openBlock(), createBlock(VAppBarTitle, {
|
|
38354
|
+
key: 0,
|
|
38355
|
+
class: "d-flex flex-column"
|
|
38356
|
+
}, {
|
|
38357
|
+
default: withCtx(() => [
|
|
38358
|
+
__props.title ? (openBlock(), createElementBlock("span", _hoisted_1$1, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
|
|
38359
|
+
__props.subtitle ? (openBlock(), createElementBlock("span", _hoisted_2, toDisplayString(__props.subtitle), 1)) : createCommentVNode("", true)
|
|
38360
|
+
]),
|
|
38361
|
+
_: 1
|
|
38362
|
+
})) : createCommentVNode("", true)
|
|
38363
|
+
], true),
|
|
38364
|
+
createVNode(VSpacer),
|
|
38365
|
+
renderSlot(_ctx.$slots, "center", {}, void 0, true),
|
|
38366
|
+
__props.showSearch ? (openBlock(), createBlock(VTextField, {
|
|
38367
|
+
key: 1,
|
|
38368
|
+
modelValue: searchInput.value,
|
|
38369
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchInput.value = $event),
|
|
38370
|
+
placeholder: __props.searchPlaceholder,
|
|
38371
|
+
density: "compact",
|
|
38372
|
+
variant: "outlined",
|
|
38373
|
+
"hide-details": "",
|
|
38374
|
+
"prepend-inner-icon": "mdi-magnify",
|
|
38375
|
+
class: "search-bar",
|
|
38376
|
+
style: { "max-width": "400px" }
|
|
38377
|
+
}, null, 8, ["modelValue", "placeholder"])) : createCommentVNode("", true),
|
|
38378
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.actions, (action, index2) => {
|
|
38379
|
+
return openBlock(), createElementBlock(Fragment, { key: index2 }, [
|
|
38380
|
+
action.tooltip ? (openBlock(), createBlock(VTooltip, {
|
|
38381
|
+
key: 0,
|
|
38382
|
+
text: action.tooltip,
|
|
38383
|
+
location: "bottom"
|
|
38384
|
+
}, {
|
|
38385
|
+
activator: withCtx(({ props: tooltipProps }) => [
|
|
38386
|
+
createVNode(VBtn, mergeProps({ ref_for: true }, tooltipProps, {
|
|
38387
|
+
icon: action.icon,
|
|
38388
|
+
color: action.color || "primary",
|
|
38389
|
+
variant: action.variant || "text",
|
|
38390
|
+
size: action.size || "default",
|
|
38391
|
+
disabled: action.disabled,
|
|
38392
|
+
class: "ms-2",
|
|
38393
|
+
onClick: action.onClick
|
|
38394
|
+
}), {
|
|
38395
|
+
default: withCtx(() => [
|
|
38396
|
+
action.badge ? (openBlock(), createBlock(VBadge, {
|
|
38397
|
+
key: 0,
|
|
38398
|
+
content: action.badge,
|
|
38399
|
+
color: action.badgeColor || "error",
|
|
38400
|
+
overlap: ""
|
|
38401
|
+
}, {
|
|
38402
|
+
default: withCtx(() => [
|
|
38403
|
+
action.icon ? (openBlock(), createBlock(VIcon, {
|
|
38404
|
+
key: 0,
|
|
38405
|
+
icon: action.icon
|
|
38406
|
+
}, null, 8, ["icon"])) : createCommentVNode("", true)
|
|
38407
|
+
]),
|
|
38408
|
+
_: 2
|
|
38409
|
+
}, 1032, ["content", "color"])) : action.icon ? (openBlock(), createBlock(VIcon, {
|
|
38410
|
+
key: 1,
|
|
38411
|
+
icon: action.icon
|
|
38412
|
+
}, null, 8, ["icon"])) : createCommentVNode("", true),
|
|
38413
|
+
action.label && !action.icon ? (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(action.label), 1)) : createCommentVNode("", true)
|
|
38414
|
+
]),
|
|
38415
|
+
_: 2
|
|
38416
|
+
}, 1040, ["icon", "color", "variant", "size", "disabled", "onClick"])
|
|
38417
|
+
]),
|
|
38418
|
+
_: 2
|
|
38419
|
+
}, 1032, ["text"])) : (openBlock(), createBlock(VBtn, {
|
|
38420
|
+
key: 1,
|
|
38421
|
+
icon: action.icon,
|
|
38422
|
+
color: action.color || "primary",
|
|
38423
|
+
variant: action.variant || "text",
|
|
38424
|
+
size: action.size || "default",
|
|
38425
|
+
disabled: action.disabled,
|
|
38426
|
+
class: "ms-2",
|
|
38427
|
+
onClick: action.onClick
|
|
38428
|
+
}, {
|
|
38429
|
+
default: withCtx(() => [
|
|
38430
|
+
action.badge ? (openBlock(), createBlock(VBadge, {
|
|
38431
|
+
key: 0,
|
|
38432
|
+
content: action.badge,
|
|
38433
|
+
color: action.badgeColor || "error",
|
|
38434
|
+
overlap: ""
|
|
38435
|
+
}, {
|
|
38436
|
+
default: withCtx(() => [
|
|
38437
|
+
action.icon ? (openBlock(), createBlock(VIcon, {
|
|
38438
|
+
key: 0,
|
|
38439
|
+
icon: action.icon
|
|
38440
|
+
}, null, 8, ["icon"])) : createCommentVNode("", true)
|
|
38441
|
+
]),
|
|
38442
|
+
_: 2
|
|
38443
|
+
}, 1032, ["content", "color"])) : action.icon ? (openBlock(), createBlock(VIcon, {
|
|
38444
|
+
key: 1,
|
|
38445
|
+
icon: action.icon
|
|
38446
|
+
}, null, 8, ["icon"])) : createCommentVNode("", true),
|
|
38447
|
+
action.label && !action.icon ? (openBlock(), createElementBlock("span", _hoisted_4, toDisplayString(action.label), 1)) : createCommentVNode("", true)
|
|
38448
|
+
]),
|
|
38449
|
+
_: 2
|
|
38450
|
+
}, 1032, ["icon", "color", "variant", "size", "disabled", "onClick"]))
|
|
38451
|
+
], 64);
|
|
38452
|
+
}), 128)),
|
|
38453
|
+
renderSlot(_ctx.$slots, "right", {}, void 0, true),
|
|
38454
|
+
__props.showNotifications ? (openBlock(), createBlock(VMenu, {
|
|
38455
|
+
key: 2,
|
|
38456
|
+
location: "bottom end",
|
|
38457
|
+
"offset-y": ""
|
|
37570
38458
|
}, {
|
|
38459
|
+
activator: withCtx(({ props: menuProps }) => [
|
|
38460
|
+
createVNode(VBtn, mergeProps(menuProps, {
|
|
38461
|
+
icon: "",
|
|
38462
|
+
variant: "text",
|
|
38463
|
+
class: "profileBtn"
|
|
38464
|
+
}), {
|
|
38465
|
+
default: withCtx(() => [
|
|
38466
|
+
createVNode(VBadge, {
|
|
38467
|
+
content: __props.notificationCount > 0 ? __props.notificationCount : void 0,
|
|
38468
|
+
color: "error",
|
|
38469
|
+
overlap: ""
|
|
38470
|
+
}, {
|
|
38471
|
+
default: withCtx(() => [
|
|
38472
|
+
createVNode(VIcon, { icon: "mdi-bell-outline" })
|
|
38473
|
+
]),
|
|
38474
|
+
_: 1
|
|
38475
|
+
}, 8, ["content"])
|
|
38476
|
+
]),
|
|
38477
|
+
_: 1
|
|
38478
|
+
}, 16)
|
|
38479
|
+
]),
|
|
37571
38480
|
default: withCtx(() => [
|
|
37572
|
-
createVNode(
|
|
37573
|
-
|
|
37574
|
-
|
|
38481
|
+
createVNode(VList, null, {
|
|
38482
|
+
default: withCtx(() => [
|
|
38483
|
+
createVNode(VListItem, null, {
|
|
38484
|
+
default: withCtx(() => [
|
|
38485
|
+
createVNode(VListItemTitle, null, {
|
|
38486
|
+
default: withCtx(() => [..._cache[1] || (_cache[1] = [
|
|
38487
|
+
createTextVNode("اعلانها", -1)
|
|
38488
|
+
])]),
|
|
38489
|
+
_: 1
|
|
38490
|
+
})
|
|
38491
|
+
]),
|
|
38492
|
+
_: 1
|
|
38493
|
+
}),
|
|
38494
|
+
createVNode(VDivider),
|
|
38495
|
+
createVNode(VListItem, null, {
|
|
38496
|
+
default: withCtx(() => [
|
|
38497
|
+
createVNode(VListItemTitle, null, {
|
|
38498
|
+
default: withCtx(() => [..._cache[2] || (_cache[2] = [
|
|
38499
|
+
createTextVNode("هیچ اعلان جدیدی وجود ندارد", -1)
|
|
38500
|
+
])]),
|
|
38501
|
+
_: 1
|
|
38502
|
+
})
|
|
38503
|
+
]),
|
|
38504
|
+
_: 1
|
|
38505
|
+
})
|
|
38506
|
+
]),
|
|
38507
|
+
_: 1
|
|
37575
38508
|
})
|
|
37576
38509
|
]),
|
|
37577
38510
|
_: 1
|
|
37578
38511
|
})) : createCommentVNode("", true),
|
|
37579
|
-
|
|
37580
|
-
|
|
37581
|
-
|
|
37582
|
-
|
|
37583
|
-
rounded: "sm",
|
|
37584
|
-
variant: "flat",
|
|
37585
|
-
size: "small",
|
|
37586
|
-
onClick: _cache[1] || (_cache[1] = withModifiers(($event) => props.onToggleSidebarDrawer && props.onToggleSidebarDrawer(), ["stop"]))
|
|
38512
|
+
__props.showProfile ? (openBlock(), createBlock(VMenu, {
|
|
38513
|
+
key: 3,
|
|
38514
|
+
location: "bottom end",
|
|
38515
|
+
"offset-y": ""
|
|
37587
38516
|
}, {
|
|
37588
|
-
|
|
37589
|
-
createVNode(
|
|
37590
|
-
|
|
37591
|
-
|
|
37592
|
-
|
|
38517
|
+
activator: withCtx(({ props: menuProps }) => [
|
|
38518
|
+
createVNode(VBtn, mergeProps(menuProps, {
|
|
38519
|
+
icon: !__props.profileName && !__props.profileAvatar,
|
|
38520
|
+
variant: "text",
|
|
38521
|
+
class: "profileBtn"
|
|
38522
|
+
}), {
|
|
38523
|
+
default: withCtx(() => [
|
|
38524
|
+
__props.profileAvatar ? (openBlock(), createBlock(VAvatar, {
|
|
38525
|
+
key: 0,
|
|
38526
|
+
size: "32"
|
|
38527
|
+
}, {
|
|
38528
|
+
default: withCtx(() => [
|
|
38529
|
+
createVNode(VImg, {
|
|
38530
|
+
src: __props.profileAvatar,
|
|
38531
|
+
alt: __props.profileName || "Profile"
|
|
38532
|
+
}, null, 8, ["src", "alt"])
|
|
38533
|
+
]),
|
|
38534
|
+
_: 1
|
|
38535
|
+
})) : !__props.profileName ? (openBlock(), createBlock(VIcon, {
|
|
38536
|
+
key: 1,
|
|
38537
|
+
icon: "mdi-account-circle"
|
|
38538
|
+
})) : (openBlock(), createElementBlock("span", _hoisted_5, toDisplayString(__props.profileName), 1))
|
|
38539
|
+
]),
|
|
38540
|
+
_: 1
|
|
38541
|
+
}, 16, ["icon"])
|
|
37593
38542
|
]),
|
|
37594
|
-
_: 1
|
|
37595
|
-
}),
|
|
37596
|
-
createVNode(VBtn, {
|
|
37597
|
-
class: "hidden-md-and-down text-secondary mr-2 ml-2",
|
|
37598
|
-
color: "lightsecondary",
|
|
37599
|
-
icon: "",
|
|
37600
|
-
rounded: "sm",
|
|
37601
|
-
variant: "flat",
|
|
37602
|
-
size: "small",
|
|
37603
|
-
onClick: _cache[2] || (_cache[2] = withModifiers(($event) => props.onToggleCustomizer && props.onToggleCustomizer(), ["stop"]))
|
|
37604
|
-
}, {
|
|
37605
38543
|
default: withCtx(() => [
|
|
37606
|
-
|
|
37607
|
-
|
|
37608
|
-
|
|
37609
|
-
|
|
37610
|
-
|
|
37611
|
-
|
|
37612
|
-
|
|
37613
|
-
|
|
37614
|
-
|
|
37615
|
-
|
|
37616
|
-
!item.children ? (openBlock(), createBlock(VBtn, {
|
|
37617
|
-
key: 0,
|
|
37618
|
-
to: item.type === "external" ? "" : item.to,
|
|
37619
|
-
href: item.type === "external" ? item.to : "",
|
|
37620
|
-
target: item.type === "external" ? "_blank" : "",
|
|
37621
|
-
variant: "text",
|
|
37622
|
-
disabled: item.disabled,
|
|
37623
|
-
class: "header-menu-btn mr-3",
|
|
37624
|
-
color: "primary"
|
|
37625
|
-
}, {
|
|
37626
|
-
default: withCtx(() => [
|
|
37627
|
-
item.icon ? (openBlock(), createBlock(resolveDynamicComponent(item.icon), {
|
|
37628
|
-
key: 0,
|
|
37629
|
-
class: "mr-2",
|
|
37630
|
-
size: "18"
|
|
37631
|
-
})) : createCommentVNode("", true),
|
|
37632
|
-
createElementVNode("span", null, toDisplayString(item.title), 1)
|
|
37633
|
-
]),
|
|
37634
|
-
_: 2
|
|
37635
|
-
}, 1032, ["to", "href", "target", "disabled"])) : (openBlock(), createBlock(VMenu, {
|
|
37636
|
-
key: 1,
|
|
37637
|
-
"offset-y": ""
|
|
37638
|
-
}, {
|
|
37639
|
-
activator: withCtx(({ props: mprops }) => [
|
|
37640
|
-
createVNode(VBtn, mergeProps({ ref_for: true }, mprops, {
|
|
37641
|
-
variant: "text",
|
|
37642
|
-
class: "header-menu-btn",
|
|
37643
|
-
color: "primary mr-3"
|
|
37644
|
-
}), {
|
|
37645
|
-
default: withCtx(() => [
|
|
37646
|
-
item.icon ? (openBlock(), createBlock(resolveDynamicComponent(item.icon), {
|
|
37647
|
-
key: 0,
|
|
37648
|
-
size: "18",
|
|
37649
|
-
class: "mr-2"
|
|
37650
|
-
})) : createCommentVNode("", true),
|
|
37651
|
-
createElementVNode("span", null, toDisplayString(item.title), 1),
|
|
37652
|
-
createVNode(unref(IconChevronDown), {
|
|
37653
|
-
size: "18",
|
|
37654
|
-
class: "ml-2"
|
|
37655
|
-
})
|
|
37656
|
-
]),
|
|
37657
|
-
_: 2
|
|
37658
|
-
}, 1040)
|
|
37659
|
-
]),
|
|
37660
|
-
default: withCtx(() => [
|
|
37661
|
-
createVNode(VList, null, {
|
|
38544
|
+
profileMenuItems.value.length > 0 ? (openBlock(), createBlock(VList, { key: 0 }, {
|
|
38545
|
+
default: withCtx(() => [
|
|
38546
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(profileMenuItems.value, (item, index2) => {
|
|
38547
|
+
return openBlock(), createBlock(VListItem, {
|
|
38548
|
+
key: index2,
|
|
38549
|
+
"prepend-icon": item.icon,
|
|
38550
|
+
to: item.to,
|
|
38551
|
+
href: item.href,
|
|
38552
|
+
onClick: item.onClick
|
|
38553
|
+
}, {
|
|
37662
38554
|
default: withCtx(() => [
|
|
37663
|
-
(
|
|
37664
|
-
|
|
37665
|
-
|
|
37666
|
-
|
|
37667
|
-
|
|
37668
|
-
|
|
37669
|
-
|
|
37670
|
-
default: withCtx(() => [
|
|
37671
|
-
createVNode(VListItemTitle, null, {
|
|
37672
|
-
default: withCtx(() => [
|
|
37673
|
-
createTextVNode(toDisplayString(child.title), 1)
|
|
37674
|
-
]),
|
|
37675
|
-
_: 2
|
|
37676
|
-
}, 1024)
|
|
37677
|
-
]),
|
|
37678
|
-
_: 2
|
|
37679
|
-
}, 1032, ["to", "href", "target"]);
|
|
37680
|
-
}), 128))
|
|
38555
|
+
createVNode(VListItemTitle, null, {
|
|
38556
|
+
default: withCtx(() => [
|
|
38557
|
+
createTextVNode(toDisplayString(item.title), 1)
|
|
38558
|
+
]),
|
|
38559
|
+
_: 2
|
|
38560
|
+
}, 1024),
|
|
38561
|
+
item.divider ? (openBlock(), createBlock(VDivider, { key: 0 })) : createCommentVNode("", true)
|
|
37681
38562
|
]),
|
|
37682
38563
|
_: 2
|
|
37683
|
-
},
|
|
37684
|
-
|
|
37685
|
-
|
|
37686
|
-
|
|
37687
|
-
|
|
37688
|
-
|
|
37689
|
-
|
|
37690
|
-
|
|
37691
|
-
renderSlot(_ctx.$slots, "notifications", {}, () => [
|
|
37692
|
-
createVNode(VBtn, {
|
|
37693
|
-
icon: "",
|
|
37694
|
-
class: "text-secondary mx-3",
|
|
37695
|
-
color: "lightsecondary",
|
|
37696
|
-
rounded: "sm",
|
|
37697
|
-
size: "small",
|
|
37698
|
-
variant: "flat"
|
|
37699
|
-
}, {
|
|
37700
|
-
default: withCtx(() => [
|
|
37701
|
-
createVNode(unref(IconBell), {
|
|
37702
|
-
"stroke-width": "1.5",
|
|
37703
|
-
size: "20"
|
|
37704
|
-
})
|
|
37705
|
-
]),
|
|
37706
|
-
_: 1
|
|
37707
|
-
})
|
|
37708
|
-
], true),
|
|
37709
|
-
renderSlot(_ctx.$slots, "profile", {}, () => [
|
|
37710
|
-
createVNode(VBtn, {
|
|
37711
|
-
class: "profileBtn text-primary",
|
|
37712
|
-
color: "lightprimary",
|
|
37713
|
-
variant: "flat",
|
|
37714
|
-
rounded: "pill"
|
|
37715
|
-
}, {
|
|
37716
|
-
default: withCtx(() => [
|
|
37717
|
-
createVNode(unref(IconSettings))
|
|
37718
|
-
]),
|
|
37719
|
-
_: 1
|
|
37720
|
-
})
|
|
37721
|
-
], true)
|
|
38564
|
+
}, 1032, ["prepend-icon", "to", "href", "onClick"]);
|
|
38565
|
+
}), 128))
|
|
38566
|
+
]),
|
|
38567
|
+
_: 1
|
|
38568
|
+
})) : createCommentVNode("", true)
|
|
38569
|
+
]),
|
|
38570
|
+
_: 1
|
|
38571
|
+
})) : createCommentVNode("", true)
|
|
37722
38572
|
]),
|
|
37723
38573
|
_: 3
|
|
37724
|
-
});
|
|
38574
|
+
}, 8, ["color", "elevation", "height", "class", "aria-label"]);
|
|
37725
38575
|
};
|
|
37726
38576
|
}
|
|
37727
38577
|
});
|
|
37728
|
-
const AppHeader = /* @__PURE__ */ _export_sfc$1(_sfc_main$1, [["__scopeId", "data-v-
|
|
38578
|
+
const AppHeader = /* @__PURE__ */ _export_sfc$1(_sfc_main$1, [["__scopeId", "data-v-b45b815e"]]);
|
|
37729
38579
|
const makeVAppProps = propsFactory({
|
|
37730
38580
|
...makeComponentProps(),
|
|
37731
38581
|
...omit(makeLayoutProps(), ["fullHeight"]),
|
|
@@ -37812,41 +38662,31 @@ const _hoisted_1 = { class: "page-wrapper" };
|
|
|
37812
38662
|
const _sfc_main = /* @__PURE__ */ defineComponent$1({
|
|
37813
38663
|
__name: "AppLayout",
|
|
37814
38664
|
props: {
|
|
37815
|
-
header: {
|
|
37816
|
-
|
|
37817
|
-
subtitle: "",
|
|
37818
|
-
showSidebarToggle: true,
|
|
37819
|
-
showSearch: false,
|
|
37820
|
-
searchPlaceholder: "جستجو...",
|
|
37821
|
-
showNotifications: false,
|
|
37822
|
-
notificationCount: 0,
|
|
37823
|
-
showProfile: false,
|
|
37824
|
-
actions: [],
|
|
37825
|
-
color: "surface",
|
|
37826
|
-
elevation: 1,
|
|
37827
|
-
height: 70
|
|
37828
|
-
}) },
|
|
37829
|
-
sidebar: { default: () => ({
|
|
37830
|
-
menuItems: [],
|
|
37831
|
-
logo: "",
|
|
37832
|
-
logoLight: "",
|
|
37833
|
-
logoText: "UI Kit",
|
|
37834
|
-
miniSidebar: false,
|
|
37835
|
-
permanent: true,
|
|
37836
|
-
temporary: false,
|
|
37837
|
-
rail: false,
|
|
37838
|
-
location: "left",
|
|
37839
|
-
width: 265,
|
|
37840
|
-
railWidth: 75
|
|
37841
|
-
}) }
|
|
38665
|
+
header: {},
|
|
38666
|
+
sidebar: {}
|
|
37842
38667
|
},
|
|
37843
38668
|
setup(__props) {
|
|
37844
|
-
useCustomizerStore();
|
|
37845
38669
|
return (_ctx, _cache) => {
|
|
37846
38670
|
return openBlock(), createBlock(VApp, null, {
|
|
37847
38671
|
default: withCtx(() => [
|
|
37848
|
-
createVNode(AppHeader, mergeProps(__props.header, { class: "app-header" }),
|
|
37849
|
-
|
|
38672
|
+
createVNode(AppHeader, mergeProps(__props.header, { class: "app-header" }), {
|
|
38673
|
+
notifications: withCtx(() => [
|
|
38674
|
+
renderSlot(_ctx.$slots, "notifications", {}, void 0, true)
|
|
38675
|
+
]),
|
|
38676
|
+
profile: withCtx(() => [
|
|
38677
|
+
renderSlot(_ctx.$slots, "profile", {}, void 0, true)
|
|
38678
|
+
]),
|
|
38679
|
+
_: 3
|
|
38680
|
+
}, 16),
|
|
38681
|
+
createVNode(_sfc_main$2, {
|
|
38682
|
+
sidebarItems: __props.sidebar.sidebarItems,
|
|
38683
|
+
getFilteredSidebarItems: __props.sidebar.getFilteredSidebarItems,
|
|
38684
|
+
logoComponent: __props.sidebar.logoComponent,
|
|
38685
|
+
sidebarDrawer: __props.sidebar.sidebarDrawer,
|
|
38686
|
+
miniSidebar: __props.sidebar.miniSidebar,
|
|
38687
|
+
"onUpdate:sidebarDrawer": __props.sidebar["onUpdate:sidebarDrawer"],
|
|
38688
|
+
class: "app-sidebar"
|
|
38689
|
+
}, null, 8, ["sidebarItems", "getFilteredSidebarItems", "logoComponent", "sidebarDrawer", "miniSidebar", "onUpdate:sidebarDrawer"]),
|
|
37850
38690
|
createVNode(VMain, null, {
|
|
37851
38691
|
default: withCtx(() => [
|
|
37852
38692
|
createElementVNode("div", _hoisted_1, [
|
|
@@ -37861,7 +38701,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent$1({
|
|
|
37861
38701
|
};
|
|
37862
38702
|
}
|
|
37863
38703
|
});
|
|
37864
|
-
const AppLayout = /* @__PURE__ */ _export_sfc$1(_sfc_main, [["__scopeId", "data-v-
|
|
38704
|
+
const AppLayout = /* @__PURE__ */ _export_sfc$1(_sfc_main, [["__scopeId", "data-v-82bccb54"]]);
|
|
37865
38705
|
function useDataTable(options) {
|
|
37866
38706
|
const items = ref([]);
|
|
37867
38707
|
const loading = ref(false);
|
|
@@ -38424,28 +39264,28 @@ const index = {
|
|
|
38424
39264
|
export {
|
|
38425
39265
|
AppHeader,
|
|
38426
39266
|
AppLayout,
|
|
38427
|
-
AppSidebar,
|
|
39267
|
+
_sfc_main$2 as AppSidebar,
|
|
38428
39268
|
AppStepper,
|
|
38429
|
-
_sfc_main$
|
|
38430
|
-
_sfc_main$
|
|
39269
|
+
_sfc_main$l as BaseBreadcrumb,
|
|
39270
|
+
_sfc_main$k as BaseIcon,
|
|
38431
39271
|
BooleanEnum,
|
|
38432
39272
|
BooleanEnumOptions,
|
|
38433
|
-
_sfc_main$
|
|
39273
|
+
_sfc_main$j as ConfirmDialog,
|
|
38434
39274
|
CustomAutocomplete,
|
|
38435
|
-
_sfc_main$
|
|
39275
|
+
_sfc_main$f as CustomDataTable,
|
|
38436
39276
|
DateConverter,
|
|
38437
39277
|
DescriptionInput,
|
|
38438
39278
|
DigitLimit,
|
|
38439
39279
|
DownloadButton,
|
|
38440
39280
|
GreetingUtils,
|
|
38441
39281
|
Loading,
|
|
38442
|
-
_sfc_main$
|
|
39282
|
+
_sfc_main$h as MoneyInput,
|
|
38443
39283
|
NationalCodeValidator,
|
|
38444
39284
|
PdfViewer,
|
|
38445
39285
|
ShamsiDatePicker,
|
|
38446
|
-
_sfc_main$
|
|
38447
|
-
_sfc_main$
|
|
38448
|
-
_sfc_main$
|
|
39286
|
+
_sfc_main$b as UiChildCard,
|
|
39287
|
+
_sfc_main$a as UiParentCard,
|
|
39288
|
+
_sfc_main$9 as VPriceTextField,
|
|
38449
39289
|
configureAuth,
|
|
38450
39290
|
configureAxiosInstance,
|
|
38451
39291
|
index as default,
|