tiny-essentials 1.28.19 → 1.29.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 (555) hide show
  1. package/README.md +1 -1
  2. package/changelog/1/28/19.md +24 -0
  3. package/changelog/1/29/0.md +58 -0
  4. package/dist/v1/ColorSafeStringify.min.js +1 -1
  5. package/dist/v1/TinyAdvancedRaffle.min.js +1 -1
  6. package/dist/v1/TinyAfterScrollWatcher.min.js +1 -1
  7. package/dist/v1/TinyAnalogClock.min.js +1 -1
  8. package/dist/v1/TinyArrayComparator.min.js +1 -1
  9. package/dist/v1/TinyArrayPaginator.min.js +1 -1
  10. package/dist/v1/TinyBasicsEs.min.js +1 -1
  11. package/dist/v1/TinyBrowserMonitor.min.js +1 -0
  12. package/dist/v1/TinyClassManager.min.js +1 -1
  13. package/dist/v1/TinyClipboard.min.js +1 -1
  14. package/dist/v1/TinyCloner.min.js +1 -0
  15. package/dist/v1/TinyColorConverter.min.js +1 -1
  16. package/dist/v1/TinyColorValidator.min.js +1 -1
  17. package/dist/v1/TinyCookieConsent.min.js +1 -1
  18. package/dist/v1/TinyDayNightCycle.min.js +1 -1
  19. package/dist/v1/TinyDebugger.min.js +1 -1
  20. package/dist/v1/TinyDomReadyManager.min.js +1 -1
  21. package/dist/v1/TinyDragDropDetector.min.js +1 -1
  22. package/dist/v1/TinyDragger.min.js +1 -1
  23. package/dist/v1/TinyElementObserver.min.js +1 -1
  24. package/dist/v1/TinyEssentials.min.js +1 -1
  25. package/dist/v1/TinyGamepad.min.js +1 -1
  26. package/dist/v1/TinyHtml.min.js +1 -1
  27. package/dist/v1/TinyHtmlTagRegexBuilder.min.js +1 -0
  28. package/dist/v1/TinyHttpResponseRegistry.min.js +1 -0
  29. package/dist/v1/TinyI18.min.js +1 -1
  30. package/dist/v1/TinyIframeEvents.min.js +1 -1
  31. package/dist/v1/TinyInventory.min.js +1 -1
  32. package/dist/v1/TinyInventoryTrader.min.js +1 -1
  33. package/dist/v1/TinyLevelUp.min.js +1 -1
  34. package/dist/v1/TinyLoadingScreen.min.js +1 -1
  35. package/dist/v1/TinyLocalStorage.min.js +1 -1
  36. package/dist/v1/TinyMaInSys.min.js +1 -1
  37. package/dist/v1/TinyMapCache.min.js +1 -0
  38. package/dist/v1/TinyMediaPlayer.min.js +1 -1
  39. package/dist/v1/TinyNeedBar.min.js +1 -1
  40. package/dist/v1/TinyNewWinEvents.min.js +1 -1
  41. package/dist/v1/TinyNotificationAdapter.min.js +1 -0
  42. package/dist/v1/TinyNotifications.min.js +1 -1
  43. package/dist/v1/TinyNotifyCenter.min.js +1 -1
  44. package/dist/v1/TinyOPFSFileSystem.min.js +1 -0
  45. package/dist/v1/TinyPasswordValidator.min.js +1 -0
  46. package/dist/v1/TinyPluginPackage.min.js +1 -0
  47. package/dist/v1/TinyPromiseQueue.min.js +1 -1
  48. package/dist/v1/TinyPushManager.min.js +1 -0
  49. package/dist/v1/TinyPushPayload.min.js +1 -0
  50. package/dist/v1/TinyPushRouter.min.js +1 -0
  51. package/dist/v1/TinyRadioFm.min.js +1 -1
  52. package/dist/v1/TinyRateLimiter.min.js +1 -1
  53. package/dist/v1/TinyRegexEs.min.js +1 -0
  54. package/dist/v1/TinyRouter.min.js +1 -0
  55. package/dist/v1/TinyServiceWorker.min.js +1 -0
  56. package/dist/v1/TinyServiceWorkerEngine.min.js +1 -0
  57. package/dist/v1/TinySetMapPackage.min.js +1 -0
  58. package/dist/v1/TinySimpleDice.min.js +1 -1
  59. package/dist/v1/TinySmartScroller.min.js +1 -1
  60. package/dist/v1/TinyStorageBucketFileSystem.min.js +1 -0
  61. package/dist/v1/TinyTextDiffer.min.js +1 -1
  62. package/dist/v1/TinyTextRangeEditor.min.js +1 -1
  63. package/dist/v1/TinyTextarea.min.js +1 -1
  64. package/dist/v1/TinyThrottledApi.min.js +1 -0
  65. package/dist/v1/TinyTimeout.min.js +1 -1
  66. package/dist/v1/TinyToastNotify.min.js +1 -1
  67. package/dist/v1/TinyUploadClicker.min.js +1 -1
  68. package/dist/v1/TinyUriParser.min.js +1 -0
  69. package/dist/v1/TinyVersion.min.js +1 -0
  70. package/dist/v1/TinyWebWorker.min.js +1 -0
  71. package/dist/v1/TinyWebWorkerEngine.min.js +1 -0
  72. package/dist/v1/UltraRandomMsgGen.min.js +1 -1
  73. package/dist/v1/basics/array.cjs +2 -2
  74. package/dist/v1/basics/array.d.mts +2 -0
  75. package/dist/v1/basics/array.d.mts.map +1 -1
  76. package/dist/v1/basics/array.mjs +2 -1
  77. package/dist/v1/basics/browserDetector.cjs +37 -12
  78. package/dist/v1/basics/browserDetector.d.mts +8 -0
  79. package/dist/v1/basics/browserDetector.d.mts.map +1 -1
  80. package/dist/v1/basics/browserDetector.mjs +32 -13
  81. package/dist/v1/basics/crypto.cjs +23 -0
  82. package/dist/v1/basics/crypto.d.mts +10 -0
  83. package/dist/v1/basics/crypto.d.mts.map +1 -0
  84. package/dist/v1/basics/crypto.mjs +18 -0
  85. package/dist/v1/basics/html.cjs +0 -3
  86. package/dist/v1/basics/html.d.mts.map +1 -1
  87. package/dist/v1/basics/html.mjs +0 -2
  88. package/dist/v1/basics/index.cjs +8 -1
  89. package/dist/v1/basics/index.d.mts +6 -5
  90. package/dist/v1/basics/index.d.mts.map +1 -1
  91. package/dist/v1/basics/index.mjs +6 -5
  92. package/dist/v1/basics/objChecker.cjs +88 -0
  93. package/dist/v1/basics/objChecker.d.mts +26 -0
  94. package/dist/v1/basics/objChecker.d.mts.map +1 -1
  95. package/dist/v1/basics/objChecker.mjs +74 -0
  96. package/dist/v1/basics/objFilter.cjs +234 -93
  97. package/dist/v1/basics/objFilter.d.mts +96 -22
  98. package/dist/v1/basics/objFilter.d.mts.map +1 -1
  99. package/dist/v1/basics/objFilter.mjs +216 -92
  100. package/dist/v1/basics/promiseUtils.cjs +48 -12
  101. package/dist/v1/basics/promiseUtils.d.mts +45 -12
  102. package/dist/v1/basics/promiseUtils.d.mts.map +1 -1
  103. package/dist/v1/basics/promiseUtils.mjs +47 -12
  104. package/dist/v1/basics/text.cjs +0 -12
  105. package/dist/v1/basics/text.d.mts +0 -10
  106. package/dist/v1/basics/text.d.mts.map +1 -1
  107. package/dist/v1/basics/text.mjs +0 -10
  108. package/dist/v1/index.cjs +88 -3
  109. package/dist/v1/index.d.mts +31 -6
  110. package/dist/v1/index.d.mts.map +1 -1
  111. package/dist/v1/index.mjs +32 -7
  112. package/dist/v1/jsdoc/EventEmitter.cjs +4 -0
  113. package/dist/v1/jsdoc/EventEmitter.d.mts +33 -0
  114. package/dist/v1/jsdoc/EventEmitter.d.mts.map +1 -0
  115. package/dist/v1/jsdoc/EventEmitter.mjs +18 -0
  116. package/dist/v1/libs/array/TinyArrayComparator.cjs +240 -25
  117. package/dist/v1/libs/array/TinyArrayComparator.d.mts +130 -22
  118. package/dist/v1/libs/array/TinyArrayComparator.d.mts.map +1 -1
  119. package/dist/v1/libs/array/TinyArrayComparator.mjs +210 -24
  120. package/dist/v1/libs/fs/constants.cjs +74 -0
  121. package/dist/v1/libs/fs/constants.d.mts +22 -0
  122. package/dist/v1/libs/fs/constants.d.mts.map +1 -0
  123. package/dist/v1/libs/fs/constants.mjs +53 -0
  124. package/dist/v1/libs/fs/encoding.cjs +118 -0
  125. package/dist/v1/libs/fs/encoding.d.mts +50 -0
  126. package/dist/v1/libs/fs/encoding.d.mts.map +1 -0
  127. package/dist/v1/libs/fs/encoding.mjs +102 -0
  128. package/dist/v1/libs/fs/error.cjs +188 -0
  129. package/dist/v1/libs/fs/error.d.mts +105 -0
  130. package/dist/v1/libs/fs/error.d.mts.map +1 -0
  131. package/dist/v1/libs/fs/error.mjs +158 -0
  132. package/dist/v1/libs/fs/handle.cjs +121 -0
  133. package/dist/v1/libs/fs/handle.d.mts +56 -0
  134. package/dist/v1/libs/fs/handle.d.mts.map +1 -0
  135. package/dist/v1/libs/fs/handle.mjs +100 -0
  136. package/dist/v1/libs/fs/index.cjs +700 -0
  137. package/dist/v1/libs/fs/index.d.mts +377 -0
  138. package/dist/v1/libs/fs/index.d.mts.map +1 -0
  139. package/dist/v1/libs/fs/index.mjs +630 -0
  140. package/dist/v1/libs/fs/path.cjs +234 -0
  141. package/dist/v1/libs/fs/path.d.mts +176 -0
  142. package/dist/v1/libs/fs/path.d.mts.map +1 -0
  143. package/dist/v1/libs/fs/path.mjs +197 -0
  144. package/dist/v1/libs/fs/plugins/OPFS/StorageBucket.cjs +202 -0
  145. package/dist/v1/libs/fs/plugins/OPFS/StorageBucket.d.mts +121 -0
  146. package/dist/v1/libs/fs/plugins/OPFS/StorageBucket.d.mts.map +1 -0
  147. package/dist/v1/libs/fs/plugins/OPFS/StorageBucket.mjs +172 -0
  148. package/dist/v1/libs/fs/plugins/OPFS/index.cjs +334 -0
  149. package/dist/v1/libs/fs/plugins/OPFS/index.d.mts +98 -0
  150. package/dist/v1/libs/fs/plugins/OPFS/index.d.mts.map +1 -0
  151. package/dist/v1/libs/fs/plugins/OPFS/index.mjs +300 -0
  152. package/dist/v1/libs/fs/stats.cjs +245 -0
  153. package/dist/v1/libs/fs/stats.d.mts +226 -0
  154. package/dist/v1/libs/fs/stats.d.mts.map +1 -0
  155. package/dist/v1/libs/fs/stats.mjs +197 -0
  156. package/dist/v1/libs/html/events/TinyIframeEvents.cjs +10 -1
  157. package/dist/v1/libs/html/events/TinyIframeEvents.d.mts +9 -2
  158. package/dist/v1/libs/html/events/TinyIframeEvents.d.mts.map +1 -1
  159. package/dist/v1/libs/html/events/TinyIframeEvents.mjs +8 -1
  160. package/dist/v1/libs/html/events/TinyNewWinEvents.cjs +14 -3
  161. package/dist/v1/libs/html/events/TinyNewWinEvents.d.mts +21 -5
  162. package/dist/v1/libs/html/events/TinyNewWinEvents.d.mts.map +1 -1
  163. package/dist/v1/libs/html/events/TinyNewWinEvents.mjs +12 -3
  164. package/dist/v1/libs/html/scroll/TinySmartScroller.cjs +13 -1
  165. package/dist/v1/libs/html/scroll/TinySmartScroller.d.mts +29 -2
  166. package/dist/v1/libs/html/scroll/TinySmartScroller.d.mts.map +1 -1
  167. package/dist/v1/libs/html/scroll/TinySmartScroller.mjs +11 -1
  168. package/dist/v1/libs/math/TinyAdvancedRaffle.cjs +13 -1
  169. package/dist/v1/libs/math/TinyAdvancedRaffle.d.mts +32 -2
  170. package/dist/v1/libs/math/TinyAdvancedRaffle.d.mts.map +1 -1
  171. package/dist/v1/libs/math/TinyAdvancedRaffle.mjs +11 -1
  172. package/dist/v1/libs/math/TinyTimeout.cjs +0 -14
  173. package/dist/v1/libs/math/TinyTimeout.d.mts +0 -11
  174. package/dist/v1/libs/math/TinyTimeout.d.mts.map +1 -1
  175. package/dist/v1/libs/math/TinyTimeout.mjs +0 -13
  176. package/dist/v1/libs/media/TinyMediaPlayer/index.cjs +25 -1
  177. package/dist/v1/libs/media/TinyMediaPlayer/index.d.mts +35 -2
  178. package/dist/v1/libs/media/TinyMediaPlayer/index.d.mts.map +1 -1
  179. package/dist/v1/libs/media/TinyMediaPlayer/index.mjs +23 -1
  180. package/dist/v1/libs/media/TinyMediaPlayer.cjs +2 -2
  181. package/dist/v1/libs/media/TinyMediaPlayer.d.mts +2 -2
  182. package/dist/v1/libs/media/TinyMediaPlayer.d.mts.map +1 -1
  183. package/dist/v1/libs/media/TinyMediaPlayer.mjs +2 -2
  184. package/dist/v1/libs/media/TinyRadioFm.cjs +19 -1
  185. package/dist/v1/libs/media/TinyRadioFm.d.mts +78 -2
  186. package/dist/v1/libs/media/TinyRadioFm.d.mts.map +1 -1
  187. package/dist/v1/libs/media/TinyRadioFm.mjs +17 -1
  188. package/dist/v1/libs/plugin/TinyPlugin.cjs +1630 -0
  189. package/dist/v1/libs/plugin/TinyPlugin.d.mts +753 -0
  190. package/dist/v1/libs/plugin/TinyPlugin.d.mts.map +1 -0
  191. package/dist/v1/libs/plugin/TinyPlugin.mjs +1376 -0
  192. package/dist/v1/libs/plugin/TinyVersion.cjs +204 -0
  193. package/dist/v1/libs/plugin/TinyVersion.d.mts +70 -0
  194. package/dist/v1/libs/plugin/TinyVersion.d.mts.map +1 -0
  195. package/dist/v1/libs/plugin/TinyVersion.mjs +179 -0
  196. package/dist/v1/libs/router/TinyRouter.cjs +661 -0
  197. package/dist/v1/libs/router/TinyRouter.d.mts +320 -0
  198. package/dist/v1/libs/router/TinyRouter.d.mts.map +1 -0
  199. package/dist/v1/libs/router/TinyRouter.mjs +572 -0
  200. package/dist/v1/libs/storage/TinyLocalStorage.cjs +20 -1
  201. package/dist/v1/libs/storage/TinyLocalStorage.d.mts +64 -2
  202. package/dist/v1/libs/storage/TinyLocalStorage.d.mts.map +1 -1
  203. package/dist/v1/libs/storage/TinyLocalStorage.mjs +18 -1
  204. package/dist/v1/libs/storage/TinyMapCache.cjs +373 -0
  205. package/dist/v1/libs/storage/TinyMapCache.d.mts +274 -0
  206. package/dist/v1/libs/storage/TinyMapCache.d.mts.map +1 -0
  207. package/dist/v1/libs/storage/TinyMapCache.mjs +333 -0
  208. package/dist/v1/libs/storage/TinySetMapDatabase.cjs +1167 -0
  209. package/dist/v1/libs/storage/TinySetMapDatabase.d.mts +603 -0
  210. package/dist/v1/libs/storage/TinySetMapDatabase.d.mts.map +1 -0
  211. package/dist/v1/libs/storage/TinySetMapDatabase.mjs +1059 -0
  212. package/dist/v1/libs/sw/browser/TinyNotificationAdapter.cjs +126 -0
  213. package/dist/v1/libs/sw/browser/TinyNotificationAdapter.d.mts +132 -0
  214. package/dist/v1/libs/sw/browser/TinyNotificationAdapter.d.mts.map +1 -0
  215. package/dist/v1/libs/sw/browser/TinyNotificationAdapter.mjs +109 -0
  216. package/dist/v1/libs/sw/browser/TinyPushManager.cjs +310 -0
  217. package/dist/v1/libs/sw/browser/TinyPushManager.d.mts +168 -0
  218. package/dist/v1/libs/sw/browser/TinyPushManager.d.mts.map +1 -0
  219. package/dist/v1/libs/sw/browser/TinyPushManager.mjs +264 -0
  220. package/dist/v1/libs/sw/browser/TinyServiceWorker.cjs +1060 -0
  221. package/dist/v1/libs/sw/browser/TinyServiceWorker.d.mts +348 -0
  222. package/dist/v1/libs/sw/browser/TinyServiceWorker.d.mts.map +1 -0
  223. package/dist/v1/libs/sw/browser/TinyServiceWorker.mjs +933 -0
  224. package/dist/v1/libs/sw/browser/plugins/TabManager.cjs +315 -0
  225. package/dist/v1/libs/sw/browser/plugins/TabManager.d.mts +178 -0
  226. package/dist/v1/libs/sw/browser/plugins/TabManager.d.mts.map +1 -0
  227. package/dist/v1/libs/sw/browser/plugins/TabManager.mjs +274 -0
  228. package/dist/v1/libs/sw/browser/utils.cjs +28 -0
  229. package/dist/v1/libs/sw/browser/utils.d.mts +8 -0
  230. package/dist/v1/libs/sw/browser/utils.d.mts.map +1 -0
  231. package/dist/v1/libs/sw/browser/utils.mjs +21 -0
  232. package/dist/v1/libs/sw/service/TinyPushRouter.cjs +222 -0
  233. package/dist/v1/libs/sw/service/TinyPushRouter.d.mts +138 -0
  234. package/dist/v1/libs/sw/service/TinyPushRouter.d.mts.map +1 -0
  235. package/dist/v1/libs/sw/service/TinyPushRouter.mjs +201 -0
  236. package/dist/v1/libs/sw/service/TinyServiceWorkerEngine.cjs +3016 -0
  237. package/dist/v1/libs/sw/service/TinyServiceWorkerEngine.d.mts +993 -0
  238. package/dist/v1/libs/sw/service/TinyServiceWorkerEngine.d.mts.map +1 -0
  239. package/dist/v1/libs/sw/service/TinyServiceWorkerEngine.mjs +2558 -0
  240. package/dist/v1/libs/sw/service/plugins/GlobBypassPlugin.cjs +88 -0
  241. package/dist/v1/libs/sw/service/plugins/GlobBypassPlugin.d.mts +32 -0
  242. package/dist/v1/libs/sw/service/plugins/GlobBypassPlugin.d.mts.map +1 -0
  243. package/dist/v1/libs/sw/service/plugins/GlobBypassPlugin.mjs +69 -0
  244. package/dist/v1/libs/sw/service/plugins/GlobCachePlugin.cjs +112 -0
  245. package/dist/v1/libs/sw/service/plugins/GlobCachePlugin.d.mts +31 -0
  246. package/dist/v1/libs/sw/service/plugins/GlobCachePlugin.d.mts.map +1 -0
  247. package/dist/v1/libs/sw/service/plugins/GlobCachePlugin.mjs +91 -0
  248. package/dist/v1/libs/sw/service/plugins/Ping.cjs +32 -0
  249. package/dist/v1/libs/sw/service/plugins/Ping.d.mts +9 -0
  250. package/dist/v1/libs/sw/service/plugins/Ping.d.mts.map +1 -0
  251. package/dist/v1/libs/sw/service/plugins/Ping.mjs +25 -0
  252. package/dist/v1/libs/sw/service/plugins/TabManager.cjs +457 -0
  253. package/dist/v1/libs/sw/service/plugins/TabManager.d.mts +91 -0
  254. package/dist/v1/libs/sw/service/plugins/TabManager.d.mts.map +1 -0
  255. package/dist/v1/libs/sw/service/plugins/TabManager.mjs +372 -0
  256. package/dist/v1/libs/sw/service/plugins/ViteFileDetector.cjs +180 -0
  257. package/dist/v1/libs/sw/service/plugins/ViteFileDetector.d.mts +28 -0
  258. package/dist/v1/libs/sw/service/plugins/ViteFileDetector.d.mts.map +1 -0
  259. package/dist/v1/libs/sw/service/plugins/ViteFileDetector.mjs +148 -0
  260. package/dist/v1/libs/sw/service/shared/TinyPushPayload.cjs +199 -0
  261. package/dist/v1/libs/sw/service/shared/TinyPushPayload.d.mts +80 -0
  262. package/dist/v1/libs/sw/service/shared/TinyPushPayload.d.mts.map +1 -0
  263. package/dist/v1/libs/sw/service/shared/TinyPushPayload.mjs +174 -0
  264. package/dist/v1/libs/sw/utils.cjs +57 -0
  265. package/dist/v1/libs/sw/utils.d.mts +173 -0
  266. package/dist/v1/libs/sw/utils.d.mts.map +1 -0
  267. package/dist/v1/libs/sw/utils.mjs +50 -0
  268. package/dist/v1/libs/text/TinyI18/Browser-NON-DOM.cjs +57 -0
  269. package/dist/v1/libs/text/TinyI18/Browser-NON-DOM.d.mts +39 -0
  270. package/dist/v1/libs/text/TinyI18/Browser-NON-DOM.d.mts.map +1 -0
  271. package/dist/v1/libs/text/TinyI18/Browser-NON-DOM.mjs +48 -0
  272. package/dist/v1/libs/text/TinyI18/Browser.cjs +64 -0
  273. package/dist/v1/libs/text/TinyI18/Browser.d.mts +47 -0
  274. package/dist/v1/libs/text/TinyI18/Browser.d.mts.map +1 -0
  275. package/dist/v1/libs/text/TinyI18/Browser.mjs +57 -0
  276. package/dist/v1/libs/text/TinyI18/Node.cjs +49 -0
  277. package/dist/v1/libs/text/TinyI18/Node.d.mts +38 -0
  278. package/dist/v1/libs/text/TinyI18/Node.d.mts.map +1 -0
  279. package/dist/v1/libs/text/TinyI18/Node.mjs +43 -0
  280. package/dist/v1/libs/text/TinyI18/browser-utils.cjs +17 -0
  281. package/dist/v1/libs/text/TinyI18/browser-utils.d.mts +8 -0
  282. package/dist/v1/libs/text/TinyI18/browser-utils.d.mts.map +1 -0
  283. package/dist/v1/libs/text/TinyI18/browser-utils.mjs +13 -0
  284. package/dist/v1/libs/text/{TinyI18.cjs → TinyI18/index.cjs} +205 -104
  285. package/dist/v1/libs/text/{TinyI18.d.mts → TinyI18/index.d.mts} +141 -92
  286. package/dist/v1/libs/text/TinyI18/index.d.mts.map +1 -0
  287. package/dist/v1/libs/text/{TinyI18.mjs → TinyI18/index.mjs} +195 -101
  288. package/dist/v1/libs/tools/TinyBrowserMonitor.cjs +1088 -0
  289. package/dist/v1/libs/tools/TinyBrowserMonitor.d.mts +621 -0
  290. package/dist/v1/libs/tools/TinyBrowserMonitor.d.mts.map +1 -0
  291. package/dist/v1/libs/tools/TinyBrowserMonitor.mjs +940 -0
  292. package/dist/v1/libs/tools/TinyDebugger.cjs +180 -19
  293. package/dist/v1/libs/tools/TinyDebugger.d.mts +220 -24
  294. package/dist/v1/libs/tools/TinyDebugger.d.mts.map +1 -1
  295. package/dist/v1/libs/tools/TinyDebugger.mjs +161 -19
  296. package/dist/v1/libs/tools/TinyHtmlTagRegexBuilder.cjs +256 -0
  297. package/dist/v1/libs/tools/TinyHtmlTagRegexBuilder.d.mts +125 -0
  298. package/dist/v1/libs/tools/TinyHtmlTagRegexBuilder.d.mts.map +1 -0
  299. package/dist/v1/libs/tools/TinyHtmlTagRegexBuilder.mjs +223 -0
  300. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser-NON-DOM.cjs +23 -0
  301. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser-NON-DOM.d.mts +17 -0
  302. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser-NON-DOM.d.mts.map +1 -0
  303. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser-NON-DOM.mjs +19 -0
  304. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser.cjs +23 -0
  305. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser.d.mts +17 -0
  306. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser.d.mts.map +1 -0
  307. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser.mjs +19 -0
  308. package/dist/v1/libs/tools/TinyHttpResponseRegistry/EmptyRequestCodes.cjs +390 -0
  309. package/dist/v1/libs/tools/TinyHttpResponseRegistry/EmptyRequestCodes.d.mts +9 -0
  310. package/dist/v1/libs/tools/TinyHttpResponseRegistry/EmptyRequestCodes.d.mts.map +1 -0
  311. package/dist/v1/libs/tools/TinyHttpResponseRegistry/EmptyRequestCodes.mjs +387 -0
  312. package/dist/v1/libs/tools/TinyHttpResponseRegistry/JsDoc.cjs +2 -0
  313. package/dist/v1/libs/tools/TinyHttpResponseRegistry/JsDoc.d.mts +27 -0
  314. package/dist/v1/libs/tools/TinyHttpResponseRegistry/JsDoc.d.mts.map +1 -0
  315. package/dist/v1/libs/tools/TinyHttpResponseRegistry/JsDoc.mjs +12 -0
  316. package/dist/v1/libs/tools/TinyHttpResponseRegistry/MozillaRequestCodes/LICENSE +53 -0
  317. package/dist/v1/libs/tools/TinyHttpResponseRegistry/MozillaRequestCodes/index.cjs +405 -0
  318. package/dist/v1/libs/tools/TinyHttpResponseRegistry/MozillaRequestCodes/index.d.mts +34 -0
  319. package/dist/v1/libs/tools/TinyHttpResponseRegistry/MozillaRequestCodes/index.d.mts.map +1 -0
  320. package/dist/v1/libs/tools/TinyHttpResponseRegistry/MozillaRequestCodes/index.mjs +342 -0
  321. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Node.cjs +23 -0
  322. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Node.d.mts +17 -0
  323. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Node.d.mts.map +1 -0
  324. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Node.mjs +19 -0
  325. package/dist/v1/libs/tools/TinyHttpResponseRegistry/RequestCodes.cjs +327 -0
  326. package/dist/v1/libs/tools/TinyHttpResponseRegistry/RequestCodes.d.mts +9 -0
  327. package/dist/v1/libs/tools/TinyHttpResponseRegistry/RequestCodes.d.mts.map +1 -0
  328. package/dist/v1/libs/tools/TinyHttpResponseRegistry/RequestCodes.mjs +324 -0
  329. package/dist/v1/libs/tools/TinyHttpResponseRegistry/index.cjs +268 -0
  330. package/dist/v1/libs/tools/TinyHttpResponseRegistry/index.d.mts +107 -0
  331. package/dist/v1/libs/tools/TinyHttpResponseRegistry/index.d.mts.map +1 -0
  332. package/dist/v1/libs/tools/TinyHttpResponseRegistry/index.mjs +238 -0
  333. package/dist/v1/libs/tools/TinyPasswordValidator.cjs +491 -0
  334. package/dist/v1/libs/tools/TinyPasswordValidator.d.mts +246 -0
  335. package/dist/v1/libs/tools/TinyPasswordValidator.d.mts.map +1 -0
  336. package/dist/v1/libs/tools/TinyPasswordValidator.mjs +434 -0
  337. package/dist/v1/libs/tools/TinyPkgExportValidator.cjs +48 -0
  338. package/dist/v1/libs/tools/TinyPkgExportValidator.d.mts +14 -0
  339. package/dist/v1/libs/tools/TinyPkgExportValidator.d.mts.map +1 -1
  340. package/dist/v1/libs/tools/TinyPkgExportValidator.mjs +44 -0
  341. package/dist/v1/libs/tools/TinySiteMap.cjs +1029 -0
  342. package/dist/v1/libs/tools/TinySiteMap.d.mts +429 -0
  343. package/dist/v1/libs/tools/TinySiteMap.d.mts.map +1 -0
  344. package/dist/v1/libs/tools/TinySiteMap.mjs +910 -0
  345. package/dist/v1/libs/tools/TinySiteMapStream.cjs +121 -0
  346. package/dist/v1/libs/tools/TinySiteMapStream.d.mts +51 -0
  347. package/dist/v1/libs/tools/TinySiteMapStream.d.mts.map +1 -0
  348. package/dist/v1/libs/tools/TinySiteMapStream.mjs +85 -0
  349. package/dist/v1/libs/tools/TinyURLSecurityVerifier.cjs +444 -0
  350. package/dist/v1/libs/tools/TinyURLSecurityVerifier.d.mts +217 -0
  351. package/dist/v1/libs/tools/TinyURLSecurityVerifier.d.mts.map +1 -0
  352. package/dist/v1/libs/tools/TinyURLSecurityVerifier.mjs +394 -0
  353. package/dist/v1/libs/tools/TinyUriParser/BlueSky.cjs +613 -0
  354. package/dist/v1/libs/tools/TinyUriParser/BlueSky.d.mts +152 -0
  355. package/dist/v1/libs/tools/TinyUriParser/BlueSky.d.mts.map +1 -0
  356. package/dist/v1/libs/tools/TinyUriParser/BlueSky.mjs +527 -0
  357. package/dist/v1/libs/tools/TinyUriParser/Discord.cjs +1119 -0
  358. package/dist/v1/libs/tools/TinyUriParser/Discord.d.mts +306 -0
  359. package/dist/v1/libs/tools/TinyUriParser/Discord.d.mts.map +1 -0
  360. package/dist/v1/libs/tools/TinyUriParser/Discord.mjs +968 -0
  361. package/dist/v1/libs/tools/TinyUriParser/MatrixProtocol.cjs +469 -0
  362. package/dist/v1/libs/tools/TinyUriParser/MatrixProtocol.d.mts +80 -0
  363. package/dist/v1/libs/tools/TinyUriParser/MatrixProtocol.d.mts.map +1 -0
  364. package/dist/v1/libs/tools/TinyUriParser/MatrixProtocol.mjs +379 -0
  365. package/dist/v1/libs/tools/TinyUriParser.cjs +217 -0
  366. package/dist/v1/libs/tools/TinyUriParser.d.mts +109 -0
  367. package/dist/v1/libs/tools/TinyUriParser.d.mts.map +1 -0
  368. package/dist/v1/libs/tools/TinyUriParser.mjs +183 -0
  369. package/dist/v1/libs/utils/TinyCloner.cjs +466 -0
  370. package/dist/v1/libs/utils/TinyCloner.d.mts +221 -0
  371. package/dist/v1/libs/utils/TinyCloner.d.mts.map +1 -0
  372. package/dist/v1/libs/utils/TinyCloner.mjs +416 -0
  373. package/dist/v1/libs/utils/TinyPromiseQueue.cjs +1 -1
  374. package/dist/v1/libs/utils/TinyPromiseQueue.d.mts +2 -2
  375. package/dist/v1/libs/utils/TinyPromiseQueue.d.mts.map +1 -1
  376. package/dist/v1/libs/utils/TinyPromiseQueue.mjs +1 -1
  377. package/dist/v1/libs/utils/TinyThrottledApi.cjs +333 -0
  378. package/dist/v1/libs/utils/TinyThrottledApi.d.mts +163 -0
  379. package/dist/v1/libs/utils/TinyThrottledApi.d.mts.map +1 -0
  380. package/dist/v1/libs/utils/TinyThrottledApi.mjs +294 -0
  381. package/dist/v1/libs/worker/browser/TinyWebWorker.cjs +342 -0
  382. package/dist/v1/libs/worker/browser/TinyWebWorker.d.mts +97 -0
  383. package/dist/v1/libs/worker/browser/TinyWebWorker.d.mts.map +1 -0
  384. package/dist/v1/libs/worker/browser/TinyWebWorker.mjs +305 -0
  385. package/dist/v1/libs/worker/engine/TinyWebWorkerEngine.cjs +346 -0
  386. package/dist/v1/libs/worker/engine/TinyWebWorkerEngine.d.mts +127 -0
  387. package/dist/v1/libs/worker/engine/TinyWebWorkerEngine.d.mts.map +1 -0
  388. package/dist/v1/libs/worker/engine/TinyWebWorkerEngine.mjs +304 -0
  389. package/dist/v1/regexp/Email.cjs +185 -0
  390. package/dist/v1/regexp/Email.d.mts +73 -0
  391. package/dist/v1/regexp/Email.d.mts.map +1 -0
  392. package/dist/v1/regexp/Email.mjs +153 -0
  393. package/dist/v1/regexp/Glob.cjs +293 -0
  394. package/dist/v1/regexp/Glob.d.mts +45 -0
  395. package/dist/v1/regexp/Glob.d.mts.map +1 -0
  396. package/dist/v1/regexp/Glob.mjs +260 -0
  397. package/dist/v1/regexp/Ipv4.cjs +57 -0
  398. package/dist/v1/regexp/Ipv4.d.mts +29 -0
  399. package/dist/v1/regexp/Ipv4.d.mts.map +1 -0
  400. package/dist/v1/regexp/Ipv4.mjs +45 -0
  401. package/dist/v1/regexp/Ipv6.cjs +67 -0
  402. package/dist/v1/regexp/Ipv6.d.mts +29 -0
  403. package/dist/v1/regexp/Ipv6.d.mts.map +1 -0
  404. package/dist/v1/regexp/Ipv6.mjs +54 -0
  405. package/dist/v1/regexp/SegmentExtractor.cjs +145 -0
  406. package/dist/v1/regexp/SegmentExtractor.d.mts +91 -0
  407. package/dist/v1/regexp/SegmentExtractor.d.mts.map +1 -0
  408. package/dist/v1/regexp/SegmentExtractor.mjs +116 -0
  409. package/dist/v1/regexp/UrlDetector.cjs +125 -0
  410. package/dist/v1/regexp/UrlDetector.d.mts +67 -0
  411. package/dist/v1/regexp/UrlDetector.d.mts.map +1 -0
  412. package/dist/v1/regexp/UrlDetector.mjs +102 -0
  413. package/dist/v1/regexp/Username/index.cjs +233 -0
  414. package/dist/v1/regexp/Username/index.d.mts +77 -0
  415. package/dist/v1/regexp/Username/index.d.mts.map +1 -0
  416. package/dist/v1/regexp/Username/index.mjs +199 -0
  417. package/dist/v1/regexp/Username/jsDoc.cjs +2 -0
  418. package/dist/v1/regexp/Username/jsDoc.d.mts +57 -0
  419. package/dist/v1/regexp/Username/jsDoc.d.mts.map +1 -0
  420. package/dist/v1/regexp/Username/jsDoc.mjs +18 -0
  421. package/dist/v1/regexp/Username/templates/BlueSky.cjs +56 -0
  422. package/dist/v1/regexp/Username/templates/BlueSky.d.mts +35 -0
  423. package/dist/v1/regexp/Username/templates/BlueSky.d.mts.map +1 -0
  424. package/dist/v1/regexp/Username/templates/BlueSky.mjs +52 -0
  425. package/dist/v1/regexp/Username/templates/Discord.cjs +505 -0
  426. package/dist/v1/regexp/Username/templates/Discord.d.mts +209 -0
  427. package/dist/v1/regexp/Username/templates/Discord.d.mts.map +1 -0
  428. package/dist/v1/regexp/Username/templates/Discord.mjs +458 -0
  429. package/dist/v1/regexp/Username/templates/MatrixProtocol.cjs +143 -0
  430. package/dist/v1/regexp/Username/templates/MatrixProtocol.d.mts +70 -0
  431. package/dist/v1/regexp/Username/templates/MatrixProtocol.d.mts.map +1 -0
  432. package/dist/v1/regexp/Username/templates/MatrixProtocol.mjs +128 -0
  433. package/dist/v1/regexp/Username/templates/deprecated/Discord.cjs +24 -0
  434. package/dist/v1/regexp/Username/templates/deprecated/Discord.d.mts +17 -0
  435. package/dist/v1/regexp/Username/templates/deprecated/Discord.d.mts.map +1 -0
  436. package/dist/v1/regexp/Username/templates/deprecated/Discord.mjs +20 -0
  437. package/dist/v1/regexp/Username/templates/index.cjs +11 -0
  438. package/dist/v1/regexp/Username/templates/index.d.mts +5 -0
  439. package/dist/v1/regexp/Username/templates/index.d.mts.map +1 -0
  440. package/dist/v1/regexp/Username/templates/index.mjs +4 -0
  441. package/dist/v1/regexp/index.cjs +41 -0
  442. package/dist/v1/regexp/index.d.mts +9 -0
  443. package/dist/v1/regexp/index.d.mts.map +1 -0
  444. package/dist/v1/regexp/index.mjs +8 -0
  445. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Browser.cjs +64 -0
  446. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Browser.d.mts +11 -0
  447. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Browser.d.mts.map +1 -0
  448. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Browser.mjs +51 -0
  449. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/FileInput.cjs +66 -0
  450. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/FileInput.d.mts +11 -0
  451. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/FileInput.d.mts.map +1 -0
  452. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/FileInput.mjs +51 -0
  453. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Node.cjs +39 -0
  454. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Node.d.mts +11 -0
  455. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Node.d.mts.map +1 -0
  456. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Node.mjs +28 -0
  457. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Template.cjs +494 -0
  458. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Template.d.mts +142 -0
  459. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Template.d.mts.map +1 -0
  460. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Template.mjs +445 -0
  461. package/dist/v1/webTemplates/bootstrap/5.3/html/BootstrapDialogs.cjs +30 -4
  462. package/dist/v1/webTemplates/bootstrap/5.3/html/BootstrapDialogs.d.mts +5 -2
  463. package/dist/v1/webTemplates/bootstrap/5.3/html/BootstrapDialogs.d.mts.map +1 -1
  464. package/dist/v1/webTemplates/bootstrap/5.3/html/BootstrapDialogs.mjs +29 -5
  465. package/dist/v1/webTemplates/media/MediaValidator/v1/Browser/index.cjs +135 -0
  466. package/dist/v1/webTemplates/media/MediaValidator/v1/Browser/index.d.mts +83 -0
  467. package/dist/v1/webTemplates/media/MediaValidator/v1/Browser/index.d.mts.map +1 -0
  468. package/dist/v1/webTemplates/media/MediaValidator/v1/Browser/index.mjs +120 -0
  469. package/dist/v1/webTemplates/media/MediaValidator/v1/Node/index.cjs +127 -0
  470. package/dist/v1/webTemplates/media/MediaValidator/v1/Node/index.d.mts +95 -0
  471. package/dist/v1/webTemplates/media/MediaValidator/v1/Node/index.d.mts.map +1 -0
  472. package/dist/v1/webTemplates/media/MediaValidator/v1/Node/index.mjs +109 -0
  473. package/dist/v1/webTemplates/multiformats/14.0/IPFSHasher/index.cjs +83 -0
  474. package/dist/v1/webTemplates/multiformats/14.0/IPFSHasher/index.d.mts +46 -0
  475. package/dist/v1/webTemplates/multiformats/14.0/IPFSHasher/index.d.mts.map +1 -0
  476. package/dist/v1/webTemplates/multiformats/14.0/IPFSHasher/index.mjs +71 -0
  477. package/dist/v1/webTemplates/vite/7.3/plugins/TinyVitePwaPlugin.cjs +493 -0
  478. package/dist/v1/webTemplates/vite/7.3/plugins/TinyVitePwaPlugin.d.mts +67 -0
  479. package/dist/v1/webTemplates/vite/7.3/plugins/TinyVitePwaPlugin.d.mts.map +1 -0
  480. package/dist/v1/webTemplates/vite/7.3/plugins/TinyVitePwaPlugin.mjs +399 -0
  481. package/dist/v1/webTemplates/vite/7.3/plugins/githubUtils.cjs +35 -0
  482. package/dist/v1/webTemplates/vite/7.3/plugins/githubUtils.d.mts +6 -0
  483. package/dist/v1/webTemplates/vite/7.3/plugins/githubUtils.d.mts.map +1 -0
  484. package/dist/v1/webTemplates/vite/7.3/plugins/githubUtils.mjs +29 -0
  485. package/docs/info/RegExp.md +74 -0
  486. package/docs/v1/Exports.md +101 -0
  487. package/docs/v1/README.md +113 -15
  488. package/docs/v1/basics/asyncReplace.md +2 -0
  489. package/docs/v1/basics/browserDetector.md +28 -11
  490. package/docs/v1/basics/crypto.md +85 -0
  491. package/docs/v1/basics/deprecated/html.md +2 -0
  492. package/docs/v1/basics/deprecated/objFilter.md +2 -0
  493. package/docs/v1/basics/html.md +2 -0
  494. package/docs/v1/basics/objChecker.md +55 -0
  495. package/docs/v1/basics/objFilter.md +57 -86
  496. package/docs/v1/basics/promiseUtils.md +12 -3
  497. package/docs/v1/basics/text.md +0 -1
  498. package/docs/v1/libs/array/TinyArrayComparator.md +50 -39
  499. package/docs/v1/libs/fs/TinyFS.md +752 -0
  500. package/docs/v1/libs/fs/TinyOPFSFileSystem.md +495 -0
  501. package/docs/v1/libs/fs/TinyStorageBucketFileSystem.md +407 -0
  502. package/docs/v1/libs/plugin/TinyPlugin.md +441 -0
  503. package/docs/v1/libs/plugin/TinyVersion.md +145 -0
  504. package/docs/v1/libs/router/TinyRouter.md +216 -0
  505. package/docs/v1/libs/storage/TinyMapCache.md +219 -0
  506. package/docs/v1/libs/storage/TinySetMapDatabase.md +478 -0
  507. package/docs/v1/libs/sw/browser/TinyNotificationAdapter.md +280 -0
  508. package/docs/v1/libs/sw/browser/TinyPushManager.md +782 -0
  509. package/docs/v1/libs/sw/browser/TinyServiceWorker.md +365 -0
  510. package/docs/v1/libs/sw/browser/plugins/TabManager.md +133 -0
  511. package/docs/v1/libs/sw/service/TinyPushRouter.md +314 -0
  512. package/docs/v1/libs/sw/service/TinyServiceWorkerEngine.md +748 -0
  513. package/docs/v1/libs/sw/service/plugins/GlobBypassPlugin.md +229 -0
  514. package/docs/v1/libs/sw/service/plugins/GlobCachePlugin.md +91 -0
  515. package/docs/v1/libs/sw/service/plugins/Ping.md +36 -0
  516. package/docs/v1/libs/sw/service/plugins/TabManager.md +64 -0
  517. package/docs/v1/libs/sw/service/plugins/ViteFileDetector.md +92 -0
  518. package/docs/v1/libs/sw/service/shared/TinyPushPayload.md +316 -0
  519. package/docs/v1/libs/text/TinyI18.md +80 -56
  520. package/docs/v1/libs/tools/TinyBrowserMonitor.md +170 -0
  521. package/docs/v1/libs/tools/TinyDebugger.md +117 -1
  522. package/docs/v1/libs/tools/TinyHtmlTagRegexBuilder.md +141 -0
  523. package/docs/v1/libs/tools/TinyHttpResponseRegistry.md +129 -0
  524. package/docs/v1/libs/tools/TinyPasswordValidator.md +153 -0
  525. package/docs/v1/libs/tools/TinyPkgExportValidator.md +45 -1
  526. package/docs/v1/libs/tools/TinySiteMap.md +134 -0
  527. package/docs/v1/libs/tools/TinySiteMapStream.md +97 -0
  528. package/docs/v1/libs/tools/TinyURLSecurityVerifier.md +146 -0
  529. package/docs/v1/libs/tools/TinyUriParser/Discord.md +374 -0
  530. package/docs/v1/libs/tools/TinyUriParser/MatrixProtocol.md +54 -0
  531. package/docs/v1/libs/tools/TinyUriParser.md +128 -0
  532. package/docs/v1/libs/utils/TinyCloner.md +126 -0
  533. package/docs/v1/libs/utils/TinyPromiseQueue.md +1 -1
  534. package/docs/v1/libs/utils/TinyThrottledApi.md +219 -0
  535. package/docs/v1/libs/worker/browser/TinyWebWorker.md +331 -0
  536. package/docs/v1/libs/worker/engine/TinyWebWorkerEngine.md +137 -0
  537. package/docs/v1/regexp/Email.md +127 -0
  538. package/docs/v1/regexp/Glob.md +155 -0
  539. package/docs/v1/regexp/IPv4.md +103 -0
  540. package/docs/v1/regexp/IPv6.md +122 -0
  541. package/docs/v1/regexp/SegmentExtractor.md +120 -0
  542. package/docs/v1/regexp/UrlDetector.md +117 -0
  543. package/docs/v1/regexp/Username/Base.md +131 -0
  544. package/docs/v1/regexp/Username/Discord.md +267 -0
  545. package/docs/v1/regexp/Username/MatrixProtocol.md +131 -0
  546. package/docs/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters.md +569 -0
  547. package/docs/v1/webTemplates/bootstrap/5.3/html/BootstrapDialogs.md +19 -7
  548. package/docs/v1/webTemplates/media/MediaValidator/v1/Browser.md +123 -0
  549. package/docs/v1/webTemplates/media/MediaValidator/v1/Node.md +136 -0
  550. package/docs/v1/webTemplates/multiformats/14.0/IPFSHasher.md +310 -0
  551. package/docs/v1/webTemplates/vite/7.3/plugins/TinyVitePwaPlugin.md +131 -0
  552. package/docs/v1/webTemplates/vite/7.3/plugins/githubUtils.md +50 -0
  553. package/package.json +303 -13
  554. package/types/EventEmitter.d.ts +48 -0
  555. package/dist/v1/libs/text/TinyI18.d.mts.map +0 -1
@@ -0,0 +1,143 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * @typedef {import('../jsDoc.mjs').UsernameRegexTemplate} UsernameRegexTemplate
5
+ */
6
+
7
+ const domainCharPattern = '[a-zA-Z0-9.-]';
8
+ // Support both literal ':' and encoded '%3A'
9
+ const suffixNormal = '\\:';
10
+ const suffixUri = '(?:\\:|%3A)';
11
+
12
+ const domainSuffixPattern = `${domainCharPattern}+\\.[a-zA-Z]{2,}`;
13
+ const urlPathAndQueryPattern = '(?:/[\\w=/$+.:%-]+)?(?:\\?[\\w=&%.$+:;-]+)?';
14
+ const matrixToPermalinkBase = '(?:https?://)?(?:www\\.)?matrix\\.to/#/';
15
+
16
+ const matrixScheme = 'matrix\\:';
17
+ const matrixUriTypePattern = '(?:u/|r/|roomid/|e/)?';
18
+ // Support literal prefixes and their URL-encoded equivalents:
19
+ // @ -> %40, # -> %23, ! -> %21, $ -> %24, + -> %2B
20
+ const matrixIdPrefixPattern = '(?:@|%40|#|%23|!|%21|\\$|%24|\\+|%2B)?';
21
+
22
+ /**
23
+ * Matrix Protocol (matrix.org)
24
+ * Official Documentation: https://spec.matrix.org/latest/appendices/#identifier-grammar
25
+ */
26
+ const MatrixProtocolRegex = Object.freeze({
27
+ /**
28
+ * User ID
29
+ * Format: @localpart:domain
30
+ * @type {UsernameRegexTemplate}
31
+ */
32
+ userName: {
33
+ prefix: '@',
34
+ validValues: '[a-z0-9._=-]',
35
+ length: [1, 255],
36
+ domainPattern: `${suffixNormal}${domainSuffixPattern}`,
37
+ },
38
+
39
+ /**
40
+ * Room Alias (Human-readable alias)
41
+ * Format: #alias:domain
42
+ * @type {UsernameRegexTemplate}
43
+ */
44
+ roomName: {
45
+ prefix: '#',
46
+ validValues: '[a-zA-Z0-9._=-]', // Some servers accept uppercase in aliases
47
+ length: [1, 255],
48
+ domainPattern: `${suffixNormal}${domainSuffixPattern}`,
49
+ },
50
+
51
+ /**
52
+ * Room ID (Internal and immutable ID)
53
+ * Format: !opaque_id:domain
54
+ * @type {UsernameRegexTemplate}
55
+ */
56
+ roomId: {
57
+ prefix: '!',
58
+ validValues: '[a-zA-Z0-9_-]',
59
+ length: [1, 255],
60
+ domainPattern: `${suffixNormal}${domainSuffixPattern}`,
61
+ },
62
+
63
+ /**
64
+ * Event ID (Event/message identifier)
65
+ * Format v1/v2: $opaque_id:domain
66
+ * Format v3+: $Base64String (without the domain at the end)
67
+ * @type {UsernameRegexTemplate}
68
+ */
69
+ eventId: {
70
+ prefix: '$',
71
+ validValues: '[a-zA-Z0-9_+/=-]', // Supports Base64 and URL-Safe Base64 characters
72
+ length: [1, 255],
73
+ // We use (?:...)? here to make the domain group optional,
74
+ // as Matrix updated the Event ID format in recent versions
75
+ // to no longer require the ":domain" part at the end of the string.
76
+ domainPattern: `(?:${suffixNormal}${domainSuffixPattern})?`,
77
+ },
78
+
79
+ /**
80
+ * Group/Space ID (Legacy/Communities)
81
+ * Format: +group_id:domain
82
+ * @type {UsernameRegexTemplate}
83
+ */
84
+ groupId: {
85
+ prefix: '+',
86
+ validValues: '[a-z0-9._=-]',
87
+ length: [1, 255],
88
+ domainPattern: `${suffixNormal}${domainSuffixPattern}`,
89
+ },
90
+
91
+ /**
92
+ * Matrix.to Permalink
93
+ * Format: https://matrix.to/#/@user:domain or matrix.to/#/!room:domain
94
+ * Supports optional event IDs and query parameters (like ?via=server.org)
95
+ * @type {UsernameRegexTemplate}
96
+ */
97
+ matrixToLink: {
98
+ start: `${matrixToPermalinkBase}${matrixIdPrefixPattern}`,
99
+ validValues: '[a-zA-Z0-9._=/%+-]',
100
+ length: [1, 255],
101
+ domainPattern: `${suffixUri}${domainSuffixPattern}${urlPathAndQueryPattern}`,
102
+ },
103
+
104
+ /**
105
+ * Matrix URI Scheme (RFC 8922)
106
+ * Format: matrix:u/user:domain or matrix:roomid/room:domain
107
+ * @type {UsernameRegexTemplate}
108
+ */
109
+ matrixUri: {
110
+ start: `${matrixScheme}${matrixUriTypePattern}${matrixIdPrefixPattern}`,
111
+ validValues: '[a-zA-Z0-9._=/%+-]',
112
+ length: [1, 255],
113
+ domainPattern: `${suffixUri}${domainSuffixPattern}${urlPathAndQueryPattern}`,
114
+ },
115
+
116
+ /**
117
+ * HTML Mention
118
+ * Format: <a href="https://matrix.to/#/@user:domain">User Name</a>
119
+ * Matches standard formatted mentions sent by Matrix clients inside HTML bodies.
120
+ * @type {UsernameRegexTemplate}
121
+ */
122
+ htmlMention: {
123
+ start: `<a\\s+[^>]*?href=["\\'](?:${matrixToPermalinkBase}|${matrixScheme})${matrixUriTypePattern}${matrixIdPrefixPattern}`,
124
+ validValues: '[a-zA-Z0-9._=/%+-]',
125
+ length: [1, 255],
126
+ domainPattern: `${suffixUri}${domainSuffixPattern}${urlPathAndQueryPattern}["\\'][^>]*>[\\s\\S]*?</a\\s*>`,
127
+ },
128
+
129
+ /**
130
+ * Matrix Content URI (Media)
131
+ * Format: mxc://server-name/media-id
132
+ * Used for avatars, images, and file attachments in the Matrix network.
133
+ * @type {UsernameRegexTemplate}
134
+ */
135
+ mxcUri: {
136
+ start: 'mxc://',
137
+ validValues: '[a-zA-Z0-9.:-]',
138
+ length: [1, 255],
139
+ domainPattern: '/[a-zA-Z0-9_=-]+',
140
+ },
141
+ });
142
+
143
+ module.exports = MatrixProtocolRegex;
@@ -0,0 +1,70 @@
1
+ /**
2
+ * @typedef {import('../jsDoc.mjs').UsernameRegexTemplate} UsernameRegexTemplate
3
+ */
4
+ export type UsernameRegexTemplate = import('../jsDoc.mjs').UsernameRegexTemplate;
5
+ /**
6
+ * Matrix Protocol (matrix.org)
7
+ * Official Documentation: https://spec.matrix.org/latest/appendices/#identifier-grammar
8
+ */
9
+ declare const MatrixProtocolRegex: Readonly<{
10
+ /**
11
+ * User ID
12
+ * Format: @localpart:domain
13
+ * @type {UsernameRegexTemplate}
14
+ */
15
+ userName: UsernameRegexTemplate;
16
+ /**
17
+ * Room Alias (Human-readable alias)
18
+ * Format: #alias:domain
19
+ * @type {UsernameRegexTemplate}
20
+ */
21
+ roomName: UsernameRegexTemplate;
22
+ /**
23
+ * Room ID (Internal and immutable ID)
24
+ * Format: !opaque_id:domain
25
+ * @type {UsernameRegexTemplate}
26
+ */
27
+ roomId: UsernameRegexTemplate;
28
+ /**
29
+ * Event ID (Event/message identifier)
30
+ * Format v1/v2: $opaque_id:domain
31
+ * Format v3+: $Base64String (without the domain at the end)
32
+ * @type {UsernameRegexTemplate}
33
+ */
34
+ eventId: UsernameRegexTemplate;
35
+ /**
36
+ * Group/Space ID (Legacy/Communities)
37
+ * Format: +group_id:domain
38
+ * @type {UsernameRegexTemplate}
39
+ */
40
+ groupId: UsernameRegexTemplate;
41
+ /**
42
+ * Matrix.to Permalink
43
+ * Format: https://matrix.to/#/@user:domain or matrix.to/#/!room:domain
44
+ * Supports optional event IDs and query parameters (like ?via=server.org)
45
+ * @type {UsernameRegexTemplate}
46
+ */
47
+ matrixToLink: UsernameRegexTemplate;
48
+ /**
49
+ * Matrix URI Scheme (RFC 8922)
50
+ * Format: matrix:u/user:domain or matrix:roomid/room:domain
51
+ * @type {UsernameRegexTemplate}
52
+ */
53
+ matrixUri: UsernameRegexTemplate;
54
+ /**
55
+ * HTML Mention
56
+ * Format: <a href="https://matrix.to/#/@user:domain">User Name</a>
57
+ * Matches standard formatted mentions sent by Matrix clients inside HTML bodies.
58
+ * @type {UsernameRegexTemplate}
59
+ */
60
+ htmlMention: UsernameRegexTemplate;
61
+ /**
62
+ * Matrix Content URI (Media)
63
+ * Format: mxc://server-name/media-id
64
+ * Used for avatars, images, and file attachments in the Matrix network.
65
+ * @type {UsernameRegexTemplate}
66
+ */
67
+ mxcUri: UsernameRegexTemplate;
68
+ }>;
69
+ export default MatrixProtocolRegex;
70
+ //# sourceMappingURL=MatrixProtocol.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MatrixProtocol.d.mts","sourceRoot":"","sources":["../../../../../src/v1/regexp/Username/templates/MatrixProtocol.mjs"],"names":[],"mappings":"AAAA;;GAEG;AADA,YAAwD,qBAAqB,GAAnE,OAAO,cAAc,EAAE,qBAAqB,CAAuB;AAkBhF;;;GAGG;AACH,QAAA,MAAM,mBAAmB;IACvB;;;;OAIG;cADO,qBAAqB;IAS/B;;;;OAIG;cADO,qBAAqB;IAS/B;;;;OAIG;YADO,qBAAqB;IAS/B;;;;;OAKG;aADO,qBAAqB;IAY/B;;;;OAIG;aADO,qBAAqB;IAS/B;;;;;OAKG;kBADO,qBAAqB;IAS/B;;;;OAIG;eADO,qBAAqB;IAS/B;;;;;OAKG;iBADO,qBAAqB;IAS/B;;;;;OAKG;YADO,qBAAqB;EAQ/B,CAAC;eAEY,mBAAmB"}
@@ -0,0 +1,128 @@
1
+ /**
2
+ * @typedef {import('../jsDoc.mjs').UsernameRegexTemplate} UsernameRegexTemplate
3
+ */
4
+ const domainCharPattern = '[a-zA-Z0-9.-]';
5
+ // Support both literal ':' and encoded '%3A'
6
+ const suffixNormal = '\\:';
7
+ const suffixUri = '(?:\\:|%3A)';
8
+ const domainSuffixPattern = `${domainCharPattern}+\\.[a-zA-Z]{2,}`;
9
+ const urlPathAndQueryPattern = '(?:/[\\w=/$+.:%-]+)?(?:\\?[\\w=&%.$+:;-]+)?';
10
+ const matrixToPermalinkBase = '(?:https?://)?(?:www\\.)?matrix\\.to/#/';
11
+ const matrixScheme = 'matrix\\:';
12
+ const matrixUriTypePattern = '(?:u/|r/|roomid/|e/)?';
13
+ // Support literal prefixes and their URL-encoded equivalents:
14
+ // @ -> %40, # -> %23, ! -> %21, $ -> %24, + -> %2B
15
+ const matrixIdPrefixPattern = '(?:@|%40|#|%23|!|%21|\\$|%24|\\+|%2B)?';
16
+ /**
17
+ * Matrix Protocol (matrix.org)
18
+ * Official Documentation: https://spec.matrix.org/latest/appendices/#identifier-grammar
19
+ */
20
+ const MatrixProtocolRegex = Object.freeze({
21
+ /**
22
+ * User ID
23
+ * Format: @localpart:domain
24
+ * @type {UsernameRegexTemplate}
25
+ */
26
+ userName: {
27
+ prefix: '@',
28
+ validValues: '[a-z0-9._=-]',
29
+ length: [1, 255],
30
+ domainPattern: `${suffixNormal}${domainSuffixPattern}`,
31
+ },
32
+ /**
33
+ * Room Alias (Human-readable alias)
34
+ * Format: #alias:domain
35
+ * @type {UsernameRegexTemplate}
36
+ */
37
+ roomName: {
38
+ prefix: '#',
39
+ validValues: '[a-zA-Z0-9._=-]', // Some servers accept uppercase in aliases
40
+ length: [1, 255],
41
+ domainPattern: `${suffixNormal}${domainSuffixPattern}`,
42
+ },
43
+ /**
44
+ * Room ID (Internal and immutable ID)
45
+ * Format: !opaque_id:domain
46
+ * @type {UsernameRegexTemplate}
47
+ */
48
+ roomId: {
49
+ prefix: '!',
50
+ validValues: '[a-zA-Z0-9_-]',
51
+ length: [1, 255],
52
+ domainPattern: `${suffixNormal}${domainSuffixPattern}`,
53
+ },
54
+ /**
55
+ * Event ID (Event/message identifier)
56
+ * Format v1/v2: $opaque_id:domain
57
+ * Format v3+: $Base64String (without the domain at the end)
58
+ * @type {UsernameRegexTemplate}
59
+ */
60
+ eventId: {
61
+ prefix: '$',
62
+ validValues: '[a-zA-Z0-9_+/=-]', // Supports Base64 and URL-Safe Base64 characters
63
+ length: [1, 255],
64
+ // We use (?:...)? here to make the domain group optional,
65
+ // as Matrix updated the Event ID format in recent versions
66
+ // to no longer require the ":domain" part at the end of the string.
67
+ domainPattern: `(?:${suffixNormal}${domainSuffixPattern})?`,
68
+ },
69
+ /**
70
+ * Group/Space ID (Legacy/Communities)
71
+ * Format: +group_id:domain
72
+ * @type {UsernameRegexTemplate}
73
+ */
74
+ groupId: {
75
+ prefix: '+',
76
+ validValues: '[a-z0-9._=-]',
77
+ length: [1, 255],
78
+ domainPattern: `${suffixNormal}${domainSuffixPattern}`,
79
+ },
80
+ /**
81
+ * Matrix.to Permalink
82
+ * Format: https://matrix.to/#/@user:domain or matrix.to/#/!room:domain
83
+ * Supports optional event IDs and query parameters (like ?via=server.org)
84
+ * @type {UsernameRegexTemplate}
85
+ */
86
+ matrixToLink: {
87
+ start: `${matrixToPermalinkBase}${matrixIdPrefixPattern}`,
88
+ validValues: '[a-zA-Z0-9._=/%+-]',
89
+ length: [1, 255],
90
+ domainPattern: `${suffixUri}${domainSuffixPattern}${urlPathAndQueryPattern}`,
91
+ },
92
+ /**
93
+ * Matrix URI Scheme (RFC 8922)
94
+ * Format: matrix:u/user:domain or matrix:roomid/room:domain
95
+ * @type {UsernameRegexTemplate}
96
+ */
97
+ matrixUri: {
98
+ start: `${matrixScheme}${matrixUriTypePattern}${matrixIdPrefixPattern}`,
99
+ validValues: '[a-zA-Z0-9._=/%+-]',
100
+ length: [1, 255],
101
+ domainPattern: `${suffixUri}${domainSuffixPattern}${urlPathAndQueryPattern}`,
102
+ },
103
+ /**
104
+ * HTML Mention
105
+ * Format: <a href="https://matrix.to/#/@user:domain">User Name</a>
106
+ * Matches standard formatted mentions sent by Matrix clients inside HTML bodies.
107
+ * @type {UsernameRegexTemplate}
108
+ */
109
+ htmlMention: {
110
+ start: `<a\\s+[^>]*?href=["\\'](?:${matrixToPermalinkBase}|${matrixScheme})${matrixUriTypePattern}${matrixIdPrefixPattern}`,
111
+ validValues: '[a-zA-Z0-9._=/%+-]',
112
+ length: [1, 255],
113
+ domainPattern: `${suffixUri}${domainSuffixPattern}${urlPathAndQueryPattern}["\\'][^>]*>[\\s\\S]*?</a\\s*>`,
114
+ },
115
+ /**
116
+ * Matrix Content URI (Media)
117
+ * Format: mxc://server-name/media-id
118
+ * Used for avatars, images, and file attachments in the Matrix network.
119
+ * @type {UsernameRegexTemplate}
120
+ */
121
+ mxcUri: {
122
+ start: 'mxc://',
123
+ validValues: '[a-zA-Z0-9.:-]',
124
+ length: [1, 255],
125
+ domainPattern: '/[a-zA-Z0-9_=-]+',
126
+ },
127
+ });
128
+ export default MatrixProtocolRegex;
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * @typedef {import('../../jsDoc.mjs').UsernameRegexTemplate} UsernameRegexTemplate
5
+ */
6
+
7
+ /**
8
+ * Discord Protocol
9
+ */
10
+ const DiscordRegex = Object.freeze({
11
+ /**
12
+ * Modern Discord Usernames (Handles)
13
+ * Format: username
14
+ * @type {UsernameRegexTemplate}
15
+ */
16
+ userName: {
17
+ start: '(?<!<)',
18
+ prefix: '@',
19
+ validValues: '[a-z0-9_.]',
20
+ length: [2, 32],
21
+ },
22
+ });
23
+
24
+ module.exports = DiscordRegex;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @typedef {import('../../jsDoc.mjs').UsernameRegexTemplate} UsernameRegexTemplate
3
+ */
4
+ export type UsernameRegexTemplate = import('../../jsDoc.mjs').UsernameRegexTemplate;
5
+ /**
6
+ * Discord Protocol
7
+ */
8
+ declare const DiscordRegex: Readonly<{
9
+ /**
10
+ * Modern Discord Usernames (Handles)
11
+ * Format: username
12
+ * @type {UsernameRegexTemplate}
13
+ */
14
+ userName: UsernameRegexTemplate;
15
+ }>;
16
+ export default DiscordRegex;
17
+ //# sourceMappingURL=Discord.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Discord.d.mts","sourceRoot":"","sources":["../../../../../../src/v1/regexp/Username/templates/deprecated/Discord.mjs"],"names":[],"mappings":"AAAA;;GAEG;AADA,YAA2D,qBAAqB,GAAtE,OAAO,iBAAiB,EAAE,qBAAqB,CAAuB;AAGnF;;GAEG;AACH,QAAA,MAAM,YAAY;IAChB;;;;OAIG;cADO,qBAAqB;EAQ/B,CAAC;eAEY,YAAY"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @typedef {import('../../jsDoc.mjs').UsernameRegexTemplate} UsernameRegexTemplate
3
+ */
4
+ /**
5
+ * Discord Protocol
6
+ */
7
+ const DiscordRegex = Object.freeze({
8
+ /**
9
+ * Modern Discord Usernames (Handles)
10
+ * Format: username
11
+ * @type {UsernameRegexTemplate}
12
+ */
13
+ userName: {
14
+ start: '(?<!<)',
15
+ prefix: '@',
16
+ validValues: '[a-z0-9_.]',
17
+ length: [2, 32],
18
+ },
19
+ });
20
+ export default DiscordRegex;
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ var BlueSky = require('./BlueSky.cjs');
4
+ var Discord = require('./Discord.cjs');
5
+ var MatrixProtocol = require('./MatrixProtocol.cjs');
6
+
7
+
8
+
9
+ exports.BlueSkyRegex = BlueSky;
10
+ exports.DiscordRegex = Discord;
11
+ exports.MatrixProtocolRegex = MatrixProtocol;
@@ -0,0 +1,5 @@
1
+ import BlueSkyRegex from './BlueSky.mjs';
2
+ import DiscordRegex from './Discord.mjs';
3
+ import MatrixProtocolRegex from './MatrixProtocol.mjs';
4
+ export { BlueSkyRegex, DiscordRegex, MatrixProtocolRegex };
5
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../../../src/v1/regexp/Username/templates/index.mjs"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,mBAAmB,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import BlueSkyRegex from './BlueSky.mjs';
2
+ import DiscordRegex from './Discord.mjs';
3
+ import MatrixProtocolRegex from './MatrixProtocol.mjs';
4
+ export { BlueSkyRegex, DiscordRegex, MatrixProtocolRegex };
@@ -0,0 +1,41 @@
1
+ 'use strict';
2
+
3
+ var Ipv4 = require('./Ipv4.cjs');
4
+ var Ipv6 = require('./Ipv6.cjs');
5
+ var index = require('./Username/index.cjs');
6
+ var SegmentExtractor = require('./SegmentExtractor.cjs');
7
+ var UrlDetector = require('./UrlDetector.cjs');
8
+ var Email = require('./Email.cjs');
9
+ var Glob = require('./Glob.cjs');
10
+
11
+
12
+
13
+ exports.extractIPsV4 = Ipv4.extractIPsV4;
14
+ exports.findIPv4Regex = Ipv4.findIPv4Regex;
15
+ exports.ipv4Regex = Ipv4.ipv4Regex;
16
+ exports.isValidIPv4 = Ipv4.isValidIPv4;
17
+ exports.extractIPsV6 = Ipv6.extractIPsV6;
18
+ exports.findIPv6Regex = Ipv6.findIPv6Regex;
19
+ exports.ipv6Regex = Ipv6.ipv6Regex;
20
+ exports.isValidIPv6 = Ipv6.isValidIPv6;
21
+ exports.extractUsernames = index.extractUsernames;
22
+ exports.findUsernameRegex = index.findUsernameRegex;
23
+ exports.isValidUsername = index.isValidUsername;
24
+ exports.usernameRegex = index.usernameRegex;
25
+ exports.usernameStringRegexBuilder = index.usernameStringRegexBuilder;
26
+ exports.makeSegmentExtractor = SegmentExtractor.makeSegmentExtractor;
27
+ exports.segmentExtractorV1 = SegmentExtractor.segmentExtractorV1;
28
+ exports.extractUrls = UrlDetector.extractUrls;
29
+ exports.findUrlRegex = UrlDetector.findUrlRegex;
30
+ exports.isValidUrl = UrlDetector.isValidUrl;
31
+ exports.urlRegex = UrlDetector.urlRegex;
32
+ exports.urlStringRegexBuilder = UrlDetector.urlStringRegexBuilder;
33
+ exports.emailRegex = Email.emailRegex;
34
+ exports.emailStringRegexBuilder = Email.emailStringRegexBuilder;
35
+ exports.extractEmails = Email.extractEmails;
36
+ exports.findEmailRegex = Email.findEmailRegex;
37
+ exports.isValidEmail = Email.isValidEmail;
38
+ exports.compileGlob = Glob.compileGlob;
39
+ exports.compileGlobRegExp = Glob.compileGlobRegExp;
40
+ exports.decompileGlob = Glob.decompileGlob;
41
+ exports.isValidGlob = Glob.isValidGlob;
@@ -0,0 +1,9 @@
1
+ import { ipv4Regex, isValidIPv4, findIPv4Regex, extractIPsV4 } from './Ipv4.mjs';
2
+ import { extractIPsV6, findIPv6Regex, ipv6Regex, isValidIPv6 } from './Ipv6.mjs';
3
+ import { usernameStringRegexBuilder, usernameRegex, isValidUsername, findUsernameRegex, extractUsernames } from './Username/index.mjs';
4
+ import { makeSegmentExtractor, segmentExtractorV1 } from './SegmentExtractor.mjs';
5
+ import { extractUrls, findUrlRegex, isValidUrl, urlRegex, urlStringRegexBuilder } from './UrlDetector.mjs';
6
+ import { emailStringRegexBuilder, emailRegex, isValidEmail, findEmailRegex, extractEmails } from './Email.mjs';
7
+ import { compileGlob, compileGlobRegExp, decompileGlob, isValidGlob } from './Glob.mjs';
8
+ export { isValidGlob, compileGlob, compileGlobRegExp, decompileGlob, emailStringRegexBuilder, emailRegex, isValidEmail, findEmailRegex, extractEmails, usernameStringRegexBuilder, usernameRegex, isValidUsername, findUsernameRegex, extractUsernames, urlStringRegexBuilder, urlRegex, isValidUrl, findUrlRegex, extractUrls, makeSegmentExtractor, segmentExtractorV1, ipv4Regex, isValidIPv4, findIPv4Regex, extractIPsV4, ipv6Regex, isValidIPv6, findIPv6Regex, extractIPsV6, };
9
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/v1/regexp/index.mjs"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACjF,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EACL,WAAW,EACX,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,uBAAuB,EACvB,UAAU,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAExF,OAAO,EACL,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,UAAU,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACb,0BAA0B,EAC1B,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,aAAa,EACb,YAAY,EACZ,SAAS,EACT,WAAW,EACX,aAAa,EACb,YAAY,GACb,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { ipv4Regex, isValidIPv4, findIPv4Regex, extractIPsV4 } from './Ipv4.mjs';
2
+ import { extractIPsV6, findIPv6Regex, ipv6Regex, isValidIPv6 } from './Ipv6.mjs';
3
+ import { usernameStringRegexBuilder, usernameRegex, isValidUsername, findUsernameRegex, extractUsernames, } from './Username/index.mjs';
4
+ import { makeSegmentExtractor, segmentExtractorV1 } from './SegmentExtractor.mjs';
5
+ import { extractUrls, findUrlRegex, isValidUrl, urlRegex, urlStringRegexBuilder, } from './UrlDetector.mjs';
6
+ import { emailStringRegexBuilder, emailRegex, isValidEmail, findEmailRegex, extractEmails, } from './Email.mjs';
7
+ import { compileGlob, compileGlobRegExp, decompileGlob, isValidGlob } from './Glob.mjs';
8
+ export { isValidGlob, compileGlob, compileGlobRegExp, decompileGlob, emailStringRegexBuilder, emailRegex, isValidEmail, findEmailRegex, extractEmails, usernameStringRegexBuilder, usernameRegex, isValidUsername, findUsernameRegex, extractUsernames, urlStringRegexBuilder, urlRegex, isValidUrl, findUrlRegex, extractUrls, makeSegmentExtractor, segmentExtractorV1, ipv4Regex, isValidIPv4, findIPv4Regex, extractIPsV4, ipv6Regex, isValidIPv6, findIPv6Regex, extractIPsV6, };
@@ -0,0 +1,64 @@
1
+ 'use strict';
2
+
3
+ var agPsd = require('ag-psd');
4
+ var Template = require('./Template.cjs');
5
+
6
+ /**
7
+ * Creates a native browser Canvas element.
8
+ * @param {number} width - The width to assign to the new canvas, in pixels.
9
+ * @param {number} height - The height to assign to the new canvas, in pixels.
10
+ * @returns {HTMLCanvasElement} A new detached HTMLCanvasElement with the requested dimensions.
11
+ */
12
+ const createBrowserCanvas = (width, height) => {
13
+ const canvas = document.createElement('canvas');
14
+ canvas.width = width;
15
+ canvas.height = height;
16
+ return canvas;
17
+ };
18
+
19
+ /**
20
+ * Extracts solid colors and calculates the area of each claimed filter in the PSD.
21
+ * @param {Blob} psdInput - The absolute path, URL, or Blob file of the PSD.
22
+ * @param {HTMLCanvasElement[]} filters - The configurations to capture specific layers.
23
+ * @param {import('./Template.mjs').DefaultConfig} defaultConfig - The fallback configuration for the remaining layers.
24
+ * @returns {Promise<import('./Template.mjs').ProcessedPsdResult<Blob>>} Results of the separated and reconstructed images, and pixel statistics.
25
+ * @throws {Error|TypeError} If the parameters or the file are invalid.
26
+ * @beta
27
+ */
28
+ const processPsdSolidFilters = Template.createProcessPsdSolidFilters(
29
+ async (psdInput) => {
30
+ // Allows fetching from a remote URL
31
+ if (typeof psdInput === 'string') {
32
+ const response = await fetch(psdInput);
33
+ if (!response.ok) {
34
+ throw new Error(`Failed to load the PSD file from the provided URL: ${psdInput}`);
35
+ }
36
+ return response.arrayBuffer();
37
+ }
38
+ // Allows reading files passed via File / Drag-and-drop inputs
39
+ else if (psdInput instanceof Blob) {
40
+ return psdInput.arrayBuffer();
41
+ }
42
+
43
+ throw new TypeError(
44
+ "In the Browser environment, 'psdInput' must be a URL (string) or a File/Blob object.",
45
+ );
46
+ },
47
+ createBrowserCanvas,
48
+ agPsd.readPsd,
49
+ (canvas) => {
50
+ // The browser natively exports images with toBlob, based on callbacks.
51
+ // This encapsulates the callback into a clean Promise.
52
+ return new Promise((resolve, reject) => {
53
+ canvas.toBlob((blob) => {
54
+ if (blob) {
55
+ resolve(blob);
56
+ } else {
57
+ reject(new Error('Failed to export the image from the browser Canvas element.'));
58
+ }
59
+ }, 'image/png');
60
+ });
61
+ },
62
+ );
63
+
64
+ exports.processPsdSolidFilters = processPsdSolidFilters;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Extracts solid colors and calculates the area of each claimed filter in the PSD.
3
+ * @param {Blob} psdInput - The absolute path, URL, or Blob file of the PSD.
4
+ * @param {HTMLCanvasElement[]} filters - The configurations to capture specific layers.
5
+ * @param {import('./Template.mjs').DefaultConfig} defaultConfig - The fallback configuration for the remaining layers.
6
+ * @returns {Promise<import('./Template.mjs').ProcessedPsdResult<Blob>>} Results of the separated and reconstructed images, and pixel statistics.
7
+ * @throws {Error|TypeError} If the parameters or the file are invalid.
8
+ * @beta
9
+ */
10
+ export declare const processPsdSolidFilters: (psdInput: string | Blob | HTMLInputElement, filters: import("./Template.mjs").FilterConfig[], defaultConfig: import("./Template.mjs").DefaultConfig) => Promise<import("./Template.mjs").ProcessedPsdResult<any>>;
11
+ //# sourceMappingURL=Browser.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Browser.d.mts","sourceRoot":"","sources":["../../../../../../src/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Browser.mjs"],"names":[],"mappings":"AAgBA;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,oNAkClC,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { readPsd } from 'ag-psd';
2
+ import { createProcessPsdSolidFilters } from './Template.mjs';
3
+ /**
4
+ * Creates a native browser Canvas element.
5
+ * @param {number} width - The width to assign to the new canvas, in pixels.
6
+ * @param {number} height - The height to assign to the new canvas, in pixels.
7
+ * @returns {HTMLCanvasElement} A new detached HTMLCanvasElement with the requested dimensions.
8
+ */
9
+ const createBrowserCanvas = (width, height) => {
10
+ const canvas = document.createElement('canvas');
11
+ canvas.width = width;
12
+ canvas.height = height;
13
+ return canvas;
14
+ };
15
+ /**
16
+ * Extracts solid colors and calculates the area of each claimed filter in the PSD.
17
+ * @param {Blob} psdInput - The absolute path, URL, or Blob file of the PSD.
18
+ * @param {HTMLCanvasElement[]} filters - The configurations to capture specific layers.
19
+ * @param {import('./Template.mjs').DefaultConfig} defaultConfig - The fallback configuration for the remaining layers.
20
+ * @returns {Promise<import('./Template.mjs').ProcessedPsdResult<Blob>>} Results of the separated and reconstructed images, and pixel statistics.
21
+ * @throws {Error|TypeError} If the parameters or the file are invalid.
22
+ * @beta
23
+ */
24
+ export const processPsdSolidFilters = createProcessPsdSolidFilters(async (psdInput) => {
25
+ // Allows fetching from a remote URL
26
+ if (typeof psdInput === 'string') {
27
+ const response = await fetch(psdInput);
28
+ if (!response.ok) {
29
+ throw new Error(`Failed to load the PSD file from the provided URL: ${psdInput}`);
30
+ }
31
+ return response.arrayBuffer();
32
+ }
33
+ // Allows reading files passed via File / Drag-and-drop inputs
34
+ else if (psdInput instanceof Blob) {
35
+ return psdInput.arrayBuffer();
36
+ }
37
+ throw new TypeError("In the Browser environment, 'psdInput' must be a URL (string) or a File/Blob object.");
38
+ }, createBrowserCanvas, readPsd, (canvas) => {
39
+ // The browser natively exports images with toBlob, based on callbacks.
40
+ // This encapsulates the callback into a clean Promise.
41
+ return new Promise((resolve, reject) => {
42
+ canvas.toBlob((blob) => {
43
+ if (blob) {
44
+ resolve(blob);
45
+ }
46
+ else {
47
+ reject(new Error('Failed to export the image from the browser Canvas element.'));
48
+ }
49
+ }, 'image/png');
50
+ });
51
+ });