@amirjalili1374/ui-kit 1.4.10 → 1.4.12

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/ui-kit.es.js CHANGED
@@ -3889,10 +3889,10 @@ const VRow = genericComponent()({
3889
3889
  }
3890
3890
  });
3891
3891
  const VSpacer = createSimpleFunctional("v-spacer", "div", "VSpacer");
3892
- const _hoisted_1$d = { class: "text-h3" };
3893
- const _hoisted_2$7 = { class: "d-flex align-center gap-2" };
3894
- const _hoisted_3$5 = { class: "d-flex align-center gap-2" };
3895
- const _sfc_main$l = /* @__PURE__ */ defineComponent$1({
3892
+ const _hoisted_1$e = { class: "text-h3" };
3893
+ const _hoisted_2$8 = { class: "d-flex align-center gap-2" };
3894
+ const _hoisted_3$6 = { class: "d-flex align-center gap-2" };
3895
+ const _sfc_main$m = /* @__PURE__ */ defineComponent$1({
3896
3896
  __name: "BaseBreadcrumb",
3897
3897
  props: {
3898
3898
  title: String,
@@ -3921,7 +3921,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent$1({
3921
3921
  default: withCtx(() => [
3922
3922
  createVNode(VCol, { md: "5" }, {
3923
3923
  default: withCtx(() => [
3924
- createElementVNode("h3", _hoisted_1$d, toDisplayString(props.title), 1)
3924
+ createElementVNode("h3", _hoisted_1$e, toDisplayString(props.title), 1)
3925
3925
  ]),
3926
3926
  _: 1
3927
3927
  }),
@@ -3936,7 +3936,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent$1({
3936
3936
  class: "text-h5 justify-md-end pa-1"
3937
3937
  }, {
3938
3938
  divider: withCtx(() => [
3939
- createElementVNode("div", _hoisted_2$7, [
3939
+ createElementVNode("div", _hoisted_2$8, [
3940
3940
  createVNode(unref(IconArrowBadgeLeft), { stroke: "{2}" })
3941
3941
  ])
3942
3942
  ]),
@@ -3945,7 +3945,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent$1({
3945
3945
  size: "16",
3946
3946
  class: "text-secondary ml-2"
3947
3947
  }),
3948
- createElementVNode("div", _hoisted_3$5, [
3948
+ createElementVNode("div", _hoisted_3$6, [
3949
3949
  createVNode(unref(IconArrowBadgeLeft), { stroke: "{2}" })
3950
3950
  ])
3951
3951
  ]),
@@ -3969,7 +3969,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent$1({
3969
3969
  };
3970
3970
  }
3971
3971
  });
3972
- const _sfc_main$k = /* @__PURE__ */ defineComponent$1({
3972
+ const _sfc_main$l = /* @__PURE__ */ defineComponent$1({
3973
3973
  __name: "BaseIcon",
3974
3974
  props: {
3975
3975
  icon: {
@@ -6584,11 +6584,11 @@ const VDialog = genericComponent()({
6584
6584
  return forwardRefs({}, overlay);
6585
6585
  }
6586
6586
  });
6587
- const _hoisted_1$c = {
6587
+ const _hoisted_1$d = {
6588
6588
  key: 0,
6589
6589
  class: "mb-2"
6590
6590
  };
6591
- const _sfc_main$j = /* @__PURE__ */ defineComponent$1({
6591
+ const _sfc_main$k = /* @__PURE__ */ defineComponent$1({
6592
6592
  __name: "ConfirmDialog",
6593
6593
  props: {
6594
6594
  modelValue: { type: Boolean },
@@ -6634,7 +6634,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent$1({
6634
6634
  }),
6635
6635
  createVNode(VCardText, null, {
6636
6636
  default: withCtx(() => [
6637
- __props.message ? (openBlock(), createElementBlock("div", _hoisted_1$c, toDisplayString(__props.message), 1)) : createCommentVNode("", true),
6637
+ __props.message ? (openBlock(), createElementBlock("div", _hoisted_1$d, toDisplayString(__props.message), 1)) : createCommentVNode("", true),
6638
6638
  renderSlot(_ctx.$slots, "default")
6639
6639
  ]),
6640
6640
  _: 3
@@ -12595,17 +12595,17 @@ const VTooltip = genericComponent()({
12595
12595
  return forwardRefs({}, overlay);
12596
12596
  }
12597
12597
  });
12598
- const _hoisted_1$b = { class: "ca-item-title" };
12599
- const _hoisted_2$6 = { class: "ca-item-subtitle" };
12600
- const _hoisted_3$4 = { class: "ca-group-tooltip" };
12601
- const _hoisted_4$2 = { class: "ca-group-tooltip-header" };
12602
- const _hoisted_5$2 = { class: "ca-group-count" };
12598
+ const _hoisted_1$c = { class: "ca-item-title" };
12599
+ const _hoisted_2$7 = { class: "ca-item-subtitle" };
12600
+ const _hoisted_3$5 = { class: "ca-group-tooltip" };
12601
+ const _hoisted_4$3 = { class: "ca-group-tooltip-header" };
12602
+ const _hoisted_5$3 = { class: "ca-group-count" };
12603
12603
  const _hoisted_6$2 = { class: "ca-group-members" };
12604
12604
  const _hoisted_7$2 = { class: "ca-item-title" };
12605
12605
  const _hoisted_8$2 = { class: "ca-item-subtitle" };
12606
12606
  const _hoisted_9$2 = { class: "ca-chip-title" };
12607
12607
  const _hoisted_10$2 = { class: "ca-chip-subtitle" };
12608
- const _sfc_main$i = /* @__PURE__ */ defineComponent$1({
12608
+ const _sfc_main$j = /* @__PURE__ */ defineComponent$1({
12609
12609
  __name: "CustomAutocomplete",
12610
12610
  props: {
12611
12611
  fields: {},
@@ -12714,7 +12714,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent$1({
12714
12714
  class: { "ca-main-group": true }
12715
12715
  }), createSlots({
12716
12716
  title: withCtx(() => [
12717
- createElementVNode("div", _hoisted_1$b, [
12717
+ createElementVNode("div", _hoisted_1$c, [
12718
12718
  createTextVNode(toDisplayString(resolveTitle(item.raw ?? item)) + " ", 1),
12719
12719
  createVNode(VChip, {
12720
12720
  size: "small",
@@ -12739,7 +12739,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent$1({
12739
12739
  __props.displayStyle === "detailed" && resolveSubtitle(item.raw ?? item) ? {
12740
12740
  name: "subtitle",
12741
12741
  fn: withCtx(() => [
12742
- createElementVNode("div", _hoisted_2$6, toDisplayString(resolveSubtitle(item.raw ?? item)), 1)
12742
+ createElementVNode("div", _hoisted_2$7, toDisplayString(resolveSubtitle(item.raw ?? item)), 1)
12743
12743
  ]),
12744
12744
  key: "0"
12745
12745
  } : void 0
@@ -12750,10 +12750,10 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent$1({
12750
12750
  item: item.raw ?? item,
12751
12751
  groupMembers: getGroupMembers(item.raw ?? item)
12752
12752
  }, () => [
12753
- createElementVNode("div", _hoisted_3$4, [
12754
- createElementVNode("div", _hoisted_4$2, [
12753
+ createElementVNode("div", _hoisted_3$5, [
12754
+ createElementVNode("div", _hoisted_4$3, [
12755
12755
  createElementVNode("strong", null, toDisplayString(resolveTitle(item.raw ?? item)), 1),
12756
- createElementVNode("span", _hoisted_5$2, toDisplayString(getGroupMembers(item.raw ?? item).length) + " آیتم", 1)
12756
+ createElementVNode("span", _hoisted_5$3, toDisplayString(getGroupMembers(item.raw ?? item).length) + " آیتم", 1)
12757
12757
  ]),
12758
12758
  createElementVNode("div", _hoisted_6$2, [
12759
12759
  (openBlock(true), createElementBlock(Fragment, null, renderList(getGroupMembers(item.raw ?? item), (member, idx) => {
@@ -12816,8 +12816,8 @@ const _export_sfc$1 = (sfc, props) => {
12816
12816
  }
12817
12817
  return target;
12818
12818
  };
12819
- const CustomAutocomplete = /* @__PURE__ */ _export_sfc$1(_sfc_main$i, [["__scopeId", "data-v-4c17f7bd"]]);
12820
- const _sfc_main$h = /* @__PURE__ */ defineComponent$1({
12819
+ const CustomAutocomplete = /* @__PURE__ */ _export_sfc$1(_sfc_main$j, [["__scopeId", "data-v-4c17f7bd"]]);
12820
+ const _sfc_main$i = /* @__PURE__ */ defineComponent$1({
12821
12821
  __name: "MoneyInput",
12822
12822
  props: {
12823
12823
  modelValue: {
@@ -12923,8 +12923,8 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent$1({
12923
12923
  };
12924
12924
  }
12925
12925
  });
12926
- const _hoisted_1$a = { class: "shamsi-date-picker" };
12927
- const _sfc_main$g = /* @__PURE__ */ defineComponent$1({
12926
+ const _hoisted_1$b = { class: "shamsi-date-picker" };
12927
+ const _sfc_main$h = /* @__PURE__ */ defineComponent$1({
12928
12928
  __name: "ShamsiDatePicker",
12929
12929
  props: {
12930
12930
  modelValue: { default: "" },
@@ -13012,7 +13012,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent$1({
13012
13012
  const isRangeMode = computed(() => props.mode === "range");
13013
13013
  return (_ctx, _cache) => {
13014
13014
  const _component_Vue3PersianDatetimePicker = resolveComponent("Vue3PersianDatetimePicker");
13015
- return openBlock(), createElementBlock("div", _hoisted_1$a, [
13015
+ return openBlock(), createElementBlock("div", _hoisted_1$b, [
13016
13016
  createVNode(_component_Vue3PersianDatetimePicker, {
13017
13017
  label: __props.label,
13018
13018
  modelValue: selectedDate.value,
@@ -13035,7 +13035,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent$1({
13035
13035
  };
13036
13036
  }
13037
13037
  });
13038
- const ShamsiDatePicker = /* @__PURE__ */ _export_sfc$1(_sfc_main$g, [["__scopeId", "data-v-d56f50fe"]]);
13038
+ const ShamsiDatePicker = /* @__PURE__ */ _export_sfc$1(_sfc_main$h, [["__scopeId", "data-v-d56f50fe"]]);
13039
13039
  function useTableSelection(items, options = {}) {
13040
13040
  const selectedItems = ref([]);
13041
13041
  const expandedGroups = ref(/* @__PURE__ */ new Set());
@@ -13181,11 +13181,8 @@ function apiService(axiosInst, resource) {
13181
13181
  const response = await axiosInst.post(baseUrl, data2);
13182
13182
  return response;
13183
13183
  },
13184
- async update(data2) {
13185
- if (!data2.id) {
13186
- throw new Error("Update requires an id field");
13187
- }
13188
- const response = await axiosInst.put(`${baseUrl}/${data2.id}`, data2);
13184
+ async update(id, data2) {
13185
+ const response = await axiosInst.put(`${baseUrl}/${id}`, data2);
13189
13186
  return response;
13190
13187
  },
13191
13188
  async delete(id) {
@@ -16921,17 +16918,17 @@ const VTextarea = genericComponent()({
16921
16918
  return forwardRefs({}, vInputRef, vFieldRef, textareaRef);
16922
16919
  }
16923
16920
  });
16924
- const _hoisted_1$9 = {
16921
+ const _hoisted_1$a = {
16925
16922
  key: 0,
16926
16923
  class: "page-title"
16927
16924
  };
16928
- const _hoisted_2$5 = { class: "title-text" };
16929
- const _hoisted_3$3 = { class: "action-buttons" };
16930
- const _hoisted_4$1 = {
16925
+ const _hoisted_2$6 = { class: "title-text" };
16926
+ const _hoisted_3$4 = { class: "action-buttons" };
16927
+ const _hoisted_4$2 = {
16931
16928
  key: 3,
16932
16929
  class: "selection-actions"
16933
16930
  };
16934
- const _hoisted_5$1 = {
16931
+ const _hoisted_5$2 = {
16935
16932
  key: 0,
16936
16933
  class: "selected-actions"
16937
16934
  };
@@ -16979,7 +16976,7 @@ const _hoisted_24 = {
16979
16976
  };
16980
16977
  const _hoisted_25 = { class: "d-flex justify-space-between align-center pa-4" };
16981
16978
  const _hoisted_26 = { class: "text-subtitle-2" };
16982
- const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
16979
+ const _sfc_main$g = /* @__PURE__ */ defineComponent$1({
16983
16980
  ...{ inheritAttrs: false },
16984
16981
  __name: "CustomDataTable",
16985
16982
  props: {
@@ -17594,7 +17591,9 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
17594
17591
  }
17595
17592
  });
17596
17593
  if (isEditing.value && dataToSave.id) {
17597
- await api.update(dataToSave);
17594
+ const recordId = dataToSave.id;
17595
+ const { id, ...dataWithoutId } = dataToSave;
17596
+ await api.update(recordId, dataWithoutId);
17598
17597
  snackbarMessage.value = "✅ آیتم با موفقیت بروزرسانی شد!";
17599
17598
  } else {
17600
17599
  const response = await api.create(dataToSave);
@@ -17895,10 +17894,10 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
17895
17894
  return (_ctx, _cache) => {
17896
17895
  var _a;
17897
17896
  return openBlock(), createElementBlock(Fragment, null, [
17898
- props.title ? (openBlock(), createElementBlock("div", _hoisted_1$9, [
17899
- createElementVNode("h3", _hoisted_2$5, toDisplayString(props.title), 1)
17897
+ props.title ? (openBlock(), createElementBlock("div", _hoisted_1$a, [
17898
+ createElementVNode("h3", _hoisted_2$6, toDisplayString(props.title), 1)
17900
17899
  ])) : createCommentVNode("", true),
17901
- createElementVNode("div", _hoisted_3$3, [
17900
+ createElementVNode("div", _hoisted_3$4, [
17902
17901
  ((_a = props.actions) == null ? void 0 : _a.includes("create")) ? (openBlock(), createBlock(VBtn, {
17903
17902
  key: 0,
17904
17903
  color: "green",
@@ -17931,7 +17930,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
17931
17930
  ])]),
17932
17931
  _: 1
17933
17932
  }, 8, ["onClick", "loading"])) : createCommentVNode("", true),
17934
- props.selectable && hasSelection.value ? (openBlock(), createElementBlock("div", _hoisted_4$1, [
17933
+ props.selectable && hasSelection.value ? (openBlock(), createElementBlock("div", _hoisted_4$2, [
17935
17934
  createVNode(VChip, {
17936
17935
  color: "primary",
17937
17936
  class: "me-2"
@@ -17958,7 +17957,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
17958
17957
  appear: ""
17959
17958
  }, {
17960
17959
  default: withCtx(() => [
17961
- props.bulkMode && hasValidSelection.value || props.enableGroupDelete && hasSelection.value ? (openBlock(), createElementBlock("div", _hoisted_5$1, [
17960
+ props.bulkMode && hasValidSelection.value || props.enableGroupDelete && hasSelection.value ? (openBlock(), createElementBlock("div", _hoisted_5$2, [
17962
17961
  props.enableGroupDelete ? (openBlock(), createBlock(VBtn, {
17963
17962
  key: 0,
17964
17963
  color: "red",
@@ -18695,7 +18694,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
18695
18694
  disabled: isHeaderDisabled(header),
18696
18695
  clearable: "",
18697
18696
  variant: "outlined"
18698
- }, null, 8, ["modelValue", "onUpdate:modelValue", "label", "items", "item-title", "item-value", "return-object", "multiple", "chips", "closable-chips", "disabled"])) : isMoneyHeader(header) ? (openBlock(), createBlock(_sfc_main$h, {
18697
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "label", "items", "item-title", "item-value", "return-object", "multiple", "chips", "closable-chips", "disabled"])) : isMoneyHeader(header) ? (openBlock(), createBlock(_sfc_main$i, {
18699
18698
  key: 2,
18700
18699
  modelValue: formModel.value[resolveHeaderKey(header)],
18701
18700
  "onUpdate:modelValue": ($event) => formModel.value[resolveHeaderKey(header)] = $event,
@@ -19080,8 +19079,8 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
19080
19079
  };
19081
19080
  }
19082
19081
  });
19083
- const _hoisted_1$8 = { class: "description-input" };
19084
- const _sfc_main$e = /* @__PURE__ */ defineComponent$1({
19082
+ const _hoisted_1$9 = { class: "description-input" };
19083
+ const _sfc_main$f = /* @__PURE__ */ defineComponent$1({
19085
19084
  __name: "DescriptionInput",
19086
19085
  props: {
19087
19086
  modelValue: { default: "" },
@@ -19180,7 +19179,7 @@ ${newLineNumber} - `;
19180
19179
  emit("change", internalValue.value);
19181
19180
  };
19182
19181
  return (_ctx, _cache) => {
19183
- return openBlock(), createElementBlock("div", _hoisted_1$8, [
19182
+ return openBlock(), createElementBlock("div", _hoisted_1$9, [
19184
19183
  createVNode(VTextarea, {
19185
19184
  modelValue: internalValue.value,
19186
19185
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => internalValue.value = $event),
@@ -19203,7 +19202,7 @@ ${newLineNumber} - `;
19203
19202
  };
19204
19203
  }
19205
19204
  });
19206
- const DescriptionInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$e, [["__scopeId", "data-v-e8b64ecb"]]);
19205
+ const DescriptionInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$f, [["__scopeId", "data-v-e8b64ecb"]]);
19207
19206
  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";
19208
19207
  var mdiArrowRight = "M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z";
19209
19208
  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";
@@ -19234,8 +19233,8 @@ const icons = {
19234
19233
  cog: mdiCog,
19235
19234
  contentCopy: mdiContentCopy
19236
19235
  };
19237
- const _hoisted_1$7 = { class: "download-title" };
19238
- const _sfc_main$d = /* @__PURE__ */ defineComponent$1({
19236
+ const _hoisted_1$8 = { class: "download-title" };
19237
+ const _sfc_main$e = /* @__PURE__ */ defineComponent$1({
19239
19238
  ...{
19240
19239
  inheritAttrs: false
19241
19240
  },
@@ -19340,7 +19339,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent$1({
19340
19339
  ]),
19341
19340
  _: 1
19342
19341
  }, 8, ["start", "end", "class"])) : createCommentVNode("", true),
19343
- createElementVNode("span", _hoisted_1$7, toDisplayString(__props.title), 1),
19342
+ createElementVNode("span", _hoisted_1$8, toDisplayString(__props.title), 1),
19344
19343
  !__props.icon ? (openBlock(), createBlock(VIcon, {
19345
19344
  key: 1,
19346
19345
  start: "",
@@ -19353,18 +19352,18 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent$1({
19353
19352
  };
19354
19353
  }
19355
19354
  });
19356
- const DownloadButton = /* @__PURE__ */ _export_sfc$1(_sfc_main$d, [["__scopeId", "data-v-0a911831"]]);
19357
- const _hoisted_1$6 = {
19355
+ const DownloadButton = /* @__PURE__ */ _export_sfc$1(_sfc_main$e, [["__scopeId", "data-v-0a911831"]]);
19356
+ const _hoisted_1$7 = {
19358
19357
  key: 0,
19359
19358
  class: "pdf-viewer-header"
19360
19359
  };
19361
- const _hoisted_2$4 = { class: "pdf-viewer-title" };
19362
- const _hoisted_3$2 = { class: "pdf-viewer-controls" };
19363
- const _hoisted_4 = {
19360
+ const _hoisted_2$5 = { class: "pdf-viewer-title" };
19361
+ const _hoisted_3$3 = { class: "pdf-viewer-controls" };
19362
+ const _hoisted_4$1 = {
19364
19363
  key: 0,
19365
19364
  class: "zoom-controls"
19366
19365
  };
19367
- const _hoisted_5 = { class: "zoom-level" };
19366
+ const _hoisted_5$1 = { class: "zoom-level" };
19368
19367
  const _hoisted_6 = {
19369
19368
  key: 1,
19370
19369
  class: "navigation-controls"
@@ -19397,7 +19396,7 @@ const _hoisted_16 = {
19397
19396
  key: 0,
19398
19397
  class: "file-info"
19399
19398
  };
19400
- const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
19399
+ const _sfc_main$d = /* @__PURE__ */ defineComponent$1({
19401
19400
  __name: "PdfViewer",
19402
19401
  props: {
19403
19402
  src: {},
@@ -19605,12 +19604,12 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
19605
19604
  return openBlock(), createElementBlock("div", {
19606
19605
  class: normalizeClass(["pdf-viewer-container", { "fullscreen": isFullscreen.value }])
19607
19606
  }, [
19608
- __props.showHeader ? (openBlock(), createElementBlock("div", _hoisted_1$6, [
19609
- createElementVNode("div", _hoisted_2$4, [
19607
+ __props.showHeader ? (openBlock(), createElementBlock("div", _hoisted_1$7, [
19608
+ createElementVNode("div", _hoisted_2$5, [
19610
19609
  createElementVNode("h3", null, toDisplayString(__props.title || "PDF Viewer"), 1)
19611
19610
  ]),
19612
- createElementVNode("div", _hoisted_3$2, [
19613
- __props.showZoomControls ? (openBlock(), createElementBlock("div", _hoisted_4, [
19611
+ createElementVNode("div", _hoisted_3$3, [
19612
+ __props.showZoomControls ? (openBlock(), createElementBlock("div", _hoisted_4$1, [
19614
19613
  createVNode(VBtn, {
19615
19614
  size: "small",
19616
19615
  variant: "text",
@@ -19626,7 +19625,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
19626
19625
  ]),
19627
19626
  _: 1
19628
19627
  }, 8, ["disabled"]),
19629
- createElementVNode("span", _hoisted_5, toDisplayString(Math.round(zoom.value * 100)) + "%", 1),
19628
+ createElementVNode("span", _hoisted_5$1, toDisplayString(Math.round(zoom.value * 100)) + "%", 1),
19630
19629
  createVNode(VBtn, {
19631
19630
  size: "small",
19632
19631
  variant: "text",
@@ -19824,8 +19823,8 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
19824
19823
  };
19825
19824
  }
19826
19825
  });
19827
- const PdfViewer = /* @__PURE__ */ _export_sfc$1(_sfc_main$c, [["__scopeId", "data-v-f3e9c767"]]);
19828
- const _sfc_main$b = /* @__PURE__ */ defineComponent$1({
19826
+ const PdfViewer = /* @__PURE__ */ _export_sfc$1(_sfc_main$d, [["__scopeId", "data-v-f3e9c767"]]);
19827
+ const _sfc_main$c = /* @__PURE__ */ defineComponent$1({
19829
19828
  __name: "UiChildCard",
19830
19829
  props: {
19831
19830
  title: String
@@ -19859,8 +19858,8 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent$1({
19859
19858
  };
19860
19859
  }
19861
19860
  });
19862
- const _hoisted_1$5 = { class: "d-sm-flex align-center justify-space-between" };
19863
- const _sfc_main$a = /* @__PURE__ */ defineComponent$1({
19861
+ const _hoisted_1$6 = { class: "d-sm-flex align-center justify-space-between" };
19862
+ const _sfc_main$b = /* @__PURE__ */ defineComponent$1({
19864
19863
  __name: "UiParentCard",
19865
19864
  props: {
19866
19865
  title: String
@@ -19872,7 +19871,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent$1({
19872
19871
  default: withCtx(() => [
19873
19872
  createVNode(VCardItem, null, {
19874
19873
  default: withCtx(() => [
19875
- createElementVNode("div", _hoisted_1$5, [
19874
+ createElementVNode("div", _hoisted_1$6, [
19876
19875
  createVNode(VCardTitle, null, {
19877
19876
  default: withCtx(() => [
19878
19877
  createTextVNode(toDisplayString(props.title), 1)
@@ -19897,7 +19896,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent$1({
19897
19896
  };
19898
19897
  }
19899
19898
  });
19900
- const _sfc_main$9 = /* @__PURE__ */ defineComponent$1({
19899
+ const _sfc_main$a = /* @__PURE__ */ defineComponent$1({
19901
19900
  __name: "VPriceTextField",
19902
19901
  props: {
19903
19902
  modelValue: {},
@@ -19998,6 +19997,112 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent$1({
19998
19997
  };
19999
19998
  }
20000
19999
  });
20000
+ const _hoisted_1$5 = { class: "mb-6" };
20001
+ const _hoisted_2$4 = { class: "text-subtitle-1 font-weight-medium mb-3" };
20002
+ const _hoisted_3$2 = { class: "theme-toggle-container" };
20003
+ const _hoisted_4 = { class: "toggle-slider" };
20004
+ const _hoisted_5 = { class: "toggle-icon" };
20005
+ const _sfc_main$9 = /* @__PURE__ */ defineComponent$1({
20006
+ __name: "ToggleSwitch",
20007
+ props: {
20008
+ modelValue: { type: [String, Boolean] },
20009
+ label: {},
20010
+ type: { default: "boolean" },
20011
+ options: { default: () => [] },
20012
+ trueLabel: {},
20013
+ falseLabel: {},
20014
+ trueIcon: {},
20015
+ falseIcon: {},
20016
+ activeColor: { default: "rgb(var(--v-theme-primary))" },
20017
+ inactiveColor: { default: "#e0e0e0" }
20018
+ },
20019
+ emits: ["update:modelValue"],
20020
+ setup(__props, { emit: __emit }) {
20021
+ const props = __props;
20022
+ const emit = __emit;
20023
+ const isBooleanMode = computed(() => props.type === "boolean");
20024
+ const isStringMode = computed(() => props.type === "string");
20025
+ const isActive = computed(() => {
20026
+ if (isBooleanMode.value) {
20027
+ return props.modelValue === true;
20028
+ }
20029
+ return false;
20030
+ });
20031
+ const currentIndex = computed(() => {
20032
+ if (isStringMode.value && props.options.length > 0) {
20033
+ return props.options.findIndex((opt) => opt.value === props.modelValue);
20034
+ }
20035
+ return 0;
20036
+ });
20037
+ const handleToggle = () => {
20038
+ if (isBooleanMode.value) {
20039
+ emit("update:modelValue", !props.modelValue);
20040
+ } else if (isStringMode.value && props.options.length > 0) {
20041
+ const nextIndex = (currentIndex.value + 1) % props.options.length;
20042
+ emit("update:modelValue", props.options[nextIndex].value);
20043
+ }
20044
+ };
20045
+ const isToggleActive = computed(() => {
20046
+ if (isBooleanMode.value) {
20047
+ return isActive.value;
20048
+ } else {
20049
+ if (props.options.length >= 2) {
20050
+ return currentIndex.value >= 1;
20051
+ } else if (props.options.length === 1) {
20052
+ return true;
20053
+ }
20054
+ return false;
20055
+ }
20056
+ });
20057
+ const currentOption = computed(() => {
20058
+ if (isStringMode.value && props.options.length > 0) {
20059
+ return props.options[currentIndex.value] || props.options[0];
20060
+ }
20061
+ return null;
20062
+ });
20063
+ const displayIcon = computed(() => {
20064
+ var _a;
20065
+ if (isBooleanMode.value) {
20066
+ return isActive.value ? props.trueIcon : props.falseIcon;
20067
+ } else {
20068
+ return (_a = currentOption.value) == null ? void 0 : _a.icon;
20069
+ }
20070
+ });
20071
+ return (_ctx, _cache) => {
20072
+ return openBlock(), createElementBlock("div", _hoisted_1$5, [
20073
+ createElementVNode("h6", _hoisted_2$4, toDisplayString(__props.label), 1),
20074
+ createElementVNode("div", _hoisted_3$2, [
20075
+ createElementVNode("div", {
20076
+ class: normalizeClass(["theme-toggle", {
20077
+ "active": isToggleActive.value,
20078
+ "string-mode": isStringMode.value
20079
+ }]),
20080
+ style: normalizeStyle({
20081
+ background: isToggleActive.value ? props.activeColor : props.inactiveColor
20082
+ }),
20083
+ onClick: handleToggle
20084
+ }, [
20085
+ createElementVNode("div", _hoisted_4, [
20086
+ createElementVNode("div", _hoisted_5, [
20087
+ renderSlot(_ctx.$slots, "icon", {
20088
+ value: __props.modelValue,
20089
+ option: currentOption.value
20090
+ }, () => [
20091
+ displayIcon.value ? (openBlock(), createBlock(resolveDynamicComponent(displayIcon.value), {
20092
+ key: 0,
20093
+ size: "24",
20094
+ "stroke-width": "2"
20095
+ })) : createCommentVNode("", true)
20096
+ ], true)
20097
+ ])
20098
+ ])
20099
+ ], 6)
20100
+ ])
20101
+ ]);
20102
+ };
20103
+ }
20104
+ });
20105
+ const ToggleSwitch = /* @__PURE__ */ _export_sfc$1(_sfc_main$9, [["__scopeId", "data-v-536e1a17"]]);
20001
20106
  const _hoisted_1$4 = {
20002
20107
  class: "app-stepper-root",
20003
20108
  dir: "rtl"
@@ -39427,13 +39532,13 @@ export {
39427
39532
  AppSidebar,
39428
39533
  AppStepper,
39429
39534
  AuthModeInitializer,
39430
- _sfc_main$l as BaseBreadcrumb,
39431
- _sfc_main$k as BaseIcon,
39535
+ _sfc_main$m as BaseBreadcrumb,
39536
+ _sfc_main$l as BaseIcon,
39432
39537
  BooleanEnum,
39433
39538
  BooleanEnumOptions,
39434
- _sfc_main$j as ConfirmDialog,
39539
+ _sfc_main$k as ConfirmDialog,
39435
39540
  CustomAutocomplete,
39436
- _sfc_main$f as CustomDataTable,
39541
+ _sfc_main$g as CustomDataTable,
39437
39542
  DateConverter,
39438
39543
  DescriptionInput,
39439
39544
  DigitLimit,
@@ -39443,13 +39548,14 @@ export {
39443
39548
  JwtInitializer,
39444
39549
  KeycloakInitializer,
39445
39550
  Loading,
39446
- _sfc_main$h as MoneyInput,
39551
+ _sfc_main$i as MoneyInput,
39447
39552
  NationalCodeValidator,
39448
39553
  PdfViewer,
39449
39554
  ShamsiDatePicker,
39450
- _sfc_main$b as UiChildCard,
39451
- _sfc_main$a as UiParentCard,
39452
- _sfc_main$9 as VPriceTextField,
39555
+ ToggleSwitch,
39556
+ _sfc_main$c as UiChildCard,
39557
+ _sfc_main$b as UiParentCard,
39558
+ _sfc_main$a as VPriceTextField,
39453
39559
  bootstrapApp,
39454
39560
  configureAuth,
39455
39561
  configureAxiosInstance,