@iankibetsh/shframework 1.0.6 → 1.0.8

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.
@@ -1,4 +1,36 @@
1
1
 
2
+ .colored-toast.swal2-icon-success {
3
+ background-color: #a5dc86 !important;
4
+ }
5
+
6
+ .colored-toast.swal2-icon-error {
7
+ background-color: #f27474 !important;
8
+ }
9
+
10
+ .colored-toast.swal2-icon-warning {
11
+ background-color: #f8bb86 !important;
12
+ }
13
+
14
+ .colored-toast.swal2-icon-info {
15
+ background-color: #3fc3ee !important;
16
+ }
17
+
18
+ .colored-toast.swal2-icon-question {
19
+ background-color: #87adbd !important;
20
+ }
21
+
22
+ .colored-toast .swal2-title {
23
+ color: white;
24
+ }
25
+
26
+ .colored-toast .swal2-close {
27
+ color: white;
28
+ }
29
+
30
+ .colored-toast .swal2-html-container {
31
+ color: white;
32
+ }
33
+
2
34
  .sh-phone{
3
35
  display: flex;
4
36
  width: 100%;
@@ -31,36 +63,19 @@
31
63
  opacity: 0.5;
32
64
  }
33
65
 
34
- .colored-toast.swal2-icon-success {
35
- background-color: #a5dc86 !important;
36
- }
37
-
38
- .colored-toast.swal2-icon-error {
39
- background-color: #f27474 !important;
40
- }
41
-
42
- .colored-toast.swal2-icon-warning {
43
- background-color: #f8bb86 !important;
44
- }
45
-
46
- .colored-toast.swal2-icon-info {
47
- background-color: #3fc3ee !important;
48
- }
49
-
50
- .colored-toast.swal2-icon-question {
51
- background-color: #87adbd !important;
66
+ .sh-selected-item{
67
+ line-height: unset!important;
52
68
  }
53
-
54
- .colored-toast .swal2-title {
55
- color: white;
69
+ .sh-suggestion-input{
70
+ padding: 0.375rem 0.75rem;
56
71
  }
57
-
58
- .colored-toast .swal2-close {
59
- color: white;
72
+ .sh-suggest{
73
+ margin-bottom: 1rem;
60
74
  }
61
-
62
- .colored-toast .swal2-html-container {
63
- color: white;
75
+ .sh-suggest-control::after{
76
+ margin-top: auto;
77
+ margin-bottom: auto;
78
+ margin-right: 0.255em;
64
79
  }
65
80
 
66
81
  :root {
@@ -84,21 +99,6 @@
84
99
  }
85
100
  }
86
101
 
87
- .sh-selected-item{
88
- line-height: unset!important;
89
- }
90
- .sh-suggestion-input{
91
- padding: 0.375rem 0.75rem;
92
- }
93
- .sh-suggest{
94
- margin-bottom: 1rem;
95
- }
96
- .sh-suggest-control::after{
97
- margin-top: auto;
98
- margin-bottom: auto;
99
- margin-right: 0.255em;
100
- }
101
-
102
102
  .sh-forgot-link, .sh-register-link{
103
103
  cursor: pointer;
104
104
  }
package/dist/library.js CHANGED
@@ -68,8 +68,12 @@ const checkSession = function (isCheking) {
68
68
  let apiUrl = undefined.VITE_APP_API_URL;
69
69
  // eslint-disable-next-line no-undef
70
70
  if (process.env.NODE_ENV === 'production') {
71
- apiUrl = undefined.VITE_APP_API_PRODUCTION_URL;
71
+ const productionUrl = undefined.VITE_APP_API_PRODUCTION_URL;
72
+ if(productionUrl){
73
+ apiUrl = productionUrl;
74
+ }
72
75
  }
76
+
73
77
  const axios = Axios__default["default"].create({
74
78
  baseURL: apiUrl
75
79
  });
@@ -1574,7 +1578,7 @@ const countries = [
1574
1578
  }
1575
1579
  ];
1576
1580
 
1577
- var script$f = {
1581
+ var script$g = {
1578
1582
  name: 'ShPhone',
1579
1583
  props: ['modelValue', 'country_code'],
1580
1584
  data () {
@@ -1636,7 +1640,7 @@ var script$f = {
1636
1640
  }
1637
1641
  };
1638
1642
 
1639
- const _hoisted_1$e = { class: "sh-phone mb-3" };
1643
+ const _hoisted_1$f = { class: "sh-phone mb-3" };
1640
1644
  const _hoisted_2$b = {
1641
1645
  key: 0,
1642
1646
  style: {"display":"contents"}
@@ -1645,7 +1649,7 @@ const _hoisted_3$a = ["src"];
1645
1649
  const _hoisted_4$a = ["value"];
1646
1650
 
1647
1651
  function render$7(_ctx, _cache, $props, $setup, $data, $options) {
1648
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$e, [
1652
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$f, [
1649
1653
  ($data.selectedCountry)
1650
1654
  ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$b, [
1651
1655
  vue.createElementVNode("img", { src: $data.flag }, null, 8 /* PROPS */, _hoisted_3$a),
@@ -1679,10 +1683,10 @@ function render$7(_ctx, _cache, $props, $setup, $data, $options) {
1679
1683
  ]))
1680
1684
  }
1681
1685
 
1682
- script$f.render = render$7;
1683
- script$f.__file = "src/lib/components/ShPhone.vue";
1686
+ script$g.render = render$7;
1687
+ script$g.__file = "src/lib/components/ShPhone.vue";
1684
1688
 
1685
- var script$e = {
1689
+ var script$f = {
1686
1690
  name: 'ShEditor',
1687
1691
  props: ['modelValue'],
1688
1692
  components: {
@@ -1721,7 +1725,7 @@ var script$e = {
1721
1725
  }
1722
1726
  };
1723
1727
 
1724
- const _hoisted_1$d = /*#__PURE__*/vue.createElementVNode("textarea", {
1728
+ const _hoisted_1$e = /*#__PURE__*/vue.createElementVNode("textarea", {
1725
1729
  id: "tiny",
1726
1730
  style: {"display":"none"},
1727
1731
  "data-cy": "tinymce_editor"
@@ -1731,7 +1735,7 @@ function render$6(_ctx, _cache, $props, $setup, $data, $options) {
1731
1735
  const _component_editor = vue.resolveComponent("editor");
1732
1736
 
1733
1737
  return (vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
1734
- _hoisted_1$d,
1738
+ _hoisted_1$e,
1735
1739
  vue.createElementVNode("div", {
1736
1740
  onFocusin: _cache[1] || (_cache[1] = vue.withModifiers(() => {}, ["stop"])),
1737
1741
  class: "sh-editor w-100"
@@ -1756,10 +1760,10 @@ function render$6(_ctx, _cache, $props, $setup, $data, $options) {
1756
1760
  ], 64 /* STABLE_FRAGMENT */))
1757
1761
  }
1758
1762
 
1759
- script$e.render = render$6;
1760
- script$e.__file = "src/lib/components/FormComponent/ShEditor.vue";
1763
+ script$f.render = render$6;
1764
+ script$f.__file = "src/lib/components/FormComponent/ShEditor.vue";
1761
1765
 
1762
- const _hoisted_1$c = {
1766
+ const _hoisted_1$d = {
1763
1767
  key: 0,
1764
1768
  class: "dropdown sh-suggest"
1765
1769
  };
@@ -1780,7 +1784,7 @@ const _hoisted_10$3 = {
1780
1784
  };
1781
1785
 
1782
1786
 
1783
- var script$d = {
1787
+ var script$e = {
1784
1788
  __name: 'ShSuggest',
1785
1789
  props: ['fillSelects','modelValue'],
1786
1790
  emits: ['update:modelValue'],
@@ -1861,7 +1865,7 @@ function filterData(e){
1861
1865
 
1862
1866
  return (_ctx, _cache) => {
1863
1867
  return (vue.unref(id))
1864
- ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$c, [
1868
+ ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$d, [
1865
1869
  vue.createElementVNode("div", {
1866
1870
  id: vue.unref(id),
1867
1871
  "data-bs-toggle": "dropdown",
@@ -1921,15 +1925,15 @@ return (_ctx, _cache) => {
1921
1925
 
1922
1926
  };
1923
1927
 
1924
- script$d.__scopeId = "data-v-5b767123";
1925
- script$d.__file = "src/lib/components/FormComponent/ShSuggest.vue";
1928
+ script$e.__scopeId = "data-v-5b767123";
1929
+ script$e.__file = "src/lib/components/FormComponent/ShSuggest.vue";
1926
1930
 
1927
- var script$c = {
1931
+ var script$d = {
1928
1932
  name: 'ShForm',
1929
1933
  components: {
1930
- ShSuggest: script$d,
1931
- ShEditor: script$e,
1932
- ShPhone: script$f
1934
+ ShSuggest: script$e,
1935
+ ShEditor: script$f,
1936
+ ShPhone: script$g
1933
1937
  },
1934
1938
  props: [
1935
1939
  'action',
@@ -2241,7 +2245,7 @@ var script$c = {
2241
2245
  }
2242
2246
  };
2243
2247
 
2244
- const _hoisted_1$b = /*#__PURE__*/vue.createElementVNode("h5", { class: "d-none" }, null, -1 /* HOISTED */);
2248
+ const _hoisted_1$c = /*#__PURE__*/vue.createElementVNode("h5", { class: "d-none" }, null, -1 /* HOISTED */);
2245
2249
  const _hoisted_2$9 = {
2246
2250
  ref: "ShAutoForm",
2247
2251
  class: "sh-form"
@@ -2303,7 +2307,7 @@ function render$5(_ctx, _cache, $props, $setup, $data, $options) {
2303
2307
  const _component_ShEditor = vue.resolveComponent("ShEditor");
2304
2308
 
2305
2309
  return (vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
2306
- _hoisted_1$b,
2310
+ _hoisted_1$c,
2307
2311
  vue.createElementVNode("form", _hoisted_2$9, [
2308
2312
  vue.createCommentVNode(" <div v-if=\"form_status == 1\" class=\"alert alert-info\">Processing...</div>"),
2309
2313
  vue.createCommentVNode(" <div v-if=\"form_status == 2\" class=\"alert alert-success\">Success</div>"),
@@ -2520,13 +2524,13 @@ function render$5(_ctx, _cache, $props, $setup, $data, $options) {
2520
2524
  ], 64 /* STABLE_FRAGMENT */))
2521
2525
  }
2522
2526
 
2523
- script$c.render = render$5;
2524
- script$c.__file = "src/lib/components/ShForm.vue";
2527
+ script$d.render = render$5;
2528
+ script$d.__file = "src/lib/components/ShForm.vue";
2525
2529
 
2526
- const _hoisted_1$a = /*#__PURE__*/vue.createElementVNode("h5", { class: "d-none" }, "To prevent default class", -1 /* HOISTED */);
2530
+ const _hoisted_1$b = /*#__PURE__*/vue.createElementVNode("h5", { class: "d-none" }, "To prevent default class", -1 /* HOISTED */);
2527
2531
  const _hoisted_2$8 = { class: "dropdown" };
2528
2532
 
2529
- var script$b = {
2533
+ var script$c = {
2530
2534
  __name: 'ShDropDownForm',
2531
2535
  props: ['action',
2532
2536
  'classes',
@@ -2556,7 +2560,7 @@ const dropdownId = 'rand' + (Math.random() + 1).toString(36).substring(2);
2556
2560
 
2557
2561
  return (_ctx, _cache) => {
2558
2562
  return (vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
2559
- _hoisted_1$a,
2563
+ _hoisted_1$b,
2560
2564
  vue.createElementVNode("div", _hoisted_2$8, [
2561
2565
  vue.createElementVNode("a", {
2562
2566
  class: vue.normalizeClass(vue.unref(btnClass)),
@@ -2573,7 +2577,7 @@ return (_ctx, _cache) => {
2573
2577
  class: "dropdown-menu px-2 py-1",
2574
2578
  "aria-labelledby": dropdownId
2575
2579
  }, [
2576
- vue.createVNode(script$c, vue.normalizeProps(vue.guardReactiveProps(props)), null, 16 /* FULL_PROPS */)
2580
+ vue.createVNode(script$d, vue.normalizeProps(vue.guardReactiveProps(props)), null, 16 /* FULL_PROPS */)
2577
2581
  ])
2578
2582
  ])
2579
2583
  ], 64 /* STABLE_FRAGMENT */))
@@ -2582,16 +2586,16 @@ return (_ctx, _cache) => {
2582
2586
 
2583
2587
  };
2584
2588
 
2585
- script$b.__file = "src/lib/components/ShDropDownForm.vue";
2589
+ script$c.__file = "src/lib/components/ShDropDownForm.vue";
2586
2590
 
2587
- var script$a = {
2591
+ var script$b = {
2588
2592
  name: 'ShModal',
2589
2593
  props: ['modalTitle', 'modalId', 'modalSize'],
2590
2594
  components: {
2591
2595
  }
2592
2596
  };
2593
2597
 
2594
- const _hoisted_1$9 = ["id"];
2598
+ const _hoisted_1$a = ["id"];
2595
2599
  const _hoisted_2$7 = { class: "modal-content" };
2596
2600
  const _hoisted_3$7 = { class: "modal-header" };
2597
2601
  const _hoisted_4$7 = { class: "modal-title" };
@@ -2624,15 +2628,15 @@ function render$4(_ctx, _cache, $props, $setup, $data, $options) {
2624
2628
  ])
2625
2629
  ])
2626
2630
  ], 2 /* CLASS */)
2627
- ], 8 /* PROPS */, _hoisted_1$9))
2631
+ ], 8 /* PROPS */, _hoisted_1$a))
2628
2632
  }
2629
2633
 
2630
- script$a.render = render$4;
2631
- script$a.__file = "src/lib/components/ShModal.vue";
2634
+ script$b.render = render$4;
2635
+ script$b.__file = "src/lib/components/ShModal.vue";
2632
2636
 
2633
- const _hoisted_1$8 = ["href"];
2637
+ const _hoisted_1$9 = ["href"];
2634
2638
 
2635
- var script$9 = {
2639
+ var script$a = {
2636
2640
  __name: 'ShModalForm',
2637
2641
  props: ['action',
2638
2642
  'classes',
@@ -2668,13 +2672,13 @@ return (_ctx, _cache) => {
2668
2672
  "data-bs-toggle": "modal"
2669
2673
  }, [
2670
2674
  vue.renderSlot(_ctx.$slots, "default")
2671
- ], 10 /* CLASS, PROPS */, _hoisted_1$8),
2672
- vue.createVNode(script$a, {
2675
+ ], 10 /* CLASS, PROPS */, _hoisted_1$9),
2676
+ vue.createVNode(script$b, {
2673
2677
  "modal-id": modalId,
2674
2678
  "modal-title": __props.modalTitle
2675
2679
  }, {
2676
2680
  default: vue.withCtx(() => [
2677
- vue.createVNode(script$c, vue.normalizeProps(vue.guardReactiveProps(props)), null, 16 /* FULL_PROPS */)
2681
+ vue.createVNode(script$d, vue.normalizeProps(vue.guardReactiveProps(props)), null, 16 /* FULL_PROPS */)
2678
2682
  ]),
2679
2683
  _: 1 /* STABLE */
2680
2684
  }, 8 /* PROPS */, ["modal-title"])
@@ -2684,9 +2688,9 @@ return (_ctx, _cache) => {
2684
2688
 
2685
2689
  };
2686
2690
 
2687
- script$9.__file = "src/lib/components/ShModalForm.vue";
2691
+ script$a.__file = "src/lib/components/ShModalForm.vue";
2688
2692
 
2689
- var script$8 = {
2693
+ var script$9 = {
2690
2694
  name: 'ShCanvas',
2691
2695
  props: ['canvasTitle', 'canvasId', 'position','canvasSize'],
2692
2696
  components: {
@@ -2703,7 +2707,7 @@ var script$8 = {
2703
2707
  }
2704
2708
  };
2705
2709
 
2706
- const _hoisted_1$7 = ["id"];
2710
+ const _hoisted_1$8 = ["id"];
2707
2711
  const _hoisted_2$6 = { class: "offcanvas-header" };
2708
2712
  const _hoisted_3$6 = {
2709
2713
  class: "offcanvas-title",
@@ -2733,13 +2737,13 @@ function render$3(_ctx, _cache, $props, $setup, $data, $options) {
2733
2737
  vue.createElementVNode("div", _hoisted_4$6, [
2734
2738
  vue.renderSlot(_ctx.$slots, "default")
2735
2739
  ])
2736
- ], 10 /* CLASS, PROPS */, _hoisted_1$7))
2740
+ ], 10 /* CLASS, PROPS */, _hoisted_1$8))
2737
2741
  }
2738
2742
 
2739
- script$8.render = render$3;
2740
- script$8.__file = "src/lib/components/ShCanvas.vue";
2743
+ script$9.render = render$3;
2744
+ script$9.__file = "src/lib/components/ShCanvas.vue";
2741
2745
 
2742
- var script$7 = {
2746
+ var script$8 = {
2743
2747
  name: 'Pagination',
2744
2748
  props: ['pagination_data', 'loadMore', 'hideCount', 'hideLoadMore'],
2745
2749
  data () {
@@ -2810,7 +2814,7 @@ var script$7 = {
2810
2814
  }
2811
2815
  };
2812
2816
 
2813
- const _hoisted_1$6 = { key: 0 };
2817
+ const _hoisted_1$7 = { key: 0 };
2814
2818
  const _hoisted_2$5 = { class: "record_count_body mb-3" };
2815
2819
  const _hoisted_3$5 = /*#__PURE__*/vue.createElementVNode("span", { class: "per_page_show" }, "Showing", -1 /* HOISTED */);
2816
2820
  const _hoisted_4$5 = /*#__PURE__*/vue.createStaticVNode("<option value=\"10\">10</option><option value=\"25\">25</option><option value=\"50\">50</option><option value=\"100\">100</option><option value=\"200\">200</option>", 5);
@@ -2856,7 +2860,7 @@ const _hoisted_22$1 = {
2856
2860
 
2857
2861
  function render$2(_ctx, _cache, $props, $setup, $data, $options) {
2858
2862
  return (!$props.loadMore)
2859
- ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$6, [
2863
+ ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$7, [
2860
2864
  vue.createElementVNode("div", _hoisted_2$5, [
2861
2865
  _hoisted_3$5,
2862
2866
  vue.createTextVNode("  "),
@@ -2928,8 +2932,8 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
2928
2932
  ]))
2929
2933
  }
2930
2934
 
2931
- script$7.render = render$2;
2932
- script$7.__file = "src/lib/components/list_templates/Pagination.vue";
2935
+ script$8.render = render$2;
2936
+ script$8.__file = "src/lib/components/list_templates/Pagination.vue";
2933
2937
 
2934
2938
  function swalSuccess (message) {
2935
2939
  Swal__default["default"].fire('Success!', message, 'success');
@@ -3105,7 +3109,7 @@ var shRepo = {
3105
3109
  formatDate
3106
3110
  };
3107
3111
 
3108
- var script$6 = {
3112
+ var script$7 = {
3109
3113
  name: 'sh-table',
3110
3114
  props: ['endPoint', 'headers', 'pageCount', 'actions', 'hideCount', 'hideLoadMore', 'links', 'reload', 'hideSearch', 'sharedData', 'searchPlaceholder', 'event', 'displayMore', 'displayMoreBtnClass', 'moreDetailsColumns', 'moreDetailsFields', 'hasDownload', 'downloadFields', 'tableHover'],
3111
3115
  inject: ['channel'],
@@ -3319,8 +3323,8 @@ var script$6 = {
3319
3323
  this.reloadData();
3320
3324
  },
3321
3325
  components: {
3322
- ShCanvas: script$8,
3323
- pagination: script$7
3326
+ ShCanvas: script$9,
3327
+ pagination: script$8
3324
3328
  },
3325
3329
  computed: {
3326
3330
  windowWidth: function () {
@@ -3338,7 +3342,7 @@ var script$6 = {
3338
3342
  }
3339
3343
  };
3340
3344
 
3341
- const _hoisted_1$5 = { class: "auto-table mt-2" };
3345
+ const _hoisted_1$6 = { class: "auto-table mt-2" };
3342
3346
  const _hoisted_2$4 = {
3343
3347
  key: 0,
3344
3348
  class: "col-md-4 mb-2"
@@ -3498,7 +3502,7 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
3498
3502
  const _component_pagination = vue.resolveComponent("pagination");
3499
3503
  const _component_sh_canvas = vue.resolveComponent("sh-canvas");
3500
3504
 
3501
- return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$5, [
3505
+ return (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$6, [
3502
3506
  ($props.hasDownload)
3503
3507
  ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$4, [
3504
3508
  vue.createElementVNode("button", {
@@ -3908,10 +3912,10 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
3908
3912
  ]))
3909
3913
  }
3910
3914
 
3911
- script$6.render = render$1;
3912
- script$6.__file = "src/lib/components/ShTable.vue";
3915
+ script$7.render = render$1;
3916
+ script$7.__file = "src/lib/components/ShTable.vue";
3913
3917
 
3914
- var script$5 = {
3918
+ var script$6 = {
3915
3919
  name: 'ShTabs',
3916
3920
  props: ['tabs', 'baseUrl', 'sharedData', 'tabCounts', 'responsive','classOne','classTwo','classes'],
3917
3921
  data () {
@@ -4032,10 +4036,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
4032
4036
  ], 64 /* STABLE_FRAGMENT */))
4033
4037
  }
4034
4038
 
4035
- script$5.render = render;
4036
- script$5.__file = "src/lib/components/ShTabs.vue";
4039
+ script$6.render = render;
4040
+ script$6.__file = "src/lib/components/ShTabs.vue";
4037
4041
 
4038
- const _hoisted_1$4 = {
4042
+ const _hoisted_1$5 = {
4039
4043
  class: "nav nav-tabs",
4040
4044
  role: "tablist"
4041
4045
  };
@@ -4046,7 +4050,7 @@ const _hoisted_2$3 = {
4046
4050
  const _hoisted_3$3 = ["onClick"];
4047
4051
  const _hoisted_4$3 = { class: "tab-content" };
4048
4052
 
4049
- var script$4 = {
4053
+ var script$5 = {
4050
4054
  __name: 'ShDynamicTabs',
4051
4055
  props: ['tabs','data'],
4052
4056
  setup(__props) {
@@ -4071,7 +4075,7 @@ function setTab(tab){
4071
4075
 
4072
4076
  return (_ctx, _cache) => {
4073
4077
  return (vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
4074
- vue.createElementVNode("ul", _hoisted_1$4, [
4078
+ vue.createElementVNode("ul", _hoisted_1$5, [
4075
4079
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(tabs), (tab) => {
4076
4080
  return (vue.openBlock(), vue.createElementBlock("li", _hoisted_2$3, [
4077
4081
  vue.createElementVNode("button", {
@@ -4092,15 +4096,15 @@ return (_ctx, _cache) => {
4092
4096
 
4093
4097
  };
4094
4098
 
4095
- script$4.__file = "src/lib/components/ShDynamicTabs.vue";
4099
+ script$5.__file = "src/lib/components/ShDynamicTabs.vue";
4096
4100
 
4097
- const _hoisted_1$3 = /*#__PURE__*/vue.createElementVNode("span", {
4101
+ const _hoisted_1$4 = /*#__PURE__*/vue.createElementVNode("span", {
4098
4102
  class: "spinner-border spinner-border-sm me-1",
4099
4103
  role: "status",
4100
4104
  "aria-hidden": "true"
4101
4105
  }, null, -1 /* HOISTED */);
4102
4106
 
4103
- var script$3 = {
4107
+ var script$4 = {
4104
4108
  __name: 'ShSilentAction',
4105
4109
  props: {
4106
4110
  data: Object,
@@ -4148,6 +4152,81 @@ function runAction(){
4148
4152
  }
4149
4153
  }
4150
4154
 
4155
+ return (_ctx, _cache) => {
4156
+ return (vue.openBlock(), vue.createElementBlock("a", {
4157
+ class: vue.normalizeClass(processing.value ? 'disabled':''),
4158
+ onClick: runAction
4159
+ }, [
4160
+ (processing.value)
4161
+ ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
4162
+ _hoisted_1$4,
4163
+ vue.createElementVNode("span", null, vue.toDisplayString(__props.loadingMessage), 1 /* TEXT */)
4164
+ ], 64 /* STABLE_FRAGMENT */))
4165
+ : vue.createCommentVNode("v-if", true),
4166
+ (!processing.value)
4167
+ ? vue.renderSlot(_ctx.$slots, "default", { key: 1 })
4168
+ : vue.createCommentVNode("v-if", true)
4169
+ ], 2 /* CLASS */))
4170
+ }
4171
+ }
4172
+
4173
+ };
4174
+
4175
+ script$4.__file = "src/lib/components/ShSilentAction.vue";
4176
+
4177
+ const _hoisted_1$3 = /*#__PURE__*/vue.createElementVNode("span", {
4178
+ class: "spinner-border spinner-border-sm me-1",
4179
+ role: "status",
4180
+ "aria-hidden": "true"
4181
+ }, null, -1 /* HOISTED */);
4182
+
4183
+
4184
+ var script$3 = {
4185
+ __name: 'ShConfirmAction',
4186
+ props: {
4187
+ data: Object,
4188
+ title: String,
4189
+ message: String,
4190
+ url: {
4191
+ type: String,
4192
+ required: true
4193
+ },
4194
+ loadingMessage: {
4195
+ type: String,
4196
+ default: 'Processing'
4197
+ }
4198
+ },
4199
+ emits: ['actionSuccessful', 'actionFailed','actionCanceled'],
4200
+ setup(__props, { emit }) {
4201
+
4202
+ const props = __props;
4203
+
4204
+
4205
+ const processing = vue.ref(false);
4206
+
4207
+
4208
+ function runAction () {
4209
+ processing.value = true;
4210
+ shRepo.runPlainRequest(props.url, props.message, props.title, props.data).then(res => {
4211
+ if(res.isConfirmed){
4212
+ const value = res.value;
4213
+ if(value.status){
4214
+ emit('actionSuccessful', res);
4215
+ processing.value = false;
4216
+ } else {
4217
+ emit('actionFailed', value);
4218
+ processing.value = false;
4219
+ }
4220
+ } else {
4221
+ emit('actionCanceled');
4222
+ processing.value = false;
4223
+ }
4224
+ }).catch(ex => {
4225
+ emit('actionFailed', ex);
4226
+ processing.value = false;
4227
+ });
4228
+ }
4229
+
4151
4230
  return (_ctx, _cache) => {
4152
4231
  return (vue.openBlock(), vue.createElementBlock("a", {
4153
4232
  class: vue.normalizeClass(processing.value ? 'disabled':''),
@@ -4168,7 +4247,7 @@ return (_ctx, _cache) => {
4168
4247
 
4169
4248
  };
4170
4249
 
4171
- script$3.__file = "src/lib/components/ShSilentAction.vue";
4250
+ script$3.__file = "src/lib/components/ShConfirmAction.vue";
4172
4251
 
4173
4252
  const useUserStore = pinia.defineStore('user-store', {
4174
4253
  state: () => ({
@@ -4296,7 +4375,7 @@ return (_ctx, _cache) => {
4296
4375
  _hoisted_5$2,
4297
4376
  vue.createTextVNode(" ADD DEPARTMENT")
4298
4377
  ], 512 /* NEED_PATCH */),
4299
- vue.createVNode(script$6, {
4378
+ vue.createVNode(script$7, {
4300
4379
  headers: ['id','name','description', 'created_at'],
4301
4380
  "end-point": "admin/departments/list",
4302
4381
  actions: {
@@ -4310,12 +4389,12 @@ return (_ctx, _cache) => {
4310
4389
  ]
4311
4390
  }
4312
4391
  }),
4313
- vue.createVNode(script$a, {
4392
+ vue.createVNode(script$b, {
4314
4393
  "modal-id": "sh-department_modal",
4315
4394
  "modal-title": "Department Form"
4316
4395
  }, {
4317
4396
  default: vue.withCtx(() => [
4318
- vue.createVNode(script$c, {
4397
+ vue.createVNode(script$d, {
4319
4398
  "success-callback": "departmentAdded",
4320
4399
  onDepartmentAdded: departmentAdded,
4321
4400
  action: "admin/departments/store",
@@ -4447,7 +4526,7 @@ return (_ctx, _cache) => {
4447
4526
  vue.createElementVNode("div", _hoisted_2$1, [
4448
4527
  _hoisted_3$1,
4449
4528
  vue.createElementVNode("h5", null, "Department #" + vue.toDisplayString(vue.unref(department).id) + " - " + vue.toDisplayString(vue.unref(department).name) + " Allowed Modules", 1 /* TEXT */),
4450
- vue.createVNode(script$6, {
4529
+ vue.createVNode(script$7, {
4451
4530
  actions: {
4452
4531
  label: 'Actions',
4453
4532
  actions: [
@@ -4467,12 +4546,12 @@ return (_ctx, _cache) => {
4467
4546
  headers: ['id',showModule,'created_at'],
4468
4547
  "end-point": 'admin/departments/department/list-modules/' + id.value
4469
4548
  }, null, 8 /* PROPS */, ["actions", "reload", "headers", "end-point"]),
4470
- vue.createVNode(script$a, {
4549
+ vue.createVNode(script$b, {
4471
4550
  "modal-id": "addModule",
4472
4551
  "modal-title": "Add Module Department"
4473
4552
  }, {
4474
4553
  default: vue.withCtx(() => [
4475
- vue.createVNode(script$c, {
4554
+ vue.createVNode(script$d, {
4476
4555
  "reload-select-items": vue.unref(reload),
4477
4556
  "success-callback": moduleAdded,
4478
4557
  "fill-selects": {
@@ -4494,7 +4573,7 @@ return (_ctx, _cache) => {
4494
4573
  ref: permissionCanvasBtn,
4495
4574
  "data-bs-toggle": "offcanvas"
4496
4575
  }, null, 512 /* NEED_PATCH */),
4497
- vue.createVNode(script$8, {
4576
+ vue.createVNode(script$9, {
4498
4577
  "canvas-id": "permissionsCanvas",
4499
4578
  position: "end enlarged",
4500
4579
  "canvas-title": "Module Permissions"
@@ -4609,7 +4688,7 @@ return (_ctx, _cache) => {
4609
4688
  : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
4610
4689
  (section.value === 'login')
4611
4690
  ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2, [
4612
- vue.createVNode(script$c, {
4691
+ vue.createVNode(script$d, {
4613
4692
  class: "sh-login-form",
4614
4693
  fields: ['email','password'],
4615
4694
  "action-label": "Login",
@@ -4634,7 +4713,7 @@ return (_ctx, _cache) => {
4634
4713
  (vue.unref(registerSubTitle))
4635
4714
  ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_8, vue.toDisplayString(vue.unref(registerSubTitle)), 1 /* TEXT */))
4636
4715
  : vue.createCommentVNode("v-if", true),
4637
- vue.createVNode(script$c, {
4716
+ vue.createVNode(script$d, {
4638
4717
  class: "sh-login-form",
4639
4718
  fields: vue.unref(registrationFields),
4640
4719
  "action-label": "Sign Up",
@@ -4698,17 +4777,18 @@ const ShFrontend = {
4698
4777
  }
4699
4778
  };
4700
4779
 
4701
- exports.ShCanvas = script$8;
4702
- exports.ShDropDownForm = script$b;
4703
- exports.ShDynamicTabs = script$4;
4704
- exports.ShForm = script$c;
4780
+ exports.ShCanvas = script$9;
4781
+ exports.ShConfirmAction = script$3;
4782
+ exports.ShDropDownForm = script$c;
4783
+ exports.ShDynamicTabs = script$5;
4784
+ exports.ShForm = script$d;
4705
4785
  exports.ShFrontend = ShFrontend;
4706
- exports.ShModal = script$a;
4707
- exports.ShModalForm = script$9;
4708
- exports.ShPhone = script$f;
4709
- exports.ShSilentAction = script$3;
4710
- exports.ShTable = script$6;
4711
- exports.ShTabs = script$5;
4786
+ exports.ShModal = script$b;
4787
+ exports.ShModalForm = script$a;
4788
+ exports.ShPhone = script$g;
4789
+ exports.ShSilentAction = script$4;
4790
+ exports.ShTable = script$7;
4791
+ exports.ShTabs = script$6;
4712
4792
  exports.shApis = shApis;
4713
4793
  exports.shRepo = shRepo;
4714
4794
  exports.shStorage = ShStorage;
package/dist/library.mjs CHANGED
@@ -56,8 +56,12 @@ const checkSession = function (isCheking) {
56
56
  let apiUrl = import.meta.env.VITE_APP_API_URL;
57
57
  // eslint-disable-next-line no-undef
58
58
  if (process.env.NODE_ENV === 'production') {
59
- apiUrl = import.meta.env.VITE_APP_API_PRODUCTION_URL;
59
+ const productionUrl = import.meta.env.VITE_APP_API_PRODUCTION_URL;
60
+ if(productionUrl){
61
+ apiUrl = productionUrl;
62
+ }
60
63
  }
64
+
61
65
  const axios = Axios.create({
62
66
  baseURL: apiUrl
63
67
  });
@@ -1562,7 +1566,7 @@ const countries = [
1562
1566
  }
1563
1567
  ];
1564
1568
 
1565
- var script$f = {
1569
+ var script$g = {
1566
1570
  name: 'ShPhone',
1567
1571
  props: ['modelValue', 'country_code'],
1568
1572
  data () {
@@ -1624,7 +1628,7 @@ var script$f = {
1624
1628
  }
1625
1629
  };
1626
1630
 
1627
- const _hoisted_1$e = { class: "sh-phone mb-3" };
1631
+ const _hoisted_1$f = { class: "sh-phone mb-3" };
1628
1632
  const _hoisted_2$b = {
1629
1633
  key: 0,
1630
1634
  style: {"display":"contents"}
@@ -1633,7 +1637,7 @@ const _hoisted_3$a = ["src"];
1633
1637
  const _hoisted_4$a = ["value"];
1634
1638
 
1635
1639
  function render$7(_ctx, _cache, $props, $setup, $data, $options) {
1636
- return (openBlock(), createElementBlock("div", _hoisted_1$e, [
1640
+ return (openBlock(), createElementBlock("div", _hoisted_1$f, [
1637
1641
  ($data.selectedCountry)
1638
1642
  ? (openBlock(), createElementBlock("div", _hoisted_2$b, [
1639
1643
  createElementVNode("img", { src: $data.flag }, null, 8 /* PROPS */, _hoisted_3$a),
@@ -1667,10 +1671,10 @@ function render$7(_ctx, _cache, $props, $setup, $data, $options) {
1667
1671
  ]))
1668
1672
  }
1669
1673
 
1670
- script$f.render = render$7;
1671
- script$f.__file = "src/lib/components/ShPhone.vue";
1674
+ script$g.render = render$7;
1675
+ script$g.__file = "src/lib/components/ShPhone.vue";
1672
1676
 
1673
- var script$e = {
1677
+ var script$f = {
1674
1678
  name: 'ShEditor',
1675
1679
  props: ['modelValue'],
1676
1680
  components: {
@@ -1709,7 +1713,7 @@ var script$e = {
1709
1713
  }
1710
1714
  };
1711
1715
 
1712
- const _hoisted_1$d = /*#__PURE__*/createElementVNode("textarea", {
1716
+ const _hoisted_1$e = /*#__PURE__*/createElementVNode("textarea", {
1713
1717
  id: "tiny",
1714
1718
  style: {"display":"none"},
1715
1719
  "data-cy": "tinymce_editor"
@@ -1719,7 +1723,7 @@ function render$6(_ctx, _cache, $props, $setup, $data, $options) {
1719
1723
  const _component_editor = resolveComponent("editor");
1720
1724
 
1721
1725
  return (openBlock(), createElementBlock(Fragment, null, [
1722
- _hoisted_1$d,
1726
+ _hoisted_1$e,
1723
1727
  createElementVNode("div", {
1724
1728
  onFocusin: _cache[1] || (_cache[1] = withModifiers(() => {}, ["stop"])),
1725
1729
  class: "sh-editor w-100"
@@ -1744,10 +1748,10 @@ function render$6(_ctx, _cache, $props, $setup, $data, $options) {
1744
1748
  ], 64 /* STABLE_FRAGMENT */))
1745
1749
  }
1746
1750
 
1747
- script$e.render = render$6;
1748
- script$e.__file = "src/lib/components/FormComponent/ShEditor.vue";
1751
+ script$f.render = render$6;
1752
+ script$f.__file = "src/lib/components/FormComponent/ShEditor.vue";
1749
1753
 
1750
- const _hoisted_1$c = {
1754
+ const _hoisted_1$d = {
1751
1755
  key: 0,
1752
1756
  class: "dropdown sh-suggest"
1753
1757
  };
@@ -1768,7 +1772,7 @@ const _hoisted_10$3 = {
1768
1772
  };
1769
1773
 
1770
1774
 
1771
- var script$d = {
1775
+ var script$e = {
1772
1776
  __name: 'ShSuggest',
1773
1777
  props: ['fillSelects','modelValue'],
1774
1778
  emits: ['update:modelValue'],
@@ -1849,7 +1853,7 @@ function filterData(e){
1849
1853
 
1850
1854
  return (_ctx, _cache) => {
1851
1855
  return (unref(id))
1852
- ? (openBlock(), createElementBlock("div", _hoisted_1$c, [
1856
+ ? (openBlock(), createElementBlock("div", _hoisted_1$d, [
1853
1857
  createElementVNode("div", {
1854
1858
  id: unref(id),
1855
1859
  "data-bs-toggle": "dropdown",
@@ -1909,15 +1913,15 @@ return (_ctx, _cache) => {
1909
1913
 
1910
1914
  };
1911
1915
 
1912
- script$d.__scopeId = "data-v-5b767123";
1913
- script$d.__file = "src/lib/components/FormComponent/ShSuggest.vue";
1916
+ script$e.__scopeId = "data-v-5b767123";
1917
+ script$e.__file = "src/lib/components/FormComponent/ShSuggest.vue";
1914
1918
 
1915
- var script$c = {
1919
+ var script$d = {
1916
1920
  name: 'ShForm',
1917
1921
  components: {
1918
- ShSuggest: script$d,
1919
- ShEditor: script$e,
1920
- ShPhone: script$f
1922
+ ShSuggest: script$e,
1923
+ ShEditor: script$f,
1924
+ ShPhone: script$g
1921
1925
  },
1922
1926
  props: [
1923
1927
  'action',
@@ -2229,7 +2233,7 @@ var script$c = {
2229
2233
  }
2230
2234
  };
2231
2235
 
2232
- const _hoisted_1$b = /*#__PURE__*/createElementVNode("h5", { class: "d-none" }, null, -1 /* HOISTED */);
2236
+ const _hoisted_1$c = /*#__PURE__*/createElementVNode("h5", { class: "d-none" }, null, -1 /* HOISTED */);
2233
2237
  const _hoisted_2$9 = {
2234
2238
  ref: "ShAutoForm",
2235
2239
  class: "sh-form"
@@ -2291,7 +2295,7 @@ function render$5(_ctx, _cache, $props, $setup, $data, $options) {
2291
2295
  const _component_ShEditor = resolveComponent("ShEditor");
2292
2296
 
2293
2297
  return (openBlock(), createElementBlock(Fragment, null, [
2294
- _hoisted_1$b,
2298
+ _hoisted_1$c,
2295
2299
  createElementVNode("form", _hoisted_2$9, [
2296
2300
  createCommentVNode(" <div v-if=\"form_status == 1\" class=\"alert alert-info\">Processing...</div>"),
2297
2301
  createCommentVNode(" <div v-if=\"form_status == 2\" class=\"alert alert-success\">Success</div>"),
@@ -2508,13 +2512,13 @@ function render$5(_ctx, _cache, $props, $setup, $data, $options) {
2508
2512
  ], 64 /* STABLE_FRAGMENT */))
2509
2513
  }
2510
2514
 
2511
- script$c.render = render$5;
2512
- script$c.__file = "src/lib/components/ShForm.vue";
2515
+ script$d.render = render$5;
2516
+ script$d.__file = "src/lib/components/ShForm.vue";
2513
2517
 
2514
- const _hoisted_1$a = /*#__PURE__*/createElementVNode("h5", { class: "d-none" }, "To prevent default class", -1 /* HOISTED */);
2518
+ const _hoisted_1$b = /*#__PURE__*/createElementVNode("h5", { class: "d-none" }, "To prevent default class", -1 /* HOISTED */);
2515
2519
  const _hoisted_2$8 = { class: "dropdown" };
2516
2520
 
2517
- var script$b = {
2521
+ var script$c = {
2518
2522
  __name: 'ShDropDownForm',
2519
2523
  props: ['action',
2520
2524
  'classes',
@@ -2544,7 +2548,7 @@ const dropdownId = 'rand' + (Math.random() + 1).toString(36).substring(2);
2544
2548
 
2545
2549
  return (_ctx, _cache) => {
2546
2550
  return (openBlock(), createElementBlock(Fragment, null, [
2547
- _hoisted_1$a,
2551
+ _hoisted_1$b,
2548
2552
  createElementVNode("div", _hoisted_2$8, [
2549
2553
  createElementVNode("a", {
2550
2554
  class: normalizeClass(unref(btnClass)),
@@ -2561,7 +2565,7 @@ return (_ctx, _cache) => {
2561
2565
  class: "dropdown-menu px-2 py-1",
2562
2566
  "aria-labelledby": dropdownId
2563
2567
  }, [
2564
- createVNode(script$c, normalizeProps(guardReactiveProps(props)), null, 16 /* FULL_PROPS */)
2568
+ createVNode(script$d, normalizeProps(guardReactiveProps(props)), null, 16 /* FULL_PROPS */)
2565
2569
  ])
2566
2570
  ])
2567
2571
  ], 64 /* STABLE_FRAGMENT */))
@@ -2570,16 +2574,16 @@ return (_ctx, _cache) => {
2570
2574
 
2571
2575
  };
2572
2576
 
2573
- script$b.__file = "src/lib/components/ShDropDownForm.vue";
2577
+ script$c.__file = "src/lib/components/ShDropDownForm.vue";
2574
2578
 
2575
- var script$a = {
2579
+ var script$b = {
2576
2580
  name: 'ShModal',
2577
2581
  props: ['modalTitle', 'modalId', 'modalSize'],
2578
2582
  components: {
2579
2583
  }
2580
2584
  };
2581
2585
 
2582
- const _hoisted_1$9 = ["id"];
2586
+ const _hoisted_1$a = ["id"];
2583
2587
  const _hoisted_2$7 = { class: "modal-content" };
2584
2588
  const _hoisted_3$7 = { class: "modal-header" };
2585
2589
  const _hoisted_4$7 = { class: "modal-title" };
@@ -2612,15 +2616,15 @@ function render$4(_ctx, _cache, $props, $setup, $data, $options) {
2612
2616
  ])
2613
2617
  ])
2614
2618
  ], 2 /* CLASS */)
2615
- ], 8 /* PROPS */, _hoisted_1$9))
2619
+ ], 8 /* PROPS */, _hoisted_1$a))
2616
2620
  }
2617
2621
 
2618
- script$a.render = render$4;
2619
- script$a.__file = "src/lib/components/ShModal.vue";
2622
+ script$b.render = render$4;
2623
+ script$b.__file = "src/lib/components/ShModal.vue";
2620
2624
 
2621
- const _hoisted_1$8 = ["href"];
2625
+ const _hoisted_1$9 = ["href"];
2622
2626
 
2623
- var script$9 = {
2627
+ var script$a = {
2624
2628
  __name: 'ShModalForm',
2625
2629
  props: ['action',
2626
2630
  'classes',
@@ -2656,13 +2660,13 @@ return (_ctx, _cache) => {
2656
2660
  "data-bs-toggle": "modal"
2657
2661
  }, [
2658
2662
  renderSlot(_ctx.$slots, "default")
2659
- ], 10 /* CLASS, PROPS */, _hoisted_1$8),
2660
- createVNode(script$a, {
2663
+ ], 10 /* CLASS, PROPS */, _hoisted_1$9),
2664
+ createVNode(script$b, {
2661
2665
  "modal-id": modalId,
2662
2666
  "modal-title": __props.modalTitle
2663
2667
  }, {
2664
2668
  default: withCtx(() => [
2665
- createVNode(script$c, normalizeProps(guardReactiveProps(props)), null, 16 /* FULL_PROPS */)
2669
+ createVNode(script$d, normalizeProps(guardReactiveProps(props)), null, 16 /* FULL_PROPS */)
2666
2670
  ]),
2667
2671
  _: 1 /* STABLE */
2668
2672
  }, 8 /* PROPS */, ["modal-title"])
@@ -2672,9 +2676,9 @@ return (_ctx, _cache) => {
2672
2676
 
2673
2677
  };
2674
2678
 
2675
- script$9.__file = "src/lib/components/ShModalForm.vue";
2679
+ script$a.__file = "src/lib/components/ShModalForm.vue";
2676
2680
 
2677
- var script$8 = {
2681
+ var script$9 = {
2678
2682
  name: 'ShCanvas',
2679
2683
  props: ['canvasTitle', 'canvasId', 'position','canvasSize'],
2680
2684
  components: {
@@ -2691,7 +2695,7 @@ var script$8 = {
2691
2695
  }
2692
2696
  };
2693
2697
 
2694
- const _hoisted_1$7 = ["id"];
2698
+ const _hoisted_1$8 = ["id"];
2695
2699
  const _hoisted_2$6 = { class: "offcanvas-header" };
2696
2700
  const _hoisted_3$6 = {
2697
2701
  class: "offcanvas-title",
@@ -2721,13 +2725,13 @@ function render$3(_ctx, _cache, $props, $setup, $data, $options) {
2721
2725
  createElementVNode("div", _hoisted_4$6, [
2722
2726
  renderSlot(_ctx.$slots, "default")
2723
2727
  ])
2724
- ], 10 /* CLASS, PROPS */, _hoisted_1$7))
2728
+ ], 10 /* CLASS, PROPS */, _hoisted_1$8))
2725
2729
  }
2726
2730
 
2727
- script$8.render = render$3;
2728
- script$8.__file = "src/lib/components/ShCanvas.vue";
2731
+ script$9.render = render$3;
2732
+ script$9.__file = "src/lib/components/ShCanvas.vue";
2729
2733
 
2730
- var script$7 = {
2734
+ var script$8 = {
2731
2735
  name: 'Pagination',
2732
2736
  props: ['pagination_data', 'loadMore', 'hideCount', 'hideLoadMore'],
2733
2737
  data () {
@@ -2798,7 +2802,7 @@ var script$7 = {
2798
2802
  }
2799
2803
  };
2800
2804
 
2801
- const _hoisted_1$6 = { key: 0 };
2805
+ const _hoisted_1$7 = { key: 0 };
2802
2806
  const _hoisted_2$5 = { class: "record_count_body mb-3" };
2803
2807
  const _hoisted_3$5 = /*#__PURE__*/createElementVNode("span", { class: "per_page_show" }, "Showing", -1 /* HOISTED */);
2804
2808
  const _hoisted_4$5 = /*#__PURE__*/createStaticVNode("<option value=\"10\">10</option><option value=\"25\">25</option><option value=\"50\">50</option><option value=\"100\">100</option><option value=\"200\">200</option>", 5);
@@ -2844,7 +2848,7 @@ const _hoisted_22$1 = {
2844
2848
 
2845
2849
  function render$2(_ctx, _cache, $props, $setup, $data, $options) {
2846
2850
  return (!$props.loadMore)
2847
- ? (openBlock(), createElementBlock("div", _hoisted_1$6, [
2851
+ ? (openBlock(), createElementBlock("div", _hoisted_1$7, [
2848
2852
  createElementVNode("div", _hoisted_2$5, [
2849
2853
  _hoisted_3$5,
2850
2854
  createTextVNode("  "),
@@ -2916,8 +2920,8 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
2916
2920
  ]))
2917
2921
  }
2918
2922
 
2919
- script$7.render = render$2;
2920
- script$7.__file = "src/lib/components/list_templates/Pagination.vue";
2923
+ script$8.render = render$2;
2924
+ script$8.__file = "src/lib/components/list_templates/Pagination.vue";
2921
2925
 
2922
2926
  function swalSuccess (message) {
2923
2927
  Swal.fire('Success!', message, 'success');
@@ -3093,7 +3097,7 @@ var shRepo = {
3093
3097
  formatDate
3094
3098
  };
3095
3099
 
3096
- var script$6 = {
3100
+ var script$7 = {
3097
3101
  name: 'sh-table',
3098
3102
  props: ['endPoint', 'headers', 'pageCount', 'actions', 'hideCount', 'hideLoadMore', 'links', 'reload', 'hideSearch', 'sharedData', 'searchPlaceholder', 'event', 'displayMore', 'displayMoreBtnClass', 'moreDetailsColumns', 'moreDetailsFields', 'hasDownload', 'downloadFields', 'tableHover'],
3099
3103
  inject: ['channel'],
@@ -3307,8 +3311,8 @@ var script$6 = {
3307
3311
  this.reloadData();
3308
3312
  },
3309
3313
  components: {
3310
- ShCanvas: script$8,
3311
- pagination: script$7
3314
+ ShCanvas: script$9,
3315
+ pagination: script$8
3312
3316
  },
3313
3317
  computed: {
3314
3318
  windowWidth: function () {
@@ -3326,7 +3330,7 @@ var script$6 = {
3326
3330
  }
3327
3331
  };
3328
3332
 
3329
- const _hoisted_1$5 = { class: "auto-table mt-2" };
3333
+ const _hoisted_1$6 = { class: "auto-table mt-2" };
3330
3334
  const _hoisted_2$4 = {
3331
3335
  key: 0,
3332
3336
  class: "col-md-4 mb-2"
@@ -3486,7 +3490,7 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
3486
3490
  const _component_pagination = resolveComponent("pagination");
3487
3491
  const _component_sh_canvas = resolveComponent("sh-canvas");
3488
3492
 
3489
- return (openBlock(), createElementBlock("div", _hoisted_1$5, [
3493
+ return (openBlock(), createElementBlock("div", _hoisted_1$6, [
3490
3494
  ($props.hasDownload)
3491
3495
  ? (openBlock(), createElementBlock("div", _hoisted_2$4, [
3492
3496
  createElementVNode("button", {
@@ -3896,10 +3900,10 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
3896
3900
  ]))
3897
3901
  }
3898
3902
 
3899
- script$6.render = render$1;
3900
- script$6.__file = "src/lib/components/ShTable.vue";
3903
+ script$7.render = render$1;
3904
+ script$7.__file = "src/lib/components/ShTable.vue";
3901
3905
 
3902
- var script$5 = {
3906
+ var script$6 = {
3903
3907
  name: 'ShTabs',
3904
3908
  props: ['tabs', 'baseUrl', 'sharedData', 'tabCounts', 'responsive','classOne','classTwo','classes'],
3905
3909
  data () {
@@ -4020,10 +4024,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
4020
4024
  ], 64 /* STABLE_FRAGMENT */))
4021
4025
  }
4022
4026
 
4023
- script$5.render = render;
4024
- script$5.__file = "src/lib/components/ShTabs.vue";
4027
+ script$6.render = render;
4028
+ script$6.__file = "src/lib/components/ShTabs.vue";
4025
4029
 
4026
- const _hoisted_1$4 = {
4030
+ const _hoisted_1$5 = {
4027
4031
  class: "nav nav-tabs",
4028
4032
  role: "tablist"
4029
4033
  };
@@ -4034,7 +4038,7 @@ const _hoisted_2$3 = {
4034
4038
  const _hoisted_3$3 = ["onClick"];
4035
4039
  const _hoisted_4$3 = { class: "tab-content" };
4036
4040
 
4037
- var script$4 = {
4041
+ var script$5 = {
4038
4042
  __name: 'ShDynamicTabs',
4039
4043
  props: ['tabs','data'],
4040
4044
  setup(__props) {
@@ -4059,7 +4063,7 @@ function setTab(tab){
4059
4063
 
4060
4064
  return (_ctx, _cache) => {
4061
4065
  return (openBlock(), createElementBlock(Fragment, null, [
4062
- createElementVNode("ul", _hoisted_1$4, [
4066
+ createElementVNode("ul", _hoisted_1$5, [
4063
4067
  (openBlock(true), createElementBlock(Fragment, null, renderList(unref(tabs), (tab) => {
4064
4068
  return (openBlock(), createElementBlock("li", _hoisted_2$3, [
4065
4069
  createElementVNode("button", {
@@ -4080,15 +4084,15 @@ return (_ctx, _cache) => {
4080
4084
 
4081
4085
  };
4082
4086
 
4083
- script$4.__file = "src/lib/components/ShDynamicTabs.vue";
4087
+ script$5.__file = "src/lib/components/ShDynamicTabs.vue";
4084
4088
 
4085
- const _hoisted_1$3 = /*#__PURE__*/createElementVNode("span", {
4089
+ const _hoisted_1$4 = /*#__PURE__*/createElementVNode("span", {
4086
4090
  class: "spinner-border spinner-border-sm me-1",
4087
4091
  role: "status",
4088
4092
  "aria-hidden": "true"
4089
4093
  }, null, -1 /* HOISTED */);
4090
4094
 
4091
- var script$3 = {
4095
+ var script$4 = {
4092
4096
  __name: 'ShSilentAction',
4093
4097
  props: {
4094
4098
  data: Object,
@@ -4136,6 +4140,81 @@ function runAction(){
4136
4140
  }
4137
4141
  }
4138
4142
 
4143
+ return (_ctx, _cache) => {
4144
+ return (openBlock(), createElementBlock("a", {
4145
+ class: normalizeClass(processing.value ? 'disabled':''),
4146
+ onClick: runAction
4147
+ }, [
4148
+ (processing.value)
4149
+ ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
4150
+ _hoisted_1$4,
4151
+ createElementVNode("span", null, toDisplayString(__props.loadingMessage), 1 /* TEXT */)
4152
+ ], 64 /* STABLE_FRAGMENT */))
4153
+ : createCommentVNode("v-if", true),
4154
+ (!processing.value)
4155
+ ? renderSlot(_ctx.$slots, "default", { key: 1 })
4156
+ : createCommentVNode("v-if", true)
4157
+ ], 2 /* CLASS */))
4158
+ }
4159
+ }
4160
+
4161
+ };
4162
+
4163
+ script$4.__file = "src/lib/components/ShSilentAction.vue";
4164
+
4165
+ const _hoisted_1$3 = /*#__PURE__*/createElementVNode("span", {
4166
+ class: "spinner-border spinner-border-sm me-1",
4167
+ role: "status",
4168
+ "aria-hidden": "true"
4169
+ }, null, -1 /* HOISTED */);
4170
+
4171
+
4172
+ var script$3 = {
4173
+ __name: 'ShConfirmAction',
4174
+ props: {
4175
+ data: Object,
4176
+ title: String,
4177
+ message: String,
4178
+ url: {
4179
+ type: String,
4180
+ required: true
4181
+ },
4182
+ loadingMessage: {
4183
+ type: String,
4184
+ default: 'Processing'
4185
+ }
4186
+ },
4187
+ emits: ['actionSuccessful', 'actionFailed','actionCanceled'],
4188
+ setup(__props, { emit }) {
4189
+
4190
+ const props = __props;
4191
+
4192
+
4193
+ const processing = ref(false);
4194
+
4195
+
4196
+ function runAction () {
4197
+ processing.value = true;
4198
+ shRepo.runPlainRequest(props.url, props.message, props.title, props.data).then(res => {
4199
+ if(res.isConfirmed){
4200
+ const value = res.value;
4201
+ if(value.status){
4202
+ emit('actionSuccessful', res);
4203
+ processing.value = false;
4204
+ } else {
4205
+ emit('actionFailed', value);
4206
+ processing.value = false;
4207
+ }
4208
+ } else {
4209
+ emit('actionCanceled');
4210
+ processing.value = false;
4211
+ }
4212
+ }).catch(ex => {
4213
+ emit('actionFailed', ex);
4214
+ processing.value = false;
4215
+ });
4216
+ }
4217
+
4139
4218
  return (_ctx, _cache) => {
4140
4219
  return (openBlock(), createElementBlock("a", {
4141
4220
  class: normalizeClass(processing.value ? 'disabled':''),
@@ -4156,7 +4235,7 @@ return (_ctx, _cache) => {
4156
4235
 
4157
4236
  };
4158
4237
 
4159
- script$3.__file = "src/lib/components/ShSilentAction.vue";
4238
+ script$3.__file = "src/lib/components/ShConfirmAction.vue";
4160
4239
 
4161
4240
  const useUserStore = defineStore('user-store', {
4162
4241
  state: () => ({
@@ -4284,7 +4363,7 @@ return (_ctx, _cache) => {
4284
4363
  _hoisted_5$2,
4285
4364
  createTextVNode(" ADD DEPARTMENT")
4286
4365
  ], 512 /* NEED_PATCH */),
4287
- createVNode(script$6, {
4366
+ createVNode(script$7, {
4288
4367
  headers: ['id','name','description', 'created_at'],
4289
4368
  "end-point": "admin/departments/list",
4290
4369
  actions: {
@@ -4298,12 +4377,12 @@ return (_ctx, _cache) => {
4298
4377
  ]
4299
4378
  }
4300
4379
  }),
4301
- createVNode(script$a, {
4380
+ createVNode(script$b, {
4302
4381
  "modal-id": "sh-department_modal",
4303
4382
  "modal-title": "Department Form"
4304
4383
  }, {
4305
4384
  default: withCtx(() => [
4306
- createVNode(script$c, {
4385
+ createVNode(script$d, {
4307
4386
  "success-callback": "departmentAdded",
4308
4387
  onDepartmentAdded: departmentAdded,
4309
4388
  action: "admin/departments/store",
@@ -4435,7 +4514,7 @@ return (_ctx, _cache) => {
4435
4514
  createElementVNode("div", _hoisted_2$1, [
4436
4515
  _hoisted_3$1,
4437
4516
  createElementVNode("h5", null, "Department #" + toDisplayString(unref(department).id) + " - " + toDisplayString(unref(department).name) + " Allowed Modules", 1 /* TEXT */),
4438
- createVNode(script$6, {
4517
+ createVNode(script$7, {
4439
4518
  actions: {
4440
4519
  label: 'Actions',
4441
4520
  actions: [
@@ -4455,12 +4534,12 @@ return (_ctx, _cache) => {
4455
4534
  headers: ['id',showModule,'created_at'],
4456
4535
  "end-point": 'admin/departments/department/list-modules/' + id.value
4457
4536
  }, null, 8 /* PROPS */, ["actions", "reload", "headers", "end-point"]),
4458
- createVNode(script$a, {
4537
+ createVNode(script$b, {
4459
4538
  "modal-id": "addModule",
4460
4539
  "modal-title": "Add Module Department"
4461
4540
  }, {
4462
4541
  default: withCtx(() => [
4463
- createVNode(script$c, {
4542
+ createVNode(script$d, {
4464
4543
  "reload-select-items": unref(reload),
4465
4544
  "success-callback": moduleAdded,
4466
4545
  "fill-selects": {
@@ -4482,7 +4561,7 @@ return (_ctx, _cache) => {
4482
4561
  ref: permissionCanvasBtn,
4483
4562
  "data-bs-toggle": "offcanvas"
4484
4563
  }, null, 512 /* NEED_PATCH */),
4485
- createVNode(script$8, {
4564
+ createVNode(script$9, {
4486
4565
  "canvas-id": "permissionsCanvas",
4487
4566
  position: "end enlarged",
4488
4567
  "canvas-title": "Module Permissions"
@@ -4597,7 +4676,7 @@ return (_ctx, _cache) => {
4597
4676
  : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
4598
4677
  (section.value === 'login')
4599
4678
  ? (openBlock(), createElementBlock("div", _hoisted_2, [
4600
- createVNode(script$c, {
4679
+ createVNode(script$d, {
4601
4680
  class: "sh-login-form",
4602
4681
  fields: ['email','password'],
4603
4682
  "action-label": "Login",
@@ -4622,7 +4701,7 @@ return (_ctx, _cache) => {
4622
4701
  (unref(registerSubTitle))
4623
4702
  ? (openBlock(), createElementBlock("span", _hoisted_8, toDisplayString(unref(registerSubTitle)), 1 /* TEXT */))
4624
4703
  : createCommentVNode("v-if", true),
4625
- createVNode(script$c, {
4704
+ createVNode(script$d, {
4626
4705
  class: "sh-login-form",
4627
4706
  fields: unref(registrationFields),
4628
4707
  "action-label": "Sign Up",
@@ -4686,4 +4765,4 @@ const ShFrontend = {
4686
4765
  }
4687
4766
  };
4688
4767
 
4689
- export { script$8 as ShCanvas, script$b as ShDropDownForm, script$4 as ShDynamicTabs, script$c as ShForm, ShFrontend, script$a as ShModal, script$9 as ShModalForm, script$f as ShPhone, script$3 as ShSilentAction, script$6 as ShTable, script$5 as ShTabs, shApis, shRepo, ShStorage as shStorage, useUserStore };
4768
+ export { script$9 as ShCanvas, script$3 as ShConfirmAction, script$c as ShDropDownForm, script$5 as ShDynamicTabs, script$d as ShForm, ShFrontend, script$b as ShModal, script$a as ShModalForm, script$g as ShPhone, script$4 as ShSilentAction, script$7 as ShTable, script$6 as ShTabs, shApis, shRepo, ShStorage as shStorage, useUserStore };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iankibetsh/shframework",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "Vue library for handling laravel backend",
5
5
  "main": "dist/library.js",
6
6
  "module": "dist/library.mjs",