@splendidlabz/utils 1.10.2 → 1.10.3

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 (201) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/dom/accessibility.cjs +0 -2
  3. package/dist/cjs/dom/actions/index.cjs +7 -391
  4. package/dist/cjs/dom/actions/masonry.cjs +6 -97
  5. package/dist/cjs/dom/actions/prefer-horizontal-scroll.cjs +14 -58
  6. package/dist/cjs/dom/actions/sticky.cjs +6 -126
  7. package/dist/cjs/dom/bounding-box.cjs +0 -2
  8. package/dist/cjs/dom/clipboard.cjs +0 -2
  9. package/dist/cjs/dom/cookie.cjs +1 -3
  10. package/dist/cjs/dom/css-vars.cjs +3 -13
  11. package/dist/cjs/dom/events.cjs +0 -2
  12. package/dist/cjs/dom/focusable.cjs +0 -2
  13. package/dist/cjs/dom/font-size.cjs +3 -15
  14. package/dist/cjs/dom/get-element.cjs +1 -3
  15. package/dist/cjs/dom/hash.cjs +0 -2
  16. package/dist/cjs/dom/index.cjs +47 -1248
  17. package/dist/cjs/dom/keyboard.cjs +0 -2
  18. package/dist/cjs/dom/local-store.cjs +1 -3
  19. package/dist/cjs/dom/media.cjs +0 -2
  20. package/dist/cjs/dom/observers/index.cjs +9 -235
  21. package/dist/cjs/dom/observers/intersection-observer.cjs +6 -38
  22. package/dist/cjs/dom/observers/mutation-observer.cjs +6 -38
  23. package/dist/cjs/dom/observers/observer.cjs +2 -12
  24. package/dist/cjs/dom/observers/resize-observer.cjs +6 -38
  25. package/dist/cjs/dom/observers/scroll-observer.cjs +3 -62
  26. package/dist/cjs/dom/pkce.cjs +3 -13
  27. package/dist/cjs/dom/query-params.cjs +1 -3
  28. package/dist/cjs/dom/random-string.cjs +0 -2
  29. package/dist/cjs/dom/sanitize.cjs +3 -27
  30. package/dist/cjs/dom/session-store.cjs +1 -3
  31. package/dist/cjs/dom/spam-prevention.cjs +0 -2
  32. package/dist/cjs/dom/trap-focus.cjs +9 -131
  33. package/dist/cjs/dom/ui/aria-current.cjs +0 -2
  34. package/dist/cjs/dom/ui/inconsistent-button-fix.cjs +0 -2
  35. package/dist/cjs/dom/ui/index.cjs +9 -87
  36. package/dist/cjs/dom/ui/scroll-container.cjs +0 -2
  37. package/dist/cjs/dom/ui/traverse-and-scramble.cjs +0 -2
  38. package/dist/cjs/lib/arrays/index.cjs +13 -121
  39. package/dist/cjs/lib/arrays/item-position.cjs +0 -2
  40. package/dist/cjs/lib/arrays/join.cjs +2 -10
  41. package/dist/cjs/lib/arrays/shuffle.cjs +0 -2
  42. package/dist/cjs/lib/arrays/sort.cjs +3 -11
  43. package/dist/cjs/lib/arrays/split-array.cjs +0 -2
  44. package/dist/cjs/lib/arrays/unique.cjs +0 -2
  45. package/dist/cjs/lib/auth/index.cjs +3 -35
  46. package/dist/cjs/lib/auth/route-manager.cjs +0 -2
  47. package/dist/cjs/lib/checks.cjs +0 -2
  48. package/dist/cjs/lib/date/days.cjs +1 -3
  49. package/dist/cjs/lib/date/index.cjs +7 -190
  50. package/dist/cjs/lib/date/months.cjs +1 -3
  51. package/dist/cjs/lib/date/time.cjs +2 -14
  52. package/dist/cjs/lib/form/form-data.cjs +0 -2
  53. package/dist/cjs/lib/form/index.cjs +5 -104
  54. package/dist/cjs/lib/form/sanitize.cjs +0 -2
  55. package/dist/cjs/lib/functions/callback.cjs +0 -2
  56. package/dist/cjs/lib/functions/debounce.cjs +0 -2
  57. package/dist/cjs/lib/functions/env.cjs +0 -2
  58. package/dist/cjs/lib/functions/functional.cjs +0 -2
  59. package/dist/cjs/lib/functions/index.cjs +11 -124
  60. package/dist/cjs/lib/functions/throttle.cjs +0 -2
  61. package/dist/cjs/lib/functions/timeout.cjs +0 -2
  62. package/dist/cjs/lib/hash.cjs +0 -2
  63. package/dist/cjs/lib/index.cjs +29 -1155
  64. package/dist/cjs/lib/numbers/index.cjs +4 -17
  65. package/dist/cjs/lib/numbers/math.cjs +0 -2
  66. package/dist/cjs/lib/objects/camelcase-keys.cjs +4 -45
  67. package/dist/cjs/lib/objects/empty.cjs +0 -2
  68. package/dist/cjs/lib/objects/equal.cjs +0 -2
  69. package/dist/cjs/lib/objects/extend.cjs +6 -117
  70. package/dist/cjs/lib/objects/flatten.cjs +3 -11
  71. package/dist/cjs/lib/objects/index.cjs +27 -360
  72. package/dist/cjs/lib/objects/json.cjs +0 -2
  73. package/dist/cjs/lib/objects/loop.cjs +0 -2
  74. package/dist/cjs/lib/objects/mix/mix.cjs +3 -5
  75. package/dist/cjs/lib/objects/nested-property.cjs +0 -2
  76. package/dist/cjs/lib/objects/normalize-object.cjs +4 -78
  77. package/dist/cjs/lib/objects/omit-empty.cjs +0 -2
  78. package/dist/cjs/lib/objects/size.cjs +0 -2
  79. package/dist/cjs/lib/objects/split.cjs +0 -2
  80. package/dist/cjs/lib/promises/index.cjs +3 -51
  81. package/dist/cjs/lib/promises/reject.cjs +2 -19
  82. package/dist/cjs/lib/sse.cjs +4 -29
  83. package/dist/cjs/lib/strings/convert-case/convert-case.cjs +0 -2
  84. package/dist/cjs/lib/strings/index.cjs +11 -179
  85. package/dist/cjs/lib/strings/markdown.cjs +1 -3
  86. package/dist/cjs/lib/strings/name.cjs +0 -2
  87. package/dist/cjs/lib/strings/pluralize.cjs +1 -3
  88. package/dist/cjs/lib/strings/query-string.cjs +0 -2
  89. package/dist/cjs/lib/style/index.cjs +2 -31
  90. package/dist/cjs/lib/symbols/index.cjs +3 -22
  91. package/dist/cjs/lib/symbols/symbols.cjs +0 -2
  92. package/dist/cjs/node/common.cjs +0 -2
  93. package/dist/cjs/node/dirname.cjs +2 -4
  94. package/dist/cjs/node/file-cache.cjs +3 -45
  95. package/dist/cjs/node/file.cjs +2 -4
  96. package/dist/cjs/node/hash.cjs +1 -3
  97. package/dist/cjs/node/index.cjs +15 -272
  98. package/dist/cjs/node/pkce.cjs +5 -15
  99. package/dist/cjs/node/random-string.cjs +1 -3
  100. package/dist/cjs/node/sanitize.cjs +3 -27
  101. package/dist/esm/dom/accessibility.js +0 -1
  102. package/dist/esm/dom/actions/index.js +3 -381
  103. package/dist/esm/dom/actions/masonry.js +3 -91
  104. package/dist/esm/dom/actions/prefer-horizontal-scroll.js +4 -45
  105. package/dist/esm/dom/actions/sticky.js +3 -120
  106. package/dist/esm/dom/bounding-box.js +0 -1
  107. package/dist/esm/dom/clipboard.js +0 -1
  108. package/dist/esm/dom/cookie.js +1 -2
  109. package/dist/esm/dom/css-vars.js +1 -8
  110. package/dist/esm/dom/events.js +0 -1
  111. package/dist/esm/dom/focusable.js +0 -1
  112. package/dist/esm/dom/font-size.js +1 -10
  113. package/dist/esm/dom/get-element.js +1 -2
  114. package/dist/esm/dom/hash.js +0 -1
  115. package/dist/esm/dom/index.js +23 -1168
  116. package/dist/esm/dom/keyboard.js +0 -1
  117. package/dist/esm/dom/local-store.js +1 -2
  118. package/dist/esm/dom/media.js +0 -1
  119. package/dist/esm/dom/observers/index.js +4 -224
  120. package/dist/esm/dom/observers/intersection-observer.js +2 -31
  121. package/dist/esm/dom/observers/mutation-observer.js +3 -32
  122. package/dist/esm/dom/observers/observer.js +1 -8
  123. package/dist/esm/dom/observers/resize-observer.js +2 -31
  124. package/dist/esm/dom/observers/scroll-observer.js +2 -58
  125. package/dist/esm/dom/pkce.js +1 -8
  126. package/dist/esm/dom/query-params.js +1 -2
  127. package/dist/esm/dom/random-string.js +0 -1
  128. package/dist/esm/dom/sanitize.js +3 -26
  129. package/dist/esm/dom/session-store.js +1 -2
  130. package/dist/esm/dom/spam-prevention.js +0 -1
  131. package/dist/esm/dom/trap-focus.js +2 -121
  132. package/dist/esm/dom/ui/aria-current.js +0 -1
  133. package/dist/esm/dom/ui/inconsistent-button-fix.js +0 -1
  134. package/dist/esm/dom/ui/index.js +4 -75
  135. package/dist/esm/dom/ui/scroll-container.js +0 -1
  136. package/dist/esm/dom/ui/traverse-and-scramble.js +0 -1
  137. package/dist/esm/lib/arrays/index.js +6 -106
  138. package/dist/esm/lib/arrays/item-position.js +0 -1
  139. package/dist/esm/lib/arrays/join.js +1 -6
  140. package/dist/esm/lib/arrays/shuffle.js +0 -1
  141. package/dist/esm/lib/arrays/sort.js +1 -6
  142. package/dist/esm/lib/arrays/split-array.js +0 -1
  143. package/dist/esm/lib/arrays/unique.js +0 -1
  144. package/dist/esm/lib/auth/index.js +1 -26
  145. package/dist/esm/lib/auth/route-manager.js +0 -1
  146. package/dist/esm/lib/checks.js +0 -1
  147. package/dist/esm/lib/date/days.js +1 -2
  148. package/dist/esm/lib/date/index.js +3 -173
  149. package/dist/esm/lib/date/months.js +1 -2
  150. package/dist/esm/lib/date/time.js +1 -10
  151. package/dist/esm/lib/form/form-data.js +0 -1
  152. package/dist/esm/lib/form/index.js +2 -92
  153. package/dist/esm/lib/form/sanitize.js +0 -1
  154. package/dist/esm/lib/functions/callback.js +0 -1
  155. package/dist/esm/lib/functions/debounce.js +0 -1
  156. package/dist/esm/lib/functions/env.js +0 -1
  157. package/dist/esm/lib/functions/functional.js +0 -1
  158. package/dist/esm/lib/functions/index.js +5 -105
  159. package/dist/esm/lib/functions/throttle.js +0 -1
  160. package/dist/esm/lib/functions/timeout.js +0 -1
  161. package/dist/esm/lib/hash.js +0 -1
  162. package/dist/esm/lib/index.js +14 -1052
  163. package/dist/esm/lib/numbers/index.js +2 -12
  164. package/dist/esm/lib/numbers/math.js +0 -1
  165. package/dist/esm/lib/objects/camelcase-keys.js +2 -40
  166. package/dist/esm/lib/objects/empty.js +0 -1
  167. package/dist/esm/lib/objects/equal.js +0 -1
  168. package/dist/esm/lib/objects/extend.js +3 -111
  169. package/dist/esm/lib/objects/flatten.js +1 -6
  170. package/dist/esm/lib/objects/index.js +13 -323
  171. package/dist/esm/lib/objects/json.js +0 -1
  172. package/dist/esm/lib/objects/loop.js +0 -1
  173. package/dist/esm/lib/objects/mix/mix.js +3 -4
  174. package/dist/esm/lib/objects/nested-property.js +0 -1
  175. package/dist/esm/lib/objects/normalize-object.js +3 -74
  176. package/dist/esm/lib/objects/omit-empty.js +0 -1
  177. package/dist/esm/lib/objects/size.js +0 -1
  178. package/dist/esm/lib/objects/split.js +0 -1
  179. package/dist/esm/lib/promises/index.js +1 -33
  180. package/dist/esm/lib/promises/reject.js +1 -17
  181. package/dist/esm/lib/sse.js +2 -24
  182. package/dist/esm/lib/strings/convert-case/convert-case.js +0 -1
  183. package/dist/esm/lib/strings/index.js +5 -147
  184. package/dist/esm/lib/strings/markdown.js +1 -2
  185. package/dist/esm/lib/strings/name.js +0 -1
  186. package/dist/esm/lib/strings/pluralize.js +1 -2
  187. package/dist/esm/lib/strings/query-string.js +0 -1
  188. package/dist/esm/lib/style/index.js +1 -27
  189. package/dist/esm/lib/symbols/index.js +1 -13
  190. package/dist/esm/lib/symbols/symbols.js +0 -1
  191. package/dist/esm/node/common.js +0 -1
  192. package/dist/esm/node/dirname.js +2 -3
  193. package/dist/esm/node/file-cache.js +2 -43
  194. package/dist/esm/node/file.js +2 -3
  195. package/dist/esm/node/hash.js +1 -2
  196. package/dist/esm/node/index.js +7 -243
  197. package/dist/esm/node/pkce.js +3 -12
  198. package/dist/esm/node/random-string.js +1 -2
  199. package/dist/esm/node/sanitize.js +3 -26
  200. package/package.json +1 -1
  201. package/tsup.config.mjs +2 -0
@@ -15,8 +15,6 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/keyboard.js
20
18
  var keyboard_exports = {};
21
19
  __export(keyboard_exports, {
22
20
  isArrowKey: () => isArrowKey,
@@ -15,14 +15,12 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/local-store.js
20
18
  var local_store_exports = {};
21
19
  __export(local_store_exports, {
22
20
  localStore: () => localStore
23
21
  });
24
22
  module.exports = __toCommonJS(local_store_exports);
25
- var localStore = {
23
+ const localStore = {
26
24
  /**
27
25
  * Retrieves a value from localStorage
28
26
  * @param {string} key - The key to retrieve from localStorage
@@ -15,8 +15,6 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/media.js
20
18
  var media_exports = {};
21
19
  __export(media_exports, {
22
20
  imagesLoaded: () => imagesLoaded,
@@ -2,10 +2,6 @@ var __defProp = Object.defineProperty;
2
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
5
  var __copyProps = (to, from, except, desc) => {
10
6
  if (from && typeof from === "object" || typeof from === "function") {
11
7
  for (let key of __getOwnPropNames(from))
@@ -14,240 +10,18 @@ var __copyProps = (to, from, except, desc) => {
14
10
  }
15
11
  return to;
16
12
  };
13
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
17
14
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/observers/index.js
20
15
  var observers_exports = {};
21
- __export(observers_exports, {
22
- intersectionObserver: () => intersectionObserver,
23
- mutationObserver: () => mutationObserver,
24
- resizeObserver: () => resizeObserver,
25
- scrollObserver: () => scrollObserver
26
- });
27
16
  module.exports = __toCommonJS(observers_exports);
28
-
29
- // src/dom/events.js
30
- function dispatchEvent(node, eventName, detail, options = {}) {
31
- node.dispatchEvent(
32
- new CustomEvent(eventName, {
33
- ...options,
34
- detail
35
- })
36
- );
37
- }
38
-
39
- // src/dom/get-element.js
40
- function getNodeType(node) {
41
- if (node instanceof Element) return "element";
42
- if (node instanceof NodeList) return "nodelist";
43
- if (Array.isArray(node)) return "array";
44
- }
45
-
46
- // src/dom/observers/observer.js
47
- function useObserverMethodOnTarget(target, observer, method = "observe", options = void 0) {
48
- const targetType = getNodeType(target);
49
- if (targetType === "element") observer[method](target, options);
50
- if (targetType === "nodelist") {
51
- const elements = Array.from(target);
52
- elements.forEach((element) => observer[method](element, options));
53
- }
54
- if (targetType === "array") {
55
- target.forEach((element) => observer[method](element, options));
56
- }
57
- }
58
-
59
- // src/dom/observers/intersection-observer.js
60
- function intersectionObserver(target, options = {}) {
61
- const { callback, ...opts } = options;
62
- const observer = new IntersectionObserver(observerFn, opts);
63
- useObserverMethodOnTarget(target, observer, "observe");
64
- function observerFn(entries) {
65
- for (const entry of entries) {
66
- if (callback) callback({ entry, entries, observer });
67
- else dispatchEvent(target, "intersect", { entry, entries, observer });
68
- }
69
- }
70
- return {
71
- observer,
72
- observe(target2) {
73
- useObserverMethodOnTarget(target2, observer, "observe", options);
74
- },
75
- unobserve(target2) {
76
- useObserverMethodOnTarget(target2, observer, "unobserve");
77
- },
78
- takeRecords() {
79
- return observer.takeRecords();
80
- },
81
- disconnect() {
82
- const records = observer.takeRecords();
83
- observer.disconnect();
84
- if (records.length > 0) observerFn(records);
85
- },
86
- destroy() {
87
- observer.disconnect();
88
- }
89
- };
90
- }
91
-
92
- // src/dom/observers/mutation-observer.js
93
- var defaultOptions = {
94
- attributes: false,
95
- childList: false,
96
- subtree: false
97
- };
98
- function mutationObserver(target, options) {
99
- options = { ...defaultOptions, ...options };
100
- const { callback, ...opts } = options;
101
- const observer = new MutationObserver(observerFn);
102
- if (target === window) target = document.body;
103
- useObserverMethodOnTarget(target, observer, "observe", opts);
104
- function observerFn(entries) {
105
- for (const entry of entries) {
106
- if (callback) callback({ entry, entries, observer });
107
- else dispatchEvent(target, "mutate", { entry, entries, observer });
108
- }
109
- }
110
- return {
111
- observer,
112
- observe(target2) {
113
- useObserverMethodOnTarget(target2, observer, "observe", options);
114
- },
115
- takeRecords() {
116
- return observer.takeRecords();
117
- },
118
- disconnect() {
119
- const records = observer.takeRecords();
120
- observer.disconnect();
121
- if (records.length > 0) observerFn(records);
122
- },
123
- destroy() {
124
- observer.disconnect();
125
- }
126
- };
127
- }
128
-
129
- // src/dom/observers/resize-observer.js
130
- function resizeObserver(target, options) {
131
- const { callback, ...opts } = options;
132
- const observer = new ResizeObserver(observerFn);
133
- if (target === window || target === document)
134
- target = document.documentElement;
135
- useObserverMethodOnTarget(target, observer, "observe", opts);
136
- function observerFn(entries) {
137
- for (const entry of entries) {
138
- if (callback) callback({ entry, entries, observer });
139
- else
140
- dispatchEvent(entry.target, "resize-obs", { entry, entries, observer });
141
- }
142
- }
143
- return {
144
- observe(target2) {
145
- useObserverMethodOnTarget(target2, observer, "observe", options);
146
- },
147
- unobserve(target2) {
148
- useObserverMethodOnTarget(target2, observer, "unobserve");
149
- },
150
- disconnect: (_) => observer.disconnect(),
151
- destroy: (_) => observer.disconnect()
152
- };
153
- }
154
-
155
- // src/dom/observers/scroll-observer.js
156
- var defaultOptions2 = {
157
- threshold: 0,
158
- // Float between 0 to 1.
159
- tolerance: 0.1,
160
- // Float between 0 to 1. Tolerance for event firing
161
- once: false
162
- // Only fire threshold callback once
163
- };
164
- function getScrollElement(node) {
165
- if (node === document || node === window || node === document.documentElement) {
166
- return document.documentElement;
167
- }
168
- return (
169
- /** @type {Element} */
170
- node
171
- );
172
- }
173
- function scrollObserver(node, options = {}) {
174
- const { callback, onScrollDown, onScrollUp, onEnterThreshold, ...userOpts } = options;
175
- const opts = { ...defaultOptions2, ...userOpts };
176
- const { threshold, tolerance, once } = opts;
177
- let prevScrollDirection = null;
178
- let prevScrollTop = 0;
179
- let prevScrollPercent = 0;
180
- let thresholdFired = false;
181
- let rafId = null;
182
- const isDocumentScroll = node === document || node === window || node === document.documentElement;
183
- const scrollElement = getScrollElement(node);
184
- const eventTarget = isDocumentScroll ? window : node;
185
- let cachedScrollHeight = 0;
186
- let cachedClientHeight = 0;
187
- updateCache();
188
- const cacheObserver = resizeObserver(scrollElement, {
189
- callback: updateCache
190
- });
191
- eventTarget.addEventListener("scroll", throttledObserve, { passive: true });
192
- function throttledObserve() {
193
- rafId = requestAnimationFrame(observe);
194
- }
195
- function updateCache() {
196
- cachedScrollHeight = scrollElement.scrollHeight;
197
- cachedClientHeight = scrollElement.clientHeight;
198
- }
199
- function observe() {
200
- const scrollTop = scrollElement.scrollTop;
201
- if (Math.abs(scrollTop - prevScrollTop) < 1) return;
202
- const scrollDirection = scrollTop > prevScrollTop ? "down" : "up";
203
- const maxScroll = Math.max(1, cachedScrollHeight - cachedClientHeight);
204
- const scrollPercent = Math.min(1, Math.max(0, scrollTop / maxScroll));
205
- const thresholdMin = threshold - tolerance / 2;
206
- const thresholdMax = threshold + tolerance / 2;
207
- const wasInThreshold = prevScrollPercent >= thresholdMin && prevScrollPercent <= thresholdMax;
208
- const isInThreshold = scrollPercent >= thresholdMin && scrollPercent <= thresholdMax;
209
- const hasEnteredThreshold = !wasInThreshold && isInThreshold && (!once || !thresholdFired);
210
- if (hasEnteredThreshold && once) {
211
- thresholdFired = true;
212
- }
213
- const callbackData = {
214
- scrollTop,
215
- scrollDirection,
216
- scrollPercent,
217
- directionChanged: scrollDirection !== prevScrollDirection,
218
- hasEnteredThreshold,
219
- isInThreshold
220
- };
221
- if (typeof callback === "function") {
222
- callback(callbackData);
223
- }
224
- if (scrollDirection !== prevScrollDirection) {
225
- if (scrollDirection === "down" && typeof onScrollDown === "function") {
226
- onScrollDown(callbackData);
227
- }
228
- if (scrollDirection === "up" && typeof onScrollUp === "function") {
229
- onScrollUp(callbackData);
230
- }
231
- }
232
- if (hasEnteredThreshold && typeof onEnterThreshold === "function") {
233
- onEnterThreshold(callbackData);
234
- }
235
- prevScrollTop = scrollTop;
236
- prevScrollPercent = scrollPercent;
237
- prevScrollDirection = scrollDirection;
238
- }
239
- return {
240
- destroy() {
241
- eventTarget.removeEventListener("scroll", throttledObserve);
242
- if (rafId) cancelAnimationFrame(rafId);
243
- cacheObserver.destroy();
244
- }
245
- };
246
- }
17
+ __reExport(observers_exports, require("./intersection-observer.js"), module.exports);
18
+ __reExport(observers_exports, require("./mutation-observer.js"), module.exports);
19
+ __reExport(observers_exports, require("./resize-observer.js"), module.exports);
20
+ __reExport(observers_exports, require("./scroll-observer.js"), module.exports);
247
21
  // Annotate the CommonJS export names for ESM import in node:
248
22
  0 && (module.exports = {
249
- intersectionObserver,
250
- mutationObserver,
251
- resizeObserver,
252
- scrollObserver
23
+ ...require("./intersection-observer.js"),
24
+ ...require("./mutation-observer.js"),
25
+ ...require("./resize-observer.js"),
26
+ ...require("./scroll-observer.js")
253
27
  });
@@ -15,62 +15,30 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/observers/intersection-observer.js
20
18
  var intersection_observer_exports = {};
21
19
  __export(intersection_observer_exports, {
22
20
  intersectionObserver: () => intersectionObserver
23
21
  });
24
22
  module.exports = __toCommonJS(intersection_observer_exports);
25
-
26
- // src/dom/events.js
27
- function dispatchEvent(node, eventName, detail, options = {}) {
28
- node.dispatchEvent(
29
- new CustomEvent(eventName, {
30
- ...options,
31
- detail
32
- })
33
- );
34
- }
35
-
36
- // src/dom/get-element.js
37
- function getNodeType(node) {
38
- if (node instanceof Element) return "element";
39
- if (node instanceof NodeList) return "nodelist";
40
- if (Array.isArray(node)) return "array";
41
- }
42
-
43
- // src/dom/observers/observer.js
44
- function useObserverMethodOnTarget(target, observer, method = "observe", options = void 0) {
45
- const targetType = getNodeType(target);
46
- if (targetType === "element") observer[method](target, options);
47
- if (targetType === "nodelist") {
48
- const elements = Array.from(target);
49
- elements.forEach((element) => observer[method](element, options));
50
- }
51
- if (targetType === "array") {
52
- target.forEach((element) => observer[method](element, options));
53
- }
54
- }
55
-
56
- // src/dom/observers/intersection-observer.js
23
+ var import_events = require("../events.js");
24
+ var import_observer = require("./observer.js");
57
25
  function intersectionObserver(target, options = {}) {
58
26
  const { callback, ...opts } = options;
59
27
  const observer = new IntersectionObserver(observerFn, opts);
60
- useObserverMethodOnTarget(target, observer, "observe");
28
+ (0, import_observer.useObserverMethodOnTarget)(target, observer, "observe");
61
29
  function observerFn(entries) {
62
30
  for (const entry of entries) {
63
31
  if (callback) callback({ entry, entries, observer });
64
- else dispatchEvent(target, "intersect", { entry, entries, observer });
32
+ else (0, import_events.dispatchEvent)(target, "intersect", { entry, entries, observer });
65
33
  }
66
34
  }
67
35
  return {
68
36
  observer,
69
37
  observe(target2) {
70
- useObserverMethodOnTarget(target2, observer, "observe", options);
38
+ (0, import_observer.useObserverMethodOnTarget)(target2, observer, "observe", options);
71
39
  },
72
40
  unobserve(target2) {
73
- useObserverMethodOnTarget(target2, observer, "unobserve");
41
+ (0, import_observer.useObserverMethodOnTarget)(target2, observer, "unobserve");
74
42
  },
75
43
  takeRecords() {
76
44
  return observer.takeRecords();
@@ -15,46 +15,14 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/observers/mutation-observer.js
20
18
  var mutation_observer_exports = {};
21
19
  __export(mutation_observer_exports, {
22
20
  mutationObserver: () => mutationObserver
23
21
  });
24
22
  module.exports = __toCommonJS(mutation_observer_exports);
25
-
26
- // src/dom/events.js
27
- function dispatchEvent(node, eventName, detail, options = {}) {
28
- node.dispatchEvent(
29
- new CustomEvent(eventName, {
30
- ...options,
31
- detail
32
- })
33
- );
34
- }
35
-
36
- // src/dom/get-element.js
37
- function getNodeType(node) {
38
- if (node instanceof Element) return "element";
39
- if (node instanceof NodeList) return "nodelist";
40
- if (Array.isArray(node)) return "array";
41
- }
42
-
43
- // src/dom/observers/observer.js
44
- function useObserverMethodOnTarget(target, observer, method = "observe", options = void 0) {
45
- const targetType = getNodeType(target);
46
- if (targetType === "element") observer[method](target, options);
47
- if (targetType === "nodelist") {
48
- const elements = Array.from(target);
49
- elements.forEach((element) => observer[method](element, options));
50
- }
51
- if (targetType === "array") {
52
- target.forEach((element) => observer[method](element, options));
53
- }
54
- }
55
-
56
- // src/dom/observers/mutation-observer.js
57
- var defaultOptions = {
23
+ var import_events = require("../events.js");
24
+ var import_observer = require("./observer.js");
25
+ const defaultOptions = {
58
26
  attributes: false,
59
27
  childList: false,
60
28
  subtree: false
@@ -64,17 +32,17 @@ function mutationObserver(target, options) {
64
32
  const { callback, ...opts } = options;
65
33
  const observer = new MutationObserver(observerFn);
66
34
  if (target === window) target = document.body;
67
- useObserverMethodOnTarget(target, observer, "observe", opts);
35
+ (0, import_observer.useObserverMethodOnTarget)(target, observer, "observe", opts);
68
36
  function observerFn(entries) {
69
37
  for (const entry of entries) {
70
38
  if (callback) callback({ entry, entries, observer });
71
- else dispatchEvent(target, "mutate", { entry, entries, observer });
39
+ else (0, import_events.dispatchEvent)(target, "mutate", { entry, entries, observer });
72
40
  }
73
41
  }
74
42
  return {
75
43
  observer,
76
44
  observe(target2) {
77
- useObserverMethodOnTarget(target2, observer, "observe", options);
45
+ (0, import_observer.useObserverMethodOnTarget)(target2, observer, "observe", options);
78
46
  },
79
47
  takeRecords() {
80
48
  return observer.takeRecords();
@@ -15,24 +15,14 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/observers/observer.js
20
18
  var observer_exports = {};
21
19
  __export(observer_exports, {
22
20
  useObserverMethodOnTarget: () => useObserverMethodOnTarget
23
21
  });
24
22
  module.exports = __toCommonJS(observer_exports);
25
-
26
- // src/dom/get-element.js
27
- function getNodeType(node) {
28
- if (node instanceof Element) return "element";
29
- if (node instanceof NodeList) return "nodelist";
30
- if (Array.isArray(node)) return "array";
31
- }
32
-
33
- // src/dom/observers/observer.js
23
+ var import_get_element = require("../get-element.js");
34
24
  function useObserverMethodOnTarget(target, observer, method = "observe", options = void 0) {
35
- const targetType = getNodeType(target);
25
+ const targetType = (0, import_get_element.getNodeType)(target);
36
26
  if (targetType === "element") observer[method](target, options);
37
27
  if (targetType === "nodelist") {
38
28
  const elements = Array.from(target);
@@ -15,64 +15,32 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/observers/resize-observer.js
20
18
  var resize_observer_exports = {};
21
19
  __export(resize_observer_exports, {
22
20
  resizeObserver: () => resizeObserver
23
21
  });
24
22
  module.exports = __toCommonJS(resize_observer_exports);
25
-
26
- // src/dom/events.js
27
- function dispatchEvent(node, eventName, detail, options = {}) {
28
- node.dispatchEvent(
29
- new CustomEvent(eventName, {
30
- ...options,
31
- detail
32
- })
33
- );
34
- }
35
-
36
- // src/dom/get-element.js
37
- function getNodeType(node) {
38
- if (node instanceof Element) return "element";
39
- if (node instanceof NodeList) return "nodelist";
40
- if (Array.isArray(node)) return "array";
41
- }
42
-
43
- // src/dom/observers/observer.js
44
- function useObserverMethodOnTarget(target, observer, method = "observe", options = void 0) {
45
- const targetType = getNodeType(target);
46
- if (targetType === "element") observer[method](target, options);
47
- if (targetType === "nodelist") {
48
- const elements = Array.from(target);
49
- elements.forEach((element) => observer[method](element, options));
50
- }
51
- if (targetType === "array") {
52
- target.forEach((element) => observer[method](element, options));
53
- }
54
- }
55
-
56
- // src/dom/observers/resize-observer.js
23
+ var import_events = require("../events.js");
24
+ var import_observer = require("./observer.js");
57
25
  function resizeObserver(target, options) {
58
26
  const { callback, ...opts } = options;
59
27
  const observer = new ResizeObserver(observerFn);
60
28
  if (target === window || target === document)
61
29
  target = document.documentElement;
62
- useObserverMethodOnTarget(target, observer, "observe", opts);
30
+ (0, import_observer.useObserverMethodOnTarget)(target, observer, "observe", opts);
63
31
  function observerFn(entries) {
64
32
  for (const entry of entries) {
65
33
  if (callback) callback({ entry, entries, observer });
66
34
  else
67
- dispatchEvent(entry.target, "resize-obs", { entry, entries, observer });
35
+ (0, import_events.dispatchEvent)(entry.target, "resize-obs", { entry, entries, observer });
68
36
  }
69
37
  }
70
38
  return {
71
39
  observe(target2) {
72
- useObserverMethodOnTarget(target2, observer, "observe", options);
40
+ (0, import_observer.useObserverMethodOnTarget)(target2, observer, "observe", options);
73
41
  },
74
42
  unobserve(target2) {
75
- useObserverMethodOnTarget(target2, observer, "unobserve");
43
+ (0, import_observer.useObserverMethodOnTarget)(target2, observer, "unobserve");
76
44
  },
77
45
  disconnect: (_) => observer.disconnect(),
78
46
  destroy: (_) => observer.disconnect()
@@ -15,72 +15,13 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/observers/scroll-observer.js
20
18
  var scroll_observer_exports = {};
21
19
  __export(scroll_observer_exports, {
22
20
  scrollObserver: () => scrollObserver
23
21
  });
24
22
  module.exports = __toCommonJS(scroll_observer_exports);
25
-
26
- // src/dom/events.js
27
- function dispatchEvent(node, eventName, detail, options = {}) {
28
- node.dispatchEvent(
29
- new CustomEvent(eventName, {
30
- ...options,
31
- detail
32
- })
33
- );
34
- }
35
-
36
- // src/dom/get-element.js
37
- function getNodeType(node) {
38
- if (node instanceof Element) return "element";
39
- if (node instanceof NodeList) return "nodelist";
40
- if (Array.isArray(node)) return "array";
41
- }
42
-
43
- // src/dom/observers/observer.js
44
- function useObserverMethodOnTarget(target, observer, method = "observe", options = void 0) {
45
- const targetType = getNodeType(target);
46
- if (targetType === "element") observer[method](target, options);
47
- if (targetType === "nodelist") {
48
- const elements = Array.from(target);
49
- elements.forEach((element) => observer[method](element, options));
50
- }
51
- if (targetType === "array") {
52
- target.forEach((element) => observer[method](element, options));
53
- }
54
- }
55
-
56
- // src/dom/observers/resize-observer.js
57
- function resizeObserver(target, options) {
58
- const { callback, ...opts } = options;
59
- const observer = new ResizeObserver(observerFn);
60
- if (target === window || target === document)
61
- target = document.documentElement;
62
- useObserverMethodOnTarget(target, observer, "observe", opts);
63
- function observerFn(entries) {
64
- for (const entry of entries) {
65
- if (callback) callback({ entry, entries, observer });
66
- else
67
- dispatchEvent(entry.target, "resize-obs", { entry, entries, observer });
68
- }
69
- }
70
- return {
71
- observe(target2) {
72
- useObserverMethodOnTarget(target2, observer, "observe", options);
73
- },
74
- unobserve(target2) {
75
- useObserverMethodOnTarget(target2, observer, "unobserve");
76
- },
77
- disconnect: (_) => observer.disconnect(),
78
- destroy: (_) => observer.disconnect()
79
- };
80
- }
81
-
82
- // src/dom/observers/scroll-observer.js
83
- var defaultOptions = {
23
+ var import_resize_observer = require("./resize-observer.js");
24
+ const defaultOptions = {
84
25
  threshold: 0,
85
26
  // Float between 0 to 1.
86
27
  tolerance: 0.1,
@@ -112,7 +53,7 @@ function scrollObserver(node, options = {}) {
112
53
  let cachedScrollHeight = 0;
113
54
  let cachedClientHeight = 0;
114
55
  updateCache();
115
- const cacheObserver = resizeObserver(scrollElement, {
56
+ const cacheObserver = (0, import_resize_observer.resizeObserver)(scrollElement, {
116
57
  callback: updateCache
117
58
  });
118
59
  eventTarget.addEventListener("scroll", throttledObserve, { passive: true });
@@ -15,27 +15,17 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/pkce.js
20
18
  var pkce_exports = {};
21
19
  __export(pkce_exports, {
22
20
  PKCE: () => PKCE
23
21
  });
24
22
  module.exports = __toCommonJS(pkce_exports);
25
-
26
- // src/dom/random-string.js
27
- function randomString(length = 10) {
28
- const firstLetter = String.fromCharCode(65 + Math.floor(Math.random() * 26));
29
- const others = Math.random().toString(36).substring(2, 2 + length - 1);
30
- return firstLetter + others;
31
- }
32
-
33
- // src/dom/pkce.js
23
+ var import_random_string = require("./random-string.js");
34
24
  async function PKCE() {
35
- const codeVerifier = await randomString();
25
+ const codeVerifier = await (0, import_random_string.randomString)();
36
26
  const codeChallenge = await getCodeChallenge(codeVerifier);
37
27
  return {
38
- state: await randomString(),
28
+ state: await (0, import_random_string.randomString)(),
39
29
  code_verifier: codeVerifier,
40
30
  code_challenge: codeChallenge,
41
31
  code_challenge_method: "S256"
@@ -15,14 +15,12 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/query-params.js
20
18
  var query_params_exports = {};
21
19
  __export(query_params_exports, {
22
20
  queryParams: () => queryParams
23
21
  });
24
22
  module.exports = __toCommonJS(query_params_exports);
25
- var queryParams = {
23
+ const queryParams = {
26
24
  get(key) {
27
25
  const searchParams = new URLSearchParams(location.search);
28
26
  return searchParams.get(key);
@@ -15,8 +15,6 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/dom/random-string.js
20
18
  var random_string_exports = {};
21
19
  __export(random_string_exports, {
22
20
  randomString: () => randomString,