admins-components 9.0.33 → 9.0.35

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.
Files changed (216) hide show
  1. package/dist/admins-components.js +35 -34
  2. package/dist/admins-components100.js +50 -80
  3. package/dist/admins-components100.js.map +1 -1
  4. package/dist/admins-components101.js +78 -109
  5. package/dist/admins-components101.js.map +1 -1
  6. package/dist/admins-components102.js +110 -44
  7. package/dist/admins-components102.js.map +1 -1
  8. package/dist/admins-components103.js +42 -101
  9. package/dist/admins-components103.js.map +1 -1
  10. package/dist/admins-components104.js +104 -18
  11. package/dist/admins-components104.js.map +1 -1
  12. package/dist/admins-components105.js +19 -6
  13. package/dist/admins-components105.js.map +1 -1
  14. package/dist/admins-components106.js +5 -250
  15. package/dist/admins-components106.js.map +1 -1
  16. package/dist/admins-components107.js +250 -25
  17. package/dist/admins-components107.js.map +1 -1
  18. package/dist/admins-components108.js +26 -27
  19. package/dist/admins-components108.js.map +1 -1
  20. package/dist/admins-components109.js +25 -169
  21. package/dist/admins-components109.js.map +1 -1
  22. package/dist/admins-components110.js +165 -61
  23. package/dist/admins-components110.js.map +1 -1
  24. package/dist/admins-components111.js +61 -60
  25. package/dist/admins-components111.js.map +1 -1
  26. package/dist/admins-components112.js +65 -28
  27. package/dist/admins-components112.js.map +1 -1
  28. package/dist/admins-components113.js +28 -14
  29. package/dist/admins-components113.js.map +1 -1
  30. package/dist/admins-components114.js +15 -26
  31. package/dist/admins-components114.js.map +1 -1
  32. package/dist/admins-components115.js +26 -8
  33. package/dist/admins-components115.js.map +1 -1
  34. package/dist/admins-components116.js +9 -4
  35. package/dist/admins-components116.js.map +1 -1
  36. package/dist/admins-components117.js +4 -3
  37. package/dist/admins-components117.js.map +1 -1
  38. package/dist/admins-components118.js +2 -2
  39. package/dist/admins-components118.js.map +1 -1
  40. package/dist/admins-components119.js +3 -21
  41. package/dist/admins-components119.js.map +1 -1
  42. package/dist/admins-components120.js +21 -14
  43. package/dist/admins-components120.js.map +1 -1
  44. package/dist/admins-components121.js +14 -8
  45. package/dist/admins-components121.js.map +1 -1
  46. package/dist/admins-components122.js +8 -13
  47. package/dist/admins-components122.js.map +1 -1
  48. package/dist/admins-components123.js +11 -24
  49. package/dist/admins-components123.js.map +1 -1
  50. package/dist/admins-components124.js +24 -81
  51. package/dist/admins-components124.js.map +1 -1
  52. package/dist/admins-components125.js +82 -10
  53. package/dist/admins-components125.js.map +1 -1
  54. package/dist/admins-components126.js +10 -4
  55. package/dist/admins-components126.js.map +1 -1
  56. package/dist/admins-components127.js +5 -8
  57. package/dist/admins-components127.js.map +1 -1
  58. package/dist/admins-components128.js +7 -6
  59. package/dist/admins-components128.js.map +1 -1
  60. package/dist/admins-components129.js +6 -5
  61. package/dist/admins-components129.js.map +1 -1
  62. package/dist/admins-components130.js +4 -13
  63. package/dist/admins-components130.js.map +1 -1
  64. package/dist/admins-components131.js +11 -9
  65. package/dist/admins-components131.js.map +1 -1
  66. package/dist/admins-components132.js +13 -30
  67. package/dist/admins-components132.js.map +1 -1
  68. package/dist/admins-components133.js +30 -4
  69. package/dist/admins-components133.js.map +1 -1
  70. package/dist/admins-components134.js +4 -29
  71. package/dist/admins-components134.js.map +1 -1
  72. package/dist/admins-components135.js +29 -5
  73. package/dist/admins-components135.js.map +1 -1
  74. package/dist/admins-components136.js +3 -3
  75. package/dist/admins-components136.js.map +1 -1
  76. package/dist/admins-components137.js +4 -7
  77. package/dist/admins-components137.js.map +1 -1
  78. package/dist/admins-components138.js +7 -73
  79. package/dist/admins-components138.js.map +1 -1
  80. package/dist/admins-components139.js +71 -26
  81. package/dist/admins-components139.js.map +1 -1
  82. package/dist/admins-components140.js +27 -57
  83. package/dist/admins-components140.js.map +1 -1
  84. package/dist/admins-components141.js +57 -22
  85. package/dist/admins-components141.js.map +1 -1
  86. package/dist/admins-components142.js +21 -47
  87. package/dist/admins-components142.js.map +1 -1
  88. package/dist/admins-components143.js +48 -29
  89. package/dist/admins-components143.js.map +1 -1
  90. package/dist/admins-components144.js +31 -3
  91. package/dist/admins-components144.js.map +1 -1
  92. package/dist/admins-components145.js +3 -179
  93. package/dist/admins-components145.js.map +1 -1
  94. package/dist/admins-components146.js +176 -43
  95. package/dist/admins-components146.js.map +1 -1
  96. package/dist/admins-components147.js +44 -35
  97. package/dist/admins-components147.js.map +1 -1
  98. package/dist/admins-components148.js +34 -43
  99. package/dist/admins-components148.js.map +1 -1
  100. package/dist/admins-components149.js +42 -137
  101. package/dist/admins-components149.js.map +1 -1
  102. package/dist/admins-components150.js +134 -51
  103. package/dist/admins-components150.js.map +1 -1
  104. package/dist/admins-components151.js +58 -7
  105. package/dist/admins-components151.js.map +1 -1
  106. package/dist/admins-components152.js +6 -5
  107. package/dist/admins-components152.js.map +1 -1
  108. package/dist/admins-components153.js +6 -76
  109. package/dist/admins-components153.js.map +1 -1
  110. package/dist/admins-components154.js +76 -29
  111. package/dist/admins-components154.js.map +1 -1
  112. package/dist/admins-components155.js +29 -1931
  113. package/dist/admins-components155.js.map +1 -1
  114. package/dist/admins-components156.js +1748 -24628
  115. package/dist/admins-components156.js.map +1 -1
  116. package/dist/admins-components157.js +24810 -8
  117. package/dist/admins-components157.js.map +1 -1
  118. package/dist/admins-components158.js +9 -7
  119. package/dist/admins-components158.js.map +1 -0
  120. package/dist/admins-components159.js +7 -142
  121. package/dist/admins-components160.js +141 -8
  122. package/dist/admins-components160.js.map +1 -1
  123. package/dist/admins-components161.js +3 -3
  124. package/dist/admins-components161.js.map +1 -1
  125. package/dist/admins-components162.js +10 -0
  126. package/dist/admins-components162.js.map +1 -0
  127. package/dist/admins-components164.js +161 -44
  128. package/dist/admins-components164.js.map +1 -1
  129. package/dist/admins-components165.js +50 -8
  130. package/dist/admins-components165.js.map +1 -1
  131. package/dist/admins-components166.js +8 -49
  132. package/dist/admins-components166.js.map +1 -1
  133. package/dist/admins-components167.js +50 -6
  134. package/dist/admins-components167.js.map +1 -1
  135. package/dist/admins-components168.js +6 -80
  136. package/dist/admins-components168.js.map +1 -1
  137. package/dist/admins-components169.js +70 -48
  138. package/dist/admins-components169.js.map +1 -1
  139. package/dist/admins-components170.js +30 -31
  140. package/dist/admins-components170.js.map +1 -1
  141. package/dist/admins-components171.js +58 -8
  142. package/dist/admins-components171.js.map +1 -1
  143. package/dist/admins-components172.js +8 -51
  144. package/dist/admins-components172.js.map +1 -1
  145. package/dist/admins-components173.js +51 -8
  146. package/dist/admins-components173.js.map +1 -1
  147. package/dist/admins-components174.js +10 -0
  148. package/dist/admins-components174.js.map +1 -0
  149. package/dist/{admins-components175.js → admins-components176.js} +3 -3
  150. package/dist/{admins-components175.js.map → admins-components176.js.map} +1 -1
  151. package/dist/admins-components21.js +114 -114
  152. package/dist/admins-components21.js.map +1 -1
  153. package/dist/admins-components22.js.map +1 -1
  154. package/dist/admins-components73.js +7 -122
  155. package/dist/admins-components73.js.map +1 -1
  156. package/dist/admins-components74.js +127 -0
  157. package/dist/admins-components74.js.map +1 -0
  158. package/dist/admins-components76.js +6 -59
  159. package/dist/admins-components76.js.map +1 -1
  160. package/dist/admins-components77.js +55 -217
  161. package/dist/admins-components77.js.map +1 -1
  162. package/dist/admins-components78.js +73 -0
  163. package/dist/admins-components78.js.map +1 -0
  164. package/dist/admins-components79.js +238 -6
  165. package/dist/admins-components79.js.map +1 -1
  166. package/dist/admins-components81.js +6 -251
  167. package/dist/admins-components81.js.map +1 -1
  168. package/dist/admins-components82.js +246 -0
  169. package/dist/admins-components82.js.map +1 -0
  170. package/dist/admins-components84.js +6 -37
  171. package/dist/admins-components84.js.map +1 -1
  172. package/dist/admins-components85.js +38 -0
  173. package/dist/{admins-components86.js.map → admins-components85.js.map} +1 -1
  174. package/dist/admins-components87.js +6 -198
  175. package/dist/admins-components87.js.map +1 -1
  176. package/dist/admins-components88.js +200 -0
  177. package/dist/admins-components88.js.map +1 -0
  178. package/dist/admins-components90.js +6 -16
  179. package/dist/admins-components90.js.map +1 -1
  180. package/dist/admins-components91.js +16 -75
  181. package/dist/admins-components91.js.map +1 -1
  182. package/dist/admins-components92.js +76 -0
  183. package/dist/{admins-components93.js.map → admins-components92.js.map} +1 -1
  184. package/dist/admins-components94.js +6 -203
  185. package/dist/admins-components94.js.map +1 -1
  186. package/dist/admins-components95.js +204 -0
  187. package/dist/admins-components95.js.map +1 -0
  188. package/dist/admins-components97.js +6 -3
  189. package/dist/admins-components97.js.map +1 -1
  190. package/dist/admins-components98.js +3 -3
  191. package/dist/admins-components98.js.map +1 -1
  192. package/dist/admins-components99.js +3 -52
  193. package/dist/admins-components99.js.map +1 -1
  194. package/dist/main.css +1 -1
  195. package/dist/main.css.map +1 -1
  196. package/dist/src/components/data-table/FiltersHistory.vue.d.ts +10 -8
  197. package/dist/src/index.d.ts +3 -1
  198. package/dist/src/styles/components/data-table/filters-history.scss_vue_type_style_index_0_src_true_lang.css +1 -1
  199. package/dist/src/utils/dataFilters.d.ts +6 -2
  200. package/dist/src/utils/storageKey.d.ts +4 -0
  201. package/package.json +1 -1
  202. package/dist/admins-components159.js.map +0 -1
  203. package/dist/admins-components163.js +0 -169
  204. package/dist/admins-components163.js.map +0 -1
  205. package/dist/admins-components75.js +0 -7
  206. package/dist/admins-components75.js.map +0 -1
  207. package/dist/admins-components80.js +0 -53
  208. package/dist/admins-components80.js.map +0 -1
  209. package/dist/admins-components83.js +0 -7
  210. package/dist/admins-components83.js.map +0 -1
  211. package/dist/admins-components86.js +0 -7
  212. package/dist/admins-components89.js +0 -7
  213. package/dist/admins-components89.js.map +0 -1
  214. package/dist/admins-components93.js +0 -7
  215. package/dist/admins-components96.js +0 -7
  216. package/dist/admins-components96.js.map +0 -1
@@ -26,37 +26,38 @@ import K from "./admins-components65.js";
26
26
  import q from "./admins-components68.js";
27
27
  import { deepMerge as J } from "./admins-components69.js";
28
28
  import Y from "./admins-components72.js";
29
- import { getDefaultPaginator as X } from "./admins-components73.js";
30
- import Z from "./admins-components75.js";
31
- import Q from "./admins-components79.js";
32
- import { filterEmptyValues as $, getDefaultFilters as ee, getFilterParams as te, writeFilterParams as ne } from "./admins-components80.js";
33
- import re from "./admins-components83.js";
34
- import ie from "./admins-components86.js";
35
- import { getUrlParam as ae, joinUrl as oe, removeUrlParam as se, setUrlParam as ce } from "./admins-components90.js";
36
- import { dataListDefaults as le } from "./admins-components94.js";
37
- import ue from "./admins-components96.js";
38
- import { isIpInUrl as de } from "./admins-components97.js";
39
- import { getCurrentSite as fe } from "./admins-components98.js";
40
- import { vTooltip as pe } from "./admins-components99.js";
41
- import { createNativeFetch as me } from "./admins-components100.js";
42
- import { FetchDetails as he, FetchError as ge, Methods as _e, initRequest as ve } from "./admins-components101.js";
43
- import { useArticleEditorService as ye } from "./admins-components102.js";
44
- import { useCurrentUser as be } from "./admins-components103.js";
45
- import { BackendService as xe, useBackendService as Se } from "./admins-components104.js";
46
- import { aoeConfig as Ce, configureArticleOfferElement as we } from "./admins-components157.js";
47
- import Te from "./admins-components159.js";
48
- import { apeConfig as Ee, configureArticlePickerElement as De } from "./admins-components160.js";
49
- import { configureImagePickerElement as Oe, ipeConfig as ke } from "./admins-components161.js";
50
- import Ae from "./admins-components163.js";
51
- import je from "./admins-components164.js";
52
- import { configureExternalArticleOfferElement as Me, eaoeConfig as Ne } from "./admins-components165.js";
53
- import Pe from "./admins-components166.js";
54
- import { configureGalleryImageSelectorElement as Fe, gisConfig as Ie } from "./admins-components167.js";
55
- import Le from "./admins-components168.js";
56
- import Re from "./admins-components169.js";
57
- import ze from "./admins-components170.js";
58
- import { configureInternalArticleOfferElement as Be, iaoeConfig as Ve } from "./admins-components171.js";
59
- import He from "./admins-components172.js";
60
- import { configurePartnerPickerElement as Ue, ppeconfig as We } from "./admins-components173.js";
61
- import Ge from "./admins-components175.js";
62
- export { Te as ArticleOfferElement, Ae as ArticlePickerElement, xe as BackendService, l as Button, p as Calendar, _ as Checkbox, w as ConfirmModal, T as CopyToClipboard, q as DataCards, re as DataFilters, ue as DataList, Y as DataListOptions, Z as DataPaginator, K as DataTable, m as DatePicker, v as DateRangePicker, je as DateTimePickerElement, b as DropdownMenu, y as DropdownSelect, D as ExternalArticleOffer, Pe as ExternalArticleOfferElement, he as FetchDetails, ge as FetchError, ie as FilterTags, Q as FiltersHistory, Le as GalleryImageSelectorElement, S as HeaderComponent, E as ImagePicker, ze as ImagePickerDetailsElement, Re as ImagePickerElement, O as InternalArticleOffer, He as InternalArticleOfferElement, k as Loader, _e as Methods, C as Modal, Ge as PartnerPickerElement, x as Sidebar, g as TextInput, j as ToastNotification, Ce as aoeConfig, Ee as apeConfig, F as booleanToString, u as calendarConfigDefaults, e as castToDate, we as configureArticleOfferElement, De as configureArticlePickerElement, Me as configureExternalArticleOfferElement, Fe as configureGalleryImageSelectorElement, Oe as configureImagePickerElement, Be as configureInternalArticleOfferElement, Ue as configurePartnerPickerElement, me as createNativeFetch, M as dataCardsSettingsDefaults, I as dataListConverters, le as dataListDefaults, N as dataListSettingsDefaults, P as dataTableSettingsDefaults, d as datePickerConfigDefaults, f as dateRangePickerConfigDefaults, h as debounce, J as deepMerge, Ne as eaoeConfig, t as earlierOf, n as endOfDay, L as enumMap, $ as filterEmptyValues, R as formatCurrency, r as formatDate, z as formatNumber, fe as getCurrentSite, ee as getDefaultFilters, X as getDefaultPaginator, te as getFilterParams, ae as getUrlParam, Ie as gisConfig, Ve as iaoeConfig, B as identity, ve as initRequest, ke as ipeConfig, de as isIpInUrl, oe as joinUrl, i as laterOf, V as listToString, H as localToLocalString, a as localToUTCString, o as parseDate, We as ppeconfig, se as removeUrlParam, ce as setUrlParam, U as shortUuid, s as startOfDay, c as startOfWeek, W as textEllipse, A as toast, ye as useArticleEditorService, Se as useBackendService, be as useCurrentUser, G as utcToLocalString, pe as vTooltip, ne as writeFilterParams };
29
+ import { getFullStorageKey as X } from "./admins-components73.js";
30
+ import { getDefaultPaginator as Z } from "./admins-components74.js";
31
+ import Q from "./admins-components76.js";
32
+ import { filterEmptyValues as $, getDefaultFilterRaws as ee, getDefaultFilters as te, getDefaultSavedFilter as ne, getFilterUrlParams as re, getSavedFilters as ie, writeFilterParams as ae } from "./admins-components78.js";
33
+ import oe from "./admins-components81.js";
34
+ import se from "./admins-components84.js";
35
+ import ce from "./admins-components87.js";
36
+ import { getUrlParam as le, joinUrl as ue, removeUrlParam as de, setUrlParam as fe } from "./admins-components91.js";
37
+ import { dataListDefaults as pe } from "./admins-components95.js";
38
+ import me from "./admins-components97.js";
39
+ import { isIpInUrl as he } from "./admins-components98.js";
40
+ import { getCurrentSite as ge } from "./admins-components99.js";
41
+ import { vTooltip as _e } from "./admins-components100.js";
42
+ import { createNativeFetch as ve } from "./admins-components101.js";
43
+ import { FetchDetails as ye, FetchError as be, Methods as xe, initRequest as Se } from "./admins-components102.js";
44
+ import { useArticleEditorService as Ce } from "./admins-components103.js";
45
+ import { useCurrentUser as we } from "./admins-components104.js";
46
+ import { BackendService as Te, useBackendService as Ee } from "./admins-components105.js";
47
+ import { aoeConfig as De, configureArticleOfferElement as Oe } from "./admins-components158.js";
48
+ import ke from "./admins-components160.js";
49
+ import { apeConfig as Ae, configureArticlePickerElement as je } from "./admins-components161.js";
50
+ import { configureImagePickerElement as Me, ipeConfig as Ne } from "./admins-components162.js";
51
+ import Pe from "./admins-components164.js";
52
+ import Fe from "./admins-components165.js";
53
+ import { configureExternalArticleOfferElement as Ie, eaoeConfig as Le } from "./admins-components166.js";
54
+ import Re from "./admins-components167.js";
55
+ import { configureGalleryImageSelectorElement as ze, gisConfig as Be } from "./admins-components168.js";
56
+ import Ve from "./admins-components169.js";
57
+ import He from "./admins-components170.js";
58
+ import Ue from "./admins-components171.js";
59
+ import { configureInternalArticleOfferElement as We, iaoeConfig as Ge } from "./admins-components172.js";
60
+ import Ke from "./admins-components173.js";
61
+ import { configurePartnerPickerElement as qe, ppeconfig as Je } from "./admins-components174.js";
62
+ import Ye from "./admins-components176.js";
63
+ export { ke as ArticleOfferElement, Pe as ArticlePickerElement, Te as BackendService, l as Button, p as Calendar, _ as Checkbox, w as ConfirmModal, T as CopyToClipboard, q as DataCards, se as DataFilters, me as DataList, Y as DataListOptions, Q as DataPaginator, K as DataTable, m as DatePicker, v as DateRangePicker, Fe as DateTimePickerElement, b as DropdownMenu, y as DropdownSelect, D as ExternalArticleOffer, Re as ExternalArticleOfferElement, ye as FetchDetails, be as FetchError, ce as FilterTags, oe as FiltersHistory, Ve as GalleryImageSelectorElement, S as HeaderComponent, E as ImagePicker, Ue as ImagePickerDetailsElement, He as ImagePickerElement, O as InternalArticleOffer, Ke as InternalArticleOfferElement, k as Loader, xe as Methods, C as Modal, Ye as PartnerPickerElement, x as Sidebar, g as TextInput, j as ToastNotification, De as aoeConfig, Ae as apeConfig, F as booleanToString, u as calendarConfigDefaults, e as castToDate, Oe as configureArticleOfferElement, je as configureArticlePickerElement, Ie as configureExternalArticleOfferElement, ze as configureGalleryImageSelectorElement, Me as configureImagePickerElement, We as configureInternalArticleOfferElement, qe as configurePartnerPickerElement, ve as createNativeFetch, M as dataCardsSettingsDefaults, I as dataListConverters, pe as dataListDefaults, N as dataListSettingsDefaults, P as dataTableSettingsDefaults, d as datePickerConfigDefaults, f as dateRangePickerConfigDefaults, h as debounce, J as deepMerge, Le as eaoeConfig, t as earlierOf, n as endOfDay, L as enumMap, $ as filterEmptyValues, R as formatCurrency, r as formatDate, z as formatNumber, ge as getCurrentSite, ee as getDefaultFilterRaws, te as getDefaultFilters, Z as getDefaultPaginator, ne as getDefaultSavedFilter, re as getFilterUrlParams, X as getFullStorageKey, ie as getSavedFilters, le as getUrlParam, Be as gisConfig, Ge as iaoeConfig, B as identity, Se as initRequest, Ne as ipeConfig, he as isIpInUrl, ue as joinUrl, i as laterOf, V as listToString, H as localToLocalString, a as localToUTCString, o as parseDate, Je as ppeconfig, de as removeUrlParam, fe as setUrlParam, U as shortUuid, s as startOfDay, c as startOfWeek, W as textEllipse, A as toast, Ce as useArticleEditorService, Ee as useBackendService, we as useCurrentUser, G as utcToLocalString, _e as vTooltip, ae as writeFilterParams };
@@ -1,83 +1,53 @@
1
- import { joinUrl as e } from "./admins-components90.js";
2
- import { ref as t } from "vue";
3
- //#region src/services/createNativeFetch.ts
4
- function n(n) {
5
- return function(i) {
6
- let a = t(null), o = t(null), s = t(null), c = t(null), l = t(!1), u = t(!1), d = "GET", f, p = "json", m = null, h = {
7
- data: a,
8
- error: o,
9
- response: s,
10
- statusCode: c,
11
- isFetching: l,
12
- canAbort: u,
13
- get() {
14
- return d = "GET", h;
15
- },
16
- post(e) {
17
- return d = "POST", f = e, h;
18
- },
19
- put(e) {
20
- return d = "PUT", f = e, h;
21
- },
22
- patch(e) {
23
- return d = "PATCH", f = e, h;
24
- },
25
- delete(e) {
26
- return d = "DELETE", f = e, h;
27
- },
28
- json() {
29
- return p = "json", h;
30
- },
31
- text() {
32
- return p = "text", h;
33
- },
34
- abort() {
35
- m?.abort();
36
- },
37
- async execute() {
38
- m = new AbortController(), l.value = !0, u.value = !0, o.value = null, s.value = null, c.value = null;
39
- let t = {
40
- ...n.fetchOptions,
41
- method: d,
42
- signal: m.signal
43
- };
44
- f != null && d !== "GET" && (t.body = r(f) ? JSON.stringify(f.value) : JSON.stringify(f));
45
- let g = {
46
- url: e(n.baseUrl, i),
47
- options: t
48
- };
49
- try {
50
- n.options?.beforeFetch?.(g);
51
- let e = await fetch(g.url, g.options);
52
- s.value = e, c.value = e.status;
53
- let t = null;
54
- if (p === "text") t = await e.text();
55
- else {
56
- let n = await e.text();
57
- t = n ? JSON.parse(n) : null;
58
- }
59
- if (a.value = t, !e.ok) throw Error(e.statusText || `HTTP ${e.status}`);
60
- n.options?.afterFetch?.({
61
- data: t,
62
- response: e
63
- });
64
- } catch (e) {
65
- o.value = e, n.options?.onFetchError?.({
66
- error: e,
67
- response: s.value,
68
- data: a.value
69
- });
70
- } finally {
71
- l.value = !1, u.value = !1, m = null;
72
- }
73
- return h;
74
- }
75
- };
76
- return n.options?.immediate !== !1 && h.execute(), h;
77
- };
1
+ //#region src/directives/tooltip.ts
2
+ function e() {
3
+ let e = document.createElement("div");
4
+ return e.className = "v-tooltip ac-component", e.style.position = "fixed", e.style.zIndex = "9999999", e.style.opacity = "0", e.style.pointerEvents = "none", e.style.transition = "opacity 0.15s", e;
5
+ }
6
+ function t(e, t) {
7
+ let n = window.innerWidth, r = window.innerHeight;
8
+ e.style.maxWidth = `min(${n - 16}px, 300px)`;
9
+ let i = e.getBoundingClientRect(), a = i.width, o = i.height, s = t.clientX + 12, c = t.clientY + 18;
10
+ s + a > n - 8 && (s = t.clientX - a - 12), c + o > r - 8 && (c = t.clientY - o - 12), s = Math.max(8, Math.min(s, n - a - 8)), c = Math.max(8, Math.min(c, r - o - 8)), e.style.left = `${s}px`, e.style.top = `${c}px`;
78
11
  }
79
- function r(e) {
80
- return !!e && typeof e == "object" && "value" in e;
12
+ function n(e, t, n) {
13
+ n ? e.innerHTML = t : e.textContent = t;
81
14
  }
15
+ var r = {
16
+ mounted(r, i) {
17
+ let a = e();
18
+ n(a, i.value, !!i.modifiers.html), document.body.appendChild(a);
19
+ let o = null, s = null, c = null, l = (e) => {
20
+ c = e;
21
+ }, u = (e) => {
22
+ c = e, s &&= (clearTimeout(s), null), o = setTimeout(() => {
23
+ t(a, c ?? e), a.style.opacity = "1";
24
+ }, 400);
25
+ }, d = () => {
26
+ c = null, o &&= (clearTimeout(o), null), s = setTimeout(() => {
27
+ a.style.opacity = "0";
28
+ }, 50);
29
+ }, f = (e) => {
30
+ o &&= (clearTimeout(o), null), s &&= (clearTimeout(s), null), a.style.opacity === "1" ? a.style.opacity = "0" : (t(a, e), a.style.opacity = "1");
31
+ }, p = () => {
32
+ o &&= (clearTimeout(o), null), a.style.opacity = "0";
33
+ };
34
+ r.addEventListener("mouseenter", u), r.addEventListener("mousemove", l), r.addEventListener("mouseleave", d), r.addEventListener("click", f), window.addEventListener("scroll", p, !0), r._tooltip = {
35
+ el: a,
36
+ showTimeout: o,
37
+ hideTimeout: s,
38
+ onEnter: u,
39
+ onMove: l,
40
+ onLeave: d,
41
+ onClick: f,
42
+ onScroll: p
43
+ };
44
+ },
45
+ updated(e, t) {
46
+ e._tooltip && n(e._tooltip.el, t.value, !!t.modifiers.html);
47
+ },
48
+ unmounted(e) {
49
+ e._tooltip &&= (e.removeEventListener("mouseenter", e._tooltip.onEnter), e.removeEventListener("mousemove", e._tooltip.onMove), e.removeEventListener("mouseleave", e._tooltip.onLeave), e.removeEventListener("click", e._tooltip.onClick), window.removeEventListener("scroll", e._tooltip.onScroll, !0), e._tooltip.el.remove(), void 0);
50
+ }
51
+ };
82
52
  //#endregion
83
- export { n as createNativeFetch };
53
+ export { r as vTooltip };
@@ -1 +1 @@
1
- {"version":3,"file":"admins-components100.js","names":[],"sources":["../src/services/createNativeFetch.ts"],"sourcesContent":["/* VueUse helyett */\nimport { ref, type Ref } from 'vue'\nimport { joinUrl } from '@/utils/url'\n\nexport type NativeUseFetchReturn<T = unknown> = {\n data: Ref<T | null>\n error: Ref<any>\n response: Ref<Response | null>\n statusCode: Ref<number | null>\n isFetching: Ref<boolean>\n canAbort: Ref<boolean>\n\n get: () => NativeUseFetchReturn<T>\n post: (payload?: unknown) => NativeUseFetchReturn<T>\n put: (payload?: unknown) => NativeUseFetchReturn<T>\n patch: (payload?: unknown) => NativeUseFetchReturn<T>\n delete: (payload?: unknown) => NativeUseFetchReturn<T>\n\n json: <R = T>() => NativeUseFetchReturn<R>\n text: () => NativeUseFetchReturn<string>\n\n execute: () => Promise<NativeUseFetchReturn<T>>\n abort: () => void\n}\n\nexport type CreateFetchOptions = {\n baseUrl: string\n fetchOptions?: RequestInit\n options?: {\n immediate?: boolean\n beforeFetch?: (ctx: { url: string; options: RequestInit }) => any\n afterFetch?: (ctx: { data: unknown; response: Response }) => any\n onFetchError?: (ctx: { error: any; response: Response | null; data: unknown }) => any\n }\n}\n\nexport function createNativeFetch(config: CreateFetchOptions) {\n return function useNativeFetch<T = unknown>(url: string): NativeUseFetchReturn<T> {\n const data = ref<T | null>(null) as Ref<T | null>\n const error = ref<any>(null)\n const response = ref<Response | null>(null)\n const statusCode = ref<number | null>(null)\n const isFetching = ref(false)\n const canAbort = ref(false)\n\n let method = 'GET'\n let payload: unknown = undefined\n let parser: 'json' | 'text' = 'json'\n let controller: AbortController | null = null\n\n const instance: NativeUseFetchReturn<T> = {\n data,\n error,\n response,\n statusCode,\n isFetching,\n canAbort,\n\n get() {\n method = 'GET'\n return instance\n },\n\n post(p?: unknown) {\n method = 'POST'\n payload = p\n return instance\n },\n\n put(p?: unknown) {\n method = 'PUT'\n payload = p\n return instance\n },\n\n patch(p?: unknown) {\n method = 'PATCH'\n payload = p\n return instance\n },\n\n delete(p?: unknown) {\n method = 'DELETE'\n payload = p\n return instance\n },\n\n json<R = T>() {\n parser = 'json'\n return instance as unknown as NativeUseFetchReturn<R>\n },\n\n text() {\n parser = 'text'\n return instance as unknown as NativeUseFetchReturn<string>\n },\n\n abort() {\n controller?.abort()\n },\n\n async execute() {\n controller = new AbortController()\n\n isFetching.value = true\n canAbort.value = true\n error.value = null\n response.value = null\n statusCode.value = null\n\n const requestOptions: RequestInit = {\n ...config.fetchOptions,\n method,\n signal: controller.signal,\n }\n\n if (payload !== undefined && payload !== null && method !== 'GET') {\n requestOptions.body = isRefLike(payload)\n ? JSON.stringify(payload.value)\n : JSON.stringify(payload)\n }\n\n const ctx = {\n url: joinUrl(config.baseUrl, url),\n options: requestOptions,\n }\n\n try {\n config.options?.beforeFetch?.(ctx)\n\n const res = await fetch(ctx.url, ctx.options)\n\n response.value = res\n statusCode.value = res.status\n\n let parsedData: unknown = null\n\n if (parser === 'text') {\n parsedData = await res.text()\n } else {\n const text = await res.text()\n parsedData = text ? JSON.parse(text) : null\n }\n\n data.value = parsedData as T\n\n if (!res.ok) {\n throw new Error(res.statusText || `HTTP ${res.status}`)\n }\n\n config.options?.afterFetch?.({\n data: parsedData,\n response: res,\n })\n } catch (e: any) {\n error.value = e\n\n config.options?.onFetchError?.({\n error: e,\n response: response.value,\n data: data.value,\n })\n } finally {\n isFetching.value = false\n canAbort.value = false\n controller = null\n }\n\n return instance\n },\n } satisfies NativeUseFetchReturn<T>\n\n if (config.options?.immediate !== false) {\n instance.execute()\n }\n\n return instance\n }\n}\n\nfunction isRefLike(value: unknown): value is Ref<unknown> {\n return !!value && typeof value === 'object' && 'value' in value\n}\n"],"mappings":";;;AAoCA,SAAgB,EAAkB,GAA4B;CAC5D,OAAO,SAAqC,GAAsC;EAChF,IAAM,IAAO,EAAc,IAAI,GACzB,IAAQ,EAAS,IAAI,GACrB,IAAW,EAAqB,IAAI,GACpC,IAAa,EAAmB,IAAI,GACpC,IAAa,EAAI,EAAK,GACtB,IAAW,EAAI,EAAK,GAEtB,IAAS,OACT,GACA,IAA0B,QAC1B,IAAqC,MAEnC,IAAoC;GACxC;GACA;GACA;GACA;GACA;GACA;GAEA,MAAM;IAEJ,OADA,IAAS,OACF;GACT;GAEA,KAAK,GAAa;IAGhB,OAFA,IAAS,QACT,IAAU,GACH;GACT;GAEA,IAAI,GAAa;IAGf,OAFA,IAAS,OACT,IAAU,GACH;GACT;GAEA,MAAM,GAAa;IAGjB,OAFA,IAAS,SACT,IAAU,GACH;GACT;GAEA,OAAO,GAAa;IAGlB,OAFA,IAAS,UACT,IAAU,GACH;GACT;GAEA,OAAc;IAEZ,OADA,IAAS,QACF;GACT;GAEA,OAAO;IAEL,OADA,IAAS,QACF;GACT;GAEA,QAAQ;IACN,GAAY,MAAM;GACpB;GAEA,MAAM,UAAU;IAOd,AANA,IAAa,IAAI,gBAAgB,GAEjC,EAAW,QAAQ,IACnB,EAAS,QAAQ,IACjB,EAAM,QAAQ,MACd,EAAS,QAAQ,MACjB,EAAW,QAAQ;IAEnB,IAAM,IAA8B;KAClC,GAAG,EAAO;KACV;KACA,QAAQ,EAAW;IACrB;IAEA,AAAI,KAAqC,QAAQ,MAAW,UAC1D,EAAe,OAAO,EAAU,CAAO,IACnC,KAAK,UAAU,EAAQ,KAAK,IAC5B,KAAK,UAAU,CAAO;IAG5B,IAAM,IAAM;KACV,KAAK,EAAQ,EAAO,SAAS,CAAG;KAChC,SAAS;IACX;IAEA,IAAI;KACF,EAAO,SAAS,cAAc,CAAG;KAEjC,IAAM,IAAM,MAAM,MAAM,EAAI,KAAK,EAAI,OAAO;KAG5C,AADA,EAAS,QAAQ,GACjB,EAAW,QAAQ,EAAI;KAEvB,IAAI,IAAsB;KAE1B,IAAI,MAAW,QACb,IAAa,MAAM,EAAI,KAAK;UACvB;MACL,IAAM,IAAO,MAAM,EAAI,KAAK;MAC5B,IAAa,IAAO,KAAK,MAAM,CAAI,IAAI;KACzC;KAIA,IAFA,EAAK,QAAQ,GAET,CAAC,EAAI,IACP,MAAU,MAAM,EAAI,cAAc,QAAQ,EAAI,QAAQ;KAGxD,EAAO,SAAS,aAAa;MAC3B,MAAM;MACN,UAAU;KACZ,CAAC;IACH,SAAS,GAAQ;KAGf,AAFA,EAAM,QAAQ,GAEd,EAAO,SAAS,eAAe;MAC7B,OAAO;MACP,UAAU,EAAS;MACnB,MAAM,EAAK;KACb,CAAC;IACH,UAAU;KAGR,AAFA,EAAW,QAAQ,IACnB,EAAS,QAAQ,IACjB,IAAa;IACf;IAEA,OAAO;GACT;EACF;EAMA,OAJI,EAAO,SAAS,cAAc,MAChC,EAAS,QAAQ,GAGZ;CACT;AACF;AAEA,SAAS,EAAU,GAAuC;CACxD,OAAO,CAAC,CAAC,KAAS,OAAO,KAAU,YAAY,WAAW;AAC5D"}
1
+ {"version":3,"file":"admins-components100.js","names":[],"sources":["../src/directives/tooltip.ts"],"sourcesContent":["import type { Directive, DirectiveBinding } from 'vue'\n\ninterface TooltipEl extends HTMLElement {\n _tooltip?: {\n el: HTMLElement\n showTimeout: ReturnType<typeof setTimeout> | null\n hideTimeout: ReturnType<typeof setTimeout> | null\n onEnter: (e: MouseEvent) => void\n onMove: (e: MouseEvent) => void\n onLeave: () => void\n onClick: (e: MouseEvent) => void\n onScroll: () => void\n }\n}\n\nfunction createTooltipEl(): HTMLElement {\n const el = document.createElement('div')\n el.className = 'v-tooltip ac-component'\n el.style.position = 'fixed'\n el.style.zIndex = '9999999'\n el.style.opacity = '0'\n el.style.pointerEvents = 'none'\n el.style.transition = 'opacity 0.15s'\n return el\n}\n\nfunction position(tooltip: HTMLElement, e: MouseEvent) {\n const offsetX = 12\n const offsetY = 18\n const edge = 8\n const vw = window.innerWidth\n const vh = window.innerHeight\n\n tooltip.style.maxWidth = `min(${vw - 2 * edge}px, 300px)`\n\n const rect = tooltip.getBoundingClientRect()\n const w = rect.width\n const h = rect.height\n\n let x = e.clientX + offsetX\n let y = e.clientY + offsetY\n\n if (x + w > vw - edge) {\n x = e.clientX - w - offsetX\n }\n if (y + h > vh - edge) {\n y = e.clientY - h - offsetX\n }\n\n x = Math.max(edge, Math.min(x, vw - w - edge))\n y = Math.max(edge, Math.min(y, vh - h - edge))\n\n tooltip.style.left = `${x}px`\n tooltip.style.top = `${y}px`\n}\n\nfunction setContent(tooltip: HTMLElement, value: string, html: boolean) {\n if (html) {\n tooltip.innerHTML = value\n } else {\n tooltip.textContent = value\n }\n}\n\nexport const vTooltip: Directive = {\n mounted(el: TooltipEl, binding: DirectiveBinding<string>) {\n const tooltip = createTooltipEl()\n setContent(tooltip, binding.value, !!binding.modifiers.html)\n document.body.appendChild(tooltip)\n\n let showTimeout: ReturnType<typeof setTimeout> | null = null\n let hideTimeout: ReturnType<typeof setTimeout> | null = null\n let lastEvent: MouseEvent | null = null\n\n const onMove = (e: MouseEvent) => {\n lastEvent = e\n }\n\n const onEnter = (e: MouseEvent) => {\n lastEvent = e\n if (hideTimeout) {\n clearTimeout(hideTimeout)\n hideTimeout = null\n }\n showTimeout = setTimeout(() => {\n position(tooltip, lastEvent ?? e)\n tooltip.style.opacity = '1'\n }, 400)\n }\n\n const onLeave = () => {\n lastEvent = null\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = null\n }\n hideTimeout = setTimeout(() => {\n tooltip.style.opacity = '0'\n }, 50)\n }\n\n const onClick = (e: MouseEvent) => {\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = null\n }\n if (hideTimeout) {\n clearTimeout(hideTimeout)\n hideTimeout = null\n }\n if (tooltip.style.opacity === '1') {\n tooltip.style.opacity = '0'\n } else {\n position(tooltip, e)\n tooltip.style.opacity = '1'\n }\n }\n\n const onScroll = () => {\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = null\n }\n tooltip.style.opacity = '0'\n }\n\n el.addEventListener('mouseenter', onEnter)\n el.addEventListener('mousemove', onMove)\n el.addEventListener('mouseleave', onLeave)\n el.addEventListener('click', onClick)\n window.addEventListener('scroll', onScroll, true)\n\n el._tooltip = {\n el: tooltip,\n showTimeout,\n hideTimeout,\n onEnter,\n onMove,\n onLeave,\n onClick,\n onScroll,\n }\n },\n\n updated(el: TooltipEl, binding: DirectiveBinding<string>) {\n if (el._tooltip) {\n setContent(el._tooltip.el, binding.value, !!binding.modifiers.html)\n }\n },\n\n unmounted(el: TooltipEl) {\n if (el._tooltip) {\n el.removeEventListener('mouseenter', el._tooltip.onEnter)\n el.removeEventListener('mousemove', el._tooltip.onMove)\n el.removeEventListener('mouseleave', el._tooltip.onLeave)\n el.removeEventListener('click', el._tooltip.onClick)\n window.removeEventListener('scroll', el._tooltip.onScroll, true)\n el._tooltip.el.remove()\n el._tooltip = undefined\n }\n },\n}\n"],"mappings":"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"}
@@ -1,114 +1,83 @@
1
- import { toast as e } from "./admins-components53.js";
2
- import { isIpInUrl as t } from "./admins-components97.js";
3
- import { createNativeFetch as n } from "./admins-components100.js";
4
- import { ref as r, watch as i } from "vue";
5
- //#region src/services/services.ts
6
- var a = class {
7
- title;
8
- message;
9
- errorCode;
10
- constructor(e, t, n) {
11
- this.title = e, this.message = t, this.errorCode = n;
12
- }
13
- }, o = /* @__PURE__ */ function(e) {
14
- return e[e.GET = 0] = "GET", e[e.GET_TEXT = 1] = "GET_TEXT", e[e.POST = 2] = "POST", e[e.POST_TEXT = 3] = "POST_TEXT", e[e.PUT = 4] = "PUT", e[e.PUT_TEXT = 5] = "PUT_TEXT", e[e.PATCH = 6] = "PATCH", e[e.DELETE = 7] = "DELETE", e;
15
- }({}), s = class {
16
- relativeUrl;
17
- method;
18
- fetchMethod;
19
- constructor(r, i, a, s, c = "application/json", l) {
20
- this.relativeUrl = i, this.method = a, this.fetchMethod = n({
21
- baseUrl: r,
22
- fetchOptions: { credentials: r.indexOf("localhost") != -1 || t(r) ? "omit" : "include" },
23
- options: {
24
- immediate: !1,
25
- beforeFetch: (e) => {
26
- e.options.headers = {
27
- ...c ? { "Content-Type": c } : {},
28
- ...l ?? {}
29
- };
30
- },
31
- onFetchError: (t) => {
32
- if (t.error?.name === "AbortError") return t;
33
- let n = "Ismeretlen eredetű hiba!", r = !t.response;
34
- return t.response && !t.response.ok && (r = !0, n = s.get(t.response.status), n || (n = `${o[a]} for Call: ${i} with Status: ${t.response.status} has no registered errorMessages!`, console.error(n))), r && e.error("Hiba a szerver elérése közben...", n), t;
35
- },
36
- afterFetch: (e) => e
37
- }
38
- });
39
- }
40
- };
41
- function c(e, t, n, o) {
42
- let s = {};
43
- s.payload = r(t), s.routeParams = r(n), s.queryParams = r(o), s.isFetching = r(!1), s.data = r();
44
- let c = null, l = null;
45
- return s.execute = () => {
46
- c &&= (c(), null), l &&= (l(), null), s.fetch && s.fetch.canAbort.value && s.fetch.abort();
47
- let t = `${u(e.relativeUrl, s.routeParams.value, s.queryParams.value)}`, n = e.fetchMethod(t), r, o = n.isFetching;
48
- async function d() {
49
- if (f() && s.successCallback) s.successCallback(s.data.value);
50
- else if (!f() && s.errorCallback) {
51
- console.log(s.fetch.error.value);
52
- let e;
53
- if (s.fetch.response.value && s.fetch.response.value.body) {
54
- let { value: t, done: n } = await s.fetch.response.value.body.getReader().read();
55
- !n && t && (e = new TextDecoder().decode(t), console.log("Response Body:", e));
1
+ import { joinUrl as e } from "./admins-components91.js";
2
+ import { ref as t } from "vue";
3
+ //#region src/services/createNativeFetch.ts
4
+ function n(n) {
5
+ return function(i) {
6
+ let a = t(null), o = t(null), s = t(null), c = t(null), l = t(!1), u = t(!1), d = "GET", f, p = "json", m = null, h = {
7
+ data: a,
8
+ error: o,
9
+ response: s,
10
+ statusCode: c,
11
+ isFetching: l,
12
+ canAbort: u,
13
+ get() {
14
+ return d = "GET", h;
15
+ },
16
+ post(e) {
17
+ return d = "POST", f = e, h;
18
+ },
19
+ put(e) {
20
+ return d = "PUT", f = e, h;
21
+ },
22
+ patch(e) {
23
+ return d = "PATCH", f = e, h;
24
+ },
25
+ delete(e) {
26
+ return d = "DELETE", f = e, h;
27
+ },
28
+ json() {
29
+ return p = "json", h;
30
+ },
31
+ text() {
32
+ return p = "text", h;
33
+ },
34
+ abort() {
35
+ m?.abort();
36
+ },
37
+ async execute() {
38
+ m = new AbortController(), l.value = !0, u.value = !0, o.value = null, s.value = null, c.value = null;
39
+ let t = {
40
+ ...n.fetchOptions,
41
+ method: d,
42
+ signal: m.signal
43
+ };
44
+ f != null && d !== "GET" && (t.body = r(f) ? JSON.stringify(f.value) : JSON.stringify(f));
45
+ let g = {
46
+ url: e(n.baseUrl, i),
47
+ options: t
48
+ };
49
+ try {
50
+ n.options?.beforeFetch?.(g);
51
+ let e = await fetch(g.url, g.options);
52
+ s.value = e, c.value = e.status;
53
+ let t = null;
54
+ if (p === "text") t = await e.text();
55
+ else {
56
+ let n = await e.text();
57
+ t = n ? JSON.parse(n) : null;
58
+ }
59
+ if (a.value = t, !e.ok) throw Error(e.statusText || `HTTP ${e.status}`);
60
+ n.options?.afterFetch?.({
61
+ data: t,
62
+ response: e
63
+ });
64
+ } catch (e) {
65
+ o.value = e, n.options?.onFetchError?.({
66
+ error: e,
67
+ response: s.value,
68
+ data: a.value
69
+ });
70
+ } finally {
71
+ l.value = !1, u.value = !1, m = null;
56
72
  }
57
- s.errorCallback(new a(s.fetch.error.value, e, s.fetch.statusCode.value ? s.fetch.statusCode.value : void 0));
73
+ return h;
58
74
  }
59
- s.finallyCallback && s.finallyCallback();
60
- }
61
- function f() {
62
- return s.fetch.statusCode && s.fetch.statusCode.value >= 200 && s.fetch.statusCode.value <= 299;
63
- }
64
- switch (e.method) {
65
- case 0:
66
- r = n.get().json().data;
67
- break;
68
- case 1:
69
- r = n.get().text().data;
70
- break;
71
- case 4:
72
- r = n.put(s.payload).json().data;
73
- break;
74
- case 5:
75
- r = n.put(s.payload).text().data;
76
- break;
77
- case 3:
78
- r = n.post(s.payload).text().data;
79
- break;
80
- case 2:
81
- r = n.post(s.payload).json().data;
82
- break;
83
- case 6:
84
- r = n.patch(s.payload).json().data;
85
- break;
86
- case 7:
87
- r = n.delete(s.payload).json().data;
88
- break;
89
- default: throw Error(`Method: ${e.method} is not implemented!`);
90
- }
91
- c = i(r, (e) => {
92
- s.data.value = e;
93
- }), l = i(o, (e) => {
94
- s.isFetching.value = e, e || d();
95
- }), s.fetch = n, n.execute();
96
- }, s;
97
- }
98
- function l(e) {
99
- return e ? Object.keys(e).filter((t) => e[t] !== void 0 && e[t] !== null).map((t) => `${encodeURIComponent(t)}=${encodeURIComponent(String(e[t]))}`).join("&") : "";
75
+ };
76
+ return n.options?.immediate !== !1 && h.execute(), h;
77
+ };
100
78
  }
101
- function u(e, t, n) {
102
- let r = e;
103
- if (r ||= "", r.slice(-1) === "/" && (r = r.substring(0, r.length - 1)), t && Object.keys(t).forEach((e) => {
104
- if (r.indexOf(`{${e}}`) === -1) throw window.dispatchEvent(new CustomEvent("fetch-error", { detail: new a("Hiba!", `RouteParams: ${e} not found in url: ${r}! Contact the developers!`) })), Error(`RouteParams: ${e} not found in url: ${r}! Contact the developers!`);
105
- let n = t[e];
106
- r = r.replace(`{${e}}`, n);
107
- }), n) {
108
- let e = l(n);
109
- e.length > 0 && (r.indexOf("?") === -1 ? r += "?" : !r.endsWith("?") && !r.endsWith("&") && (r += "&"), r += e);
110
- }
111
- return r;
79
+ function r(e) {
80
+ return !!e && typeof e == "object" && "value" in e;
112
81
  }
113
82
  //#endregion
114
- export { s as FetchDetails, a as FetchError, o as Methods, c as initRequest };
83
+ export { n as createNativeFetch };
@@ -1 +1 @@
1
- {"version":3,"file":"admins-components101.js","names":[],"sources":["../src/services/services.ts"],"sourcesContent":["import { createNativeFetch, type NativeUseFetchReturn } from '@/services/createNativeFetch'\nimport { ref, watch, type Ref } from 'vue'\nimport { isIpInUrl } from '@/utils/ipUtils'\nimport { toast } from '@/services/toast'\n\nexport class FetchError {\n title?: string\n message?: string\n errorCode?: number\n constructor(title?: string, message?: string, errorCode?: number) {\n this.title = title\n this.message = message\n this.errorCode = errorCode\n }\n}\n\nexport interface HttpRequest<TPayload, TRouteParams, TQueryParams, TResponse> {\n data: Ref<TResponse>\n execute: () => any\n isFetching: Ref<boolean>\n fetch: NativeUseFetchReturn\n successCallback?: (response: TResponse) => void\n errorCallback?: (error: FetchError) => void\n finallyCallback?: () => void\n queryParams: Ref<TQueryParams>\n routeParams: Ref<TRouteParams>\n payload: Ref<TPayload>\n}\n\nexport enum Methods {\n GET,\n GET_TEXT,\n POST,\n POST_TEXT,\n PUT,\n PUT_TEXT,\n PATCH,\n DELETE,\n}\n\nexport class FetchDetails {\n public fetchMethod: ReturnType<typeof createNativeFetch>\n\n constructor(\n baseUrl: string,\n public relativeUrl: string,\n public method: Methods,\n errorMessages: Map<number, string>,\n contentType: string | null = 'application/json',\n defaultRequestHeaders?: Record<string, string>,\n ) {\n this.fetchMethod = createNativeFetch({\n baseUrl,\n fetchOptions: {\n credentials: baseUrl.indexOf('localhost') != -1 || isIpInUrl(baseUrl) ? 'omit' : 'include',\n },\n options: {\n immediate: false,\n\n beforeFetch: (ctx) => {\n ctx.options.headers = {\n ...(contentType ? { 'Content-Type': contentType } : {}),\n ...(defaultRequestHeaders ?? {}),\n }\n },\n\n onFetchError: (ctx) => {\n if (ctx.error?.name === 'AbortError') {\n return ctx\n }\n\n let errorMsg: string | undefined = 'Ismeretlen eredetű hiba!'\n let showError = !ctx.response\n\n if (ctx.response && !ctx.response.ok) {\n showError = true\n errorMsg = errorMessages.get(ctx.response.status)\n\n if (!errorMsg) {\n errorMsg = `${Methods[method]} for Call: ${relativeUrl} with Status: ${ctx.response.status} has no registered errorMessages!`\n console.error(errorMsg)\n }\n }\n\n if (showError) {\n toast.error('Hiba a szerver elérése közben...', errorMsg)\n }\n\n return ctx\n },\n\n afterFetch: (ctx) => ctx,\n },\n })\n }\n}\n\nexport function initRequest<TPayload, TRouteParams, TQueryParams, TResponse>(\n fetchDetails: FetchDetails,\n payload: TPayload,\n routeParams: TRouteParams,\n queryParams: TQueryParams,\n) {\n const detail = {} as HttpRequest<TPayload, TRouteParams, TQueryParams, TResponse>\n\n detail.payload = ref(payload) as Ref<TPayload>\n detail.routeParams = ref(routeParams) as Ref<TRouteParams>\n detail.queryParams = ref(queryParams) as Ref<TQueryParams>\n detail.isFetching = ref(false)\n detail.data = ref<TResponse>() as Ref<TResponse>\n\n let stopDataWatch: (() => void) | null = null\n let stopFetchingWatch: (() => void) | null = null\n\n detail.execute = () => {\n if (stopDataWatch) {\n stopDataWatch()\n stopDataWatch = null\n }\n if (stopFetchingWatch) {\n stopFetchingWatch()\n stopFetchingWatch = null\n }\n\n if (detail.fetch && detail.fetch.canAbort.value) {\n detail.fetch.abort()\n }\n\n const fullurl = `${generateUrl(fetchDetails.relativeUrl, detail.routeParams.value, detail.queryParams.value)}`\n\n const fetch = fetchDetails.fetchMethod(fullurl)\n\n let data: Ref<TResponse>\n const isFetching = fetch.isFetching\n\n async function onFetchFinished() {\n if (isSuccessStatusCode() && detail.successCallback) {\n detail.successCallback(detail.data.value)\n } else if (!isSuccessStatusCode() && detail.errorCallback) {\n console.log(detail.fetch.error.value)\n let responseBody: string | undefined = undefined\n if (detail.fetch.response.value && detail.fetch.response.value.body) {\n const reader = detail.fetch.response.value.body.getReader()\n const { value, done } = await reader.read()\n if (!done && value) {\n responseBody = new TextDecoder().decode(value)\n console.log('Response Body:', responseBody)\n }\n }\n detail.errorCallback(\n new FetchError(\n detail.fetch.error.value,\n responseBody,\n detail.fetch.statusCode.value ? detail.fetch.statusCode.value : undefined,\n ),\n )\n }\n\n if (detail.finallyCallback) {\n detail.finallyCallback()\n }\n }\n\n function isSuccessStatusCode() {\n return (\n detail.fetch.statusCode &&\n detail.fetch.statusCode.value! >= 200 &&\n detail.fetch.statusCode.value! <= 299\n )\n }\n\n switch (fetchDetails.method) {\n case Methods.GET:\n data = fetch.get().json().data as Ref<TResponse>\n break\n case Methods.GET_TEXT:\n data = fetch.get().text().data as Ref<TResponse>\n break\n case Methods.PUT:\n data = fetch.put(detail.payload).json().data as Ref<TResponse>\n break\n case Methods.PUT_TEXT:\n data = fetch.put(detail.payload).text().data as Ref<TResponse>\n break\n case Methods.POST_TEXT:\n data = fetch.post(detail.payload).text().data as Ref<TResponse>\n break\n case Methods.POST:\n data = fetch.post(detail.payload).json().data as Ref<TResponse>\n break\n case Methods.PATCH:\n data = fetch.patch(detail.payload).json().data as Ref<TResponse>\n break\n case Methods.DELETE:\n data = fetch.delete(detail.payload).json().data as Ref<TResponse>\n break\n\n default:\n throw new Error(`Method: ${fetchDetails.method} is not implemented!`)\n }\n\n stopDataWatch = watch(data, (v) => {\n detail.data.value = v\n })\n\n stopFetchingWatch = watch(isFetching, (i) => {\n detail.isFetching.value = i\n if (!i) {\n onFetchFinished()\n }\n })\n\n detail.fetch = fetch\n fetch.execute()\n }\n\n return detail\n}\n\nexport function serializeQueryParams(\n queryParams: Record<string, unknown> | null | undefined,\n): string {\n if (!queryParams) {\n return ''\n }\n\n return Object.keys(queryParams)\n .filter((k) => queryParams[k] !== undefined && queryParams[k] !== null)\n .map((k) => `${encodeURIComponent(k)}=${encodeURIComponent(String(queryParams[k]))}`)\n .join('&')\n}\n\nfunction generateUrl(relativeUrl: string, routeParams: any, queryParams: any) {\n let res = relativeUrl\n\n if (!res) res = ''\n\n if (res.slice(-1) === '/') {\n res = res.substring(0, res.length - 1)\n }\n\n if (routeParams) {\n Object.keys(routeParams).forEach((k) => {\n if (res.indexOf(`{${k}}`) === -1) {\n window.dispatchEvent(\n new CustomEvent('fetch-error', {\n detail: new FetchError(\n 'Hiba!',\n `RouteParams: ${k} not found in url: ${res}! Contact the developers!`,\n ),\n }),\n )\n\n throw new Error(`RouteParams: ${k} not found in url: ${res}! Contact the developers!`)\n }\n\n const val = routeParams[k]\n\n res = res.replace(`{${k}}`, val)\n })\n }\n\n if (queryParams) {\n const parts = serializeQueryParams(queryParams)\n\n if (parts.length > 0) {\n if (res.indexOf('?') === -1) {\n res += '?'\n } else if (!res.endsWith('?') && !res.endsWith('&')) {\n res += '&'\n }\n\n res += parts\n }\n }\n\n return res\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"admins-components101.js","names":[],"sources":["../src/services/createNativeFetch.ts"],"sourcesContent":["/* VueUse helyett */\nimport { ref, type Ref } from 'vue'\nimport { joinUrl } from '@/utils/url'\n\nexport type NativeUseFetchReturn<T = unknown> = {\n data: Ref<T | null>\n error: Ref<any>\n response: Ref<Response | null>\n statusCode: Ref<number | null>\n isFetching: Ref<boolean>\n canAbort: Ref<boolean>\n\n get: () => NativeUseFetchReturn<T>\n post: (payload?: unknown) => NativeUseFetchReturn<T>\n put: (payload?: unknown) => NativeUseFetchReturn<T>\n patch: (payload?: unknown) => NativeUseFetchReturn<T>\n delete: (payload?: unknown) => NativeUseFetchReturn<T>\n\n json: <R = T>() => NativeUseFetchReturn<R>\n text: () => NativeUseFetchReturn<string>\n\n execute: () => Promise<NativeUseFetchReturn<T>>\n abort: () => void\n}\n\nexport type CreateFetchOptions = {\n baseUrl: string\n fetchOptions?: RequestInit\n options?: {\n immediate?: boolean\n beforeFetch?: (ctx: { url: string; options: RequestInit }) => any\n afterFetch?: (ctx: { data: unknown; response: Response }) => any\n onFetchError?: (ctx: { error: any; response: Response | null; data: unknown }) => any\n }\n}\n\nexport function createNativeFetch(config: CreateFetchOptions) {\n return function useNativeFetch<T = unknown>(url: string): NativeUseFetchReturn<T> {\n const data = ref<T | null>(null) as Ref<T | null>\n const error = ref<any>(null)\n const response = ref<Response | null>(null)\n const statusCode = ref<number | null>(null)\n const isFetching = ref(false)\n const canAbort = ref(false)\n\n let method = 'GET'\n let payload: unknown = undefined\n let parser: 'json' | 'text' = 'json'\n let controller: AbortController | null = null\n\n const instance: NativeUseFetchReturn<T> = {\n data,\n error,\n response,\n statusCode,\n isFetching,\n canAbort,\n\n get() {\n method = 'GET'\n return instance\n },\n\n post(p?: unknown) {\n method = 'POST'\n payload = p\n return instance\n },\n\n put(p?: unknown) {\n method = 'PUT'\n payload = p\n return instance\n },\n\n patch(p?: unknown) {\n method = 'PATCH'\n payload = p\n return instance\n },\n\n delete(p?: unknown) {\n method = 'DELETE'\n payload = p\n return instance\n },\n\n json<R = T>() {\n parser = 'json'\n return instance as unknown as NativeUseFetchReturn<R>\n },\n\n text() {\n parser = 'text'\n return instance as unknown as NativeUseFetchReturn<string>\n },\n\n abort() {\n controller?.abort()\n },\n\n async execute() {\n controller = new AbortController()\n\n isFetching.value = true\n canAbort.value = true\n error.value = null\n response.value = null\n statusCode.value = null\n\n const requestOptions: RequestInit = {\n ...config.fetchOptions,\n method,\n signal: controller.signal,\n }\n\n if (payload !== undefined && payload !== null && method !== 'GET') {\n requestOptions.body = isRefLike(payload)\n ? JSON.stringify(payload.value)\n : JSON.stringify(payload)\n }\n\n const ctx = {\n url: joinUrl(config.baseUrl, url),\n options: requestOptions,\n }\n\n try {\n config.options?.beforeFetch?.(ctx)\n\n const res = await fetch(ctx.url, ctx.options)\n\n response.value = res\n statusCode.value = res.status\n\n let parsedData: unknown = null\n\n if (parser === 'text') {\n parsedData = await res.text()\n } else {\n const text = await res.text()\n parsedData = text ? JSON.parse(text) : null\n }\n\n data.value = parsedData as T\n\n if (!res.ok) {\n throw new Error(res.statusText || `HTTP ${res.status}`)\n }\n\n config.options?.afterFetch?.({\n data: parsedData,\n response: res,\n })\n } catch (e: any) {\n error.value = e\n\n config.options?.onFetchError?.({\n error: e,\n response: response.value,\n data: data.value,\n })\n } finally {\n isFetching.value = false\n canAbort.value = false\n controller = null\n }\n\n return instance\n },\n } satisfies NativeUseFetchReturn<T>\n\n if (config.options?.immediate !== false) {\n instance.execute()\n }\n\n return instance\n }\n}\n\nfunction isRefLike(value: unknown): value is Ref<unknown> {\n return !!value && typeof value === 'object' && 'value' in value\n}\n"],"mappings":";;;AAoCA,SAAgB,EAAkB,GAA4B;CAC5D,OAAO,SAAqC,GAAsC;EAChF,IAAM,IAAO,EAAc,IAAI,GACzB,IAAQ,EAAS,IAAI,GACrB,IAAW,EAAqB,IAAI,GACpC,IAAa,EAAmB,IAAI,GACpC,IAAa,EAAI,EAAK,GACtB,IAAW,EAAI,EAAK,GAEtB,IAAS,OACT,GACA,IAA0B,QAC1B,IAAqC,MAEnC,IAAoC;GACxC;GACA;GACA;GACA;GACA;GACA;GAEA,MAAM;IAEJ,OADA,IAAS,OACF;GACT;GAEA,KAAK,GAAa;IAGhB,OAFA,IAAS,QACT,IAAU,GACH;GACT;GAEA,IAAI,GAAa;IAGf,OAFA,IAAS,OACT,IAAU,GACH;GACT;GAEA,MAAM,GAAa;IAGjB,OAFA,IAAS,SACT,IAAU,GACH;GACT;GAEA,OAAO,GAAa;IAGlB,OAFA,IAAS,UACT,IAAU,GACH;GACT;GAEA,OAAc;IAEZ,OADA,IAAS,QACF;GACT;GAEA,OAAO;IAEL,OADA,IAAS,QACF;GACT;GAEA,QAAQ;IACN,GAAY,MAAM;GACpB;GAEA,MAAM,UAAU;IAOd,AANA,IAAa,IAAI,gBAAgB,GAEjC,EAAW,QAAQ,IACnB,EAAS,QAAQ,IACjB,EAAM,QAAQ,MACd,EAAS,QAAQ,MACjB,EAAW,QAAQ;IAEnB,IAAM,IAA8B;KAClC,GAAG,EAAO;KACV;KACA,QAAQ,EAAW;IACrB;IAEA,AAAI,KAAqC,QAAQ,MAAW,UAC1D,EAAe,OAAO,EAAU,CAAO,IACnC,KAAK,UAAU,EAAQ,KAAK,IAC5B,KAAK,UAAU,CAAO;IAG5B,IAAM,IAAM;KACV,KAAK,EAAQ,EAAO,SAAS,CAAG;KAChC,SAAS;IACX;IAEA,IAAI;KACF,EAAO,SAAS,cAAc,CAAG;KAEjC,IAAM,IAAM,MAAM,MAAM,EAAI,KAAK,EAAI,OAAO;KAG5C,AADA,EAAS,QAAQ,GACjB,EAAW,QAAQ,EAAI;KAEvB,IAAI,IAAsB;KAE1B,IAAI,MAAW,QACb,IAAa,MAAM,EAAI,KAAK;UACvB;MACL,IAAM,IAAO,MAAM,EAAI,KAAK;MAC5B,IAAa,IAAO,KAAK,MAAM,CAAI,IAAI;KACzC;KAIA,IAFA,EAAK,QAAQ,GAET,CAAC,EAAI,IACP,MAAU,MAAM,EAAI,cAAc,QAAQ,EAAI,QAAQ;KAGxD,EAAO,SAAS,aAAa;MAC3B,MAAM;MACN,UAAU;KACZ,CAAC;IACH,SAAS,GAAQ;KAGf,AAFA,EAAM,QAAQ,GAEd,EAAO,SAAS,eAAe;MAC7B,OAAO;MACP,UAAU,EAAS;MACnB,MAAM,EAAK;KACb,CAAC;IACH,UAAU;KAGR,AAFA,EAAW,QAAQ,IACnB,EAAS,QAAQ,IACjB,IAAa;IACf;IAEA,OAAO;GACT;EACF;EAMA,OAJI,EAAO,SAAS,cAAc,MAChC,EAAS,QAAQ,GAGZ;CACT;AACF;AAEA,SAAS,EAAU,GAAuC;CACxD,OAAO,CAAC,CAAC,KAAS,OAAO,KAAU,YAAY,WAAW;AAC5D"}