tool-shack 1.0.0 → 1.1.0

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 (265) hide show
  1. package/README.md +97 -93
  2. package/dist/cjs/browser/getCookie.d.ts.map +1 -1
  3. package/dist/cjs/browser/getCookie.js +12 -2
  4. package/dist/cjs/browser/getCookie.js.map +1 -1
  5. package/dist/cjs/browser/getQueryParams.d.ts +1 -1
  6. package/dist/cjs/browser/getQueryParams.d.ts.map +1 -1
  7. package/dist/cjs/browser/getQueryParams.js +10 -15
  8. package/dist/cjs/browser/getQueryParams.js.map +1 -1
  9. package/dist/cjs/browser/index.d.ts +2 -0
  10. package/dist/cjs/browser/index.d.ts.map +1 -1
  11. package/dist/cjs/browser/index.js +33 -18
  12. package/dist/cjs/browser/index.js.map +1 -1
  13. package/dist/cjs/browser/interfaces/index.js +17 -4
  14. package/dist/cjs/browser/interfaces/index.js.map +1 -1
  15. package/dist/cjs/browser/isPageVisible.d.ts +10 -0
  16. package/dist/cjs/browser/isPageVisible.d.ts.map +1 -0
  17. package/dist/cjs/browser/isPageVisible.js +14 -0
  18. package/dist/cjs/browser/isPageVisible.js.map +1 -0
  19. package/dist/cjs/browser/isPushNotificationSupported.d.ts +5 -2
  20. package/dist/cjs/browser/isPushNotificationSupported.d.ts.map +1 -1
  21. package/dist/cjs/browser/isPushNotificationSupported.js +6 -3
  22. package/dist/cjs/browser/isPushNotificationSupported.js.map +1 -1
  23. package/dist/cjs/browser/isTabFocused.d.ts +2 -3
  24. package/dist/cjs/browser/isTabFocused.d.ts.map +1 -1
  25. package/dist/cjs/browser/isTabFocused.js +4 -5
  26. package/dist/cjs/browser/isTabFocused.js.map +1 -1
  27. package/dist/cjs/browser/pageVisibilityListener.d.ts +12 -0
  28. package/dist/cjs/browser/pageVisibilityListener.d.ts.map +1 -0
  29. package/dist/cjs/browser/pageVisibilityListener.js +30 -0
  30. package/dist/cjs/browser/pageVisibilityListener.js.map +1 -0
  31. package/dist/cjs/browser/preferColorScheme.d.ts +4 -2
  32. package/dist/cjs/browser/preferColorScheme.d.ts.map +1 -1
  33. package/dist/cjs/browser/preferColorScheme.js +4 -2
  34. package/dist/cjs/browser/preferColorScheme.js.map +1 -1
  35. package/dist/cjs/browser/tabFocusListener.d.ts +3 -6
  36. package/dist/cjs/browser/tabFocusListener.d.ts.map +1 -1
  37. package/dist/cjs/browser/tabFocusListener.js +4 -17
  38. package/dist/cjs/browser/tabFocusListener.js.map +1 -1
  39. package/dist/cjs/dateTime/dateAsIso.d.ts +5 -3
  40. package/dist/cjs/dateTime/dateAsIso.d.ts.map +1 -1
  41. package/dist/cjs/dateTime/dateAsIso.js +5 -3
  42. package/dist/cjs/dateTime/dateAsIso.js.map +1 -1
  43. package/dist/cjs/dateTime/index.js +19 -6
  44. package/dist/cjs/dateTime/index.js.map +1 -1
  45. package/dist/cjs/dateTime/interfaces/index.js +15 -2
  46. package/dist/cjs/dateTime/interfaces/index.js.map +1 -1
  47. package/dist/cjs/dom/addAsyncEventListener.d.ts +2 -2
  48. package/dist/cjs/dom/addAsyncEventListener.d.ts.map +1 -1
  49. package/dist/cjs/dom/addAsyncEventListener.js +25 -13
  50. package/dist/cjs/dom/addAsyncEventListener.js.map +1 -1
  51. package/dist/cjs/dom/addClickOutsideListener.d.ts +2 -2
  52. package/dist/cjs/dom/addClickOutsideListener.d.ts.map +1 -1
  53. package/dist/cjs/dom/addClickOutsideListener.js +8 -4
  54. package/dist/cjs/dom/addClickOutsideListener.js.map +1 -1
  55. package/dist/cjs/dom/addEventListener.d.ts +5 -3
  56. package/dist/cjs/dom/addEventListener.d.ts.map +1 -1
  57. package/dist/cjs/dom/addEventListener.js +5 -3
  58. package/dist/cjs/dom/addEventListener.js.map +1 -1
  59. package/dist/cjs/dom/copyToClipboard.d.ts.map +1 -1
  60. package/dist/cjs/dom/copyToClipboard.js +8 -5
  61. package/dist/cjs/dom/copyToClipboard.js.map +1 -1
  62. package/dist/cjs/dom/createElement.d.ts +6 -3
  63. package/dist/cjs/dom/createElement.d.ts.map +1 -1
  64. package/dist/cjs/dom/createElement.js +1 -1
  65. package/dist/cjs/dom/createElement.js.map +1 -1
  66. package/dist/cjs/dom/fireEvent.d.ts +4 -4
  67. package/dist/cjs/dom/fireEvent.js +4 -4
  68. package/dist/cjs/dom/index.d.ts +1 -0
  69. package/dist/cjs/dom/index.d.ts.map +1 -1
  70. package/dist/cjs/dom/index.js +29 -15
  71. package/dist/cjs/dom/index.js.map +1 -1
  72. package/dist/cjs/dom/interfaces/createElement.d.ts +1 -1
  73. package/dist/cjs/dom/interfaces/index.js +16 -3
  74. package/dist/cjs/dom/interfaces/index.js.map +1 -1
  75. package/dist/cjs/dom/toggleFullscreenWithFallback.d.ts.map +1 -1
  76. package/dist/cjs/dom/toggleFullscreenWithFallback.js +45 -34
  77. package/dist/cjs/dom/toggleFullscreenWithFallback.js.map +1 -1
  78. package/dist/cjs/dom/types/createElement.d.ts +3 -0
  79. package/dist/cjs/dom/types/createElement.d.ts.map +1 -0
  80. package/dist/cjs/dom/types/createElement.js +3 -0
  81. package/dist/cjs/dom/types/createElement.js.map +1 -0
  82. package/dist/cjs/dom/types/index.d.ts +3 -0
  83. package/dist/cjs/dom/types/index.d.ts.map +1 -0
  84. package/dist/cjs/dom/types/index.js +19 -0
  85. package/dist/cjs/dom/types/index.js.map +1 -0
  86. package/dist/cjs/dom/types/toggleFullscreenWithFallback.d.ts +15 -0
  87. package/dist/cjs/dom/types/toggleFullscreenWithFallback.d.ts.map +1 -0
  88. package/dist/cjs/dom/types/toggleFullscreenWithFallback.js +3 -0
  89. package/dist/cjs/dom/types/toggleFullscreenWithFallback.js.map +1 -0
  90. package/dist/cjs/general/chunk.d.ts +1 -1
  91. package/dist/cjs/general/chunk.js +1 -1
  92. package/dist/cjs/general/groupBy.js +1 -1
  93. package/dist/cjs/general/groupBy.js.map +1 -1
  94. package/dist/cjs/general/index.js +23 -10
  95. package/dist/cjs/general/index.js.map +1 -1
  96. package/dist/cjs/general/isEmpty.d.ts.map +1 -1
  97. package/dist/cjs/general/isEmpty.js +3 -0
  98. package/dist/cjs/general/isEmpty.js.map +1 -1
  99. package/dist/cjs/general/isEqual.d.ts +4 -2
  100. package/dist/cjs/general/isEqual.d.ts.map +1 -1
  101. package/dist/cjs/general/isEqual.js +4 -2
  102. package/dist/cjs/general/isEqual.js.map +1 -1
  103. package/dist/cjs/index.js +21 -8
  104. package/dist/cjs/index.js.map +1 -1
  105. package/dist/cjs/package.json +3 -0
  106. package/dist/cjs/schedule/debounce.d.ts +2 -2
  107. package/dist/cjs/schedule/debounce.d.ts.map +1 -1
  108. package/dist/cjs/schedule/debounce.js +1 -1
  109. package/dist/cjs/schedule/index.js +21 -8
  110. package/dist/cjs/schedule/index.js.map +1 -1
  111. package/dist/cjs/schedule/interfaces/debounce.d.ts +1 -1
  112. package/dist/cjs/schedule/interfaces/debounce.d.ts.map +1 -1
  113. package/dist/cjs/schedule/interfaces/index.js +18 -5
  114. package/dist/cjs/schedule/interfaces/index.js.map +1 -1
  115. package/dist/cjs/schedule/interfaces/throttle.d.ts +1 -1
  116. package/dist/cjs/schedule/interfaces/throttle.d.ts.map +1 -1
  117. package/dist/cjs/schedule/runAsync.d.ts +5 -3
  118. package/dist/cjs/schedule/runAsync.d.ts.map +1 -1
  119. package/dist/cjs/schedule/runAsync.js +5 -3
  120. package/dist/cjs/schedule/runAsync.js.map +1 -1
  121. package/dist/cjs/schedule/throttle.d.ts +2 -2
  122. package/dist/cjs/schedule/throttle.d.ts.map +1 -1
  123. package/dist/cjs/schedule/throttle.js +1 -1
  124. package/dist/cjs/storage/index.js +23 -10
  125. package/dist/cjs/storage/index.js.map +1 -1
  126. package/dist/cjs/storage/interfaces/index.js +15 -2
  127. package/dist/cjs/storage/interfaces/index.js.map +1 -1
  128. package/dist/cjs/storage/setLocalStorage.d.ts +1 -1
  129. package/dist/cjs/storage/setLocalStorage.d.ts.map +1 -1
  130. package/dist/cjs/storage/setLocalStorage.js +4 -1
  131. package/dist/cjs/storage/setLocalStorage.js.map +1 -1
  132. package/dist/cjs/storage/setSessionStorage.d.ts +1 -1
  133. package/dist/cjs/storage/setSessionStorage.d.ts.map +1 -1
  134. package/dist/cjs/storage/setSessionStorage.js +4 -1
  135. package/dist/cjs/storage/setSessionStorage.js.map +1 -1
  136. package/dist/cjs/string/escapeHTML.d.ts +5 -3
  137. package/dist/cjs/string/escapeHTML.d.ts.map +1 -1
  138. package/dist/cjs/string/escapeHTML.js +11 -8
  139. package/dist/cjs/string/escapeHTML.js.map +1 -1
  140. package/dist/cjs/string/index.js +32 -19
  141. package/dist/cjs/string/index.js.map +1 -1
  142. package/dist/cjs/string/interfaces/index.js +15 -2
  143. package/dist/cjs/string/interfaces/index.js.map +1 -1
  144. package/dist/cjs/string/slugify.js +2 -2
  145. package/dist/cjs/string/slugify.js.map +1 -1
  146. package/dist/esm/browser/getCookie.d.ts.map +1 -1
  147. package/dist/esm/browser/getCookie.js +12 -2
  148. package/dist/esm/browser/getCookie.js.map +1 -1
  149. package/dist/esm/browser/getQueryParams.d.ts +1 -1
  150. package/dist/esm/browser/getQueryParams.d.ts.map +1 -1
  151. package/dist/esm/browser/getQueryParams.js +10 -15
  152. package/dist/esm/browser/getQueryParams.js.map +1 -1
  153. package/dist/esm/browser/index.d.ts +2 -0
  154. package/dist/esm/browser/index.d.ts.map +1 -1
  155. package/dist/esm/browser/index.js +2 -0
  156. package/dist/esm/browser/index.js.map +1 -1
  157. package/dist/esm/browser/isPageVisible.d.ts +10 -0
  158. package/dist/esm/browser/isPageVisible.d.ts.map +1 -0
  159. package/dist/esm/browser/isPageVisible.js +10 -0
  160. package/dist/esm/browser/isPageVisible.js.map +1 -0
  161. package/dist/esm/browser/isPushNotificationSupported.d.ts +5 -2
  162. package/dist/esm/browser/isPushNotificationSupported.d.ts.map +1 -1
  163. package/dist/esm/browser/isPushNotificationSupported.js +6 -3
  164. package/dist/esm/browser/isPushNotificationSupported.js.map +1 -1
  165. package/dist/esm/browser/isTabFocused.d.ts +2 -3
  166. package/dist/esm/browser/isTabFocused.d.ts.map +1 -1
  167. package/dist/esm/browser/isTabFocused.js +4 -4
  168. package/dist/esm/browser/isTabFocused.js.map +1 -1
  169. package/dist/esm/browser/pageVisibilityListener.d.ts +12 -0
  170. package/dist/esm/browser/pageVisibilityListener.d.ts.map +1 -0
  171. package/dist/esm/browser/pageVisibilityListener.js +26 -0
  172. package/dist/esm/browser/pageVisibilityListener.js.map +1 -0
  173. package/dist/esm/browser/preferColorScheme.d.ts +4 -2
  174. package/dist/esm/browser/preferColorScheme.d.ts.map +1 -1
  175. package/dist/esm/browser/preferColorScheme.js +4 -2
  176. package/dist/esm/browser/preferColorScheme.js.map +1 -1
  177. package/dist/esm/browser/tabFocusListener.d.ts +3 -6
  178. package/dist/esm/browser/tabFocusListener.d.ts.map +1 -1
  179. package/dist/esm/browser/tabFocusListener.js +4 -16
  180. package/dist/esm/browser/tabFocusListener.js.map +1 -1
  181. package/dist/esm/dateTime/dateAsIso.d.ts +5 -3
  182. package/dist/esm/dateTime/dateAsIso.d.ts.map +1 -1
  183. package/dist/esm/dateTime/dateAsIso.js +5 -3
  184. package/dist/esm/dateTime/dateAsIso.js.map +1 -1
  185. package/dist/esm/dom/addAsyncEventListener.d.ts +2 -2
  186. package/dist/esm/dom/addAsyncEventListener.d.ts.map +1 -1
  187. package/dist/esm/dom/addAsyncEventListener.js +25 -13
  188. package/dist/esm/dom/addAsyncEventListener.js.map +1 -1
  189. package/dist/esm/dom/addClickOutsideListener.d.ts +2 -2
  190. package/dist/esm/dom/addClickOutsideListener.d.ts.map +1 -1
  191. package/dist/esm/dom/addClickOutsideListener.js +8 -4
  192. package/dist/esm/dom/addClickOutsideListener.js.map +1 -1
  193. package/dist/esm/dom/addEventListener.d.ts +5 -3
  194. package/dist/esm/dom/addEventListener.d.ts.map +1 -1
  195. package/dist/esm/dom/addEventListener.js +5 -3
  196. package/dist/esm/dom/addEventListener.js.map +1 -1
  197. package/dist/esm/dom/copyToClipboard.d.ts.map +1 -1
  198. package/dist/esm/dom/copyToClipboard.js +8 -5
  199. package/dist/esm/dom/copyToClipboard.js.map +1 -1
  200. package/dist/esm/dom/createElement.d.ts +6 -3
  201. package/dist/esm/dom/createElement.d.ts.map +1 -1
  202. package/dist/esm/dom/createElement.js +1 -1
  203. package/dist/esm/dom/createElement.js.map +1 -1
  204. package/dist/esm/dom/fireEvent.d.ts +4 -4
  205. package/dist/esm/dom/fireEvent.js +4 -4
  206. package/dist/esm/dom/index.d.ts +1 -0
  207. package/dist/esm/dom/index.d.ts.map +1 -1
  208. package/dist/esm/dom/index.js +1 -0
  209. package/dist/esm/dom/index.js.map +1 -1
  210. package/dist/esm/dom/interfaces/createElement.d.ts +1 -1
  211. package/dist/esm/dom/toggleFullscreenWithFallback.d.ts.map +1 -1
  212. package/dist/esm/dom/toggleFullscreenWithFallback.js +45 -34
  213. package/dist/esm/dom/toggleFullscreenWithFallback.js.map +1 -1
  214. package/dist/esm/dom/types/createElement.d.ts +3 -0
  215. package/dist/esm/dom/types/createElement.d.ts.map +1 -0
  216. package/dist/esm/dom/types/createElement.js +2 -0
  217. package/dist/esm/dom/types/createElement.js.map +1 -0
  218. package/dist/esm/dom/types/index.d.ts +3 -0
  219. package/dist/esm/dom/types/index.d.ts.map +1 -0
  220. package/dist/esm/dom/types/index.js +3 -0
  221. package/dist/esm/dom/types/index.js.map +1 -0
  222. package/dist/esm/dom/types/toggleFullscreenWithFallback.d.ts +15 -0
  223. package/dist/esm/dom/types/toggleFullscreenWithFallback.d.ts.map +1 -0
  224. package/dist/esm/dom/types/toggleFullscreenWithFallback.js +2 -0
  225. package/dist/esm/dom/types/toggleFullscreenWithFallback.js.map +1 -0
  226. package/dist/esm/general/chunk.d.ts +1 -1
  227. package/dist/esm/general/chunk.js +1 -1
  228. package/dist/esm/general/groupBy.js +1 -1
  229. package/dist/esm/general/groupBy.js.map +1 -1
  230. package/dist/esm/general/isEmpty.d.ts.map +1 -1
  231. package/dist/esm/general/isEmpty.js +3 -0
  232. package/dist/esm/general/isEmpty.js.map +1 -1
  233. package/dist/esm/general/isEqual.d.ts +4 -2
  234. package/dist/esm/general/isEqual.d.ts.map +1 -1
  235. package/dist/esm/general/isEqual.js +4 -2
  236. package/dist/esm/general/isEqual.js.map +1 -1
  237. package/dist/esm/schedule/debounce.d.ts +2 -2
  238. package/dist/esm/schedule/debounce.d.ts.map +1 -1
  239. package/dist/esm/schedule/debounce.js +1 -1
  240. package/dist/esm/schedule/interfaces/debounce.d.ts +1 -1
  241. package/dist/esm/schedule/interfaces/debounce.d.ts.map +1 -1
  242. package/dist/esm/schedule/interfaces/throttle.d.ts +1 -1
  243. package/dist/esm/schedule/interfaces/throttle.d.ts.map +1 -1
  244. package/dist/esm/schedule/runAsync.d.ts +5 -3
  245. package/dist/esm/schedule/runAsync.d.ts.map +1 -1
  246. package/dist/esm/schedule/runAsync.js +5 -3
  247. package/dist/esm/schedule/runAsync.js.map +1 -1
  248. package/dist/esm/schedule/throttle.d.ts +2 -2
  249. package/dist/esm/schedule/throttle.d.ts.map +1 -1
  250. package/dist/esm/schedule/throttle.js +1 -1
  251. package/dist/esm/storage/setLocalStorage.d.ts +1 -1
  252. package/dist/esm/storage/setLocalStorage.d.ts.map +1 -1
  253. package/dist/esm/storage/setLocalStorage.js +4 -1
  254. package/dist/esm/storage/setLocalStorage.js.map +1 -1
  255. package/dist/esm/storage/setSessionStorage.d.ts +1 -1
  256. package/dist/esm/storage/setSessionStorage.d.ts.map +1 -1
  257. package/dist/esm/storage/setSessionStorage.js +4 -1
  258. package/dist/esm/storage/setSessionStorage.js.map +1 -1
  259. package/dist/esm/string/escapeHTML.d.ts +5 -3
  260. package/dist/esm/string/escapeHTML.d.ts.map +1 -1
  261. package/dist/esm/string/escapeHTML.js +11 -8
  262. package/dist/esm/string/escapeHTML.js.map +1 -1
  263. package/dist/esm/string/slugify.js +2 -2
  264. package/dist/esm/string/slugify.js.map +1 -1
  265. package/package.json +10 -9
@@ -1,7 +1,7 @@
1
+ import { isPageVisible } from './isPageVisible.js';
1
2
  /**
2
- * Check if current browser tab is in focus
3
- *
4
- * @returns Boolean indicating if current browser tab is in focus
3
+ * @deprecated Use {@link isPageVisible}. Same as `!document.hidden`; not window
4
+ * or tab input focus.
5
5
  */
6
- export const isTabFocused = () => !document.hidden;
6
+ export const isTabFocused = isPageVisible;
7
7
  //# sourceMappingURL=isTabFocused.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isTabFocused.js","sourceRoot":"","sources":["../../../src/browser/isTabFocused.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,GAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC"}
1
+ {"version":3,"file":"isTabFocused.js","sourceRoot":"","sources":["../../../src/browser/isTabFocused.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Subscribe to Page Visibility changes
3
+ *
4
+ * Uses `visibilitychange` and `document.hidden`. This is not window focus or
5
+ * blur.
6
+ *
7
+ * @param onVisible Called when the page becomes visible
8
+ * @param onHidden Called when the page becomes hidden
9
+ * @returns Cleanup function to remove the listener
10
+ */
11
+ export declare const pageVisibilityListener: (onVisible?: () => void, onHidden?: () => void) => (() => void);
12
+ //# sourceMappingURL=pageVisibilityListener.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pageVisibilityListener.d.ts","sourceRoot":"","sources":["../../../src/browser/pageVisibilityListener.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,GACjC,YAAY,MAAM,IAAI,EACtB,WAAW,MAAM,IAAI,KACpB,CAAC,MAAM,IAAI,CAcb,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { isPageVisible } from './isPageVisible.js';
2
+ /**
3
+ * Subscribe to Page Visibility changes
4
+ *
5
+ * Uses `visibilitychange` and `document.hidden`. This is not window focus or
6
+ * blur.
7
+ *
8
+ * @param onVisible Called when the page becomes visible
9
+ * @param onHidden Called when the page becomes hidden
10
+ * @returns Cleanup function to remove the listener
11
+ */
12
+ export const pageVisibilityListener = (onVisible, onHidden) => {
13
+ const handleVisibilityChange = () => {
14
+ if (isPageVisible()) {
15
+ onVisible?.();
16
+ }
17
+ else {
18
+ onHidden?.();
19
+ }
20
+ };
21
+ document.addEventListener('visibilitychange', handleVisibilityChange);
22
+ return () => {
23
+ document.removeEventListener('visibilitychange', handleVisibilityChange);
24
+ };
25
+ };
26
+ //# sourceMappingURL=pageVisibilityListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pageVisibilityListener.js","sourceRoot":"","sources":["../../../src/browser/pageVisibilityListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,SAAsB,EACtB,QAAqB,EACP,EAAE;IAChB,MAAM,sBAAsB,GAAG,GAAS,EAAE;QACxC,IAAI,aAAa,EAAE,EAAE,CAAC;YACpB,SAAS,EAAE,EAAE,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,QAAQ,EAAE,EAAE,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEF,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,CAAC;IAEtE,OAAO,GAAG,EAAE;QACV,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,CAAC;IAC3E,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -11,9 +11,11 @@ export declare const preferLightColorScheme: () => boolean;
11
11
  */
12
12
  export declare const preferDarkColorScheme: () => boolean;
13
13
  /**
14
- * Check what color scheme (light or dark) is prefered by user
14
+ * Check what color scheme the user prefers
15
15
  *
16
- * @returns String indicating prefered light color scheme ('light') or dark color scheme ('dark')
16
+ * Returns `'light'` when `(prefers-color-scheme: light)` matches; otherwise `'dark'`.
17
+ *
18
+ * @returns `'light'` or `'dark'`
17
19
  */
18
20
  export declare const preferColorScheme: () => "light" | "dark";
19
21
  //# sourceMappingURL=preferColorScheme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"preferColorScheme.d.ts","sourceRoot":"","sources":["../../../src/browser/preferColorScheme.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAO,OACoB,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,QAAO,OACoB,CAAC;AAE9D;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,QAAO,OAAO,GAAG,MACF,CAAC"}
1
+ {"version":3,"file":"preferColorScheme.d.ts","sourceRoot":"","sources":["../../../src/browser/preferColorScheme.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAO,OACoB,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,QAAO,OACoB,CAAC;AAE9D;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,QAAO,OAAO,GAAG,MACF,CAAC"}
@@ -11,9 +11,11 @@ export const preferLightColorScheme = () => !!window.matchMedia('(prefers-color-
11
11
  */
12
12
  export const preferDarkColorScheme = () => !!window.matchMedia('(prefers-color-scheme: dark)').matches;
13
13
  /**
14
- * Check what color scheme (light or dark) is prefered by user
14
+ * Check what color scheme the user prefers
15
15
  *
16
- * @returns String indicating prefered light color scheme ('light') or dark color scheme ('dark')
16
+ * Returns `'light'` when `(prefers-color-scheme: light)` matches; otherwise `'dark'`.
17
+ *
18
+ * @returns `'light'` or `'dark'`
17
19
  */
18
20
  export const preferColorScheme = () => preferLightColorScheme() ? 'light' : 'dark';
19
21
  //# sourceMappingURL=preferColorScheme.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"preferColorScheme.js","sourceRoot":"","sources":["../../../src/browser/preferColorScheme.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAY,EAAE,CAClD,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,+BAA+B,CAAC,CAAC,OAAO,CAAC;AAE/D;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAY,EAAE,CACjD,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC;AAE9D;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAqB,EAAE,CACtD,sBAAsB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC"}
1
+ {"version":3,"file":"preferColorScheme.js","sourceRoot":"","sources":["../../../src/browser/preferColorScheme.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAY,EAAE,CAClD,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,+BAA+B,CAAC,CAAC,OAAO,CAAC;AAE/D;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAY,EAAE,CACjD,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC;AAE9D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAqB,EAAE,CACtD,sBAAsB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC"}
@@ -1,9 +1,6 @@
1
1
  /**
2
- * Set callbacks for if current browser tab is in focus
3
- *
4
- * @param focusCallback Function to be called when current browser tab goes into focus
5
- * @param blurCallback Function to be called when current browser tab goes out of focus
6
- * @returns void
2
+ * @deprecated Use {@link pageVisibilityListener}. Same `visibilitychange`
3
+ * listener; not window focus or blur.
7
4
  */
8
- export declare const tabFocusListener: (focusCallback?: () => void, blurCallback?: () => void) => void;
5
+ export declare const tabFocusListener: (onVisible?: () => void, onHidden?: () => void) => (() => void);
9
6
  //# sourceMappingURL=tabFocusListener.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabFocusListener.d.ts","sourceRoot":"","sources":["../../../src/browser/tabFocusListener.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAAI,gBAAgB,MAAM,IAAI,EAAE,eAAe,MAAM,IAAI,KAAG,IAQxF,CAAC"}
1
+ {"version":3,"file":"tabFocusListener.d.ts","sourceRoot":"","sources":["../../../src/browser/tabFocusListener.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,gBAAgB,iEAAyB,CAAC"}
@@ -1,19 +1,7 @@
1
- import { isTabFocused } from './isTabFocused.js';
1
+ import { pageVisibilityListener } from './pageVisibilityListener.js';
2
2
  /**
3
- * Set callbacks for if current browser tab is in focus
4
- *
5
- * @param focusCallback Function to be called when current browser tab goes into focus
6
- * @param blurCallback Function to be called when current browser tab goes out of focus
7
- * @returns void
3
+ * @deprecated Use {@link pageVisibilityListener}. Same `visibilitychange`
4
+ * listener; not window focus or blur.
8
5
  */
9
- export const tabFocusListener = (focusCallback, blurCallback) => {
10
- document.addEventListener('visibilitychange', () => {
11
- if (isTabFocused()) {
12
- focusCallback?.call(this);
13
- }
14
- else {
15
- blurCallback?.call(this);
16
- }
17
- });
18
- };
6
+ export const tabFocusListener = pageVisibilityListener;
19
7
  //# sourceMappingURL=tabFocusListener.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabFocusListener.js","sourceRoot":"","sources":["../../../src/browser/tabFocusListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,aAA0B,EAAE,YAAyB,EAAQ,EAAE;IAC9F,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,GAAG,EAAE;QACjD,IAAI,YAAY,EAAE,EAAE,CAAC;YACnB,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"tabFocusListener.js","sourceRoot":"","sources":["../../../src/browser/tabFocusListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,sBAAsB,CAAC"}
@@ -1,8 +1,10 @@
1
1
  /**
2
- * Return date in ISO format with timezone
2
+ * Format a Date as local calendar date-time with numeric timezone offset
3
3
  *
4
- * @param date Date to be converted
5
- * @returns ISO format with timezone
4
+ * Output shape: `YYYY-MM-DDTHH:mm:ss±HH:mm` (no milliseconds, not UTC `Z`).
5
+ *
6
+ * @param date Date to format
7
+ * @returns Local ISO-like string with timezone offset
6
8
  */
7
9
  export declare const dateAsIso: (date: Date) => string;
8
10
  //# sourceMappingURL=dateAsIso.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dateAsIso.d.ts","sourceRoot":"","sources":["../../../src/dateTime/dateAsIso.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,MAAM,IAAI,KAAG,MAetC,CAAC"}
1
+ {"version":3,"file":"dateAsIso.d.ts","sourceRoot":"","sources":["../../../src/dateTime/dateAsIso.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,GAAI,MAAM,IAAI,KAAG,MAetC,CAAC"}
@@ -1,8 +1,10 @@
1
1
  /**
2
- * Return date in ISO format with timezone
2
+ * Format a Date as local calendar date-time with numeric timezone offset
3
3
  *
4
- * @param date Date to be converted
5
- * @returns ISO format with timezone
4
+ * Output shape: `YYYY-MM-DDTHH:mm:ss±HH:mm` (no milliseconds, not UTC `Z`).
5
+ *
6
+ * @param date Date to format
7
+ * @returns Local ISO-like string with timezone offset
6
8
  */
7
9
  export const dateAsIso = (date) => {
8
10
  const timezoneOffset = date.getTimezoneOffset();
@@ -1 +1 @@
1
- {"version":3,"file":"dateAsIso.js","sourceRoot":"","sources":["../../../src/dateTime/dateAsIso.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAU,EAAU,EAAE;IAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAEhD,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,SAAS,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,SAAS,CAC/E,IAAI,CAAC,OAAO,EAAE,CACf,EAAE,CAAC;IACJ,SAAS,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,SAAS,CACtF,IAAI,CAAC,UAAU,EAAE,CAClB,EAAE,CAAC;IACJ,SAAS,IAAI,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CACzD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,CAC1C,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;IAEhD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,MAAc,EAAU,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"dateAsIso.js","sourceRoot":"","sources":["../../../src/dateTime/dateAsIso.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAU,EAAU,EAAE;IAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAEhD,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,SAAS,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,SAAS,CAC/E,IAAI,CAAC,OAAO,EAAE,CACf,EAAE,CAAC;IACJ,SAAS,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,SAAS,CACtF,IAAI,CAAC,UAAU,EAAE,CAClB,EAAE,CAAC;IACJ,SAAS,IAAI,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CACzD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,CAC1C,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;IAEhD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,MAAc,EAAU,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC"}
@@ -4,7 +4,7 @@
4
4
  * @param elementSelector Selector for element(s) to match event target
5
5
  * @param listeners List of event types and related callback(s)
6
6
  * @param acceptBubbling Boolean switch to allow bubbling or accept only direct element match
7
- * @returns void
7
+ * @returns Cleanup function to remove the delegated listeners
8
8
  */
9
- export declare const addAsyncEventListener: (elementSelector: string, listeners: Record<string, EventListener | EventListener[]>, acceptBubbling?: boolean) => void;
9
+ export declare const addAsyncEventListener: (elementSelector: string, listeners: Record<string, EventListener | EventListener[]>, acceptBubbling?: boolean) => (() => void);
10
10
  //# sourceMappingURL=addAsyncEventListener.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"addAsyncEventListener.d.ts","sourceRoot":"","sources":["../../../src/dom/addAsyncEventListener.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,GAChC,iBAAiB,MAAM,EACvB,WAAW,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,EAAE,CAAC,EAC1D,wBAAqB,KACpB,IAqBF,CAAC"}
1
+ {"version":3,"file":"addAsyncEventListener.d.ts","sourceRoot":"","sources":["../../../src/dom/addAsyncEventListener.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,GAChC,iBAAiB,MAAM,EACvB,WAAW,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,EAAE,CAAC,EAC1D,wBAAqB,KACpB,CAAC,MAAM,IAAI,CAkCb,CAAC"}
@@ -4,23 +4,35 @@
4
4
  * @param elementSelector Selector for element(s) to match event target
5
5
  * @param listeners List of event types and related callback(s)
6
6
  * @param acceptBubbling Boolean switch to allow bubbling or accept only direct element match
7
- * @returns void
7
+ * @returns Cleanup function to remove the delegated listeners
8
8
  */
9
9
  export const addAsyncEventListener = (elementSelector, listeners, acceptBubbling = true) => {
10
+ const removals = [];
10
11
  for (const eventName in listeners) {
11
12
  const functionList = (listeners[eventName] instanceof Array ? listeners[eventName] : [listeners[eventName]]);
12
- functionList.forEach((listener) => document.addEventListener(eventName, (event) => {
13
- const target = event.target;
14
- if (!target) {
15
- return;
16
- }
17
- if (!acceptBubbling && target.matches(elementSelector)) {
18
- listener.call(this, event);
19
- }
20
- else if (acceptBubbling && target.closest(elementSelector)) {
21
- listener.call(this, event);
22
- }
23
- }));
13
+ functionList.forEach((listener) => {
14
+ const handleEvent = (event) => {
15
+ const target = event.target;
16
+ if (!target) {
17
+ return;
18
+ }
19
+ if (!acceptBubbling && target.matches(elementSelector)) {
20
+ listener(event);
21
+ }
22
+ else if (acceptBubbling && target.closest(elementSelector)) {
23
+ listener(event);
24
+ }
25
+ };
26
+ document.addEventListener(eventName, handleEvent);
27
+ removals.push(() => {
28
+ document.removeEventListener(eventName, handleEvent);
29
+ });
30
+ });
24
31
  }
32
+ return () => {
33
+ removals.forEach((remove) => {
34
+ remove();
35
+ });
36
+ };
25
37
  };
26
38
  //# sourceMappingURL=addAsyncEventListener.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"addAsyncEventListener.js","sourceRoot":"","sources":["../../../src/dom/addAsyncEventListener.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,eAAuB,EACvB,SAA0D,EAC1D,cAAc,GAAG,IAAI,EACf,EAAE;IACR,KAAK,MAAM,SAAS,IAAI,SAAS,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,CACnB,SAAS,CAAC,SAAS,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CACnE,CAAC;QAErB,YAAY,CAAC,OAAO,CAAC,CAAC,QAAuB,EAAE,EAAE,CAC/C,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAY,EAAE,EAAE;YACpD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;YAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;YACT,CAAC;YAED,IAAI,CAAC,cAAc,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBACvD,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7B,CAAC;iBAAM,IAAI,cAAc,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC7D,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"addAsyncEventListener.js","sourceRoot":"","sources":["../../../src/dom/addAsyncEventListener.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,eAAuB,EACvB,SAA0D,EAC1D,cAAc,GAAG,IAAI,EACP,EAAE;IAChB,MAAM,QAAQ,GAAmB,EAAE,CAAC;IAEpC,KAAK,MAAM,SAAS,IAAI,SAAS,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,CACnB,SAAS,CAAC,SAAS,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CACnE,CAAC;QAErB,YAAY,CAAC,OAAO,CAAC,CAAC,QAAuB,EAAE,EAAE;YAC/C,MAAM,WAAW,GAAG,CAAC,KAAY,EAAQ,EAAE;gBACzC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;gBAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC,cAAc,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;oBACvD,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAClB,CAAC;qBAAM,IAAI,cAAc,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC7D,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAClB,CAAC;YACH,CAAC,CAAC;YAEF,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAClD,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE;gBACjB,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YACvD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,GAAG,EAAE;QACV,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC1B,MAAM,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * @param element Node element outside which to listen to clicks
5
5
  * @param callback Function to trigger when clicked outside
6
- * @returns void
6
+ * @returns Cleanup function to remove the listener
7
7
  */
8
- export declare const addClickOutsideListener: (element: HTMLElement, callback: (event?: Event) => void) => void;
8
+ export declare const addClickOutsideListener: (element: HTMLElement, callback: (event?: Event) => void) => (() => void);
9
9
  //# sourceMappingURL=addClickOutsideListener.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"addClickOutsideListener.d.ts","sourceRoot":"","sources":["../../../src/dom/addClickOutsideListener.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,GAClC,SAAS,WAAW,EACpB,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,KAChC,IAQF,CAAC"}
1
+ {"version":3,"file":"addClickOutsideListener.d.ts","sourceRoot":"","sources":["../../../src/dom/addClickOutsideListener.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,GAClC,SAAS,WAAW,EACpB,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,KAChC,CAAC,MAAM,IAAI,CAcb,CAAC"}
@@ -3,14 +3,18 @@
3
3
  *
4
4
  * @param element Node element outside which to listen to clicks
5
5
  * @param callback Function to trigger when clicked outside
6
- * @returns void
6
+ * @returns Cleanup function to remove the listener
7
7
  */
8
8
  export const addClickOutsideListener = (element, callback) => {
9
- document.addEventListener('click', (event) => {
9
+ const handleClick = (event) => {
10
10
  const target = event.target;
11
11
  if (!!target && !element.contains(target)) {
12
- callback.call(this, event);
12
+ callback(event);
13
13
  }
14
- });
14
+ };
15
+ document.addEventListener('click', handleClick);
16
+ return () => {
17
+ document.removeEventListener('click', handleClick);
18
+ };
15
19
  };
16
20
  //# sourceMappingURL=addClickOutsideListener.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"addClickOutsideListener.js","sourceRoot":"","sources":["../../../src/dom/addClickOutsideListener.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,OAAoB,EACpB,QAAiC,EAC3B,EAAE;IACR,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;QAClD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;QAE3C,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1C,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"addClickOutsideListener.js","sourceRoot":"","sources":["../../../src/dom/addClickOutsideListener.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,OAAoB,EACpB,QAAiC,EACnB,EAAE;IAChB,MAAM,WAAW,GAAG,CAAC,KAAY,EAAQ,EAAE;QACzC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;QAE3C,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1C,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;IAEF,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAEhD,OAAO,GAAG,EAAE;QACV,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACrD,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -1,8 +1,10 @@
1
1
  /**
2
- * Add event listener(s) to one or more Node elements
2
+ * Add event listener(s) to one or more elements
3
3
  *
4
- * @param element One or multiple Node element(s) to set listener(s) for
5
- * @param listeners List of event types and related callback(s)
4
+ * `listeners` is a map of event name to one handler or an array of handlers. This helper does not take `AddEventListenerOptions` and does not return cleanup.
5
+ *
6
+ * @param element One element or a list of elements
7
+ * @param listeners Event name to handler or handler array
6
8
  * @returns void
7
9
  */
8
10
  export declare const addEventListener: (element: HTMLElement | HTMLElement[] | NodeListOf<HTMLElement> | HTMLCollectionOf<HTMLElement>, listeners: Record<string, EventListenerOrEventListenerObject | EventListenerOrEventListenerObject[]>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"addEventListener.d.ts","sourceRoot":"","sources":["../../../src/dom/addEventListener.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAC3B,SAAS,WAAW,GAAG,WAAW,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,gBAAgB,CAAC,WAAW,CAAC,EAC9F,WAAW,MAAM,CACf,MAAM,EACN,kCAAkC,GAAG,kCAAkC,EAAE,CAC1E,KACA,IAkBF,CAAC"}
1
+ {"version":3,"file":"addEventListener.d.ts","sourceRoot":"","sources":["../../../src/dom/addEventListener.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAC3B,SAAS,WAAW,GAAG,WAAW,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,gBAAgB,CAAC,WAAW,CAAC,EAC9F,WAAW,MAAM,CACf,MAAM,EACN,kCAAkC,GAAG,kCAAkC,EAAE,CAC1E,KACA,IAkBF,CAAC"}
@@ -1,8 +1,10 @@
1
1
  /**
2
- * Add event listener(s) to one or more Node elements
2
+ * Add event listener(s) to one or more elements
3
3
  *
4
- * @param element One or multiple Node element(s) to set listener(s) for
5
- * @param listeners List of event types and related callback(s)
4
+ * `listeners` is a map of event name to one handler or an array of handlers. This helper does not take `AddEventListenerOptions` and does not return cleanup.
5
+ *
6
+ * @param element One element or a list of elements
7
+ * @param listeners Event name to handler or handler array
6
8
  * @returns void
7
9
  */
8
10
  export const addEventListener = (element, listeners) => {
@@ -1 +1 @@
1
- {"version":3,"file":"addEventListener.js","sourceRoot":"","sources":["../../../src/dom/addEventListener.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,OAA8F,EAC9F,SAGC,EACK,EAAE;IACR,MAAM,WAAW,GAAG,CAClB,OAAO,YAAY,KAAK,IAAI,OAAO,YAAY,cAAc,IAAI,OAAO,YAAY,QAAQ;QAC1F,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC,CAAC,CAAC,OAAO,CAAC,CACG,CAAC;IAEnB,WAAW,CAAC,OAAO,CAAC,CAAC,aAA0B,EAAE,EAAE;QACjD,KAAK,MAAM,SAAS,IAAI,SAAS,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,CACnB,SAAS,CAAC,SAAS,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAC9C,CAAC;YAE1C,YAAY,CAAC,OAAO,CAAC,CAAC,QAA4C,EAAE,EAAE,CACpE,aAAa,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CACpD,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"addEventListener.js","sourceRoot":"","sources":["../../../src/dom/addEventListener.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,OAA8F,EAC9F,SAGC,EACK,EAAE;IACR,MAAM,WAAW,GAAG,CAClB,OAAO,YAAY,KAAK,IAAI,OAAO,YAAY,cAAc,IAAI,OAAO,YAAY,QAAQ;QAC1F,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC,CAAC,CAAC,OAAO,CAAC,CACG,CAAC;IAEnB,WAAW,CAAC,OAAO,CAAC,CAAC,aAA0B,EAAE,EAAE;QACjD,KAAK,MAAM,SAAS,IAAI,SAAS,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,CACnB,SAAS,CAAC,SAAS,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAC9C,CAAC;YAE1C,YAAY,CAAC,OAAO,CAAC,CAAC,QAA4C,EAAE,EAAE,CACpE,aAAa,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CACpD,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"copyToClipboard.d.ts","sourceRoot":"","sources":["../../../src/dom/copyToClipboard.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAU,MAAM,MAAM,KAAG,OAAO,CAAC,OAAO,CAyBnE,CAAC"}
1
+ {"version":3,"file":"copyToClipboard.d.ts","sourceRoot":"","sources":["../../../src/dom/copyToClipboard.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAU,MAAM,MAAM,KAAG,OAAO,CAAC,OAAO,CA4BnE,CAAC"}
@@ -21,11 +21,14 @@ export const copyToClipboard = async (text) => {
21
21
  tempTextarea.style.opacity = '0';
22
22
  tempTextarea.style.pointerEvents = 'none';
23
23
  document.body.appendChild(tempTextarea);
24
- tempTextarea.focus();
25
- tempTextarea.select();
26
- const success = document.execCommand('copy');
27
- document.body.removeChild(tempTextarea);
28
- return success;
24
+ try {
25
+ tempTextarea.focus();
26
+ tempTextarea.select();
27
+ return document.execCommand('copy');
28
+ }
29
+ finally {
30
+ document.body.removeChild(tempTextarea);
31
+ }
29
32
  }
30
33
  catch {
31
34
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"copyToClipboard.js","sourceRoot":"","sources":["../../../src/dom/copyToClipboard.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;IACtE,IAAI,CAAC;QACH,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC;YACvE,MAAM,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,iBAAiB;IACnB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACxD,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC;QAC1B,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;QACtC,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;QACjC,YAAY,CAAC,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC;QAC1C,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QACxC,YAAY,CAAC,KAAK,EAAE,CAAC;QACrB,YAAY,CAAC,MAAM,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7C,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QACxC,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"copyToClipboard.js","sourceRoot":"","sources":["../../../src/dom/copyToClipboard.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;IACtE,IAAI,CAAC;QACH,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC;YACvE,MAAM,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,iBAAiB;IACnB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACxD,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC;QAC1B,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;QACtC,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;QACjC,YAAY,CAAC,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC;QAC1C,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAExC,IAAI,CAAC;YACH,YAAY,CAAC,KAAK,EAAE,CAAC;YACrB,YAAY,CAAC,MAAM,EAAE,CAAC;YACtB,OAAO,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;gBAAS,CAAC;YACT,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC"}
@@ -1,10 +1,13 @@
1
- import type { IExtendingElementProps } from './interfaces/createElement.js';
1
+ import type { TCreateElementProps } from './types/createElement.js';
2
2
  /**
3
3
  * Method for creating Node element and assigning multiple parameters, event listeners & children in one method call
4
4
  *
5
5
  * @param tagName Node tag name
6
6
  * @param props List of attributes, event listeners or/and children to assign to the newly created element
7
- * @returns Resulting Node element
7
+ * @returns Created element; known HTML tags infer their specific element type
8
8
  */
9
- export declare const createElement: <T = HTMLElement>(tagName: string, props?: Partial<Omit<T, "children" | "dataset" | "style">> & IExtendingElementProps) => T;
9
+ export declare const createElement: {
10
+ <K extends keyof HTMLElementTagNameMap>(tagName: K, props?: TCreateElementProps<HTMLElementTagNameMap[K]>): HTMLElementTagNameMap[K];
11
+ (tagName: string, props?: TCreateElementProps<HTMLElement>): HTMLElement;
12
+ };
10
13
  //# sourceMappingURL=createElement.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createElement.d.ts","sourceRoot":"","sources":["../../../src/dom/createElement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GAAI,CAAC,GAAG,WAAW,EAC3C,SAAS,MAAM,EACf,QAAQ,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC,GAAG,sBAAsB,KAClF,CAgDF,CAAC"}
1
+ {"version":3,"file":"createElement.d.ts","sourceRoot":"","sources":["../../../src/dom/createElement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE;IAC1B,CAAC,CAAC,SAAS,MAAM,qBAAqB,EACpC,OAAO,EAAE,CAAC,EACV,KAAK,CAAC,EAAE,mBAAmB,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,GACpD,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;CAiD1E,CAAC"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * @param tagName Node tag name
5
5
  * @param props List of attributes, event listeners or/and children to assign to the newly created element
6
- * @returns Resulting Node element
6
+ * @returns Created element; known HTML tags infer their specific element type
7
7
  */
8
8
  export const createElement = (tagName, props) => {
9
9
  const element = document.createElement(tagName);
@@ -1 +1 @@
1
- {"version":3,"file":"createElement.js","sourceRoot":"","sources":["../../../src/dom/createElement.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,OAAe,EACf,KAAmF,EAChF,EAAE;IACL,MAAM,OAAO,GAAgB,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAE7D,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,WAAW,GAAG,KAAgC,CAAC;QAErD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAE/B,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;gBACnB,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,KAAe,CAAC,CAAC;YAC7C,CAAC;iBAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;gBAC1B,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAK,CAAC,EAAE,CAAC;oBAC/D,OAAO,CAAC,YAAY,CAAC,QAAQ,OAAO,EAAE,EAAE,SAAmB,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;iBAAM,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBAC3B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5C,CAAC;iBAAM,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;gBAC9B,MAAM,QAAQ,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;gBACnD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAS,EAAE,CAAC;oBACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9B,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;oBACvD,CAAC;yBAAM,CAAC;wBACN,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;oBAC9B,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;iBAAM,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;gBAC/B,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,SAAU,EAAE,CAAC;oBACzC,MAAM,YAAY,GAAG,CACnB,KAAK,CAAC,SAAU,CAAC,SAAS,CAAC,YAAY,KAAK;wBAC1C,CAAC,CAAC,KAAK,CAAC,SAAU,CAAC,SAAS,CAAC;wBAC7B,CAAC,CAAC,CAAC,KAAK,CAAC,SAAU,CAAC,SAAS,CAAC,CAAC,CACM,CAAC;oBAE1C,YAAY,CAAC,OAAO,CAAC,CAAC,QAA4C,EAAE,EAAE,CACpE,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAC9C,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAChD,CAAC;iBAAM,CAAC;gBACL,OAA8C,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,OAAuB,CAAC;AACjC,CAAC,CAAC"}
1
+ {"version":3,"file":"createElement.js","sourceRoot":"","sources":["../../../src/dom/createElement.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAMtB,CAAC,OAAe,EAAE,KAAwC,EAAe,EAAE;IAC7E,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAEhD,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,WAAW,GAAG,KAAgC,CAAC;QAErD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAE/B,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;gBACnB,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,KAAe,CAAC,CAAC;YAC7C,CAAC;iBAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;gBAC1B,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAK,CAAC,EAAE,CAAC;oBAC/D,OAAO,CAAC,YAAY,CAAC,QAAQ,OAAO,EAAE,EAAE,SAAmB,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;iBAAM,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBAC3B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5C,CAAC;iBAAM,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;gBAC9B,MAAM,QAAQ,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;gBACnD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAS,EAAE,CAAC;oBACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9B,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;oBACvD,CAAC;yBAAM,CAAC;wBACN,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;oBAC9B,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;iBAAM,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;gBAC/B,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,SAAU,EAAE,CAAC;oBACzC,MAAM,YAAY,GAAG,CACnB,KAAK,CAAC,SAAU,CAAC,SAAS,CAAC,YAAY,KAAK;wBAC1C,CAAC,CAAC,KAAK,CAAC,SAAU,CAAC,SAAS,CAAC;wBAC7B,CAAC,CAAC,CAAC,KAAK,CAAC,SAAU,CAAC,SAAS,CAAC,CAAC,CACM,CAAC;oBAE1C,YAAY,CAAC,OAAO,CAAC,CAAC,QAA4C,EAAE,EAAE,CACpE,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAC9C,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAChD,CAAC;iBAAM,CAAC;gBACL,OAA8C,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
@@ -1,9 +1,9 @@
1
1
  /**
2
- * Manually fire event on Node element
2
+ * Dispatch a native Event on an element
3
3
  *
4
- * @param element Node element on which should be fired event
5
- * @param eventType Type name of event that should be fired
6
- * @returns Result of the action
4
+ * @param element Element to dispatch on
5
+ * @param eventType Event type name
6
+ * @returns Result of `dispatchEvent`
7
7
  */
8
8
  export declare const fireEvent: (element: HTMLElement, eventType: string) => boolean;
9
9
  //# sourceMappingURL=fireEvent.d.ts.map
@@ -1,9 +1,9 @@
1
1
  /**
2
- * Manually fire event on Node element
2
+ * Dispatch a native Event on an element
3
3
  *
4
- * @param element Node element on which should be fired event
5
- * @param eventType Type name of event that should be fired
6
- * @returns Result of the action
4
+ * @param element Element to dispatch on
5
+ * @param eventType Event type name
6
+ * @returns Result of `dispatchEvent`
7
7
  */
8
8
  export const fireEvent = (element, eventType) => element.dispatchEvent(new Event(eventType));
9
9
  //# sourceMappingURL=fireEvent.js.map
@@ -1,4 +1,5 @@
1
1
  export * from './interfaces/index.js';
2
+ export * from './types/index.js';
2
3
  export * from './addAsyncEventListener.js';
3
4
  export * from './addClickOutsideListener.js';
4
5
  export * from './addEventListener.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dom/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AAEtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mCAAmC,CAAC;AAClD,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dom/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mCAAmC,CAAC;AAClD,cAAc,qBAAqB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from './interfaces/index.js';
2
+ export * from './types/index.js';
2
3
  export * from './addAsyncEventListener.js';
3
4
  export * from './addClickOutsideListener.js';
4
5
  export * from './addEventListener.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dom/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AAEtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mCAAmC,CAAC;AAClD,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dom/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mCAAmC,CAAC;AAClD,cAAc,qBAAqB,CAAC"}
@@ -1,4 +1,4 @@
1
- export type TAriaLabelKey = 'atomic' | 'busy' | 'controls' | 'current' | 'describedby' | 'details' | 'disables' | 'dropeffect' | 'errormessage' | 'expanded' | 'flowto' | 'grabbed' | 'haspopup' | 'hidden' | 'invalid' | 'keyshortcuts' | 'label' | 'labelledby' | 'live' | 'modal' | 'owns' | 'relevant' | 'roledescription';
1
+ export type TAriaLabelKey = 'atomic' | 'busy' | 'controls' | 'current' | 'describedby' | 'details' | 'disabled' | 'dropeffect' | 'errormessage' | 'expanded' | 'flowto' | 'grabbed' | 'haspopup' | 'hidden' | 'invalid' | 'keyshortcuts' | 'label' | 'labelledby' | 'live' | 'modal' | 'owns' | 'relevant' | 'roledescription';
2
2
  export interface IExtendingElementProps {
3
3
  children?: (HTMLElement | string | SVGElement)[];
4
4
  listeners?: Record<string, EventListenerOrEventListenerObject | EventListenerOrEventListenerObject[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"toggleFullscreenWithFallback.d.ts","sourceRoot":"","sources":["../../../src/dom/toggleFullscreenWithFallback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AAE/F;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,GACvC,UAAS,WAAsC,EAC/C,UAAU,0BAA0B,KACnC,OAAO,CAAC,OAAO,CAkEjB,CAAC"}
1
+ {"version":3,"file":"toggleFullscreenWithFallback.d.ts","sourceRoot":"","sources":["../../../src/dom/toggleFullscreenWithFallback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AA8B/F;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,GACvC,UAAS,WAAsC,EAC/C,UAAU,0BAA0B,KACnC,OAAO,CAAC,OAAO,CAmDjB,CAAC"}