@amirjalili1374/ui-kit 1.3.24 → 1.3.26
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 +50 -82
- package/dist/components/layout/AppHeader.vue.d.ts.map +1 -1
- package/dist/components/layout/AppLayout.vue.d.ts +1 -2
- package/dist/components/layout/AppLayout.vue.d.ts.map +1 -1
- package/dist/components/layout/AppSidebar.vue.d.ts +47 -52
- package/dist/components/layout/AppSidebar.vue.d.ts.map +1 -1
- package/dist/components/shared/CustomDataTable.vue.d.ts.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/plugins/mdi-icon.d.ts +1 -0
- package/dist/plugins/mdi-icon.d.ts.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/componentTypes/DataTableTypes.d.ts +3 -0
- package/dist/types/componentTypes/DataTableTypes.d.ts.map +1 -1
- package/dist/types/components/layout/menu.d.ts +19 -0
- package/dist/types/components/layout/menu.d.ts.map +1 -0
- package/dist/ui-kit.cjs.js +1 -1
- package/dist/ui-kit.cjs.js.map +1 -1
- package/dist/ui-kit.es.js +451 -1287
- 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 } from "@tabler/icons-vue";
|
|
2
|
+
import { IconHome, IconArrowBadgeLeft, IconChevronDown, IconChevronRight, IconMinus, IconPlus, IconRefresh, IconChevronLeft, IconDownload, IconPrinter, IconMaximize, IconMinimize, IconX, IconFileText, IconCheck, IconPencil, IconClock, IconMenu2, IconPalette, IconBell, IconSettings } 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$5 = { class: "d-flex align-center gap-2" };
|
|
3890
|
+
const _hoisted_3$5 = { class: "d-flex align-center gap-2" };
|
|
3891
|
+
const _sfc_main$i = /* @__PURE__ */ defineComponent$1({
|
|
3892
3892
|
__name: "BaseBreadcrumb",
|
|
3893
3893
|
props: {
|
|
3894
3894
|
title: String,
|
|
@@ -3932,7 +3932,7 @@ const _sfc_main$l = /* @__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$5, [
|
|
3936
3936
|
createVNode(unref(IconArrowBadgeLeft), { stroke: "{2}" })
|
|
3937
3937
|
])
|
|
3938
3938
|
]),
|
|
@@ -3941,7 +3941,7 @@ const _sfc_main$l = /* @__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$5, [
|
|
3945
3945
|
createVNode(unref(IconArrowBadgeLeft), { stroke: "{2}" })
|
|
3946
3946
|
])
|
|
3947
3947
|
]),
|
|
@@ -3965,7 +3965,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent$1({
|
|
|
3965
3965
|
};
|
|
3966
3966
|
}
|
|
3967
3967
|
});
|
|
3968
|
-
const _sfc_main$
|
|
3968
|
+
const _sfc_main$h = /* @__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$g = /* @__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$4 = { class: "ca-item-subtitle" };
|
|
12596
|
+
const _hoisted_3$4 = { class: "ca-group-tooltip" };
|
|
12597
|
+
const _hoisted_4$2 = { class: "ca-group-tooltip-header" };
|
|
12598
|
+
const _hoisted_5$2 = { 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$f = /* @__PURE__ */ defineComponent$1({
|
|
12605
12605
|
__name: "CustomAutocomplete",
|
|
12606
12606
|
props: {
|
|
12607
12607
|
fields: {},
|
|
@@ -12735,7 +12735,7 @@ const _sfc_main$i = /* @__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$4, toDisplayString(resolveSubtitle(item.raw ?? item)), 1)
|
|
12739
12739
|
]),
|
|
12740
12740
|
key: "0"
|
|
12741
12741
|
} : void 0
|
|
@@ -12746,10 +12746,10 @@ const _sfc_main$i = /* @__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$4, [
|
|
12750
|
+
createElementVNode("div", _hoisted_4$2, [
|
|
12751
12751
|
createElementVNode("strong", null, toDisplayString(resolveTitle(item.raw ?? item)), 1),
|
|
12752
|
-
createElementVNode("span", _hoisted_5$
|
|
12752
|
+
createElementVNode("span", _hoisted_5$2, 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$f, [["__scopeId", "data-v-4c17f7bd"]]);
|
|
12816
|
+
const _sfc_main$e = /* @__PURE__ */ defineComponent$1({
|
|
12817
12817
|
__name: "MoneyInput",
|
|
12818
12818
|
props: {
|
|
12819
12819
|
modelValue: {
|
|
@@ -12920,7 +12920,7 @@ const _sfc_main$h = /* @__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$d = /* @__PURE__ */ defineComponent$1({
|
|
12924
12924
|
__name: "ShamsiDatePicker",
|
|
12925
12925
|
props: {
|
|
12926
12926
|
modelValue: { default: "" },
|
|
@@ -13031,7 +13031,7 @@ const _sfc_main$g = /* @__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$d, [["__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$3 = { class: "title-text" };
|
|
16925
|
+
const _hoisted_3$3 = { class: "action-buttons" };
|
|
16926
|
+
const _hoisted_4$1 = {
|
|
16927
16927
|
key: 3,
|
|
16928
16928
|
class: "selection-actions"
|
|
16929
16929
|
};
|
|
16930
|
-
const _hoisted_5$
|
|
16930
|
+
const _hoisted_5$1 = {
|
|
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$c = /* @__PURE__ */ defineComponent$1({
|
|
16979
16979
|
...{ inheritAttrs: false },
|
|
16980
16980
|
__name: "CustomDataTable",
|
|
16981
16981
|
props: {
|
|
@@ -17277,6 +17277,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
|
|
|
17277
17277
|
const resolveHeaderKey = (header) => header.key;
|
|
17278
17278
|
const resolveHeaderTitle = (header) => header.title;
|
|
17279
17279
|
const isHeaderDisabled = (header) => header.editable === false;
|
|
17280
|
+
const isTextareaHeader = (header) => header.textarea === true;
|
|
17280
17281
|
const getUniqueValue = (item) => {
|
|
17281
17282
|
if (typeof props.uniqueKey === "function") {
|
|
17282
17283
|
return props.uniqueKey(item);
|
|
@@ -17884,9 +17885,9 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
|
|
|
17884
17885
|
var _a;
|
|
17885
17886
|
return openBlock(), createElementBlock(Fragment, null, [
|
|
17886
17887
|
props.title ? (openBlock(), createElementBlock("div", _hoisted_1$9, [
|
|
17887
|
-
createElementVNode("h3", _hoisted_2$
|
|
17888
|
+
createElementVNode("h3", _hoisted_2$3, toDisplayString(props.title), 1)
|
|
17888
17889
|
])) : createCommentVNode("", true),
|
|
17889
|
-
createElementVNode("div", _hoisted_3$
|
|
17890
|
+
createElementVNode("div", _hoisted_3$3, [
|
|
17890
17891
|
((_a = props.actions) == null ? void 0 : _a.includes("create")) ? (openBlock(), createBlock(VBtn, {
|
|
17891
17892
|
key: 0,
|
|
17892
17893
|
color: "green",
|
|
@@ -17919,7 +17920,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
|
|
|
17919
17920
|
])]),
|
|
17920
17921
|
_: 1
|
|
17921
17922
|
}, 8, ["onClick", "loading"])) : createCommentVNode("", true),
|
|
17922
|
-
props.selectable && hasSelection.value ? (openBlock(), createElementBlock("div", _hoisted_4$
|
|
17923
|
+
props.selectable && hasSelection.value ? (openBlock(), createElementBlock("div", _hoisted_4$1, [
|
|
17923
17924
|
createVNode(VChip, {
|
|
17924
17925
|
color: "primary",
|
|
17925
17926
|
class: "me-2"
|
|
@@ -17946,7 +17947,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
|
|
|
17946
17947
|
appear: ""
|
|
17947
17948
|
}, {
|
|
17948
17949
|
default: withCtx(() => [
|
|
17949
|
-
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$1, [
|
|
17950
17951
|
props.enableGroupDelete ? (openBlock(), createBlock(VBtn, {
|
|
17951
17952
|
key: 0,
|
|
17952
17953
|
color: "red",
|
|
@@ -18657,8 +18658,8 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
|
|
|
18657
18658
|
(openBlock(true), createElementBlock(Fragment, null, renderList(formHeaders.value, (header) => {
|
|
18658
18659
|
return openBlock(), createBlock(VCol, {
|
|
18659
18660
|
key: resolveHeaderKey(header),
|
|
18660
|
-
cols: "
|
|
18661
|
-
md: "4
|
|
18661
|
+
cols: header.cols ? typeof header.cols === "number" ? header.cols : Number(header.cols) : 4,
|
|
18662
|
+
md: header.cols ? typeof header.cols === "number" ? header.cols : Number(header.cols) : 4
|
|
18662
18663
|
}, {
|
|
18663
18664
|
default: withCtx(() => [
|
|
18664
18665
|
!header.hidden ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
@@ -18683,25 +18684,36 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
|
|
|
18683
18684
|
disabled: isHeaderDisabled(header),
|
|
18684
18685
|
clearable: "",
|
|
18685
18686
|
variant: "outlined"
|
|
18686
|
-
}, 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$e, {
|
|
18687
18688
|
key: 2,
|
|
18688
18689
|
modelValue: formModel.value[resolveHeaderKey(header)],
|
|
18689
18690
|
"onUpdate:modelValue": ($event) => formModel.value[resolveHeaderKey(header)] = $event,
|
|
18690
18691
|
label: resolveHeaderTitle(header),
|
|
18691
18692
|
disabled: isHeaderDisabled(header)
|
|
18692
|
-
}, null, 8, ["modelValue", "onUpdate:modelValue", "label", "disabled"])) : (openBlock(), createBlock(
|
|
18693
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue", "label", "disabled"])) : isTextareaHeader(header) ? (openBlock(), createBlock(VTextarea, {
|
|
18693
18694
|
key: 3,
|
|
18694
18695
|
modelValue: formModel.value[resolveHeaderKey(header)],
|
|
18695
18696
|
"onUpdate:modelValue": ($event) => formModel.value[resolveHeaderKey(header)] = $event,
|
|
18696
18697
|
label: resolveHeaderTitle(header),
|
|
18697
18698
|
variant: "outlined",
|
|
18698
18699
|
disabled: isHeaderDisabled(header),
|
|
18699
|
-
|
|
18700
|
-
|
|
18700
|
+
dir: header.dir,
|
|
18701
|
+
"auto-grow": "",
|
|
18702
|
+
rows: "3"
|
|
18703
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue", "label", "disabled", "dir"])) : (openBlock(), createBlock(VTextField, {
|
|
18704
|
+
key: 4,
|
|
18705
|
+
modelValue: formModel.value[resolveHeaderKey(header)],
|
|
18706
|
+
"onUpdate:modelValue": ($event) => formModel.value[resolveHeaderKey(header)] = $event,
|
|
18707
|
+
label: resolveHeaderTitle(header),
|
|
18708
|
+
variant: "outlined",
|
|
18709
|
+
disabled: isHeaderDisabled(header),
|
|
18710
|
+
type: getFieldInputType(header),
|
|
18711
|
+
dir: header.dir
|
|
18712
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue", "label", "disabled", "type", "dir"]))
|
|
18701
18713
|
], 64)) : createCommentVNode("", true)
|
|
18702
18714
|
]),
|
|
18703
18715
|
_: 2
|
|
18704
|
-
},
|
|
18716
|
+
}, 1032, ["cols", "md"]);
|
|
18705
18717
|
}), 128))
|
|
18706
18718
|
]),
|
|
18707
18719
|
_: 1
|
|
@@ -19058,7 +19070,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
|
|
|
19058
19070
|
}
|
|
19059
19071
|
});
|
|
19060
19072
|
const _hoisted_1$8 = { class: "description-input" };
|
|
19061
|
-
const _sfc_main$
|
|
19073
|
+
const _sfc_main$b = /* @__PURE__ */ defineComponent$1({
|
|
19062
19074
|
__name: "DescriptionInput",
|
|
19063
19075
|
props: {
|
|
19064
19076
|
modelValue: { default: "" },
|
|
@@ -19180,12 +19192,13 @@ ${newLineNumber} - `;
|
|
|
19180
19192
|
};
|
|
19181
19193
|
}
|
|
19182
19194
|
});
|
|
19183
|
-
const DescriptionInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
19195
|
+
const DescriptionInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$b, [["__scopeId", "data-v-e8b64ecb"]]);
|
|
19184
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";
|
|
19185
19197
|
var mdiArrowRight = "M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z";
|
|
19186
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";
|
|
19187
19199
|
var mdiClose = "M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z";
|
|
19188
19200
|
var mdiCog = "M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z";
|
|
19201
|
+
var mdiContentCopy = "M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z";
|
|
19189
19202
|
var mdiDelete = "M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z";
|
|
19190
19203
|
var mdiEye = "M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z";
|
|
19191
19204
|
var mdiEyeOff = "M11.83,9L15,12.16C15,12.11 15,12.05 15,12A3,3 0 0,0 12,9C11.94,9 11.89,9 11.83,9M7.53,9.8L9.08,11.35C9.03,11.56 9,11.77 9,12A3,3 0 0,0 12,15C12.22,15 12.44,14.97 12.65,14.92L14.2,16.47C13.53,16.8 12.79,17 12,17A5,5 0 0,1 7,12C7,11.21 7.2,10.47 7.53,9.8M2,4.27L4.28,6.55L4.73,7C3.08,8.3 1.78,10 1,12C2.73,16.39 7,19.5 12,19.5C13.55,19.5 15.03,19.2 16.38,18.66L16.81,19.08L19.73,22L21,20.73L3.27,3M12,7A5,5 0 0,1 17,12C17,12.64 16.87,13.26 16.64,13.82L19.57,16.75C21.07,15.5 22.27,13.86 23,12C21.27,7.61 17,4.5 12,4.5C10.6,4.5 9.26,4.75 8,5.2L10.17,7.35C10.74,7.13 11.35,7 12,7Z";
|
|
@@ -19207,10 +19220,11 @@ const icons = {
|
|
|
19207
19220
|
pencil: mdiPencil,
|
|
19208
19221
|
delete: mdiDelete,
|
|
19209
19222
|
arrowRight: mdiArrowRight,
|
|
19210
|
-
cog: mdiCog
|
|
19223
|
+
cog: mdiCog,
|
|
19224
|
+
contentCopy: mdiContentCopy
|
|
19211
19225
|
};
|
|
19212
19226
|
const _hoisted_1$7 = { class: "download-title" };
|
|
19213
|
-
const _sfc_main$
|
|
19227
|
+
const _sfc_main$a = /* @__PURE__ */ defineComponent$1({
|
|
19214
19228
|
...{
|
|
19215
19229
|
inheritAttrs: false
|
|
19216
19230
|
},
|
|
@@ -19328,18 +19342,18 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent$1({
|
|
|
19328
19342
|
};
|
|
19329
19343
|
}
|
|
19330
19344
|
});
|
|
19331
|
-
const DownloadButton = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
19345
|
+
const DownloadButton = /* @__PURE__ */ _export_sfc$1(_sfc_main$a, [["__scopeId", "data-v-0a911831"]]);
|
|
19332
19346
|
const _hoisted_1$6 = {
|
|
19333
19347
|
key: 0,
|
|
19334
19348
|
class: "pdf-viewer-header"
|
|
19335
19349
|
};
|
|
19336
|
-
const _hoisted_2$
|
|
19337
|
-
const _hoisted_3$
|
|
19338
|
-
const _hoisted_4
|
|
19350
|
+
const _hoisted_2$2 = { class: "pdf-viewer-title" };
|
|
19351
|
+
const _hoisted_3$2 = { class: "pdf-viewer-controls" };
|
|
19352
|
+
const _hoisted_4 = {
|
|
19339
19353
|
key: 0,
|
|
19340
19354
|
class: "zoom-controls"
|
|
19341
19355
|
};
|
|
19342
|
-
const _hoisted_5
|
|
19356
|
+
const _hoisted_5 = { class: "zoom-level" };
|
|
19343
19357
|
const _hoisted_6 = {
|
|
19344
19358
|
key: 1,
|
|
19345
19359
|
class: "navigation-controls"
|
|
@@ -19372,7 +19386,7 @@ const _hoisted_16 = {
|
|
|
19372
19386
|
key: 0,
|
|
19373
19387
|
class: "file-info"
|
|
19374
19388
|
};
|
|
19375
|
-
const _sfc_main$
|
|
19389
|
+
const _sfc_main$9 = /* @__PURE__ */ defineComponent$1({
|
|
19376
19390
|
__name: "PdfViewer",
|
|
19377
19391
|
props: {
|
|
19378
19392
|
src: {},
|
|
@@ -19581,11 +19595,11 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
|
|
|
19581
19595
|
class: normalizeClass(["pdf-viewer-container", { "fullscreen": isFullscreen.value }])
|
|
19582
19596
|
}, [
|
|
19583
19597
|
__props.showHeader ? (openBlock(), createElementBlock("div", _hoisted_1$6, [
|
|
19584
|
-
createElementVNode("div", _hoisted_2$
|
|
19598
|
+
createElementVNode("div", _hoisted_2$2, [
|
|
19585
19599
|
createElementVNode("h3", null, toDisplayString(__props.title || "PDF Viewer"), 1)
|
|
19586
19600
|
]),
|
|
19587
|
-
createElementVNode("div", _hoisted_3$
|
|
19588
|
-
__props.showZoomControls ? (openBlock(), createElementBlock("div", _hoisted_4
|
|
19601
|
+
createElementVNode("div", _hoisted_3$2, [
|
|
19602
|
+
__props.showZoomControls ? (openBlock(), createElementBlock("div", _hoisted_4, [
|
|
19589
19603
|
createVNode(VBtn, {
|
|
19590
19604
|
size: "small",
|
|
19591
19605
|
variant: "text",
|
|
@@ -19601,7 +19615,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
|
|
|
19601
19615
|
]),
|
|
19602
19616
|
_: 1
|
|
19603
19617
|
}, 8, ["disabled"]),
|
|
19604
|
-
createElementVNode("span", _hoisted_5
|
|
19618
|
+
createElementVNode("span", _hoisted_5, toDisplayString(Math.round(zoom.value * 100)) + "%", 1),
|
|
19605
19619
|
createVNode(VBtn, {
|
|
19606
19620
|
size: "small",
|
|
19607
19621
|
variant: "text",
|
|
@@ -19799,8 +19813,8 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
|
|
|
19799
19813
|
};
|
|
19800
19814
|
}
|
|
19801
19815
|
});
|
|
19802
|
-
const PdfViewer = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
19803
|
-
const _sfc_main$
|
|
19816
|
+
const PdfViewer = /* @__PURE__ */ _export_sfc$1(_sfc_main$9, [["__scopeId", "data-v-f3e9c767"]]);
|
|
19817
|
+
const _sfc_main$8 = /* @__PURE__ */ defineComponent$1({
|
|
19804
19818
|
__name: "UiChildCard",
|
|
19805
19819
|
props: {
|
|
19806
19820
|
title: String
|
|
@@ -19835,7 +19849,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent$1({
|
|
|
19835
19849
|
}
|
|
19836
19850
|
});
|
|
19837
19851
|
const _hoisted_1$5 = { class: "d-sm-flex align-center justify-space-between" };
|
|
19838
|
-
const _sfc_main$
|
|
19852
|
+
const _sfc_main$7 = /* @__PURE__ */ defineComponent$1({
|
|
19839
19853
|
__name: "UiParentCard",
|
|
19840
19854
|
props: {
|
|
19841
19855
|
title: String
|
|
@@ -19872,7 +19886,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent$1({
|
|
|
19872
19886
|
};
|
|
19873
19887
|
}
|
|
19874
19888
|
});
|
|
19875
|
-
const _sfc_main$
|
|
19889
|
+
const _sfc_main$6 = /* @__PURE__ */ defineComponent$1({
|
|
19876
19890
|
__name: "VPriceTextField",
|
|
19877
19891
|
props: {
|
|
19878
19892
|
modelValue: {},
|
|
@@ -19977,9 +19991,9 @@ const _hoisted_1$4 = {
|
|
|
19977
19991
|
class: "app-stepper-root",
|
|
19978
19992
|
dir: "rtl"
|
|
19979
19993
|
};
|
|
19980
|
-
const _hoisted_2$
|
|
19981
|
-
const _hoisted_3$
|
|
19982
|
-
const _sfc_main$
|
|
19994
|
+
const _hoisted_2$1 = { class: "app-stepper-header-card" };
|
|
19995
|
+
const _hoisted_3$1 = { class: "app-stepper-title" };
|
|
19996
|
+
const _sfc_main$5 = /* @__PURE__ */ defineComponent$1({
|
|
19983
19997
|
__name: "AppStepper",
|
|
19984
19998
|
props: {
|
|
19985
19999
|
steps: {
|
|
@@ -20032,7 +20046,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent$1({
|
|
|
20032
20046
|
__expose({ currentStepComponentRef });
|
|
20033
20047
|
return (_ctx, _cache) => {
|
|
20034
20048
|
return openBlock(), createElementBlock("div", _hoisted_1$4, [
|
|
20035
|
-
createElementVNode("div", _hoisted_2$
|
|
20049
|
+
createElementVNode("div", _hoisted_2$1, [
|
|
20036
20050
|
createElementVNode("div", {
|
|
20037
20051
|
ref_key: "stepperHeaderRef",
|
|
20038
20052
|
ref: stepperHeaderRef,
|
|
@@ -20073,7 +20087,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent$1({
|
|
|
20073
20087
|
}))
|
|
20074
20088
|
], true)
|
|
20075
20089
|
], 2),
|
|
20076
|
-
createElementVNode("span", _hoisted_3$
|
|
20090
|
+
createElementVNode("span", _hoisted_3$1, toDisplayString(step.title), 1),
|
|
20077
20091
|
index2 < __props.steps.length - 1 ? (openBlock(), createElementBlock("span", {
|
|
20078
20092
|
key: 0,
|
|
20079
20093
|
class: normalizeClass([
|
|
@@ -20098,7 +20112,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent$1({
|
|
|
20098
20112
|
};
|
|
20099
20113
|
}
|
|
20100
20114
|
});
|
|
20101
|
-
const AppStepper = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
20115
|
+
const AppStepper = /* @__PURE__ */ _export_sfc$1(_sfc_main$5, [["__scopeId", "data-v-d5178633"]]);
|
|
20102
20116
|
var lottie = { exports: {} };
|
|
20103
20117
|
(function(module, exports) {
|
|
20104
20118
|
typeof navigator !== "undefined" && function(global2, factory) {
|
|
@@ -36514,7 +36528,7 @@ var _export_sfc = (sfc, props) => {
|
|
|
36514
36528
|
}
|
|
36515
36529
|
return target;
|
|
36516
36530
|
};
|
|
36517
|
-
const _sfc_main$
|
|
36531
|
+
const _sfc_main$4 = defineComponent$1({
|
|
36518
36532
|
props: {
|
|
36519
36533
|
animationData: {
|
|
36520
36534
|
type: Object,
|
|
@@ -36846,7 +36860,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
36846
36860
|
onMouseleave: _cache[1] || (_cache[1] = (...args) => _ctx.hoverEnded && _ctx.hoverEnded(...args))
|
|
36847
36861
|
}, null, 36);
|
|
36848
36862
|
}
|
|
36849
|
-
var Vue3Lottie = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
36863
|
+
var Vue3Lottie = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render]]);
|
|
36850
36864
|
const useCustomizerStore = defineStore({
|
|
36851
36865
|
id: "customizer",
|
|
36852
36866
|
state: () => ({
|
|
@@ -36904,9 +36918,9 @@ const _hoisted_1$3 = {
|
|
|
36904
36918
|
key: 0,
|
|
36905
36919
|
class: "loading-overlay"
|
|
36906
36920
|
};
|
|
36907
|
-
const _hoisted_2
|
|
36908
|
-
const _hoisted_3
|
|
36909
|
-
const _sfc_main$
|
|
36921
|
+
const _hoisted_2 = { class: "loading-wrapper" };
|
|
36922
|
+
const _hoisted_3 = { key: 0 };
|
|
36923
|
+
const _sfc_main$3 = /* @__PURE__ */ defineComponent$1({
|
|
36910
36924
|
__name: "Loading",
|
|
36911
36925
|
setup(__props) {
|
|
36912
36926
|
const customizer = useCustomizerStore();
|
|
@@ -36914,7 +36928,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent$1({
|
|
|
36914
36928
|
return openBlock(), createBlock(Transition, { name: "fade" }, {
|
|
36915
36929
|
default: withCtx(() => [
|
|
36916
36930
|
unref(customizer).loading ? (openBlock(), createElementBlock("div", _hoisted_1$3, [
|
|
36917
|
-
createElementVNode("div", _hoisted_2
|
|
36931
|
+
createElementVNode("div", _hoisted_2, [
|
|
36918
36932
|
createVNode(unref(Vue3Lottie), {
|
|
36919
36933
|
"animation-link": "/persian.json",
|
|
36920
36934
|
loop: true,
|
|
@@ -36923,7 +36937,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent$1({
|
|
|
36923
36937
|
}),
|
|
36924
36938
|
createVNode(Transition, { name: "fade-slide" }, {
|
|
36925
36939
|
default: withCtx(() => [
|
|
36926
|
-
unref(customizer).loading ? (openBlock(), createElementBlock("span", _hoisted_3
|
|
36940
|
+
unref(customizer).loading ? (openBlock(), createElementBlock("span", _hoisted_3, "لطفا منتظر بمانید")) : createCommentVNode("", true)
|
|
36927
36941
|
]),
|
|
36928
36942
|
_: 1
|
|
36929
36943
|
})
|
|
@@ -36935,808 +36949,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent$1({
|
|
|
36935
36949
|
};
|
|
36936
36950
|
}
|
|
36937
36951
|
});
|
|
36938
|
-
const Loading = /* @__PURE__ */ _export_sfc$1(_sfc_main$
|
|
36939
|
-
const _sfc_main$5 = /* @__PURE__ */ defineComponent$1({
|
|
36940
|
-
__name: "NavItem",
|
|
36941
|
-
props: {
|
|
36942
|
-
item: {},
|
|
36943
|
-
level: {}
|
|
36944
|
-
},
|
|
36945
|
-
setup(__props) {
|
|
36946
|
-
const props = __props;
|
|
36947
|
-
return (_ctx, _cache) => {
|
|
36948
|
-
return openBlock(), createBlock(VListItem, {
|
|
36949
|
-
to: __props.item.type === "external" ? "" : __props.item.to,
|
|
36950
|
-
href: __props.item.type === "external" ? __props.item.to : "",
|
|
36951
|
-
rounded: "",
|
|
36952
|
-
class: "mb-1",
|
|
36953
|
-
color: "secondary",
|
|
36954
|
-
disabled: __props.item.disabled,
|
|
36955
|
-
target: __props.item.type === "external" ? "_blank" : ""
|
|
36956
|
-
}, createSlots({
|
|
36957
|
-
default: withCtx(() => [
|
|
36958
|
-
createVNode(VListItemTitle, null, {
|
|
36959
|
-
default: withCtx(() => [
|
|
36960
|
-
createTextVNode(toDisplayString(__props.item.title), 1)
|
|
36961
|
-
]),
|
|
36962
|
-
_: 1
|
|
36963
|
-
}),
|
|
36964
|
-
__props.item.subCaption ? (openBlock(), createBlock(VListItemSubtitle, {
|
|
36965
|
-
key: 0,
|
|
36966
|
-
class: "text-caption mt-n1 hide-menu"
|
|
36967
|
-
}, {
|
|
36968
|
-
default: withCtx(() => [
|
|
36969
|
-
createTextVNode(toDisplayString(__props.item.subCaption), 1)
|
|
36970
|
-
]),
|
|
36971
|
-
_: 1
|
|
36972
|
-
})) : createCommentVNode("", true)
|
|
36973
|
-
]),
|
|
36974
|
-
_: 2
|
|
36975
|
-
}, [
|
|
36976
|
-
props.item.icon ? {
|
|
36977
|
-
name: "prepend",
|
|
36978
|
-
fn: withCtx(() => [
|
|
36979
|
-
typeof props.item.icon === "string" ? (openBlock(), createBlock(VIcon, {
|
|
36980
|
-
key: 0,
|
|
36981
|
-
icon: props.item.icon
|
|
36982
|
-
}, null, 8, ["icon"])) : (openBlock(), createBlock(resolveDynamicComponent(props.item.icon), { key: 1 }))
|
|
36983
|
-
]),
|
|
36984
|
-
key: "0"
|
|
36985
|
-
} : void 0,
|
|
36986
|
-
__props.item.chip ? {
|
|
36987
|
-
name: "append",
|
|
36988
|
-
fn: withCtx(() => [
|
|
36989
|
-
createVNode(VChip, {
|
|
36990
|
-
color: __props.item.chipColor,
|
|
36991
|
-
class: "sidebarchip hide-menu",
|
|
36992
|
-
size: __props.item.chipIcon ? "small" : "default",
|
|
36993
|
-
variant: __props.item.chipVariant,
|
|
36994
|
-
"prepend-icon": __props.item.chipIcon
|
|
36995
|
-
}, {
|
|
36996
|
-
default: withCtx(() => [
|
|
36997
|
-
createTextVNode(toDisplayString(__props.item.chip), 1)
|
|
36998
|
-
]),
|
|
36999
|
-
_: 1
|
|
37000
|
-
}, 8, ["color", "size", "variant", "prepend-icon"])
|
|
37001
|
-
]),
|
|
37002
|
-
key: "1"
|
|
37003
|
-
} : void 0
|
|
37004
|
-
]), 1032, ["to", "href", "disabled", "target"]);
|
|
37005
|
-
};
|
|
37006
|
-
}
|
|
37007
|
-
});
|
|
37008
|
-
const _sfc_main$4 = /* @__PURE__ */ defineComponent$1({
|
|
37009
|
-
...{ name: "NavCollapse" },
|
|
37010
|
-
__name: "NavCollapse",
|
|
37011
|
-
props: {
|
|
37012
|
-
item: {},
|
|
37013
|
-
level: {}
|
|
37014
|
-
},
|
|
37015
|
-
setup(__props) {
|
|
37016
|
-
const props = __props;
|
|
37017
|
-
return (_ctx, _cache) => {
|
|
37018
|
-
const _component_NavCollapse = resolveComponent("NavCollapse", true);
|
|
37019
|
-
return openBlock(), createBlock(VListGroup, { "no-action": "" }, {
|
|
37020
|
-
activator: withCtx(({ props: props2 }) => [
|
|
37021
|
-
createVNode(VListItem, mergeProps(props2, {
|
|
37022
|
-
value: __props.item.title,
|
|
37023
|
-
rounded: "",
|
|
37024
|
-
class: "mb-1",
|
|
37025
|
-
color: "secondary"
|
|
37026
|
-
}), {
|
|
37027
|
-
prepend: withCtx(() => [
|
|
37028
|
-
typeof __props.item.icon === "string" ? (openBlock(), createBlock(VIcon, {
|
|
37029
|
-
key: 0,
|
|
37030
|
-
icon: __props.item.icon
|
|
37031
|
-
}, null, 8, ["icon"])) : __props.item.icon ? (openBlock(), createBlock(resolveDynamicComponent(__props.item.icon), { key: 1 })) : createCommentVNode("", true)
|
|
37032
|
-
]),
|
|
37033
|
-
default: withCtx(() => [
|
|
37034
|
-
createVNode(VListItemTitle, { class: "ml-auto" }, {
|
|
37035
|
-
default: withCtx(() => [
|
|
37036
|
-
createTextVNode(toDisplayString(__props.item.title), 1)
|
|
37037
|
-
]),
|
|
37038
|
-
_: 1
|
|
37039
|
-
}),
|
|
37040
|
-
__props.item.subCaption ? (openBlock(), createBlock(VListItemSubtitle, {
|
|
37041
|
-
key: 0,
|
|
37042
|
-
class: "text-caption mt-n1 hide-menu"
|
|
37043
|
-
}, {
|
|
37044
|
-
default: withCtx(() => [
|
|
37045
|
-
createTextVNode(toDisplayString(__props.item.subCaption), 1)
|
|
37046
|
-
]),
|
|
37047
|
-
_: 1
|
|
37048
|
-
})) : createCommentVNode("", true)
|
|
37049
|
-
]),
|
|
37050
|
-
_: 1
|
|
37051
|
-
}, 16, ["value"])
|
|
37052
|
-
]),
|
|
37053
|
-
default: withCtx(() => [
|
|
37054
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.item.children, (subitem, i) => {
|
|
37055
|
-
return openBlock(), createElementBlock(Fragment, { key: i }, [
|
|
37056
|
-
subitem.children ? (openBlock(), createBlock(_component_NavCollapse, {
|
|
37057
|
-
key: 0,
|
|
37058
|
-
item: subitem,
|
|
37059
|
-
level: props.level + 1
|
|
37060
|
-
}, null, 8, ["item", "level"])) : (openBlock(), createBlock(_sfc_main$5, {
|
|
37061
|
-
key: 1,
|
|
37062
|
-
item: subitem,
|
|
37063
|
-
level: props.level + 1
|
|
37064
|
-
}, null, 8, ["item", "level"]))
|
|
37065
|
-
], 64);
|
|
37066
|
-
}), 128))
|
|
37067
|
-
]),
|
|
37068
|
-
_: 1
|
|
37069
|
-
});
|
|
37070
|
-
};
|
|
37071
|
-
}
|
|
37072
|
-
});
|
|
37073
|
-
const _sfc_main$3 = {
|
|
37074
|
-
__name: "NavGroup",
|
|
37075
|
-
props: { item: Object },
|
|
37076
|
-
setup(__props) {
|
|
37077
|
-
const props = __props;
|
|
37078
|
-
return (_ctx, _cache) => {
|
|
37079
|
-
return openBlock(), createBlock(VListSubheader, {
|
|
37080
|
-
color: "darkText",
|
|
37081
|
-
class: "smallCap"
|
|
37082
|
-
}, {
|
|
37083
|
-
default: withCtx(() => [
|
|
37084
|
-
createTextVNode(toDisplayString(props.item.header), 1)
|
|
37085
|
-
]),
|
|
37086
|
-
_: 1
|
|
37087
|
-
});
|
|
37088
|
-
};
|
|
37089
|
-
}
|
|
37090
|
-
};
|
|
37091
|
-
function useSticky(_ref) {
|
|
37092
|
-
let {
|
|
37093
|
-
rootEl,
|
|
37094
|
-
isSticky,
|
|
37095
|
-
layoutItemStyles
|
|
37096
|
-
} = _ref;
|
|
37097
|
-
const isStuck = shallowRef(false);
|
|
37098
|
-
const stuckPosition = shallowRef(0);
|
|
37099
|
-
const stickyStyles = computed(() => {
|
|
37100
|
-
const side = typeof isStuck.value === "boolean" ? "top" : isStuck.value;
|
|
37101
|
-
return [isSticky.value ? {
|
|
37102
|
-
top: "auto",
|
|
37103
|
-
bottom: "auto",
|
|
37104
|
-
height: void 0
|
|
37105
|
-
} : void 0, isStuck.value ? {
|
|
37106
|
-
[side]: convertToUnit(stuckPosition.value)
|
|
37107
|
-
} : {
|
|
37108
|
-
top: layoutItemStyles.value.top
|
|
37109
|
-
}];
|
|
37110
|
-
});
|
|
37111
|
-
onMounted(() => {
|
|
37112
|
-
watch(isSticky, (val2) => {
|
|
37113
|
-
if (val2) {
|
|
37114
|
-
window.addEventListener("scroll", onScroll, {
|
|
37115
|
-
passive: true
|
|
37116
|
-
});
|
|
37117
|
-
} else {
|
|
37118
|
-
window.removeEventListener("scroll", onScroll);
|
|
37119
|
-
}
|
|
37120
|
-
}, {
|
|
37121
|
-
immediate: true
|
|
37122
|
-
});
|
|
37123
|
-
});
|
|
37124
|
-
onBeforeUnmount(() => {
|
|
37125
|
-
window.removeEventListener("scroll", onScroll);
|
|
37126
|
-
});
|
|
37127
|
-
let lastScrollTop = 0;
|
|
37128
|
-
function onScroll() {
|
|
37129
|
-
const direction = lastScrollTop > window.scrollY ? "up" : "down";
|
|
37130
|
-
const rect = rootEl.value.getBoundingClientRect();
|
|
37131
|
-
const layoutTop = parseFloat(layoutItemStyles.value.top ?? 0);
|
|
37132
|
-
const top = window.scrollY - Math.max(0, stuckPosition.value - layoutTop);
|
|
37133
|
-
const bottom = rect.height + Math.max(stuckPosition.value, layoutTop) - window.scrollY - window.innerHeight;
|
|
37134
|
-
const bodyScroll = parseFloat(getComputedStyle(rootEl.value).getPropertyValue("--v-body-scroll-y")) || 0;
|
|
37135
|
-
if (rect.height < window.innerHeight - layoutTop) {
|
|
37136
|
-
isStuck.value = "top";
|
|
37137
|
-
stuckPosition.value = layoutTop;
|
|
37138
|
-
} else if (direction === "up" && isStuck.value === "bottom" || direction === "down" && isStuck.value === "top") {
|
|
37139
|
-
stuckPosition.value = window.scrollY + rect.top - bodyScroll;
|
|
37140
|
-
isStuck.value = true;
|
|
37141
|
-
} else if (direction === "down" && bottom <= 0) {
|
|
37142
|
-
stuckPosition.value = 0;
|
|
37143
|
-
isStuck.value = "bottom";
|
|
37144
|
-
} else if (direction === "up" && top <= 0) {
|
|
37145
|
-
if (!bodyScroll) {
|
|
37146
|
-
stuckPosition.value = rect.top + top;
|
|
37147
|
-
isStuck.value = "top";
|
|
37148
|
-
} else if (isStuck.value !== "top") {
|
|
37149
|
-
stuckPosition.value = -top + bodyScroll + layoutTop;
|
|
37150
|
-
isStuck.value = "top";
|
|
37151
|
-
}
|
|
37152
|
-
}
|
|
37153
|
-
lastScrollTop = window.scrollY;
|
|
37154
|
-
}
|
|
37155
|
-
return {
|
|
37156
|
-
isStuck,
|
|
37157
|
-
stickyStyles
|
|
37158
|
-
};
|
|
37159
|
-
}
|
|
37160
|
-
const HORIZON = 100;
|
|
37161
|
-
const HISTORY = 20;
|
|
37162
|
-
function kineticEnergyToVelocity(work) {
|
|
37163
|
-
const sqrt2 = 1.41421356237;
|
|
37164
|
-
return (work < 0 ? -1 : 1) * Math.sqrt(Math.abs(work)) * sqrt2;
|
|
37165
|
-
}
|
|
37166
|
-
function calculateImpulseVelocity(samples) {
|
|
37167
|
-
if (samples.length < 2) {
|
|
37168
|
-
return 0;
|
|
37169
|
-
}
|
|
37170
|
-
if (samples.length === 2) {
|
|
37171
|
-
if (samples[1].t === samples[0].t) {
|
|
37172
|
-
return 0;
|
|
37173
|
-
}
|
|
37174
|
-
return (samples[1].d - samples[0].d) / (samples[1].t - samples[0].t);
|
|
37175
|
-
}
|
|
37176
|
-
let work = 0;
|
|
37177
|
-
for (let i = samples.length - 1; i > 0; i--) {
|
|
37178
|
-
if (samples[i].t === samples[i - 1].t) {
|
|
37179
|
-
continue;
|
|
37180
|
-
}
|
|
37181
|
-
const vprev = kineticEnergyToVelocity(work);
|
|
37182
|
-
const vcurr = (samples[i].d - samples[i - 1].d) / (samples[i].t - samples[i - 1].t);
|
|
37183
|
-
work += (vcurr - vprev) * Math.abs(vcurr);
|
|
37184
|
-
if (i === samples.length - 1) {
|
|
37185
|
-
work *= 0.5;
|
|
37186
|
-
}
|
|
37187
|
-
}
|
|
37188
|
-
return kineticEnergyToVelocity(work) * 1e3;
|
|
37189
|
-
}
|
|
37190
|
-
function useVelocity() {
|
|
37191
|
-
const touches = {};
|
|
37192
|
-
function addMovement(e) {
|
|
37193
|
-
Array.from(e.changedTouches).forEach((touch) => {
|
|
37194
|
-
const samples = touches[touch.identifier] ?? (touches[touch.identifier] = new CircularBuffer(HISTORY));
|
|
37195
|
-
samples.push([e.timeStamp, touch]);
|
|
37196
|
-
});
|
|
37197
|
-
}
|
|
37198
|
-
function endTouch(e) {
|
|
37199
|
-
Array.from(e.changedTouches).forEach((touch) => {
|
|
37200
|
-
delete touches[touch.identifier];
|
|
37201
|
-
});
|
|
37202
|
-
}
|
|
37203
|
-
function getVelocity(id) {
|
|
37204
|
-
var _a;
|
|
37205
|
-
const samples = (_a = touches[id]) == null ? void 0 : _a.values().reverse();
|
|
37206
|
-
if (!samples) {
|
|
37207
|
-
throw new Error(`No samples for touch id ${id}`);
|
|
37208
|
-
}
|
|
37209
|
-
const newest = samples[0];
|
|
37210
|
-
const x = [];
|
|
37211
|
-
const y = [];
|
|
37212
|
-
for (const val2 of samples) {
|
|
37213
|
-
if (newest[0] - val2[0] > HORIZON) break;
|
|
37214
|
-
x.push({
|
|
37215
|
-
t: val2[0],
|
|
37216
|
-
d: val2[1].clientX
|
|
37217
|
-
});
|
|
37218
|
-
y.push({
|
|
37219
|
-
t: val2[0],
|
|
37220
|
-
d: val2[1].clientY
|
|
37221
|
-
});
|
|
37222
|
-
}
|
|
37223
|
-
return {
|
|
37224
|
-
x: calculateImpulseVelocity(x),
|
|
37225
|
-
y: calculateImpulseVelocity(y),
|
|
37226
|
-
get direction() {
|
|
37227
|
-
const {
|
|
37228
|
-
x: x2,
|
|
37229
|
-
y: y2
|
|
37230
|
-
} = this;
|
|
37231
|
-
const [absX, absY] = [Math.abs(x2), Math.abs(y2)];
|
|
37232
|
-
return absX > absY && x2 >= 0 ? "right" : absX > absY && x2 <= 0 ? "left" : absY > absX && y2 >= 0 ? "down" : absY > absX && y2 <= 0 ? "up" : oops$1();
|
|
37233
|
-
}
|
|
37234
|
-
};
|
|
37235
|
-
}
|
|
37236
|
-
return {
|
|
37237
|
-
addMovement,
|
|
37238
|
-
endTouch,
|
|
37239
|
-
getVelocity
|
|
37240
|
-
};
|
|
37241
|
-
}
|
|
37242
|
-
function oops$1() {
|
|
37243
|
-
throw new Error();
|
|
37244
|
-
}
|
|
37245
|
-
function useTouch(_ref) {
|
|
37246
|
-
let {
|
|
37247
|
-
el,
|
|
37248
|
-
isActive,
|
|
37249
|
-
isTemporary,
|
|
37250
|
-
width: width2,
|
|
37251
|
-
touchless,
|
|
37252
|
-
position: position2
|
|
37253
|
-
} = _ref;
|
|
37254
|
-
onMounted(() => {
|
|
37255
|
-
window.addEventListener("touchstart", onTouchstart, {
|
|
37256
|
-
passive: true
|
|
37257
|
-
});
|
|
37258
|
-
window.addEventListener("touchmove", onTouchmove, {
|
|
37259
|
-
passive: false
|
|
37260
|
-
});
|
|
37261
|
-
window.addEventListener("touchend", onTouchend, {
|
|
37262
|
-
passive: true
|
|
37263
|
-
});
|
|
37264
|
-
});
|
|
37265
|
-
onBeforeUnmount(() => {
|
|
37266
|
-
window.removeEventListener("touchstart", onTouchstart);
|
|
37267
|
-
window.removeEventListener("touchmove", onTouchmove);
|
|
37268
|
-
window.removeEventListener("touchend", onTouchend);
|
|
37269
|
-
});
|
|
37270
|
-
const isHorizontal = computed(() => ["left", "right"].includes(position2.value));
|
|
37271
|
-
const {
|
|
37272
|
-
addMovement,
|
|
37273
|
-
endTouch,
|
|
37274
|
-
getVelocity
|
|
37275
|
-
} = useVelocity();
|
|
37276
|
-
let maybeDragging = false;
|
|
37277
|
-
const isDragging = shallowRef(false);
|
|
37278
|
-
const dragProgress = shallowRef(0);
|
|
37279
|
-
const offset = shallowRef(0);
|
|
37280
|
-
let start;
|
|
37281
|
-
function getOffset2(pos, active2) {
|
|
37282
|
-
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);
|
|
37283
|
-
}
|
|
37284
|
-
function getProgress(pos) {
|
|
37285
|
-
let limit = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true;
|
|
37286
|
-
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();
|
|
37287
|
-
return limit ? clamp(progress) : progress;
|
|
37288
|
-
}
|
|
37289
|
-
function onTouchstart(e) {
|
|
37290
|
-
if (touchless.value) return;
|
|
37291
|
-
const touchX = e.changedTouches[0].clientX;
|
|
37292
|
-
const touchY = e.changedTouches[0].clientY;
|
|
37293
|
-
const touchZone = 25;
|
|
37294
|
-
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();
|
|
37295
|
-
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());
|
|
37296
|
-
if (inTouchZone || inElement || isActive.value && isTemporary.value) {
|
|
37297
|
-
start = [touchX, touchY];
|
|
37298
|
-
offset.value = getOffset2(isHorizontal.value ? touchX : touchY, isActive.value);
|
|
37299
|
-
dragProgress.value = getProgress(isHorizontal.value ? touchX : touchY);
|
|
37300
|
-
maybeDragging = offset.value > -20 && offset.value < 80;
|
|
37301
|
-
endTouch(e);
|
|
37302
|
-
addMovement(e);
|
|
37303
|
-
}
|
|
37304
|
-
}
|
|
37305
|
-
function onTouchmove(e) {
|
|
37306
|
-
const touchX = e.changedTouches[0].clientX;
|
|
37307
|
-
const touchY = e.changedTouches[0].clientY;
|
|
37308
|
-
if (maybeDragging) {
|
|
37309
|
-
if (!e.cancelable) {
|
|
37310
|
-
maybeDragging = false;
|
|
37311
|
-
return;
|
|
37312
|
-
}
|
|
37313
|
-
const dx = Math.abs(touchX - start[0]);
|
|
37314
|
-
const dy = Math.abs(touchY - start[1]);
|
|
37315
|
-
const thresholdMet = isHorizontal.value ? dx > dy && dx > 3 : dy > dx && dy > 3;
|
|
37316
|
-
if (thresholdMet) {
|
|
37317
|
-
isDragging.value = true;
|
|
37318
|
-
maybeDragging = false;
|
|
37319
|
-
} else if ((isHorizontal.value ? dy : dx) > 3) {
|
|
37320
|
-
maybeDragging = false;
|
|
37321
|
-
}
|
|
37322
|
-
}
|
|
37323
|
-
if (!isDragging.value) return;
|
|
37324
|
-
e.preventDefault();
|
|
37325
|
-
addMovement(e);
|
|
37326
|
-
const progress = getProgress(isHorizontal.value ? touchX : touchY, false);
|
|
37327
|
-
dragProgress.value = Math.max(0, Math.min(1, progress));
|
|
37328
|
-
if (progress > 1) {
|
|
37329
|
-
offset.value = getOffset2(isHorizontal.value ? touchX : touchY, true);
|
|
37330
|
-
} else if (progress < 0) {
|
|
37331
|
-
offset.value = getOffset2(isHorizontal.value ? touchX : touchY, false);
|
|
37332
|
-
}
|
|
37333
|
-
}
|
|
37334
|
-
function onTouchend(e) {
|
|
37335
|
-
maybeDragging = false;
|
|
37336
|
-
if (!isDragging.value) return;
|
|
37337
|
-
addMovement(e);
|
|
37338
|
-
isDragging.value = false;
|
|
37339
|
-
const velocity2 = getVelocity(e.changedTouches[0].identifier);
|
|
37340
|
-
const vx = Math.abs(velocity2.x);
|
|
37341
|
-
const vy = Math.abs(velocity2.y);
|
|
37342
|
-
const thresholdMet = isHorizontal.value ? vx > vy && vx > 400 : vy > vx && vy > 3;
|
|
37343
|
-
if (thresholdMet) {
|
|
37344
|
-
isActive.value = velocity2.direction === ({
|
|
37345
|
-
left: "right",
|
|
37346
|
-
right: "left",
|
|
37347
|
-
top: "down",
|
|
37348
|
-
bottom: "up"
|
|
37349
|
-
}[position2.value] || oops());
|
|
37350
|
-
} else {
|
|
37351
|
-
isActive.value = dragProgress.value > 0.5;
|
|
37352
|
-
}
|
|
37353
|
-
}
|
|
37354
|
-
const dragStyles = computed(() => {
|
|
37355
|
-
return isDragging.value ? {
|
|
37356
|
-
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(),
|
|
37357
|
-
transition: "none"
|
|
37358
|
-
} : void 0;
|
|
37359
|
-
});
|
|
37360
|
-
useToggleScope(isDragging, () => {
|
|
37361
|
-
var _a, _b;
|
|
37362
|
-
const transform2 = ((_a = el.value) == null ? void 0 : _a.style.transform) ?? null;
|
|
37363
|
-
const transition = ((_b = el.value) == null ? void 0 : _b.style.transition) ?? null;
|
|
37364
|
-
watchEffect(() => {
|
|
37365
|
-
var _a2, _b2, _c, _d;
|
|
37366
|
-
(_b2 = el.value) == null ? void 0 : _b2.style.setProperty("transform", ((_a2 = dragStyles.value) == null ? void 0 : _a2.transform) || "none");
|
|
37367
|
-
(_d = el.value) == null ? void 0 : _d.style.setProperty("transition", ((_c = dragStyles.value) == null ? void 0 : _c.transition) || null);
|
|
37368
|
-
});
|
|
37369
|
-
onScopeDispose(() => {
|
|
37370
|
-
var _a2, _b2;
|
|
37371
|
-
(_a2 = el.value) == null ? void 0 : _a2.style.setProperty("transform", transform2);
|
|
37372
|
-
(_b2 = el.value) == null ? void 0 : _b2.style.setProperty("transition", transition);
|
|
37373
|
-
});
|
|
37374
|
-
});
|
|
37375
|
-
return {
|
|
37376
|
-
isDragging,
|
|
37377
|
-
dragProgress,
|
|
37378
|
-
dragStyles
|
|
37379
|
-
};
|
|
37380
|
-
}
|
|
37381
|
-
function oops() {
|
|
37382
|
-
throw new Error();
|
|
37383
|
-
}
|
|
37384
|
-
const locations = ["start", "end", "left", "right", "top", "bottom"];
|
|
37385
|
-
const makeVNavigationDrawerProps = propsFactory({
|
|
37386
|
-
color: String,
|
|
37387
|
-
disableResizeWatcher: Boolean,
|
|
37388
|
-
disableRouteWatcher: Boolean,
|
|
37389
|
-
expandOnHover: Boolean,
|
|
37390
|
-
floating: Boolean,
|
|
37391
|
-
modelValue: {
|
|
37392
|
-
type: Boolean,
|
|
37393
|
-
default: null
|
|
37394
|
-
},
|
|
37395
|
-
permanent: Boolean,
|
|
37396
|
-
rail: {
|
|
37397
|
-
type: Boolean,
|
|
37398
|
-
default: null
|
|
37399
|
-
},
|
|
37400
|
-
railWidth: {
|
|
37401
|
-
type: [Number, String],
|
|
37402
|
-
default: 56
|
|
37403
|
-
},
|
|
37404
|
-
scrim: {
|
|
37405
|
-
type: [Boolean, String],
|
|
37406
|
-
default: true
|
|
37407
|
-
},
|
|
37408
|
-
image: String,
|
|
37409
|
-
temporary: Boolean,
|
|
37410
|
-
persistent: Boolean,
|
|
37411
|
-
touchless: Boolean,
|
|
37412
|
-
width: {
|
|
37413
|
-
type: [Number, String],
|
|
37414
|
-
default: 256
|
|
37415
|
-
},
|
|
37416
|
-
location: {
|
|
37417
|
-
type: String,
|
|
37418
|
-
default: "start",
|
|
37419
|
-
validator: (value2) => locations.includes(value2)
|
|
37420
|
-
},
|
|
37421
|
-
sticky: Boolean,
|
|
37422
|
-
...makeBorderProps(),
|
|
37423
|
-
...makeComponentProps(),
|
|
37424
|
-
...makeDelayProps(),
|
|
37425
|
-
...makeDisplayProps({
|
|
37426
|
-
mobile: null
|
|
37427
|
-
}),
|
|
37428
|
-
...makeElevationProps(),
|
|
37429
|
-
...makeLayoutItemProps(),
|
|
37430
|
-
...makeRoundedProps(),
|
|
37431
|
-
...makeTagProps({
|
|
37432
|
-
tag: "nav"
|
|
37433
|
-
}),
|
|
37434
|
-
...makeThemeProps()
|
|
37435
|
-
}, "VNavigationDrawer");
|
|
37436
|
-
const VNavigationDrawer = genericComponent()({
|
|
37437
|
-
name: "VNavigationDrawer",
|
|
37438
|
-
props: makeVNavigationDrawerProps(),
|
|
37439
|
-
emits: {
|
|
37440
|
-
"update:modelValue": (val2) => true,
|
|
37441
|
-
"update:rail": (val2) => true
|
|
37442
|
-
},
|
|
37443
|
-
setup(props, _ref) {
|
|
37444
|
-
let {
|
|
37445
|
-
attrs,
|
|
37446
|
-
emit,
|
|
37447
|
-
slots
|
|
37448
|
-
} = _ref;
|
|
37449
|
-
const {
|
|
37450
|
-
isRtl
|
|
37451
|
-
} = useRtl();
|
|
37452
|
-
const {
|
|
37453
|
-
themeClasses
|
|
37454
|
-
} = provideTheme(props);
|
|
37455
|
-
const {
|
|
37456
|
-
borderClasses
|
|
37457
|
-
} = useBorder(props);
|
|
37458
|
-
const {
|
|
37459
|
-
backgroundColorClasses,
|
|
37460
|
-
backgroundColorStyles
|
|
37461
|
-
} = useBackgroundColor(() => props.color);
|
|
37462
|
-
const {
|
|
37463
|
-
elevationClasses
|
|
37464
|
-
} = useElevation(props);
|
|
37465
|
-
const {
|
|
37466
|
-
displayClasses,
|
|
37467
|
-
mobile
|
|
37468
|
-
} = useDisplay(props);
|
|
37469
|
-
const {
|
|
37470
|
-
roundedClasses
|
|
37471
|
-
} = useRounded(props);
|
|
37472
|
-
const router = useRouter();
|
|
37473
|
-
const isActive = useProxiedModel(props, "modelValue", null, (v) => !!v);
|
|
37474
|
-
const {
|
|
37475
|
-
ssrBootStyles
|
|
37476
|
-
} = useSsrBoot();
|
|
37477
|
-
const {
|
|
37478
|
-
scopeId
|
|
37479
|
-
} = useScopeId();
|
|
37480
|
-
const rootEl = ref();
|
|
37481
|
-
const isHovering = shallowRef(false);
|
|
37482
|
-
const {
|
|
37483
|
-
runOpenDelay,
|
|
37484
|
-
runCloseDelay
|
|
37485
|
-
} = useDelay(props, (value2) => {
|
|
37486
|
-
isHovering.value = value2;
|
|
37487
|
-
});
|
|
37488
|
-
const width2 = computed(() => {
|
|
37489
|
-
return props.rail && props.expandOnHover && isHovering.value ? Number(props.width) : Number(props.rail ? props.railWidth : props.width);
|
|
37490
|
-
});
|
|
37491
|
-
const location = computed(() => {
|
|
37492
|
-
return toPhysical(props.location, isRtl.value);
|
|
37493
|
-
});
|
|
37494
|
-
const isPersistent = toRef(() => props.persistent);
|
|
37495
|
-
const isTemporary = computed(() => !props.permanent && (mobile.value || props.temporary));
|
|
37496
|
-
const isSticky = computed(() => props.sticky && !isTemporary.value && location.value !== "bottom");
|
|
37497
|
-
useToggleScope(() => props.expandOnHover && props.rail != null, () => {
|
|
37498
|
-
watch(isHovering, (val2) => emit("update:rail", !val2));
|
|
37499
|
-
});
|
|
37500
|
-
useToggleScope(() => !props.disableResizeWatcher, () => {
|
|
37501
|
-
watch(isTemporary, (val2) => !props.permanent && nextTick(() => isActive.value = !val2));
|
|
37502
|
-
});
|
|
37503
|
-
useToggleScope(() => !props.disableRouteWatcher && !!router, () => {
|
|
37504
|
-
watch(router.currentRoute, () => isTemporary.value && (isActive.value = false));
|
|
37505
|
-
});
|
|
37506
|
-
watch(() => props.permanent, (val2) => {
|
|
37507
|
-
if (val2) isActive.value = true;
|
|
37508
|
-
});
|
|
37509
|
-
if (props.modelValue == null && !isTemporary.value) {
|
|
37510
|
-
isActive.value = props.permanent || !mobile.value;
|
|
37511
|
-
}
|
|
37512
|
-
const {
|
|
37513
|
-
isDragging,
|
|
37514
|
-
dragProgress
|
|
37515
|
-
} = useTouch({
|
|
37516
|
-
el: rootEl,
|
|
37517
|
-
isActive,
|
|
37518
|
-
isTemporary,
|
|
37519
|
-
width: width2,
|
|
37520
|
-
touchless: toRef(() => props.touchless),
|
|
37521
|
-
position: location
|
|
37522
|
-
});
|
|
37523
|
-
const layoutSize = computed(() => {
|
|
37524
|
-
const size = isTemporary.value ? 0 : props.rail && props.expandOnHover ? Number(props.railWidth) : width2.value;
|
|
37525
|
-
return isDragging.value ? size * dragProgress.value : size;
|
|
37526
|
-
});
|
|
37527
|
-
const {
|
|
37528
|
-
layoutItemStyles,
|
|
37529
|
-
layoutItemScrimStyles
|
|
37530
|
-
} = useLayoutItem({
|
|
37531
|
-
id: props.name,
|
|
37532
|
-
order: computed(() => parseInt(props.order, 10)),
|
|
37533
|
-
position: location,
|
|
37534
|
-
layoutSize,
|
|
37535
|
-
elementSize: width2,
|
|
37536
|
-
active: readonly(isActive),
|
|
37537
|
-
disableTransitions: toRef(() => isDragging.value),
|
|
37538
|
-
absolute: computed(() => (
|
|
37539
|
-
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
37540
|
-
props.absolute || isSticky.value && typeof isStuck.value !== "string"
|
|
37541
|
-
))
|
|
37542
|
-
});
|
|
37543
|
-
const {
|
|
37544
|
-
isStuck,
|
|
37545
|
-
stickyStyles
|
|
37546
|
-
} = useSticky({
|
|
37547
|
-
rootEl,
|
|
37548
|
-
isSticky,
|
|
37549
|
-
layoutItemStyles
|
|
37550
|
-
});
|
|
37551
|
-
const scrimColor = useBackgroundColor(() => {
|
|
37552
|
-
return typeof props.scrim === "string" ? props.scrim : null;
|
|
37553
|
-
});
|
|
37554
|
-
const scrimStyles = computed(() => ({
|
|
37555
|
-
...isDragging.value ? {
|
|
37556
|
-
opacity: dragProgress.value * 0.2,
|
|
37557
|
-
transition: "none"
|
|
37558
|
-
} : void 0,
|
|
37559
|
-
...layoutItemScrimStyles.value
|
|
37560
|
-
}));
|
|
37561
|
-
provideDefaults({
|
|
37562
|
-
VList: {
|
|
37563
|
-
bgColor: "transparent"
|
|
37564
|
-
}
|
|
37565
|
-
});
|
|
37566
|
-
useRender(() => {
|
|
37567
|
-
const hasImage = slots.image || props.image;
|
|
37568
|
-
return createElementVNode(Fragment, null, [createVNode(props.tag, mergeProps({
|
|
37569
|
-
"ref": rootEl,
|
|
37570
|
-
"onMouseenter": runOpenDelay,
|
|
37571
|
-
"onMouseleave": runCloseDelay,
|
|
37572
|
-
"class": ["v-navigation-drawer", `v-navigation-drawer--${location.value}`, {
|
|
37573
|
-
"v-navigation-drawer--expand-on-hover": props.expandOnHover,
|
|
37574
|
-
"v-navigation-drawer--floating": props.floating,
|
|
37575
|
-
"v-navigation-drawer--is-hovering": isHovering.value,
|
|
37576
|
-
"v-navigation-drawer--rail": props.rail,
|
|
37577
|
-
"v-navigation-drawer--temporary": isTemporary.value,
|
|
37578
|
-
"v-navigation-drawer--persistent": isPersistent.value,
|
|
37579
|
-
"v-navigation-drawer--active": isActive.value,
|
|
37580
|
-
"v-navigation-drawer--sticky": isSticky.value
|
|
37581
|
-
}, themeClasses.value, backgroundColorClasses.value, borderClasses.value, displayClasses.value, elevationClasses.value, roundedClasses.value, props.class],
|
|
37582
|
-
"style": [backgroundColorStyles.value, layoutItemStyles.value, ssrBootStyles.value, stickyStyles.value, props.style]
|
|
37583
|
-
}, scopeId, attrs), {
|
|
37584
|
-
default: () => {
|
|
37585
|
-
var _a, _b, _c;
|
|
37586
|
-
return [hasImage && createElementVNode("div", {
|
|
37587
|
-
"key": "image",
|
|
37588
|
-
"class": "v-navigation-drawer__img"
|
|
37589
|
-
}, [!slots.image ? createVNode(VImg, {
|
|
37590
|
-
"key": "image-img",
|
|
37591
|
-
"alt": "",
|
|
37592
|
-
"cover": true,
|
|
37593
|
-
"height": "inherit",
|
|
37594
|
-
"src": props.image
|
|
37595
|
-
}, null) : createVNode(VDefaultsProvider, {
|
|
37596
|
-
"key": "image-defaults",
|
|
37597
|
-
"disabled": !props.image,
|
|
37598
|
-
"defaults": {
|
|
37599
|
-
VImg: {
|
|
37600
|
-
alt: "",
|
|
37601
|
-
cover: true,
|
|
37602
|
-
height: "inherit",
|
|
37603
|
-
src: props.image
|
|
37604
|
-
}
|
|
37605
|
-
}
|
|
37606
|
-
}, slots.image)]), slots.prepend && createElementVNode("div", {
|
|
37607
|
-
"class": "v-navigation-drawer__prepend"
|
|
37608
|
-
}, [(_a = slots.prepend) == null ? void 0 : _a.call(slots)]), createElementVNode("div", {
|
|
37609
|
-
"class": "v-navigation-drawer__content"
|
|
37610
|
-
}, [(_b = slots.default) == null ? void 0 : _b.call(slots)]), slots.append && createElementVNode("div", {
|
|
37611
|
-
"class": "v-navigation-drawer__append"
|
|
37612
|
-
}, [(_c = slots.append) == null ? void 0 : _c.call(slots)])];
|
|
37613
|
-
}
|
|
37614
|
-
}), createVNode(Transition, {
|
|
37615
|
-
"name": "fade-transition"
|
|
37616
|
-
}, {
|
|
37617
|
-
default: () => [isTemporary.value && (isDragging.value || isActive.value) && !!props.scrim && createElementVNode("div", mergeProps({
|
|
37618
|
-
"class": ["v-navigation-drawer__scrim", scrimColor.backgroundColorClasses.value],
|
|
37619
|
-
"style": [scrimStyles.value, scrimColor.backgroundColorStyles.value],
|
|
37620
|
-
"onClick": () => {
|
|
37621
|
-
if (isPersistent.value) return;
|
|
37622
|
-
isActive.value = false;
|
|
37623
|
-
}
|
|
37624
|
-
}, scopeId), null)]
|
|
37625
|
-
})]);
|
|
37626
|
-
});
|
|
37627
|
-
return {
|
|
37628
|
-
isStuck
|
|
37629
|
-
};
|
|
37630
|
-
}
|
|
37631
|
-
});
|
|
37632
|
-
const _hoisted_1$2 = { class: "pa-5" };
|
|
37633
|
-
const _hoisted_2$1 = {
|
|
37634
|
-
key: 0,
|
|
37635
|
-
class: "pa-4 text-center"
|
|
37636
|
-
};
|
|
37637
|
-
const _sfc_main$2 = /* @__PURE__ */ defineComponent$1({
|
|
37638
|
-
__name: "AppSidebar",
|
|
37639
|
-
props: {
|
|
37640
|
-
sidebarItems: {
|
|
37641
|
-
type: Array,
|
|
37642
|
-
required: true
|
|
37643
|
-
},
|
|
37644
|
-
getFilteredSidebarItems: {
|
|
37645
|
-
type: Function,
|
|
37646
|
-
required: true
|
|
37647
|
-
},
|
|
37648
|
-
logoComponent: {
|
|
37649
|
-
type: Object,
|
|
37650
|
-
// Vue component
|
|
37651
|
-
required: true
|
|
37652
|
-
},
|
|
37653
|
-
sidebarDrawer: {
|
|
37654
|
-
type: Boolean,
|
|
37655
|
-
required: true
|
|
37656
|
-
},
|
|
37657
|
-
miniSidebar: {
|
|
37658
|
-
type: Boolean,
|
|
37659
|
-
required: true
|
|
37660
|
-
}
|
|
37661
|
-
},
|
|
37662
|
-
emits: ["update:sidebarDrawer"],
|
|
37663
|
-
setup(__props, { emit: __emit }) {
|
|
37664
|
-
const props = __props;
|
|
37665
|
-
const emit = __emit;
|
|
37666
|
-
const sidebarMenu = computed(() => {
|
|
37667
|
-
var _a;
|
|
37668
|
-
try {
|
|
37669
|
-
const filtered = (_a = props.getFilteredSidebarItems) == null ? void 0 : _a.call(props);
|
|
37670
|
-
if (Array.isArray(filtered)) return filtered;
|
|
37671
|
-
} catch {
|
|
37672
|
-
}
|
|
37673
|
-
return props.sidebarItems;
|
|
37674
|
-
});
|
|
37675
|
-
return (_ctx, _cache) => {
|
|
37676
|
-
const _component_perfect_scrollbar = resolveComponent("perfect-scrollbar");
|
|
37677
|
-
return openBlock(), createBlock(VNavigationDrawer, {
|
|
37678
|
-
right: "",
|
|
37679
|
-
"model-value": __props.sidebarDrawer,
|
|
37680
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => emit("update:sidebarDrawer", $event)),
|
|
37681
|
-
elevation: "0",
|
|
37682
|
-
"rail-width": "82",
|
|
37683
|
-
"mobile-breakpoint": "lg",
|
|
37684
|
-
app: "",
|
|
37685
|
-
rail: __props.miniSidebar,
|
|
37686
|
-
class: normalizeClass(["rightSidebar", { "sidebar-closed": !__props.sidebarDrawer }])
|
|
37687
|
-
}, {
|
|
37688
|
-
default: withCtx(() => [
|
|
37689
|
-
createElementVNode("div", _hoisted_1$2, [
|
|
37690
|
-
(openBlock(), createBlock(resolveDynamicComponent(__props.logoComponent)))
|
|
37691
|
-
]),
|
|
37692
|
-
createVNode(_component_perfect_scrollbar, { class: "scrollnavbar" }, {
|
|
37693
|
-
default: withCtx(() => [
|
|
37694
|
-
createVNode(VList, { class: "pa-4" }, {
|
|
37695
|
-
default: withCtx(() => [
|
|
37696
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(sidebarMenu.value, (item, i) => {
|
|
37697
|
-
return openBlock(), createElementBlock(Fragment, { key: i }, [
|
|
37698
|
-
item.header ? (openBlock(), createBlock(_sfc_main$3, {
|
|
37699
|
-
key: 0,
|
|
37700
|
-
item
|
|
37701
|
-
}, null, 8, ["item"])) : item.divider ? (openBlock(), createBlock(VDivider, {
|
|
37702
|
-
key: 1,
|
|
37703
|
-
class: "my-3"
|
|
37704
|
-
})) : item.children ? (openBlock(), createBlock(_sfc_main$4, {
|
|
37705
|
-
key: 2,
|
|
37706
|
-
item,
|
|
37707
|
-
level: 0,
|
|
37708
|
-
class: "leftPadding"
|
|
37709
|
-
}, null, 8, ["item"])) : (openBlock(), createBlock(_sfc_main$5, {
|
|
37710
|
-
key: 3,
|
|
37711
|
-
item,
|
|
37712
|
-
level: 0,
|
|
37713
|
-
class: "leftPadding"
|
|
37714
|
-
}, null, 8, ["item"]))
|
|
37715
|
-
], 64);
|
|
37716
|
-
}), 128))
|
|
37717
|
-
]),
|
|
37718
|
-
_: 1
|
|
37719
|
-
}),
|
|
37720
|
-
__props.sidebarDrawer ? (openBlock(), createElementBlock("div", _hoisted_2$1, [
|
|
37721
|
-
createVNode(VChip, {
|
|
37722
|
-
color: "inputBorder",
|
|
37723
|
-
size: "small"
|
|
37724
|
-
}, {
|
|
37725
|
-
default: withCtx(() => [..._cache[1] || (_cache[1] = [
|
|
37726
|
-
createTextVNode("نمایشی", -1)
|
|
37727
|
-
])]),
|
|
37728
|
-
_: 1
|
|
37729
|
-
})
|
|
37730
|
-
])) : createCommentVNode("", true)
|
|
37731
|
-
]),
|
|
37732
|
-
_: 1
|
|
37733
|
-
})
|
|
37734
|
-
]),
|
|
37735
|
-
_: 1
|
|
37736
|
-
}, 8, ["model-value", "rail", "class"]);
|
|
37737
|
-
};
|
|
37738
|
-
}
|
|
37739
|
-
});
|
|
36952
|
+
const Loading = /* @__PURE__ */ _export_sfc$1(_sfc_main$3, [["__scopeId", "data-v-9b533ee4"]]);
|
|
37740
36953
|
const makeVToolbarTitleProps = propsFactory({
|
|
37741
36954
|
text: String,
|
|
37742
36955
|
...makeComponentProps(),
|
|
@@ -38119,449 +37332,400 @@ const VAppBar = genericComponent()({
|
|
|
38119
37332
|
return {};
|
|
38120
37333
|
}
|
|
38121
37334
|
});
|
|
38122
|
-
const
|
|
38123
|
-
|
|
38124
|
-
|
|
38125
|
-
|
|
38126
|
-
|
|
38127
|
-
|
|
38128
|
-
|
|
38129
|
-
|
|
38130
|
-
|
|
38131
|
-
|
|
38132
|
-
|
|
38133
|
-
|
|
38134
|
-
|
|
38135
|
-
|
|
38136
|
-
|
|
38137
|
-
}), slots));
|
|
38138
|
-
return {};
|
|
38139
|
-
}
|
|
38140
|
-
});
|
|
38141
|
-
const VAppBarTitle = genericComponent()({
|
|
38142
|
-
name: "VAppBarTitle",
|
|
38143
|
-
props: makeVToolbarTitleProps(),
|
|
38144
|
-
setup(props, _ref) {
|
|
38145
|
-
let {
|
|
38146
|
-
slots
|
|
38147
|
-
} = _ref;
|
|
38148
|
-
useRender(() => createVNode(VToolbarTitle, mergeProps(props, {
|
|
38149
|
-
"class": "v-app-bar-title"
|
|
38150
|
-
}), slots));
|
|
38151
|
-
return {};
|
|
38152
|
-
}
|
|
38153
|
-
});
|
|
38154
|
-
const makeVBadgeProps = propsFactory({
|
|
38155
|
-
bordered: Boolean,
|
|
38156
|
-
color: String,
|
|
38157
|
-
content: [Number, String],
|
|
38158
|
-
dot: Boolean,
|
|
38159
|
-
floating: Boolean,
|
|
38160
|
-
icon: IconValue,
|
|
38161
|
-
inline: Boolean,
|
|
38162
|
-
label: {
|
|
38163
|
-
type: String,
|
|
38164
|
-
default: "$vuetify.badge"
|
|
38165
|
-
},
|
|
38166
|
-
max: [Number, String],
|
|
38167
|
-
modelValue: {
|
|
38168
|
-
type: Boolean,
|
|
38169
|
-
default: true
|
|
37335
|
+
const _hoisted_1$2 = {
|
|
37336
|
+
key: 1,
|
|
37337
|
+
class: "header-menu-container"
|
|
37338
|
+
};
|
|
37339
|
+
const _sfc_main$2 = /* @__PURE__ */ defineComponent$1({
|
|
37340
|
+
__name: "AppSidebar",
|
|
37341
|
+
props: {
|
|
37342
|
+
menuOrientation: { type: String, default: "horizontal" },
|
|
37343
|
+
miniSidebar: { type: Boolean, default: false },
|
|
37344
|
+
userInfoLoaded: { type: Boolean, default: false },
|
|
37345
|
+
headerMenu: { type: Array, default: () => [] },
|
|
37346
|
+
// Events sent back to project
|
|
37347
|
+
onToggleMiniSidebar: Function,
|
|
37348
|
+
onToggleCustomizer: Function,
|
|
37349
|
+
onToggleSidebarDrawer: Function
|
|
38170
37350
|
},
|
|
38171
|
-
|
|
38172
|
-
|
|
38173
|
-
|
|
38174
|
-
|
|
38175
|
-
|
|
38176
|
-
|
|
38177
|
-
}),
|
|
38178
|
-
...makeRoundedProps(),
|
|
38179
|
-
...makeTagProps(),
|
|
38180
|
-
...makeThemeProps(),
|
|
38181
|
-
...makeTransitionProps$1({
|
|
38182
|
-
transition: "scale-rotate-transition"
|
|
38183
|
-
}),
|
|
38184
|
-
...makeDimensionProps()
|
|
38185
|
-
}, "VBadge");
|
|
38186
|
-
const VBadge = genericComponent()({
|
|
38187
|
-
name: "VBadge",
|
|
38188
|
-
inheritAttrs: false,
|
|
38189
|
-
props: makeVBadgeProps(),
|
|
38190
|
-
setup(props, ctx) {
|
|
38191
|
-
const {
|
|
38192
|
-
backgroundColorClasses,
|
|
38193
|
-
backgroundColorStyles
|
|
38194
|
-
} = useBackgroundColor(() => props.color);
|
|
38195
|
-
const {
|
|
38196
|
-
roundedClasses
|
|
38197
|
-
} = useRounded(props);
|
|
38198
|
-
const {
|
|
38199
|
-
t
|
|
38200
|
-
} = useLocale();
|
|
38201
|
-
const {
|
|
38202
|
-
textColorClasses,
|
|
38203
|
-
textColorStyles
|
|
38204
|
-
} = useTextColor(() => props.textColor);
|
|
38205
|
-
const {
|
|
38206
|
-
themeClasses
|
|
38207
|
-
} = useTheme();
|
|
38208
|
-
const {
|
|
38209
|
-
locationStyles
|
|
38210
|
-
} = useLocation(props, true, (side) => {
|
|
38211
|
-
const base = props.floating ? props.dot ? 2 : 4 : props.dot ? 8 : 12;
|
|
38212
|
-
return base + (["top", "bottom"].includes(side) ? Number(props.offsetY ?? 0) : ["left", "right"].includes(side) ? Number(props.offsetX ?? 0) : 0);
|
|
37351
|
+
setup(__props) {
|
|
37352
|
+
const props = __props;
|
|
37353
|
+
ref(false);
|
|
37354
|
+
const computedHeaderMenu = computed(() => {
|
|
37355
|
+
if (props.userInfoLoaded) return props.headerMenu;
|
|
37356
|
+
return props.headerMenu;
|
|
38213
37357
|
});
|
|
38214
|
-
|
|
38215
|
-
|
|
38216
|
-
|
|
38217
|
-
|
|
38218
|
-
|
|
38219
|
-
|
|
38220
|
-
|
|
38221
|
-
|
|
38222
|
-
|
|
38223
|
-
|
|
38224
|
-
|
|
38225
|
-
|
|
38226
|
-
|
|
38227
|
-
|
|
38228
|
-
|
|
38229
|
-
"style": props.style
|
|
38230
|
-
}), {
|
|
38231
|
-
default: () => {
|
|
38232
|
-
var _a, _b;
|
|
38233
|
-
return [createElementVNode("div", {
|
|
38234
|
-
"class": "v-badge__wrapper"
|
|
38235
|
-
}, [(_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a), createVNode(MaybeTransition, {
|
|
38236
|
-
"transition": props.transition
|
|
37358
|
+
return (_ctx, _cache) => {
|
|
37359
|
+
return openBlock(), createBlock(VAppBar, {
|
|
37360
|
+
elevation: "0",
|
|
37361
|
+
height: "80"
|
|
37362
|
+
}, {
|
|
37363
|
+
default: withCtx(() => [
|
|
37364
|
+
__props.menuOrientation === "vertical" ? (openBlock(), createBlock(VBtn, {
|
|
37365
|
+
key: 0,
|
|
37366
|
+
class: "hidden-md-and-down text-secondary",
|
|
37367
|
+
color: "lightsecondary",
|
|
37368
|
+
icon: "",
|
|
37369
|
+
rounded: "sm",
|
|
37370
|
+
variant: "flat",
|
|
37371
|
+
size: "small",
|
|
37372
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => props.onToggleMiniSidebar && props.onToggleMiniSidebar(), ["stop"]))
|
|
38237
37373
|
}, {
|
|
38238
|
-
default: () =>
|
|
38239
|
-
|
|
38240
|
-
|
|
38241
|
-
"
|
|
38242
|
-
|
|
38243
|
-
|
|
38244
|
-
|
|
38245
|
-
|
|
38246
|
-
|
|
38247
|
-
|
|
38248
|
-
|
|
38249
|
-
|
|
38250
|
-
|
|
38251
|
-
|
|
38252
|
-
|
|
37374
|
+
default: withCtx(() => [
|
|
37375
|
+
createVNode(unref(IconMenu2), {
|
|
37376
|
+
size: "20",
|
|
37377
|
+
"stroke-width": "1.5"
|
|
37378
|
+
})
|
|
37379
|
+
]),
|
|
37380
|
+
_: 1
|
|
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"]))
|
|
37407
|
+
}, {
|
|
37408
|
+
default: withCtx(() => [
|
|
37409
|
+
createVNode(unref(IconPalette), {
|
|
37410
|
+
size: "20",
|
|
37411
|
+
"stroke-width": "1.5"
|
|
37412
|
+
})
|
|
37413
|
+
]),
|
|
37414
|
+
_: 1
|
|
37415
|
+
}),
|
|
37416
|
+
__props.menuOrientation === "horizontal" ? (openBlock(), createElementBlock("div", _hoisted_1$2, [
|
|
37417
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(computedHeaderMenu.value, (item, i) => {
|
|
37418
|
+
return openBlock(), createElementBlock(Fragment, { key: i }, [
|
|
37419
|
+
!item.children ? (openBlock(), createBlock(VBtn, {
|
|
37420
|
+
key: 0,
|
|
37421
|
+
to: item.type === "external" ? "" : item.to,
|
|
37422
|
+
href: item.type === "external" ? item.to : "",
|
|
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
|
|
38253
37527
|
});
|
|
38254
|
-
}
|
|
38255
|
-
return {};
|
|
37528
|
+
};
|
|
38256
37529
|
}
|
|
38257
37530
|
});
|
|
37531
|
+
const AppSidebar = /* @__PURE__ */ _export_sfc$1(_sfc_main$2, [["__scopeId", "data-v-f9cc73a9"]]);
|
|
38258
37532
|
const _hoisted_1$1 = {
|
|
38259
|
-
key: 0,
|
|
38260
|
-
class: "text-h6"
|
|
38261
|
-
};
|
|
38262
|
-
const _hoisted_2 = {
|
|
38263
37533
|
key: 1,
|
|
38264
|
-
class: "
|
|
37534
|
+
class: "header-menu-container"
|
|
38265
37535
|
};
|
|
38266
|
-
const _hoisted_3 = { key: 2 };
|
|
38267
|
-
const _hoisted_4 = { key: 2 };
|
|
38268
|
-
const _hoisted_5 = { key: 2 };
|
|
38269
37536
|
const _sfc_main$1 = /* @__PURE__ */ defineComponent$1({
|
|
38270
37537
|
__name: "AppHeader",
|
|
38271
37538
|
props: {
|
|
38272
|
-
|
|
38273
|
-
|
|
38274
|
-
|
|
38275
|
-
|
|
38276
|
-
|
|
38277
|
-
|
|
38278
|
-
|
|
38279
|
-
|
|
38280
|
-
showNotifications: { type: Boolean, default: false },
|
|
38281
|
-
notificationCount: { default: 0 },
|
|
38282
|
-
showProfile: { type: Boolean, default: false },
|
|
38283
|
-
profileAvatar: {},
|
|
38284
|
-
profileName: {},
|
|
38285
|
-
profileMenu: { default: () => [] },
|
|
38286
|
-
actions: { default: () => [] },
|
|
38287
|
-
color: { default: "surface" },
|
|
38288
|
-
elevation: { default: 1 },
|
|
38289
|
-
height: { default: 70 },
|
|
38290
|
-
hideDefaultTitle: { type: Boolean, default: false }
|
|
37539
|
+
menuOrientation: { type: String, default: "horizontal" },
|
|
37540
|
+
miniSidebar: { type: Boolean, default: false },
|
|
37541
|
+
userInfoLoaded: { type: Boolean, default: false },
|
|
37542
|
+
headerMenu: { type: Array, default: () => [] },
|
|
37543
|
+
// Events sent back to project
|
|
37544
|
+
onToggleMiniSidebar: Function,
|
|
37545
|
+
onToggleCustomizer: Function,
|
|
37546
|
+
onToggleSidebarDrawer: Function
|
|
38291
37547
|
},
|
|
38292
|
-
|
|
38293
|
-
setup(__props, { emit: __emit }) {
|
|
37548
|
+
setup(__props) {
|
|
38294
37549
|
const props = __props;
|
|
38295
|
-
|
|
38296
|
-
const
|
|
38297
|
-
|
|
38298
|
-
|
|
38299
|
-
set: (val2) => {
|
|
38300
|
-
emit("update:searchValue", val2);
|
|
38301
|
-
emit("search", val2);
|
|
38302
|
-
}
|
|
37550
|
+
ref(false);
|
|
37551
|
+
const computedHeaderMenu = computed(() => {
|
|
37552
|
+
if (props.userInfoLoaded) return props.headerMenu;
|
|
37553
|
+
return props.headerMenu;
|
|
38303
37554
|
});
|
|
38304
|
-
const toggleSidebar = () => {
|
|
38305
|
-
customizer.SET_SIDEBAR_DRAWER();
|
|
38306
|
-
emit("toggle-sidebar");
|
|
38307
|
-
};
|
|
38308
|
-
const router = useRouter$1();
|
|
38309
|
-
const profileMenuItems = computed(
|
|
38310
|
-
() => props.profileMenu.map((item) => ({
|
|
38311
|
-
...item,
|
|
38312
|
-
prependIcon: item.icon,
|
|
38313
|
-
onClick: item.action || (() => {
|
|
38314
|
-
if (item.to) {
|
|
38315
|
-
router.push(item.to);
|
|
38316
|
-
} else if (item.href) {
|
|
38317
|
-
window.open(item.href, "_blank");
|
|
38318
|
-
}
|
|
38319
|
-
})
|
|
38320
|
-
}))
|
|
38321
|
-
);
|
|
38322
37555
|
return (_ctx, _cache) => {
|
|
38323
37556
|
return openBlock(), createBlock(VAppBar, {
|
|
38324
|
-
|
|
38325
|
-
|
|
38326
|
-
height: __props.height,
|
|
38327
|
-
class: normalizeClass(["app-header topbar", props.class]),
|
|
38328
|
-
"aria-label": __props.ariaLabel,
|
|
38329
|
-
fixed: ""
|
|
37557
|
+
elevation: "0",
|
|
37558
|
+
height: "80"
|
|
38330
37559
|
}, {
|
|
38331
37560
|
default: withCtx(() => [
|
|
38332
|
-
|
|
38333
|
-
__props.showSidebarToggle ? (openBlock(), createBlock(VAppBarNavIcon, {
|
|
37561
|
+
__props.menuOrientation === "vertical" ? (openBlock(), createBlock(VBtn, {
|
|
38334
37562
|
key: 0,
|
|
38335
|
-
|
|
38336
|
-
|
|
38337
|
-
|
|
38338
|
-
|
|
38339
|
-
|
|
38340
|
-
|
|
38341
|
-
|
|
38342
|
-
}, {
|
|
38343
|
-
default: withCtx(() => [
|
|
38344
|
-
__props.title ? (openBlock(), createElementBlock("span", _hoisted_1$1, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
|
|
38345
|
-
__props.subtitle ? (openBlock(), createElementBlock("span", _hoisted_2, toDisplayString(__props.subtitle), 1)) : createCommentVNode("", true)
|
|
38346
|
-
]),
|
|
38347
|
-
_: 1
|
|
38348
|
-
})) : createCommentVNode("", true)
|
|
38349
|
-
], true),
|
|
38350
|
-
createVNode(VSpacer),
|
|
38351
|
-
renderSlot(_ctx.$slots, "center", {}, void 0, true),
|
|
38352
|
-
__props.showSearch ? (openBlock(), createBlock(VTextField, {
|
|
38353
|
-
key: 1,
|
|
38354
|
-
modelValue: searchInput.value,
|
|
38355
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchInput.value = $event),
|
|
38356
|
-
placeholder: __props.searchPlaceholder,
|
|
38357
|
-
density: "compact",
|
|
38358
|
-
variant: "outlined",
|
|
38359
|
-
"hide-details": "",
|
|
38360
|
-
"prepend-inner-icon": "mdi-magnify",
|
|
38361
|
-
class: "search-bar",
|
|
38362
|
-
style: { "max-width": "400px" }
|
|
38363
|
-
}, null, 8, ["modelValue", "placeholder"])) : createCommentVNode("", true),
|
|
38364
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.actions, (action, index2) => {
|
|
38365
|
-
return openBlock(), createElementBlock(Fragment, { key: index2 }, [
|
|
38366
|
-
action.tooltip ? (openBlock(), createBlock(VTooltip, {
|
|
38367
|
-
key: 0,
|
|
38368
|
-
text: action.tooltip,
|
|
38369
|
-
location: "bottom"
|
|
38370
|
-
}, {
|
|
38371
|
-
activator: withCtx(({ props: tooltipProps }) => [
|
|
38372
|
-
createVNode(VBtn, mergeProps({ ref_for: true }, tooltipProps, {
|
|
38373
|
-
icon: action.icon,
|
|
38374
|
-
color: action.color || "primary",
|
|
38375
|
-
variant: action.variant || "text",
|
|
38376
|
-
size: action.size || "default",
|
|
38377
|
-
disabled: action.disabled,
|
|
38378
|
-
class: "ms-2",
|
|
38379
|
-
onClick: action.onClick
|
|
38380
|
-
}), {
|
|
38381
|
-
default: withCtx(() => [
|
|
38382
|
-
action.badge ? (openBlock(), createBlock(VBadge, {
|
|
38383
|
-
key: 0,
|
|
38384
|
-
content: action.badge,
|
|
38385
|
-
color: action.badgeColor || "error",
|
|
38386
|
-
overlap: ""
|
|
38387
|
-
}, {
|
|
38388
|
-
default: withCtx(() => [
|
|
38389
|
-
action.icon ? (openBlock(), createBlock(VIcon, {
|
|
38390
|
-
key: 0,
|
|
38391
|
-
icon: action.icon
|
|
38392
|
-
}, null, 8, ["icon"])) : createCommentVNode("", true)
|
|
38393
|
-
]),
|
|
38394
|
-
_: 2
|
|
38395
|
-
}, 1032, ["content", "color"])) : action.icon ? (openBlock(), createBlock(VIcon, {
|
|
38396
|
-
key: 1,
|
|
38397
|
-
icon: action.icon
|
|
38398
|
-
}, null, 8, ["icon"])) : createCommentVNode("", true),
|
|
38399
|
-
action.label && !action.icon ? (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(action.label), 1)) : createCommentVNode("", true)
|
|
38400
|
-
]),
|
|
38401
|
-
_: 2
|
|
38402
|
-
}, 1040, ["icon", "color", "variant", "size", "disabled", "onClick"])
|
|
38403
|
-
]),
|
|
38404
|
-
_: 2
|
|
38405
|
-
}, 1032, ["text"])) : (openBlock(), createBlock(VBtn, {
|
|
38406
|
-
key: 1,
|
|
38407
|
-
icon: action.icon,
|
|
38408
|
-
color: action.color || "primary",
|
|
38409
|
-
variant: action.variant || "text",
|
|
38410
|
-
size: action.size || "default",
|
|
38411
|
-
disabled: action.disabled,
|
|
38412
|
-
class: "ms-2",
|
|
38413
|
-
onClick: action.onClick
|
|
38414
|
-
}, {
|
|
38415
|
-
default: withCtx(() => [
|
|
38416
|
-
action.badge ? (openBlock(), createBlock(VBadge, {
|
|
38417
|
-
key: 0,
|
|
38418
|
-
content: action.badge,
|
|
38419
|
-
color: action.badgeColor || "error",
|
|
38420
|
-
overlap: ""
|
|
38421
|
-
}, {
|
|
38422
|
-
default: withCtx(() => [
|
|
38423
|
-
action.icon ? (openBlock(), createBlock(VIcon, {
|
|
38424
|
-
key: 0,
|
|
38425
|
-
icon: action.icon
|
|
38426
|
-
}, null, 8, ["icon"])) : createCommentVNode("", true)
|
|
38427
|
-
]),
|
|
38428
|
-
_: 2
|
|
38429
|
-
}, 1032, ["content", "color"])) : action.icon ? (openBlock(), createBlock(VIcon, {
|
|
38430
|
-
key: 1,
|
|
38431
|
-
icon: action.icon
|
|
38432
|
-
}, null, 8, ["icon"])) : createCommentVNode("", true),
|
|
38433
|
-
action.label && !action.icon ? (openBlock(), createElementBlock("span", _hoisted_4, toDisplayString(action.label), 1)) : createCommentVNode("", true)
|
|
38434
|
-
]),
|
|
38435
|
-
_: 2
|
|
38436
|
-
}, 1032, ["icon", "color", "variant", "size", "disabled", "onClick"]))
|
|
38437
|
-
], 64);
|
|
38438
|
-
}), 128)),
|
|
38439
|
-
renderSlot(_ctx.$slots, "right", {}, void 0, true),
|
|
38440
|
-
__props.showNotifications ? (openBlock(), createBlock(VMenu, {
|
|
38441
|
-
key: 2,
|
|
38442
|
-
location: "bottom end",
|
|
38443
|
-
"offset-y": ""
|
|
37563
|
+
class: "hidden-md-and-down text-secondary",
|
|
37564
|
+
color: "lightsecondary",
|
|
37565
|
+
icon: "",
|
|
37566
|
+
rounded: "sm",
|
|
37567
|
+
variant: "flat",
|
|
37568
|
+
size: "small",
|
|
37569
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => props.onToggleMiniSidebar && props.onToggleMiniSidebar(), ["stop"]))
|
|
38444
37570
|
}, {
|
|
38445
|
-
activator: withCtx(({ props: menuProps }) => [
|
|
38446
|
-
createVNode(VBtn, mergeProps(menuProps, {
|
|
38447
|
-
icon: "",
|
|
38448
|
-
variant: "text",
|
|
38449
|
-
class: "profileBtn"
|
|
38450
|
-
}), {
|
|
38451
|
-
default: withCtx(() => [
|
|
38452
|
-
createVNode(VBadge, {
|
|
38453
|
-
content: __props.notificationCount > 0 ? __props.notificationCount : void 0,
|
|
38454
|
-
color: "error",
|
|
38455
|
-
overlap: ""
|
|
38456
|
-
}, {
|
|
38457
|
-
default: withCtx(() => [
|
|
38458
|
-
createVNode(VIcon, { icon: "mdi-bell-outline" })
|
|
38459
|
-
]),
|
|
38460
|
-
_: 1
|
|
38461
|
-
}, 8, ["content"])
|
|
38462
|
-
]),
|
|
38463
|
-
_: 1
|
|
38464
|
-
}, 16)
|
|
38465
|
-
]),
|
|
38466
37571
|
default: withCtx(() => [
|
|
38467
|
-
createVNode(
|
|
38468
|
-
|
|
38469
|
-
|
|
38470
|
-
default: withCtx(() => [
|
|
38471
|
-
createVNode(VListItemTitle, null, {
|
|
38472
|
-
default: withCtx(() => [..._cache[1] || (_cache[1] = [
|
|
38473
|
-
createTextVNode("اعلانها", -1)
|
|
38474
|
-
])]),
|
|
38475
|
-
_: 1
|
|
38476
|
-
})
|
|
38477
|
-
]),
|
|
38478
|
-
_: 1
|
|
38479
|
-
}),
|
|
38480
|
-
createVNode(VDivider),
|
|
38481
|
-
createVNode(VListItem, null, {
|
|
38482
|
-
default: withCtx(() => [
|
|
38483
|
-
createVNode(VListItemTitle, null, {
|
|
38484
|
-
default: withCtx(() => [..._cache[2] || (_cache[2] = [
|
|
38485
|
-
createTextVNode("هیچ اعلان جدیدی وجود ندارد", -1)
|
|
38486
|
-
])]),
|
|
38487
|
-
_: 1
|
|
38488
|
-
})
|
|
38489
|
-
]),
|
|
38490
|
-
_: 1
|
|
38491
|
-
})
|
|
38492
|
-
]),
|
|
38493
|
-
_: 1
|
|
37572
|
+
createVNode(unref(IconMenu2), {
|
|
37573
|
+
size: "20",
|
|
37574
|
+
"stroke-width": "1.5"
|
|
38494
37575
|
})
|
|
38495
37576
|
]),
|
|
38496
37577
|
_: 1
|
|
38497
37578
|
})) : createCommentVNode("", true),
|
|
38498
|
-
|
|
38499
|
-
|
|
38500
|
-
|
|
38501
|
-
|
|
37579
|
+
createVNode(VBtn, {
|
|
37580
|
+
class: "hidden-lg-and-up text-secondary ms-3",
|
|
37581
|
+
color: "lightsecondary",
|
|
37582
|
+
icon: "",
|
|
37583
|
+
rounded: "sm",
|
|
37584
|
+
variant: "flat",
|
|
37585
|
+
size: "small",
|
|
37586
|
+
onClick: _cache[1] || (_cache[1] = withModifiers(($event) => props.onToggleSidebarDrawer && props.onToggleSidebarDrawer(), ["stop"]))
|
|
38502
37587
|
}, {
|
|
38503
|
-
|
|
38504
|
-
createVNode(
|
|
38505
|
-
|
|
38506
|
-
|
|
38507
|
-
|
|
38508
|
-
}), {
|
|
38509
|
-
default: withCtx(() => [
|
|
38510
|
-
__props.profileAvatar ? (openBlock(), createBlock(VAvatar, {
|
|
38511
|
-
key: 0,
|
|
38512
|
-
size: "32"
|
|
38513
|
-
}, {
|
|
38514
|
-
default: withCtx(() => [
|
|
38515
|
-
createVNode(VImg, {
|
|
38516
|
-
src: __props.profileAvatar,
|
|
38517
|
-
alt: __props.profileName || "Profile"
|
|
38518
|
-
}, null, 8, ["src", "alt"])
|
|
38519
|
-
]),
|
|
38520
|
-
_: 1
|
|
38521
|
-
})) : !__props.profileName ? (openBlock(), createBlock(VIcon, {
|
|
38522
|
-
key: 1,
|
|
38523
|
-
icon: "mdi-account-circle"
|
|
38524
|
-
})) : (openBlock(), createElementBlock("span", _hoisted_5, toDisplayString(__props.profileName), 1))
|
|
38525
|
-
]),
|
|
38526
|
-
_: 1
|
|
38527
|
-
}, 16, ["icon"])
|
|
37588
|
+
default: withCtx(() => [
|
|
37589
|
+
createVNode(unref(IconMenu2), {
|
|
37590
|
+
size: "20",
|
|
37591
|
+
"stroke-width": "1.5"
|
|
37592
|
+
})
|
|
38528
37593
|
]),
|
|
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
|
+
}, {
|
|
38529
37605
|
default: withCtx(() => [
|
|
38530
|
-
|
|
38531
|
-
|
|
38532
|
-
|
|
38533
|
-
|
|
38534
|
-
|
|
38535
|
-
|
|
38536
|
-
|
|
38537
|
-
|
|
38538
|
-
|
|
38539
|
-
|
|
37606
|
+
createVNode(unref(IconPalette), {
|
|
37607
|
+
size: "20",
|
|
37608
|
+
"stroke-width": "1.5"
|
|
37609
|
+
})
|
|
37610
|
+
]),
|
|
37611
|
+
_: 1
|
|
37612
|
+
}),
|
|
37613
|
+
__props.menuOrientation === "horizontal" ? (openBlock(), createElementBlock("div", _hoisted_1$1, [
|
|
37614
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(computedHeaderMenu.value, (item, i) => {
|
|
37615
|
+
return openBlock(), createElementBlock(Fragment, { key: i }, [
|
|
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
|
+
}), {
|
|
38540
37645
|
default: withCtx(() => [
|
|
38541
|
-
|
|
38542
|
-
|
|
38543
|
-
|
|
38544
|
-
|
|
38545
|
-
|
|
38546
|
-
|
|
38547
|
-
|
|
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
|
+
})
|
|
38548
37656
|
]),
|
|
38549
37657
|
_: 2
|
|
38550
|
-
},
|
|
38551
|
-
|
|
38552
|
-
|
|
38553
|
-
|
|
38554
|
-
|
|
38555
|
-
|
|
38556
|
-
|
|
38557
|
-
|
|
37658
|
+
}, 1040)
|
|
37659
|
+
]),
|
|
37660
|
+
default: withCtx(() => [
|
|
37661
|
+
createVNode(VList, null, {
|
|
37662
|
+
default: withCtx(() => [
|
|
37663
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(item.children, (child, c) => {
|
|
37664
|
+
return openBlock(), createBlock(VListItem, {
|
|
37665
|
+
key: c,
|
|
37666
|
+
to: child.type === "external" ? "" : child.to,
|
|
37667
|
+
href: child.type === "external" ? child.to : "",
|
|
37668
|
+
target: child.type === "external" ? "_blank" : ""
|
|
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))
|
|
37681
|
+
]),
|
|
37682
|
+
_: 2
|
|
37683
|
+
}, 1024)
|
|
37684
|
+
]),
|
|
37685
|
+
_: 2
|
|
37686
|
+
}, 1024))
|
|
37687
|
+
], 64);
|
|
37688
|
+
}), 128))
|
|
37689
|
+
])) : createCommentVNode("", true),
|
|
37690
|
+
createVNode(VSpacer),
|
|
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)
|
|
38558
37722
|
]),
|
|
38559
37723
|
_: 3
|
|
38560
|
-
}
|
|
37724
|
+
});
|
|
38561
37725
|
};
|
|
38562
37726
|
}
|
|
38563
37727
|
});
|
|
38564
|
-
const AppHeader = /* @__PURE__ */ _export_sfc$1(_sfc_main$1, [["__scopeId", "data-v-
|
|
37728
|
+
const AppHeader = /* @__PURE__ */ _export_sfc$1(_sfc_main$1, [["__scopeId", "data-v-068c6b7b"]]);
|
|
38565
37729
|
const makeVAppProps = propsFactory({
|
|
38566
37730
|
...makeComponentProps(),
|
|
38567
37731
|
...omit(makeLayoutProps(), ["fullHeight"]),
|
|
@@ -38682,7 +37846,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent$1({
|
|
|
38682
37846
|
return openBlock(), createBlock(VApp, null, {
|
|
38683
37847
|
default: withCtx(() => [
|
|
38684
37848
|
createVNode(AppHeader, mergeProps(__props.header, { class: "app-header" }), null, 16),
|
|
38685
|
-
createVNode(
|
|
37849
|
+
createVNode(AppSidebar, mergeProps(__props.sidebar, { class: "app-sidebar" }), null, 16),
|
|
38686
37850
|
createVNode(VMain, null, {
|
|
38687
37851
|
default: withCtx(() => [
|
|
38688
37852
|
createElementVNode("div", _hoisted_1, [
|
|
@@ -38697,7 +37861,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent$1({
|
|
|
38697
37861
|
};
|
|
38698
37862
|
}
|
|
38699
37863
|
});
|
|
38700
|
-
const AppLayout = /* @__PURE__ */ _export_sfc$1(_sfc_main, [["__scopeId", "data-v-
|
|
37864
|
+
const AppLayout = /* @__PURE__ */ _export_sfc$1(_sfc_main, [["__scopeId", "data-v-f81b2c63"]]);
|
|
38701
37865
|
function useDataTable(options) {
|
|
38702
37866
|
const items = ref([]);
|
|
38703
37867
|
const loading = ref(false);
|
|
@@ -39260,28 +38424,28 @@ const index = {
|
|
|
39260
38424
|
export {
|
|
39261
38425
|
AppHeader,
|
|
39262
38426
|
AppLayout,
|
|
39263
|
-
|
|
38427
|
+
AppSidebar,
|
|
39264
38428
|
AppStepper,
|
|
39265
|
-
_sfc_main$
|
|
39266
|
-
_sfc_main$
|
|
38429
|
+
_sfc_main$i as BaseBreadcrumb,
|
|
38430
|
+
_sfc_main$h as BaseIcon,
|
|
39267
38431
|
BooleanEnum,
|
|
39268
38432
|
BooleanEnumOptions,
|
|
39269
|
-
_sfc_main$
|
|
38433
|
+
_sfc_main$g as ConfirmDialog,
|
|
39270
38434
|
CustomAutocomplete,
|
|
39271
|
-
_sfc_main$
|
|
38435
|
+
_sfc_main$c as CustomDataTable,
|
|
39272
38436
|
DateConverter,
|
|
39273
38437
|
DescriptionInput,
|
|
39274
38438
|
DigitLimit,
|
|
39275
38439
|
DownloadButton,
|
|
39276
38440
|
GreetingUtils,
|
|
39277
38441
|
Loading,
|
|
39278
|
-
_sfc_main$
|
|
38442
|
+
_sfc_main$e as MoneyInput,
|
|
39279
38443
|
NationalCodeValidator,
|
|
39280
38444
|
PdfViewer,
|
|
39281
38445
|
ShamsiDatePicker,
|
|
39282
|
-
_sfc_main$
|
|
39283
|
-
_sfc_main$
|
|
39284
|
-
_sfc_main$
|
|
38446
|
+
_sfc_main$8 as UiChildCard,
|
|
38447
|
+
_sfc_main$7 as UiParentCard,
|
|
38448
|
+
_sfc_main$6 as VPriceTextField,
|
|
39285
38449
|
configureAuth,
|
|
39286
38450
|
configureAxiosInstance,
|
|
39287
38451
|
index as default,
|