@opengis/admin 0.1.83 → 0.1.84

Sign up to get free protection for your applications and to get access to all the features.
Files changed (142) hide show
  1. package/README.md +29 -29
  2. package/config.js +4 -4
  3. package/dist/{IconChevronDown-B7bJL5rk.js → IconChevronDown-DoqykhvB.js} +1 -1
  4. package/dist/{add-page-D5TrUydC.js → add-page-ChBpMfRU.js} +1 -1
  5. package/dist/{admin-interface-Cv1M1Cmt.js → admin-interface-SDtt7rqS.js} +35 -28
  6. package/dist/{admin-view-vVXbKHih.js → admin-view-CKTriO6z.js} +44 -44
  7. package/dist/admin.js +1 -1
  8. package/dist/admin.umd.cjs +68 -41
  9. package/dist/assets/logo.svg +41 -41
  10. package/dist/{card-page-BbP6doYG.js → card-page-BaSbgjMn.js} +4 -4
  11. package/dist/{card-view-C2YWCaFs.js → card-view-B8ohi0lw.js} +1 -1
  12. package/dist/{edit-page-BRKTh4MZ.js → edit-page-DLlbyyd_.js} +1 -1
  13. package/dist/{import-file-DA-DiiaH.js → import-file-CV5CU5lC.js} +1016 -954
  14. package/dist/style.css +1 -1
  15. package/module/settings/card/admin.roles.table/access.hbs +27 -27
  16. package/module/settings/card/admin.roles.table/general_info.hbs +16 -16
  17. package/module/settings/card/admin.roles.table/index.yml +14 -14
  18. package/module/settings/card/admin.roles.table/users.hbs +27 -27
  19. package/module/settings/card/admin.routes.table/general_info.hbs +40 -40
  20. package/module/settings/card/admin.routes.table/index.yml +8 -8
  21. package/module/settings/card/admin.routes.table/users.hbs +33 -33
  22. package/module/settings/card/admin.users.table/general_info.hbs +25 -25
  23. package/module/settings/card/admin.users.table/index.yml +12 -12
  24. package/module/settings/card/admin.users.table/logs.hbs +30 -30
  25. package/module/settings/card/admin.users.table/user_roles.hbs +24 -24
  26. package/module/settings/cls/core.actions.json +17 -17
  27. package/module/settings/cls/core.scope.json +13 -13
  28. package/module/settings/cls/properties.site_status.json +13 -13
  29. package/module/settings/cls/properties.widget_status.json +13 -13
  30. package/module/settings/cls/users.user_type.json +13 -13
  31. package/module/settings/form/admin.access.form.json +36 -36
  32. package/module/settings/form/admin.custom_column.form.json +71 -71
  33. package/module/settings/form/admin.properties.form.json +15 -15
  34. package/module/settings/form/admin.roles.form.json +19 -19
  35. package/module/settings/form/admin.routes.form.json +25 -25
  36. package/module/settings/form/admin.user_properties.form.json +15 -15
  37. package/module/settings/form/admin.user_roles.form.json +21 -21
  38. package/module/settings/form/admin.users.form.json +153 -153
  39. package/module/settings/form/user.user_roles.form.json +13 -13
  40. package/module/settings/interface/admin.properties.json +4 -4
  41. package/module/settings/interface/admin.roles.json +4 -4
  42. package/module/settings/interface/admin.routes.json +4 -4
  43. package/module/settings/interface/admin.users.json +4 -4
  44. package/module/settings/menu.json +50 -50
  45. package/module/settings/select/core.roles.json +2 -2
  46. package/module/settings/select/core.routes.sql +1 -1
  47. package/module/settings/select/core.user_mentioned.sql +1 -1
  48. package/module/settings/select/core.user_uid.sql +1 -1
  49. package/module/settings/table/admin.access.table.json +83 -83
  50. package/module/settings/table/admin.custom_column.table.json +99 -99
  51. package/module/settings/table/admin.properties.table.json +39 -39
  52. package/module/settings/table/admin.roles.table.json +64 -64
  53. package/module/settings/table/admin.routes.table.json +68 -68
  54. package/module/settings/table/admin.user_properties.table.json +34 -34
  55. package/module/settings/table/admin.user_roles.table.json +72 -72
  56. package/module/settings/table/admin.users.table.json +121 -121
  57. package/package.json +81 -81
  58. package/plugin.js +29 -29
  59. package/server/helpers/controllers/badge.js +11 -11
  60. package/server/helpers/controllers/hb.js +2 -2
  61. package/server/helpers/controllers/map.js +2 -2
  62. package/server/helpers/controllers/mls.js +2 -2
  63. package/server/helpers/controllers/token.js +16 -15
  64. package/server/helpers/controllers/vue.js +2 -2
  65. package/server/helpers/index.mjs +17 -17
  66. package/server/plugins/access/funcs/getAdminAccess.js +14 -14
  67. package/server/plugins/access/index.mjs +6 -6
  68. package/server/plugins/adminHook.js +93 -93
  69. package/server/plugins/cron.js +10 -10
  70. package/server/plugins/docs.js +28 -28
  71. package/server/plugins/hook.js +223 -223
  72. package/server/plugins/vite.js +71 -71
  73. package/server/routes/access/controllers/access.group.js +29 -29
  74. package/server/routes/access/controllers/access.group.post.js +43 -43
  75. package/server/routes/access/index.mjs +63 -63
  76. package/server/routes/calendar/controllers/calendar.data.js +87 -87
  77. package/server/routes/calendar/index.mjs +7 -7
  78. package/server/routes/calendar/schema.js +21 -21
  79. package/server/routes/data/controllers/cardData.js +81 -81
  80. package/server/routes/data/controllers/cardTabData.js +49 -49
  81. package/server/routes/data/controllers/funcs/getFilterSQL/index.js +92 -92
  82. package/server/routes/data/controllers/funcs/getFilterSQL/util/formatValue.js +170 -170
  83. package/server/routes/data/controllers/funcs/getFilterSQL/util/getCustomQuery.js +13 -13
  84. package/server/routes/data/controllers/funcs/getFilterSQL/util/getFilterQuery.js +64 -64
  85. package/server/routes/data/controllers/funcs/getFilterSQL/util/getOptimizedQuery.js +12 -12
  86. package/server/routes/data/controllers/funcs/getFilterSQL/util/getTableSql.js +34 -34
  87. package/server/routes/data/controllers/tableData.js +20 -20
  88. package/server/routes/data/controllers/tableDataId.js +27 -27
  89. package/server/routes/data/controllers/tableFilter.js +63 -63
  90. package/server/routes/data/controllers/tokenInfo.js +9 -9
  91. package/server/routes/data/controllers/utils/assignTokens.js +30 -30
  92. package/server/routes/data/controllers/utils/getColumns.js +8 -8
  93. package/server/routes/data/index.mjs +17 -17
  94. package/server/routes/data/schema.js +54 -54
  95. package/server/routes/menu/controllers/getMenu.js +67 -67
  96. package/server/routes/menu/index.mjs +5 -5
  97. package/server/routes/notifications/controllers/readNotifications.js +27 -27
  98. package/server/routes/notifications/controllers/testEmail.js +35 -35
  99. package/server/routes/notifications/controllers/userNotifications.js +53 -53
  100. package/server/routes/notifications/funcs/addNotification.js +21 -21
  101. package/server/routes/notifications/funcs/sendNotification.js +105 -105
  102. package/server/routes/notifications/hook/onWidgetSet.js +57 -57
  103. package/server/routes/notifications/index.mjs +27 -27
  104. package/server/routes/notifications/schema.js +16 -16
  105. package/server/routes/properties/controllers/admin.properties.get.js +29 -29
  106. package/server/routes/properties/controllers/user.properties.get.js +30 -30
  107. package/server/routes/properties/controllers/user.properties.post.js +30 -30
  108. package/server/routes/properties/funcs/getSettings.js +56 -56
  109. package/server/routes/properties/funcs/setSettings.js +44 -44
  110. package/server/routes/properties/funcs/utils/dataInsert.js +26 -26
  111. package/server/routes/properties/index.mjs +14 -14
  112. package/server/routes/properties/schema.js +10 -10
  113. package/server/routes/root.mjs +3 -3
  114. package/server/routes/templates/controllers/getTemplate.js +26 -26
  115. package/server/routes/templates/index.mjs +16 -16
  116. package/server/routes/templates/schema.js +8 -8
  117. package/server/routes/user/controllers/user.cls.id.js +14 -14
  118. package/server/routes/user/controllers/user.cls.js +71 -71
  119. package/server/routes/user/controllers/user.cls.post.js +52 -52
  120. package/server/routes/user/controllers/user.info.js +17 -17
  121. package/server/routes/user/schema.js +14 -14
  122. package/server/routes/widget/controllers/utils/historyFormat.js +75 -75
  123. package/server/routes/widget/controllers/utils/obj2db.js +13 -13
  124. package/server/routes/widget/controllers/widget.del.js +41 -41
  125. package/server/routes/widget/controllers/widget.get.js +96 -96
  126. package/server/routes/widget/controllers/widget.set.js +76 -76
  127. package/server/routes/widget/index.mjs +11 -11
  128. package/server/routes/widget/schema.js +12 -12
  129. package/server/templates/cls/itree.recrzone_category.json +73 -73
  130. package/server/templates/cls/test.json +9 -9
  131. package/server/templates/form/admin.user_cls.data.form.json +49 -49
  132. package/server/templates/form/admin.user_group_rel.form.json +21 -21
  133. package/server/templates/form/cp_building.form.json +32 -32
  134. package/server/templates/form/form-user-pass.json +10 -10
  135. package/server/templates/form/form-user_group.json +39 -39
  136. package/server/templates/form/form-users.json +156 -156
  137. package/server/templates/form/user_group_access.form.json +22 -22
  138. package/server/templates/select/account_id.json +2 -2
  139. package/server/templates/table/gis.dataset.table.json +43 -43
  140. package/server/templates/table/management.user_group.table.json +112 -112
  141. package/server/templates/table/management.users.table.json +126 -126
  142. package/utils.js +29 -29
package/README.md CHANGED
@@ -1,29 +1,29 @@
1
- # admin
2
-
3
- [![NPM version](https://img.shields.io/npm/v/@opengis/admin)](https://www.npmjs.com/package/@opengis/admin)
4
- [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat)](http://standardjs.com/)
5
-
6
- It standardizes the entire web-site administration
7
-
8
- ## Install
9
-
10
- ```bash
11
- npm i @opengis/admin
12
- ```
13
-
14
- ## Publish
15
-
16
- ```bash
17
- npm run build
18
- npm publish
19
- ```
20
-
21
- ## Usage
22
-
23
- ```js
24
- fastify.register(import('@opengis/admin'), config);
25
- ```
26
-
27
- ## Documenation
28
-
29
- For a detailed understanding of `admin`, its features, and how to use them, refer to our [Documentation](https://apidocs.softpro.ua/opengis/plugin/).
1
+ # admin
2
+
3
+ [![NPM version](https://img.shields.io/npm/v/@opengis/admin)](https://www.npmjs.com/package/@opengis/admin)
4
+ [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat)](http://standardjs.com/)
5
+
6
+ It standardizes the entire web-site administration
7
+
8
+ ## Install
9
+
10
+ ```bash
11
+ npm i @opengis/admin
12
+ ```
13
+
14
+ ## Publish
15
+
16
+ ```bash
17
+ npm run build
18
+ npm publish
19
+ ```
20
+
21
+ ## Usage
22
+
23
+ ```js
24
+ fastify.register(import('@opengis/admin'), config);
25
+ ```
26
+
27
+ ## Documenation
28
+
29
+ For a detailed understanding of `admin`, its features, and how to use them, refer to our [Documentation](https://apidocs.softpro.ua/opengis/plugin/).
package/config.js CHANGED
@@ -1,5 +1,5 @@
1
- import { readFile } from 'fs/promises';
2
- import fs from 'fs';
3
- const config = fs.existsSync('config.json') ? JSON.parse(await readFile('config.json')) : {};
4
-
1
+ import { readFile } from 'fs/promises';
2
+ import fs from 'fs';
3
+ const config = fs.existsSync('config.json') ? JSON.parse(await readFile('config.json')) : {};
4
+
5
5
  export default config;
@@ -1,5 +1,5 @@
1
1
  import { openBlock as e, createElementBlock as t, createElementVNode as n } from "vue";
2
- import { _ as r } from "./import-file-DA-DiiaH.js";
2
+ import { _ as r } from "./import-file-CV5CU5lC.js";
3
3
  const l = {}, s = {
4
4
  xmlns: "http://www.w3.org/2000/svg",
5
5
  viewBox: "0 0 24 24",
@@ -1,4 +1,4 @@
1
- import { _ as d, u as h, a as i } from "./import-file-DA-DiiaH.js";
1
+ import { _ as d, u as h, a as i } from "./import-file-CV5CU5lC.js";
2
2
  import { resolveComponent as p, openBlock as m, createElementBlock as g, createElementVNode as n, createBlock as f, createCommentVNode as x } from "vue";
3
3
  const w = {
4
4
  data() {
@@ -1,6 +1,6 @@
1
- import { _ as k, b as Te, a as F, c as Ve, d as De, e as Fe, f as Me, I as je, u as ye, s as qe } from "./import-file-DA-DiiaH.js";
1
+ import { _ as k, b as Te, a as F, c as Ve, d as De, e as Fe, f as Me, I as je, u as ye, s as qe } from "./import-file-CV5CU5lC.js";
2
2
  import { openBlock as r, createElementBlock as a, createTextVNode as M, toDisplayString as I, createCommentVNode as w, createStaticVNode as B, Fragment as A, createElementVNode as l, resolveComponent as p, createVNode as x, withCtx as $, createBlock as _, renderList as D, withModifiers as Be, normalizeClass as V, withDirectives as L, vModelCheckbox as ze, resolveDynamicComponent as z, Transition as P, renderSlot as Le, vShow as ve, getCurrentInstance as Pe, ref as _e, normalizeStyle as ke } from "vue";
3
- import { I as Ue } from "./IconChevronDown-B7bJL5rk.js";
3
+ import { I as Ue } from "./IconChevronDown-DoqykhvB.js";
4
4
  const Oe = {
5
5
  data() {
6
6
  return {
@@ -99,7 +99,7 @@ function Ge(t, e, s, i, n, o) {
99
99
  ])) : (r(), a("p", We, I(o.label), 1))
100
100
  ]);
101
101
  }
102
- const Ze = /* @__PURE__ */ k(Oe, [["render", Ge]]), Je = {}, Ye = {
102
+ const Ze = /* @__PURE__ */ k(Oe, [["render", Ge]]), Je = {}, Ke = {
103
103
  class: "flex-shrink-0 size-3.5",
104
104
  xmlns: "http://www.w3.org/2000/svg",
105
105
  viewBox: "0 0 24 24",
@@ -109,12 +109,12 @@ const Ze = /* @__PURE__ */ k(Oe, [["render", Ge]]), Je = {}, Ye = {
109
109
  "stroke-linecap": "round",
110
110
  "stroke-linejoin": "round"
111
111
  };
112
- function Ke(t, e, s, i, n, o) {
113
- return r(), a("svg", Ye, e[0] || (e[0] = [
112
+ function Qe(t, e, s, i, n, o) {
113
+ return r(), a("svg", Ke, e[0] || (e[0] = [
114
114
  B('<path d="M3 6h18"></path><path d="M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"></path><path d="M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"></path><line x1="10" x2="10" y1="11" y2="17"></line><line x1="14" x2="14" y1="11" y2="17"></line>', 5)
115
115
  ]));
116
116
  }
117
- const Qe = /* @__PURE__ */ k(Je, [["render", Ke]]), Xe = {
117
+ const Xe = /* @__PURE__ */ k(Je, [["render", Qe]]), Ye = {
118
118
  props: {
119
119
  height: { type: String, default: "16" },
120
120
  width: { type: String, default: "12" },
@@ -140,10 +140,10 @@ function nt(t, e, s, i, n, o) {
140
140
  ]), 8, tt))
141
141
  ], 64);
142
142
  }
143
- const st = /* @__PURE__ */ k(Xe, [["render", nt]]), lt = {
143
+ const st = /* @__PURE__ */ k(Ye, [["render", nt]]), lt = {
144
144
  components: {
145
145
  IconMore: Te,
146
- IconDelete: Qe,
146
+ IconDelete: Xe,
147
147
  IconEdit: st
148
148
  },
149
149
  emits: ["updateTable"],
@@ -208,8 +208,15 @@ const st = /* @__PURE__ */ k(Xe, [["render", nt]]), lt = {
208
208
  }
209
209
  },
210
210
  async customButtonAction(t) {
211
- t != null && t.form && await this.$v3plugin.$form({
212
- token: "wJbtW5SHZvFeaD_hNn9vn5t0jUY"
211
+ var e;
212
+ document.querySelector("body").click(), t != null && t.form ? (await this.$v3plugin.$form({
213
+ form: t == null ? void 0 : t.form,
214
+ id: (e = this.item) == null ? void 0 : e.id,
215
+ api: t == null ? void 0 : t.api
216
+ }), await this.$emit("update-table")) : await this.$v3plugin.$api({
217
+ confirm: t == null ? void 0 : t.confirm,
218
+ api: t == null ? void 0 : t.api,
219
+ method: t == null ? void 0 : t.method
213
220
  });
214
221
  }
215
222
  }
@@ -628,8 +635,8 @@ const Gt = /* @__PURE__ */ k(Ht, [["render", Wt]]), Zt = {
628
635
  s[e] = t, this.$emit("update-columns", [...s]);
629
636
  }
630
637
  }
631
- }, Jt = { class: "py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-sm hover:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-50 dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700" }, Yt = { class: "py-[10px] px-[10px] w-[260px]" }, Kt = { class: "flex flex-col gap-[3px] max-h-[400px] w-full overflow-auto [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar:horizontal]:h-[8px] [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500" };
632
- function Qt(t, e, s, i, n, o) {
638
+ }, Jt = { class: "py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-sm hover:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-50 dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700" }, Kt = { class: "py-[10px] px-[10px] w-[260px]" }, Qt = { class: "flex flex-col gap-[3px] max-h-[400px] w-full overflow-auto [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar:horizontal]:h-[8px] [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500" };
639
+ function Xt(t, e, s, i, n, o) {
633
640
  const u = p("IconColumns"), b = p("AdminTableColumnsHiddenItem"), f = p("VsPopover");
634
641
  return r(), _(f, {
635
642
  trigger: "click",
@@ -644,9 +651,9 @@ function Qt(t, e, s, i, n, o) {
644
651
  ])
645
652
  ]),
646
653
  default: $(() => [
647
- l("div", Yt, [
654
+ l("div", Kt, [
648
655
  e[0] || (e[0] = l("h2", { class: "text-sm mb-[8px]" }, "Оберіть колонки, щоб приховати", -1)),
649
- l("ul", Kt, [
656
+ l("ul", Qt, [
650
657
  (r(!0), a(A, null, D(s.columns, (m, v) => (r(), a("li", { key: v }, [
651
658
  x(b, {
652
659
  column: m,
@@ -659,7 +666,7 @@ function Qt(t, e, s, i, n, o) {
659
666
  _: 1
660
667
  });
661
668
  }
662
- const Xt = /* @__PURE__ */ k(Zt, [["render", Qt]]), en = {}, tn = {
669
+ const Yt = /* @__PURE__ */ k(Zt, [["render", Xt]]), en = {}, tn = {
663
670
  class: "hidden sm:block shrink-0 size-3",
664
671
  xmlns: "http://www.w3.org/2000/svg",
665
672
  fill: "currentColor",
@@ -763,7 +770,7 @@ function yn(t, e, s, i, n, o) {
763
770
  ])
764
771
  ]);
765
772
  }
766
- const _n = /* @__PURE__ */ k(fn, [["render", yn], ["__scopeId", "data-v-e1f274c9"]]), kn = {
773
+ const _n = /* @__PURE__ */ k(fn, [["render", yn], ["__scopeId", "data-v-c6318482"]]), kn = {
767
774
  components: {
768
775
  AdminComponentIs: Ce,
769
776
  AdminTree: _n,
@@ -996,7 +1003,7 @@ function Jn(t, e, s, i, n, o) {
996
1003
  }, I(u == null ? void 0 : u.label), 11, Zn))), 256))
997
1004
  ]);
998
1005
  }
999
- const Yn = /* @__PURE__ */ k(Wn, [["render", Jn]]), Kn = {}, Qn = {
1006
+ const Kn = /* @__PURE__ */ k(Wn, [["render", Jn]]), Qn = {}, Xn = {
1000
1007
  xmlns: "http://www.w3.org/2000/svg",
1001
1008
  viewBox: "0 0 24 24",
1002
1009
  fill: "none",
@@ -1006,8 +1013,8 @@ const Yn = /* @__PURE__ */ k(Wn, [["render", Jn]]), Kn = {}, Qn = {
1006
1013
  "stroke-linejoin": "round",
1007
1014
  class: "icon icon-tabler icons-tabler-outline icon-tabler-filter"
1008
1015
  };
1009
- function Xn(t, e, s, i, n, o) {
1010
- return r(), a("svg", Qn, e[0] || (e[0] = [
1016
+ function Yn(t, e, s, i, n, o) {
1017
+ return r(), a("svg", Xn, e[0] || (e[0] = [
1011
1018
  l("path", {
1012
1019
  stroke: "none",
1013
1020
  d: "M0 0h24v24H0z",
@@ -1016,7 +1023,7 @@ function Xn(t, e, s, i, n, o) {
1016
1023
  l("path", { d: "M4 4h16v2.172a2 2 0 0 1 -.586 1.414l-4.414 4.414v7l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227z" }, null, -1)
1017
1024
  ]));
1018
1025
  }
1019
- const es = /* @__PURE__ */ k(Kn, [["render", Xn]]), ts = {
1026
+ const es = /* @__PURE__ */ k(Qn, [["render", Yn]]), ts = {
1020
1027
  components: { IconFilter2: es },
1021
1028
  props: { filterCustom: String, customList: Array }
1022
1029
  }, ns = { class: "py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-sm hover:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-50 dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700" }, ss = { class: "flex flex-col gap-[4px]" }, ls = ["onClick"];
@@ -1099,7 +1106,7 @@ const os = /* @__PURE__ */ k(ts, [["render", rs]]), as = { class: "flex items-ce
1099
1106
  components: {
1100
1107
  AdminTableControl: ft,
1101
1108
  AdminTableExport: Pt,
1102
- AdminTableColumnsHidden: Xt,
1109
+ AdminTableColumnsHidden: Yt,
1103
1110
  AdminTableColumn: Ze,
1104
1111
  AdminNodata: on,
1105
1112
  IconPlus: we,
@@ -1108,7 +1115,7 @@ const os = /* @__PURE__ */ k(ts, [["render", rs]]), as = { class: "flex items-ce
1108
1115
  IconOpenCard: Bn,
1109
1116
  AdminComponentIs: Ce,
1110
1117
  AdminTableFilters: Rn,
1111
- AdminTableTabs: Yn,
1118
+ AdminTableTabs: Kn,
1112
1119
  AdminTableCustomFilters: os,
1113
1120
  AdminTableCustomButtons: is
1114
1121
  },
@@ -1308,7 +1315,7 @@ const os = /* @__PURE__ */ k(ts, [["render", rs]]), as = { class: "flex items-ce
1308
1315
  class: "font-semibold text-gray-800 dark:text-neutral-200"
1309
1316
  };
1310
1317
  function Ms(t, e, s, i, n, o) {
1311
- var O, E, N, H, R, W, G, Z, J, Y, K, Q, X, ee, te, ne, se, le, re, oe, ae, ie;
1318
+ var O, E, N, H, R, W, G, Z, J, K, Q, X, Y, ee, te, ne, se, le, re, oe, ae, ie;
1312
1319
  const u = p("IconPlus"), b = p("router-link"), f = p("AdminTableTabs"), m = p("IconSearch"), v = p("VsText"), c = p("AdminTableCustomButtons"), g = p("AdminTableCustomFilters"), d = p("AdminTableColumnsHidden"), C = p("AdminTableExport"), y = p("AdminTableFilters"), S = p("IconOpenCard"), T = p("AdminTableColumn"), j = p("AdminComponentIs"), U = p("AdminTableControl"), $e = p("AdminNodata"), Se = p("VsPagination"), Ae = p("AdminTableCardInfo");
1313
1320
  return r(), a("div", ds, [
1314
1321
  l("div", hs, [
@@ -1362,23 +1369,23 @@ function Ms(t, e, s, i, n, o) {
1362
1369
  }, null, 8, ["slots"])) : w("", !0),
1363
1370
  (J = (Z = n.tableData) == null ? void 0 : Z.filterCustom) != null && J.length ? (r(), _(g, {
1364
1371
  key: 1,
1365
- customList: (Y = n.tableData) == null ? void 0 : Y.filterCustom,
1372
+ customList: (K = n.tableData) == null ? void 0 : K.filterCustom,
1366
1373
  filterCustom: n.filterCustom,
1367
1374
  "onUpdate:filterCustom": e[2] || (e[2] = (h) => n.filterCustom = h)
1368
1375
  }, null, 8, ["customList", "filterCustom"])) : w("", !0),
1369
1376
  x(d, {
1370
- columns: (K = n.tableData) == null ? void 0 : K.columns,
1377
+ columns: (Q = n.tableData) == null ? void 0 : Q.columns,
1371
1378
  onUpdateColumns: e[3] || (e[3] = (h) => n.tableData.columns = h)
1372
1379
  }, null, 8, ["columns"]),
1373
1380
  x(C, {
1374
1381
  table: s.table,
1375
- columns: (Q = n.tableData) == null ? void 0 : Q.columns,
1382
+ columns: (X = n.tableData) == null ? void 0 : X.columns,
1376
1383
  page: n.page,
1377
1384
  "filter-state": n.filterState,
1378
1385
  "filter-custom": n.filterCustom,
1379
1386
  filters: n.filters
1380
1387
  }, null, 8, ["table", "columns", "page", "filter-state", "filter-custom", "filters"]),
1381
- (X = n.filterScheme) != null && X.length ? (r(), _(y, {
1388
+ (Y = n.filterScheme) != null && Y.length ? (r(), _(y, {
1382
1389
  key: 2,
1383
1390
  scheme: n.filterScheme,
1384
1391
  onFilters: n.onFilters,
@@ -1522,7 +1529,7 @@ function Ms(t, e, s, i, n, o) {
1522
1529
  ])
1523
1530
  ]);
1524
1531
  }
1525
- const js = /* @__PURE__ */ k(us, [["render", Ms], ["__scopeId", "data-v-c62adcdb"]]), qs = {
1532
+ const js = /* @__PURE__ */ k(us, [["render", Ms], ["__scopeId", "data-v-ef9b0865"]]), qs = {
1526
1533
  components: { AdminTable: js },
1527
1534
  data() {
1528
1535
  return {
@@ -1,6 +1,6 @@
1
- import { _ as w, I as Q, u as B, s as F, V as R, a as O } from "./import-file-DA-DiiaH.js";
1
+ import { _ as w, I as Q, u as B, s as F, V as R, a as O } from "./import-file-CV5CU5lC.js";
2
2
  import { openBlock as s, createElementBlock as r, createElementVNode as t, createStaticVNode as q, resolveComponent as v, normalizeClass as E, createTextVNode as L, toDisplayString as V, createVNode as c, Transition as T, withCtx as M, withDirectives as G, Fragment as N, renderList as S, vShow as J, ref as D, createCommentVNode as H, getCurrentInstance as K, watch as W, onBeforeUnmount as X, createBlock as Y, withModifiers as ee } from "vue";
3
- import { I as te } from "./IconChevronDown-B7bJL5rk.js";
3
+ import { I as te } from "./IconChevronDown-DoqykhvB.js";
4
4
  const oe = {}, ne = {
5
5
  xmlns: "http://www.w3.org/2000/svg",
6
6
  viewBox: "0 0 24 24",
@@ -11,7 +11,7 @@ const oe = {}, ne = {
11
11
  "stroke-linejoin": "round",
12
12
  class: "icon icon-tabler icons-tabler-outline icon-tabler-logout"
13
13
  };
14
- function se(o, e, n, a, l, i) {
14
+ function se(o, e, n, l, a, i) {
15
15
  return s(), r("svg", ne, e[0] || (e[0] = [
16
16
  t("path", {
17
17
  stroke: "none",
@@ -23,25 +23,25 @@ function se(o, e, n, a, l, i) {
23
23
  t("path", { d: "M18 15l3 -3" }, null, -1)
24
24
  ]));
25
25
  }
26
- const re = /* @__PURE__ */ w(oe, [["render", se]]), le = {}, ae = {
26
+ const re = /* @__PURE__ */ w(oe, [["render", se]]), ae = {}, le = {
27
27
  viewBox: "0 0 1823 249",
28
28
  fill: "none",
29
29
  xmlns: "http://www.w3.org/2000/svg"
30
30
  };
31
- function ie(o, e, n, a, l, i) {
32
- return s(), r("svg", ae, e[0] || (e[0] = [
31
+ function ie(o, e, n, l, a, i) {
32
+ return s(), r("svg", le, e[0] || (e[0] = [
33
33
  q('<path d="M218.88 96.05C223.55 99.19 228.69 101.56 234.09 103.07V145.42C212.05 151.54 195.83 171.79 195.83 195.75C195.83 200.22 196.41 204.65 197.53 208.94L160.92 230.08C156.82 226.06 152.08 222.73 146.91 220.24V171.62C164.83 163.13 176.59 145.06 176.59 124.48C176.59 123.17 176.54 121.86 176.44 120.56L218.88 96.05ZM220.32 79.09L160.97 113.36C162.04 116.88 162.61 120.61 162.61 124.48C162.61 142.66 149.93 157.87 132.93 161.76V230.05C143.4 232.46 152.23 239.16 157.46 248.21L215 214.99C211.7 209.34 209.81 202.77 209.81 195.75C209.81 174.62 226.94 157.49 248.07 157.49V91.02C237.14 91.02 227.29 86.43 220.32 79.09Z" fill="#CE3936"></path><path d="M161.39 19.13L197.44 39.94C196.39 44.11 195.84 48.42 195.84 52.75C195.84 54.21 195.9 55.65 196.02 57.1L153.9 81.42C145.27 75.5 134.95 72.24 124.36 72.24C113.83 72.24 103.57 75.47 94.96 81.32L52.71 56.93C52.82 55.55 52.88 54.16 52.88 52.76C52.88 48.43 52.34 44.12 51.28 39.95L87.3 19.16C96.98 28.89 110.26 34.58 124.34 34.58C138.42 34.57 151.7 28.87 161.39 19.13ZM157.77 0.919983C151.24 12.66 138.71 20.6 124.33 20.6C109.95 20.6 97.44 12.67 90.9 0.939983L33.9 33.85C37.08 39.43 38.91 45.88 38.91 52.76C38.91 56.71 38.31 60.52 37.2 64.11L96.46 98.32C103.44 90.87 113.36 86.22 124.37 86.22C135.44 86.22 145.41 90.93 152.39 98.44L211.59 64.27C210.45 60.64 209.83 56.78 209.83 52.77C209.83 45.89 211.65 39.44 214.84 33.86L157.77 0.919983Z" fill="#CE3936"></path><path d="M29.97 95.95L72.28 120.38C72.17 121.74 72.12 123.1 72.12 124.47C72.12 145.02 83.86 163.08 101.74 171.58V220.23C96.58 222.71 91.84 226.04 87.75 230.05L51.17 208.93C52.29 204.64 52.87 200.21 52.87 195.74C52.87 171.78 36.65 151.53 14.61 145.41V103.06C20.07 101.55 25.27 99.14 29.97 95.95ZM28.5 78.97C21.52 86.38 11.63 91.02 0.640015 91.02V157.49C21.77 157.49 38.9 174.62 38.9 195.75C38.9 202.77 37 209.33 33.71 214.99L91.2 248.18C96.43 239.14 105.25 232.45 115.71 230.04V161.73C98.74 157.81 86.09 142.62 86.09 124.46C86.09 120.54 86.68 116.75 87.78 113.18L28.5 78.97Z" fill="#CE3936"></path><path d="M498.39 177.5V144.88C498.39 128.55 485.11 115.27 468.78 115.27H343.22C342.69 115.27 342.18 115.32 341.67 115.4H337.19C332.35 115.4 328.42 111.46 328.42 106.63V74C328.42 69.16 332.36 65.23 337.19 65.23H486.33C492.08 65.23 496.75 60.57 496.75 54.81C496.75 49.06 492.08 44.39 486.33 44.39H337.19C320.86 44.39 307.58 57.67 307.58 74V106.62C307.58 122.95 320.86 136.23 337.19 136.23H462.75C463.28 136.23 463.79 136.18 464.3 136.1H468.78C473.62 136.1 477.55 140.04 477.55 144.87V177.49C477.55 182.33 473.61 186.26 468.78 186.26H319.64C313.89 186.26 309.22 190.92 309.22 196.68C309.22 202.43 313.89 207.1 319.64 207.1H468.78C485.11 207.11 498.39 193.83 498.39 177.5Z" fill="#CE3935"></path><path d="M710.7 177.32V75.24C710.7 58.91 697.42 45.63 681.09 45.63H550.05C533.72 45.63 520.44 58.91 520.44 75.24V177.32C520.44 193.65 533.72 206.93 550.05 206.93H681.1C697.42 206.93 710.7 193.65 710.7 177.32ZM541.27 75.24C541.27 70.4 545.21 66.47 550.04 66.47H681.09C685.93 66.47 689.86 70.41 689.86 75.24V177.32C689.86 182.16 685.92 186.09 681.09 186.09H550.05C545.21 186.09 541.28 182.15 541.28 177.32V75.24H541.27Z" fill="#CE3935"></path><path d="M1823 177.32V75.24C1823 58.91 1809.72 45.63 1793.39 45.63H1662.34C1646.01 45.63 1632.73 58.91 1632.73 75.24V177.32C1632.73 193.65 1646.01 206.93 1662.34 206.93H1793.39C1809.72 206.93 1823 193.65 1823 177.32ZM1653.57 75.24C1653.57 70.4 1657.51 66.47 1662.34 66.47H1793.39C1798.23 66.47 1802.16 70.41 1802.16 75.24V177.32C1802.16 182.16 1798.22 186.09 1793.39 186.09H1662.34C1657.5 186.09 1653.57 182.15 1653.57 177.32V75.24Z" fill="#CE3935"></path><path d="M756.76 196.51V152H849.42C855.17 152 859.84 147.34 859.84 141.58C859.84 135.83 855.17 131.16 849.42 131.16H756.76V75.23C756.76 70.39 760.7 66.46 765.53 66.46H893.29C899.04 66.46 903.71 61.8 903.71 56.04C903.71 50.29 899.04 45.62 893.29 45.62H765.53C749.2 45.62 735.92 58.9 735.92 75.23V196.5C735.92 202.25 740.59 206.92 746.34 206.92C752.09 206.93 756.76 202.27 756.76 196.51Z" fill="#CE3935"></path><path d="M933.86 66.47H1006.51V194.32C1006.51 200.07 1011.18 204.74 1016.93 204.74C1022.68 204.74 1027.35 200.07 1027.35 194.32V66.47H1100C1105.75 66.47 1110.42 61.81 1110.42 56.05C1110.42 50.3 1105.76 45.63 1100 45.63H933.86C928.11 45.63 923.44 50.29 923.44 56.05C923.45 61.81 928.11 66.47 933.86 66.47Z" fill="#CE3935"></path><path d="M1218.44 204.19C1224.19 204.19 1228.86 199.53 1228.86 193.77V152H1368.13C1384.46 152 1397.74 138.72 1397.74 122.39V75.24C1397.74 58.91 1384.46 45.63 1368.13 45.63H1237.63C1221.3 45.63 1208.02 58.91 1208.02 75.24V193.77C1208.02 199.53 1212.68 204.19 1218.44 204.19ZM1237.63 66.47H1368.13C1372.97 66.47 1376.9 70.41 1376.9 75.24V122.39C1376.9 127.23 1372.96 131.16 1368.13 131.16H1228.86V75.23C1228.86 70.41 1232.79 66.47 1237.63 66.47Z" fill="#CE3935"></path><path d="M1430.64 204.19C1436.39 204.19 1441.06 199.53 1441.06 193.77V152H1523.95C1524.57 153.18 1525.42 154.26 1526.51 155.17L1581.89 201.23C1583.83 202.85 1586.2 203.64 1588.55 203.64C1591.54 203.64 1594.5 202.36 1596.57 199.88C1600.25 195.46 1599.64 188.89 1595.22 185.21L1555.29 152H1580.33C1596.66 152 1609.94 138.72 1609.94 122.39V75.24C1609.94 58.91 1596.66 45.63 1580.33 45.63H1449.83C1433.5 45.63 1420.22 58.91 1420.22 75.24V193.77C1420.22 199.53 1424.88 204.19 1430.64 204.19ZM1449.83 66.47H1580.33C1585.17 66.47 1589.1 70.41 1589.1 75.24V122.39C1589.1 127.23 1585.17 131.16 1580.33 131.16H1441.06V75.23C1441.05 70.41 1444.99 66.47 1449.83 66.47Z" fill="#CE3935"></path>', 10)
34
34
  ]));
35
35
  }
36
- const ce = /* @__PURE__ */ w(le, [["render", ie]]), ue = {
36
+ const ce = /* @__PURE__ */ w(ae, [["render", ie]]), ue = {
37
37
  components: { IconChevronDown: te },
38
38
  props: { route: Object },
39
39
  mounted() {
40
40
  var o, e, n;
41
41
  (o = this.route) != null && o.menu && (n = (e = this.route) == null ? void 0 : e.menu) != null && n.some(
42
- (a) => {
43
- var l, i;
44
- return (a == null ? void 0 : a.path) === this.$route.path.replace("/", "") || ((i = (l = this.$route) == null ? void 0 : l.params) == null ? void 0 : i.table) === (a == null ? void 0 : a.table) && (a == null ? void 0 : a.table);
42
+ (l) => {
43
+ var a, i;
44
+ return (l == null ? void 0 : l.path) === this.$route.path.replace("/", "") || ((i = (a = this.$route) == null ? void 0 : a.params) == null ? void 0 : i.table) === (l == null ? void 0 : l.table) && (l == null ? void 0 : l.table);
45
45
  }
46
46
  ) && (this.isOpen = !0);
47
47
  },
@@ -54,12 +54,12 @@ const ce = /* @__PURE__ */ w(le, [["render", ie]]), ue = {
54
54
  key: 0,
55
55
  class: ""
56
56
  }, pe = { class: "ml-[30px] py-[6px] before:block before:absolute relative w-[196px] flex flex-col gap-[6px] inline-block before:w-[2px] before:h-[100%] before:bg-gray-100 before:left-[-14px] cursor-pointer" }, fe = { key: 1 };
57
- function he(o, e, n, a, l, i) {
57
+ function he(o, e, n, l, a, i) {
58
58
  var g, C, x, _, m, y, u, p, $, k, I, z, j;
59
59
  const b = v("IconChevronDown"), f = v("router-link");
60
60
  return (g = n.route) != null && g.menu ? (s(), r("div", de, [
61
61
  t("button", {
62
- onClick: e[0] || (e[0] = (h) => l.isOpen = !l.isOpen),
62
+ onClick: e[0] || (e[0] = (h) => a.isOpen = !a.isOpen),
63
63
  class: E(["flex cursor-pointer gap-x-3 py-2 px-3 text-sm text-gray-800 justify-start w-full border-none focus:outline-none text-left rounded-lg items-center hover:bg-gray-100 duration-300", [
64
64
  ((x = (C = n.route) == null ? void 0 : C.menu) == null ? void 0 : x.some(
65
65
  (h) => {
@@ -71,7 +71,7 @@ function he(o, e, n, a, l, i) {
71
71
  }, [
72
72
  L(V((_ = n.route) == null ? void 0 : _.ua) + " ", 1),
73
73
  c(b, {
74
- class: E([[l.isOpen && "-rotate-180"], "ml-auto duration-300"]),
74
+ class: E([[a.isOpen && "-rotate-180"], "ml-auto duration-300"]),
75
75
  width: "14",
76
76
  height: "14"
77
77
  }, null, 8, ["class"])
@@ -101,7 +101,7 @@ function he(o, e, n, a, l, i) {
101
101
  ]);
102
102
  }), 128))
103
103
  ], 512), [
104
- [J, l.isOpen]
104
+ [J, a.isOpen]
105
105
  ])
106
106
  ];
107
107
  }),
@@ -137,8 +137,8 @@ const ge = /* @__PURE__ */ w(ue, [["render", he]]), xe = {
137
137
  var o, e;
138
138
  return (o = this.searchValue) != null && o.trim() ? (e = this.flattenMenu(B.value)) == null ? void 0 : e.filter(
139
139
  (n) => {
140
- var a, l, i;
141
- return (i = (a = n == null ? void 0 : n.ua) == null ? void 0 : a.toLowerCase()) == null ? void 0 : i.includes((l = this.searchValue) == null ? void 0 : l.toLowerCase());
140
+ var l, a, i;
141
+ return (i = (l = n == null ? void 0 : n.ua) == null ? void 0 : l.toLowerCase()) == null ? void 0 : i.includes((a = this.searchValue) == null ? void 0 : a.toLowerCase());
142
142
  }
143
143
  ) : B.value;
144
144
  },
@@ -162,7 +162,7 @@ const ge = /* @__PURE__ */ w(ue, [["render", he]]), xe = {
162
162
  key: 1,
163
163
  class: "text-gray-800 text-lg mt-[20px]"
164
164
  };
165
- function ke(o, e, n, a, l, i) {
165
+ function ke(o, e, n, l, a, i) {
166
166
  var C;
167
167
  const b = v("IconSearch"), f = v("VsText"), g = v("NavbarItem");
168
168
  return s(), r("div", be, [
@@ -180,8 +180,8 @@ function ke(o, e, n, a, l, i) {
180
180
  }),
181
181
  c(f, {
182
182
  type: "text",
183
- modelValue: l.searchValue,
184
- "onUpdate:modelValue": e[0] || (e[0] = (x) => l.searchValue = x),
183
+ modelValue: a.searchValue,
184
+ "onUpdate:modelValue": e[0] || (e[0] = (x) => a.searchValue = x),
185
185
  clearable: !0,
186
186
  placeholder: "Пошук по меню",
187
187
  class: "[&>input]:h-[40px] [&>input]:block [&>input]:rounded-none [&>input]:border-x-0 [&>input]:pl-[60px] [&>input:focus]:outline-none [&>input:focus]:focus:ring-0 [&>input:focus]:border-y-gray-200 [&>input:focus]:border-y-1 [&>input:focus]:border-x-0"
@@ -227,7 +227,7 @@ const Le = /* @__PURE__ */ w(Ve, [["render", He]]), Ie = {}, ze = {
227
227
  fill: "currentColor",
228
228
  class: "icon icon-tabler icons-tabler-filled icon-tabler-user"
229
229
  };
230
- function je(o, e, n, a, l, i) {
230
+ function je(o, e, n, l, a, i) {
231
231
  return s(), r("svg", ze, e[0] || (e[0] = [
232
232
  t("path", {
233
233
  stroke: "none",
@@ -270,7 +270,7 @@ const Ze = /* @__PURE__ */ w(Ee, [["render", Oe]]), Ne = { class: "relative shri
270
270
  props: { item: Object },
271
271
  emits: ["update-notification"],
272
272
  setup(o, { emit: e }) {
273
- const n = e, a = D(!1), l = () => a.value = !0, i = () => a.value = !1, b = async () => {
273
+ const n = e, l = D(!1), a = () => l.value = !0, i = () => l.value = !1, b = async () => {
274
274
  var f;
275
275
  try {
276
276
  await O.get(`/api/notification-read/${(f = o.item) == null ? void 0 : f.id}`), await n("update-notification");
@@ -282,7 +282,7 @@ const Ze = /* @__PURE__ */ w(Ee, [["render", Oe]]), Ne = { class: "relative shri
282
282
  const C = v("VsPopover");
283
283
  return s(), r("li", {
284
284
  class: E(["relative group w-full flex gap-x-5 text-start p-5 border-b", [(x = o.item) != null && x.read ? "bg-gray-100" : "bg-white"]]),
285
- onMouseenter: l,
285
+ onMouseenter: a,
286
286
  onMouseleave: i
287
287
  }, [
288
288
  t("div", Ne, [
@@ -306,7 +306,7 @@ const Ze = /* @__PURE__ */ w(Ee, [["render", Oe]]), Ne = { class: "relative shri
306
306
  t("span", Pe, V((u = o.item) == null ? void 0 : u.author), 1),
307
307
  t("p", Qe, V((p = o.item) == null ? void 0 : p.subject), 1)
308
308
  ]),
309
- a.value ? (s(), r("div", Fe, [
309
+ l.value ? (s(), r("div", Fe, [
310
310
  c(C, {
311
311
  trigger: "hover",
312
312
  placement: "left"
@@ -339,7 +339,7 @@ const Ze = /* @__PURE__ */ w(Ee, [["render", Oe]]), Ne = { class: "relative shri
339
339
  "stroke-linecap": "round",
340
340
  "stroke-linejoin": "round"
341
341
  };
342
- function Je(o, e, n, a, l, i) {
342
+ function Je(o, e, n, l, a, i) {
343
343
  return s(), r("svg", Ge, e[0] || (e[0] = [
344
344
  t("path", { d: "M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9" }, null, -1),
345
345
  t("path", { d: "M10.3 21a1.94 1.94 0 0 0 3.4 0" }, null, -1)
@@ -373,14 +373,14 @@ const et = /* @__PURE__ */ w(We, [["render", Ye]]), tt = {
373
373
  }, ot = { class: "relative min-w-[18px] min-h-[18px] inline-flex justify-center items-center text-[10px] bg-red-500 text-white rounded-full px-1" }, nt = {
374
374
  key: 0,
375
375
  class: "w-96 h-[100px] z-[11] absolute top-[40px] right-0"
376
- }, st = { class: "h-[50px] px-[20px] border-b w-full flex items-center justify-between rounded-t-lg bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)]" }, rt = { class: "h-[30px] w-[30px] inline-flex justify-center items-center gap-x-2 rounded-full border border-transparent text-gray-500 hover:bg-gray-100 focus:outline-none focus:bg-gray-100" }, lt = { class: "max-h-[400px] bg-white overflow-auto [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300" }, at = { key: 0 }, it = {
376
+ }, st = { class: "h-[50px] px-[20px] border-b w-full flex items-center justify-between rounded-t-lg bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)]" }, rt = { class: "h-[30px] w-[30px] inline-flex justify-center items-center gap-x-2 rounded-full border border-transparent text-gray-500 hover:bg-gray-100 focus:outline-none focus:bg-gray-100" }, at = { class: "max-h-[400px] bg-white overflow-auto [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300" }, lt = { key: 0 }, it = {
377
377
  __name: "admin-notification",
378
378
  setup(o) {
379
379
  var C, x, _, m, y;
380
- const e = D(0), n = D([]), a = D(!1), l = D(null), i = (y = (m = (_ = (x = (C = K()) == null ? void 0 : C.appContext) == null ? void 0 : x.app) == null ? void 0 : _.config) == null ? void 0 : m.globalProperties) == null ? void 0 : y.$notify, b = (u) => {
381
- l.value && !l.value.contains(u.target) && (a.value = !1);
380
+ const e = D(0), n = D([]), l = D(!1), a = D(null), i = (y = (m = (_ = (x = (C = K()) == null ? void 0 : C.appContext) == null ? void 0 : x.app) == null ? void 0 : _.config) == null ? void 0 : m.globalProperties) == null ? void 0 : y.$notify, b = (u) => {
381
+ a.value && !a.value.contains(u.target) && (l.value = !1);
382
382
  };
383
- W(a, (u) => {
383
+ W(l, (u) => {
384
384
  u ? window.addEventListener("click", b) : window.removeEventListener("click", b);
385
385
  }), X(() => {
386
386
  window.removeEventListener("click", b);
@@ -411,11 +411,11 @@ const et = /* @__PURE__ */ w(We, [["render", Ye]]), tt = {
411
411
  };
412
412
  return (u, p) => (s(), r("div", {
413
413
  ref_key: "notificationRef",
414
- ref: l,
414
+ ref: a,
415
415
  class: "hs-tooltip [--placement:bottom] inline-block show relative"
416
416
  }, [
417
417
  t("button", {
418
- onClick: p[0] || (p[0] = ($) => a.value = !a.value),
418
+ onClick: p[0] || (p[0] = ($) => l.value = !l.value),
419
419
  class: "hs-tooltip-toggle relative size-[38px] inline-flex justify-center items-center gap-x-2 rounded-full border border-transparent text-gray-500 hover:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100"
420
420
  }, [
421
421
  c(Ke, {
@@ -431,7 +431,7 @@ const et = /* @__PURE__ */ w(We, [["render", Ye]]), tt = {
431
431
  default: M(() => {
432
432
  var $;
433
433
  return [
434
- a.value ? (s(), r("div", nt, [
434
+ l.value ? (s(), r("div", nt, [
435
435
  t("div", st, [
436
436
  p[2] || (p[2] = t("nav", { class: "flex" }, [
437
437
  t("button", {
@@ -443,8 +443,8 @@ const et = /* @__PURE__ */ w(We, [["render", Ye]]), tt = {
443
443
  c(et)
444
444
  ])
445
445
  ]),
446
- t("div", lt, [
447
- ($ = n.value) != null && $.length ? (s(), r("ul", at, [
446
+ t("div", at, [
447
+ ($ = n.value) != null && $.length ? (s(), r("ul", lt, [
448
448
  (s(!0), r(N, null, S(n.value, (k) => (s(), Y(Re, {
449
449
  key: k == null ? void 0 : k.id,
450
450
  item: k,
@@ -479,7 +479,7 @@ const et = /* @__PURE__ */ w(We, [["render", Ye]]), tt = {
479
479
  "stroke-linecap": "round",
480
480
  "stroke-linejoin": "round"
481
481
  };
482
- function dt(o, e, n, a, l, i) {
482
+ function dt(o, e, n, l, a, i) {
483
483
  return s(), r("svg", ut, e[0] || (e[0] = [
484
484
  t("circle", {
485
485
  cx: "12",
@@ -543,7 +543,7 @@ const pt = /* @__PURE__ */ w(ct, [["render", dt]]), ft = {
543
543
  key: 1,
544
544
  class: "size-[40px] rounded-full bg-gray-200 flex items-center justify-center"
545
545
  }, yt = { class: "text-[14px] mr-[10px] text-gray-500" }, kt = { class: "flex flex-col p-[4px]" };
546
- function $t(o, e, n, a, l, i) {
546
+ function $t(o, e, n, l, a, i) {
547
547
  var x, _, m, y, u, p, $, k, I, z;
548
548
  const b = v("IconQuestion"), f = v("AdminNotification"), g = v("IconUser"), C = v("router-link");
549
549
  return s(), r("div", ht, [
@@ -558,35 +558,35 @@ function $t(o, e, n, a, l, i) {
558
558
  e[4] || (e[4] = t("div", { class: "h-[30px] w-[1px] bg-gray-200 ml-[10px] mr-[10px]" }, null, -1)),
559
559
  t("div", bt, [
560
560
  t("div", {
561
- onClick: e[0] || (e[0] = (j) => l.isVisible = !0),
561
+ onClick: e[0] || (e[0] = (j) => a.isVisible = !0),
562
562
  class: "cursor-pointer"
563
563
  }, [
564
- (_ = (x = l.userData) == null ? void 0 : x.user) != null && _.avatar ? (s(), r("img", {
564
+ (_ = (x = a.userData) == null ? void 0 : x.user) != null && _.avatar ? (s(), r("img", {
565
565
  key: 0,
566
566
  class: "flex-shrink-0 size-[30px] rounded-full",
567
- src: (y = (m = l.userData) == null ? void 0 : m.user) == null ? void 0 : y.avatar,
567
+ src: (y = (m = a.userData) == null ? void 0 : m.user) == null ? void 0 : y.avatar,
568
568
  alt: "Image Description"
569
569
  }, null, 8, _t)) : (s(), r("div", vt, [
570
570
  c(g)
571
571
  ]))
572
572
  ]),
573
- l.isVisible ? (s(), r("div", {
573
+ a.isVisible ? (s(), r("div", {
574
574
  key: 0,
575
575
  onClick: e[2] || (e[2] = ee(() => {
576
576
  }, ["stop"])),
577
577
  class: "fixed bg-white w-[180px] top-[55px] right-[20px] shadow-xl rounded-xl z-[1]"
578
578
  }, [
579
579
  t("div", Ct, [
580
- (p = (u = l.userData) == null ? void 0 : u.user) != null && p.avatar ? (s(), r("img", {
580
+ (p = (u = a.userData) == null ? void 0 : u.user) != null && p.avatar ? (s(), r("img", {
581
581
  key: 0,
582
582
  class: "flex-shrink-0 size-[30px] rounded-full",
583
- src: (k = ($ = l.userData) == null ? void 0 : $.user) == null ? void 0 : k.avatar,
583
+ src: (k = ($ = a.userData) == null ? void 0 : $.user) == null ? void 0 : k.avatar,
584
584
  alt: "Image Description"
585
585
  }, null, 8, wt)) : (s(), r("div", mt, [
586
586
  c(g)
587
587
  ])),
588
588
  t("div", null, [
589
- t("p", yt, V((z = (I = l.userData) == null ? void 0 : I.user) == null ? void 0 : z.username), 1)
589
+ t("p", yt, V((z = (I = a.userData) == null ? void 0 : I.user) == null ? void 0 : z.username), 1)
590
590
  ])
591
591
  ]),
592
592
  t("div", kt, [
@@ -618,7 +618,7 @@ const Vt = /* @__PURE__ */ w(ft, [["render", $t]]), Mt = {
618
618
  }
619
619
  }
620
620
  }, Ht = { class: "admin-wrapper" }, Lt = { class: "flex flex-col" };
621
- function It(o, e, n, a, l, i) {
621
+ function It(o, e, n, l, a, i) {
622
622
  const b = v("navbar"), f = v("admin-header"), g = v("router-view");
623
623
  return s(), r("div", Ht, [
624
624
  c(b),
@@ -630,7 +630,7 @@ function It(o, e, n, a, l, i) {
630
630
  ])
631
631
  ]);
632
632
  }
633
- const Dt = /* @__PURE__ */ w(Mt, [["render", It], ["__scopeId", "data-v-36fd7ac9"]]);
633
+ const Dt = /* @__PURE__ */ w(Mt, [["render", It], ["__scopeId", "data-v-a53a7af5"]]);
634
634
  export {
635
635
  Dt as default
636
636
  };
package/dist/admin.js CHANGED
@@ -1,4 +1,4 @@
1
- import { i as f } from "./import-file-DA-DiiaH.js";
1
+ import { i as f } from "./import-file-CV5CU5lC.js";
2
2
  export {
3
3
  f as default
4
4
  };