tiny-essentials 1.24.0 → 1.24.2

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 (445) hide show
  1. package/.github/workflows/node.js.yml +2 -2
  2. package/README.md +6 -2
  3. package/changelog/1/24/1.md +14 -0
  4. package/changelog/1/24/2.md +21 -0
  5. package/dist/v1/TinyBasicsEs.min.js +1 -1
  6. package/dist/v1/TinyDragger.min.js +1 -1
  7. package/dist/v1/TinyEssentials.min.js +1 -1
  8. package/dist/v1/TinyHtml.min.js +1 -1
  9. package/dist/v1/TinySmartScroller.min.js +1 -1
  10. package/dist/v1/TinyUploadClicker.min.js +1 -1
  11. package/dist/v1/basics/array.cjs +28 -0
  12. package/dist/v1/basics/array.d.mts +16 -0
  13. package/dist/v1/basics/array.mjs +27 -0
  14. package/dist/v1/basics/index.cjs +2 -4
  15. package/dist/v1/basics/index.d.mts +2 -2
  16. package/dist/v1/basics/index.mjs +2 -4
  17. package/dist/v1/basics/text.cjs +33 -0
  18. package/dist/v1/basics/text.d.mts +15 -0
  19. package/dist/v1/basics/text.mjs +28 -0
  20. package/dist/v1/build/TinyLevelUp.cjs +2 -2
  21. package/dist/v1/build/TinyLevelUp.d.mts +1 -1
  22. package/dist/v1/build/TinyLevelUp.mjs +1 -1
  23. package/dist/v1/index.cjs +4 -6
  24. package/dist/v1/index.d.mts +3 -3
  25. package/dist/v1/index.mjs +7 -6
  26. package/dist/v1/libs/TinyHtml/TinyHtmlAnchor.cjs +220 -0
  27. package/dist/v1/libs/TinyHtml/TinyHtmlAnchor.d.mts +98 -0
  28. package/dist/v1/libs/TinyHtml/TinyHtmlAnchor.mjs +207 -0
  29. package/dist/v1/libs/TinyHtml/TinyHtmlButton.cjs +317 -0
  30. package/dist/v1/libs/TinyHtml/TinyHtmlButton.d.mts +150 -0
  31. package/dist/v1/libs/TinyHtml/TinyHtmlButton.mjs +290 -0
  32. package/dist/v1/libs/TinyHtml/TinyHtmlCanvas.cjs +48 -0
  33. package/dist/v1/libs/TinyHtml/TinyHtmlCanvas.d.mts +36 -0
  34. package/dist/v1/libs/TinyHtml/TinyHtmlCanvas.mjs +44 -0
  35. package/dist/v1/libs/TinyHtml/TinyHtmlDatalist.cjs +102 -0
  36. package/dist/v1/libs/TinyHtml/TinyHtmlDatalist.d.mts +65 -0
  37. package/dist/v1/libs/TinyHtml/TinyHtmlDatalist.mjs +91 -0
  38. package/dist/v1/libs/TinyHtml/TinyHtmlEmbed.cjs +80 -0
  39. package/dist/v1/libs/TinyHtml/TinyHtmlEmbed.d.mts +57 -0
  40. package/dist/v1/libs/TinyHtml/TinyHtmlEmbed.mjs +75 -0
  41. package/dist/v1/libs/TinyHtml/TinyHtmlForm.cjs +244 -0
  42. package/dist/v1/libs/TinyHtml/TinyHtmlForm.d.mts +129 -0
  43. package/dist/v1/libs/TinyHtml/TinyHtmlForm.mjs +228 -0
  44. package/dist/v1/libs/TinyHtml/TinyHtmlIcon.cjs +38 -0
  45. package/dist/v1/libs/TinyHtml/TinyHtmlIcon.d.mts +24 -0
  46. package/dist/v1/libs/TinyHtml/TinyHtmlIcon.mjs +33 -0
  47. package/dist/v1/libs/TinyHtml/TinyHtmlIframe.cjs +222 -0
  48. package/dist/v1/libs/TinyHtml/TinyHtmlIframe.d.mts +108 -0
  49. package/dist/v1/libs/TinyHtml/TinyHtmlIframe.mjs +212 -0
  50. package/dist/v1/libs/TinyHtml/TinyHtmlImage.cjs +286 -0
  51. package/dist/v1/libs/TinyHtml/TinyHtmlImage.d.mts +125 -0
  52. package/dist/v1/libs/TinyHtml/TinyHtmlImage.mjs +250 -0
  53. package/dist/v1/libs/TinyHtml/TinyHtmlInput.cjs +154 -0
  54. package/dist/v1/libs/TinyHtml/TinyHtmlInput.d.mts +76 -0
  55. package/dist/v1/libs/TinyHtml/TinyHtmlInput.mjs +134 -0
  56. package/dist/v1/libs/TinyHtml/TinyHtmlLink.cjs +282 -0
  57. package/dist/v1/libs/TinyHtml/TinyHtmlLink.d.mts +128 -0
  58. package/dist/v1/libs/TinyHtml/TinyHtmlLink.mjs +264 -0
  59. package/dist/v1/libs/TinyHtml/TinyHtmlMedia.cjs +358 -0
  60. package/dist/v1/libs/TinyHtml/TinyHtmlMedia.d.mts +168 -0
  61. package/dist/v1/libs/TinyHtml/TinyHtmlMedia.mjs +308 -0
  62. package/dist/v1/libs/TinyHtml/TinyHtmlScript.cjs +226 -0
  63. package/dist/v1/libs/TinyHtml/TinyHtmlScript.d.mts +99 -0
  64. package/dist/v1/libs/TinyHtml/TinyHtmlScript.mjs +209 -0
  65. package/dist/v1/libs/TinyHtml/TinyHtmlSelect.cjs +267 -0
  66. package/dist/v1/libs/TinyHtml/TinyHtmlSelect.d.mts +146 -0
  67. package/dist/v1/libs/TinyHtml/TinyHtmlSelect.mjs +251 -0
  68. package/dist/v1/libs/TinyHtml/TinyHtmlStyle.cjs +110 -0
  69. package/dist/v1/libs/TinyHtml/TinyHtmlStyle.d.mts +57 -0
  70. package/dist/v1/libs/TinyHtml/TinyHtmlStyle.mjs +108 -0
  71. package/dist/v1/libs/TinyHtml/TinyHtmlTemplate.cjs +209 -0
  72. package/dist/v1/libs/TinyHtml/TinyHtmlTemplate.d.mts +101 -0
  73. package/dist/v1/libs/TinyHtml/TinyHtmlTemplate.mjs +189 -0
  74. package/dist/v1/libs/TinyHtml/TinyHtmlTextarea.cjs +331 -0
  75. package/dist/v1/libs/TinyHtml/TinyHtmlTextarea.d.mts +139 -0
  76. package/dist/v1/libs/TinyHtml/TinyHtmlTextarea.mjs +299 -0
  77. package/dist/v1/libs/TinyHtml/index.cjs +202 -0
  78. package/dist/v1/libs/TinyHtml/index.d.mts +82 -0
  79. package/dist/v1/libs/TinyHtml/index.mjs +185 -0
  80. package/dist/v1/libs/TinyHtml/input/TinyHtmlColorInput.cjs +121 -0
  81. package/dist/v1/libs/TinyHtml/input/TinyHtmlColorInput.d.mts +67 -0
  82. package/dist/v1/libs/TinyHtml/input/TinyHtmlColorInput.mjs +99 -0
  83. package/dist/v1/libs/TinyHtml/input/TinyHtmlFileInput.cjs +109 -0
  84. package/dist/v1/libs/TinyHtml/input/TinyHtmlFileInput.d.mts +63 -0
  85. package/dist/v1/libs/TinyHtml/input/TinyHtmlFileInput.mjs +92 -0
  86. package/dist/v1/libs/TinyHtml/input/TinyHtmlHiddenInput.cjs +101 -0
  87. package/dist/v1/libs/TinyHtml/input/TinyHtmlHiddenInput.d.mts +54 -0
  88. package/dist/v1/libs/TinyHtml/input/TinyHtmlHiddenInput.mjs +82 -0
  89. package/dist/v1/libs/TinyHtml/input/TinyHtmlImageInput.cjs +181 -0
  90. package/dist/v1/libs/TinyHtml/input/TinyHtmlImageInput.d.mts +97 -0
  91. package/dist/v1/libs/TinyHtml/input/TinyHtmlImageInput.mjs +160 -0
  92. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlButtonInput.cjs +90 -0
  93. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlButtonInput.d.mts +54 -0
  94. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlButtonInput.mjs +69 -0
  95. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlResetInput.cjs +59 -0
  96. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlResetInput.d.mts +43 -0
  97. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlResetInput.mjs +45 -0
  98. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlSubmitInput.cjs +141 -0
  99. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlSubmitInput.d.mts +74 -0
  100. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlSubmitInput.mjs +114 -0
  101. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlCheckboxInput.cjs +103 -0
  102. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlCheckboxInput.d.mts +61 -0
  103. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlCheckboxInput.mjs +85 -0
  104. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlRadioInput.cjs +115 -0
  105. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlRadioInput.d.mts +56 -0
  106. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlRadioInput.mjs +94 -0
  107. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateInput.cjs +172 -0
  108. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateInput.d.mts +74 -0
  109. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateInput.mjs +140 -0
  110. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateTimeInput.cjs +145 -0
  111. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateTimeInput.d.mts +77 -0
  112. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateTimeInput.mjs +121 -0
  113. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlMonthInput.cjs +146 -0
  114. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlMonthInput.d.mts +74 -0
  115. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlMonthInput.mjs +120 -0
  116. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlTimeInput.cjs +151 -0
  117. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlTimeInput.d.mts +75 -0
  118. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlTimeInput.mjs +128 -0
  119. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlWeekInput.cjs +150 -0
  120. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlWeekInput.d.mts +74 -0
  121. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlWeekInput.mjs +122 -0
  122. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlNumberInput.cjs +134 -0
  123. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlNumberInput.d.mts +74 -0
  124. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlNumberInput.mjs +110 -0
  125. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlRangeInput.cjs +133 -0
  126. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlRangeInput.d.mts +75 -0
  127. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlRangeInput.mjs +111 -0
  128. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlEmailInput.cjs +179 -0
  129. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlEmailInput.d.mts +87 -0
  130. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlEmailInput.mjs +151 -0
  131. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlPasswordInput.cjs +126 -0
  132. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlPasswordInput.d.mts +70 -0
  133. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlPasswordInput.mjs +104 -0
  134. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlSearchInput.cjs +177 -0
  135. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlSearchInput.d.mts +91 -0
  136. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlSearchInput.mjs +153 -0
  137. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTelInput.cjs +170 -0
  138. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTelInput.d.mts +91 -0
  139. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTelInput.mjs +143 -0
  140. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTextInput.cjs +173 -0
  141. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTextInput.d.mts +89 -0
  142. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTextInput.mjs +150 -0
  143. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlUrlInput.cjs +166 -0
  144. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlUrlInput.d.mts +81 -0
  145. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlUrlInput.mjs +142 -0
  146. package/dist/v1/libs/TinyHtml/media/TinyHtmlAudio.cjs +135 -0
  147. package/dist/v1/libs/TinyHtml/media/TinyHtmlAudio.d.mts +47 -0
  148. package/dist/v1/libs/TinyHtml/media/TinyHtmlAudio.mjs +122 -0
  149. package/dist/v1/libs/TinyHtml/media/TinyHtmlObject.cjs +100 -0
  150. package/dist/v1/libs/TinyHtml/media/TinyHtmlObject.d.mts +62 -0
  151. package/dist/v1/libs/TinyHtml/media/TinyHtmlObject.mjs +94 -0
  152. package/dist/v1/libs/TinyHtml/media/TinyHtmlSource.cjs +159 -0
  153. package/dist/v1/libs/TinyHtml/media/TinyHtmlSource.d.mts +77 -0
  154. package/dist/v1/libs/TinyHtml/media/TinyHtmlSource.mjs +136 -0
  155. package/dist/v1/libs/TinyHtml/media/TinyHtmlVideo.cjs +193 -0
  156. package/dist/v1/libs/TinyHtml/media/TinyHtmlVideo.d.mts +91 -0
  157. package/dist/v1/libs/TinyHtml/media/TinyHtmlVideo.mjs +167 -0
  158. package/dist/v1/libs/TinyHtml.cjs +260 -3
  159. package/dist/v1/libs/TinyHtml.d.mts +196 -5
  160. package/dist/v1/libs/TinyHtml.mjs +238 -3
  161. package/dist/{legacy/libs/userLevel.d.mts → v1/libs/TinyLevelUp.d.mts} +1 -1
  162. package/docs/v1/Exports.md +133 -0
  163. package/docs/v1/README.md +2 -0
  164. package/docs/v1/libs/TinyHtml.md +4 -4
  165. package/package.json +41 -46
  166. package/dist/_virtual/_commonjsHelpers.cjs +0 -7
  167. package/dist/_virtual/common.cjs +0 -5
  168. package/dist/_virtual/index.cjs +0 -9
  169. package/dist/_virtual/index2.cjs +0 -5
  170. package/dist/_virtual/trace.cjs +0 -5
  171. package/dist/legacy/crypto/decrypt.cjs +0 -59
  172. package/dist/legacy/crypto/decrypt.d.mts +0 -20
  173. package/dist/legacy/crypto/decrypt.mjs +0 -49
  174. package/dist/legacy/crypto/default.cjs +0 -23
  175. package/dist/legacy/crypto/default.d.mts +0 -36
  176. package/dist/legacy/crypto/default.mjs +0 -19
  177. package/dist/legacy/crypto/encrypt.cjs +0 -55
  178. package/dist/legacy/crypto/encrypt.d.mts +0 -21
  179. package/dist/legacy/crypto/encrypt.mjs +0 -47
  180. package/dist/legacy/crypto/index.cjs +0 -11
  181. package/dist/legacy/crypto/index.d.mts +0 -5
  182. package/dist/legacy/crypto/index.mjs +0 -6
  183. package/dist/legacy/firebase/cookieSession.cjs +0 -123
  184. package/dist/legacy/firebase/cookieSession.d.mts +0 -57
  185. package/dist/legacy/firebase/cookieSession.mjs +0 -115
  186. package/dist/legacy/firebase/database/index.cjs +0 -14
  187. package/dist/legacy/firebase/database/index.d.mts +0 -8
  188. package/dist/legacy/firebase/database/index.mjs +0 -8
  189. package/dist/legacy/firebase/database/presence.cjs +0 -137
  190. package/dist/legacy/firebase/database/presence.d.mts +0 -13
  191. package/dist/legacy/firebase/database/presence.mjs +0 -115
  192. package/dist/legacy/firebase/database/saveAsync.cjs +0 -149
  193. package/dist/legacy/firebase/database/saveAsync.d.mts +0 -55
  194. package/dist/legacy/firebase/database/saveAsync.mjs +0 -148
  195. package/dist/legacy/firebase/databaseEscape.cjs +0 -45
  196. package/dist/legacy/firebase/databaseEscape.d.mts +0 -12
  197. package/dist/legacy/firebase/databaseEscape.mjs +0 -38
  198. package/dist/legacy/firebase/databaseLogger.cjs +0 -261
  199. package/dist/legacy/firebase/databaseLogger.d.mts +0 -8
  200. package/dist/legacy/firebase/databaseLogger.mjs +0 -235
  201. package/dist/legacy/firebase/discord/api/addGuildMember.cjs +0 -74
  202. package/dist/legacy/firebase/discord/api/addGuildMember.d.mts +0 -39
  203. package/dist/legacy/firebase/discord/api/addGuildMember.mjs +0 -65
  204. package/dist/legacy/firebase/discord/api/getGuildWidget.cjs +0 -50
  205. package/dist/legacy/firebase/discord/api/getGuildWidget.d.mts +0 -18
  206. package/dist/legacy/firebase/discord/api/getGuildWidget.mjs +0 -44
  207. package/dist/legacy/firebase/discord/api/getToken.cjs +0 -70
  208. package/dist/legacy/firebase/discord/api/getToken.d.mts +0 -36
  209. package/dist/legacy/firebase/discord/api/getToken.mjs +0 -64
  210. package/dist/legacy/firebase/discord/api/getUser.cjs +0 -61
  211. package/dist/legacy/firebase/discord/api/getUser.d.mts +0 -28
  212. package/dist/legacy/firebase/discord/api/getUser.mjs +0 -55
  213. package/dist/legacy/firebase/discord/api/getUserConnections.cjs +0 -60
  214. package/dist/legacy/firebase/discord/api/getUserConnections.d.mts +0 -27
  215. package/dist/legacy/firebase/discord/api/getUserConnections.mjs +0 -54
  216. package/dist/legacy/firebase/discord/api/getUserGuilds.cjs +0 -59
  217. package/dist/legacy/firebase/discord/api/getUserGuilds.d.mts +0 -26
  218. package/dist/legacy/firebase/discord/api/getUserGuilds.mjs +0 -53
  219. package/dist/legacy/firebase/discord/api/index.cjs +0 -27
  220. package/dist/legacy/firebase/discord/api/index.d.mts +0 -20
  221. package/dist/legacy/firebase/discord/api/index.mjs +0 -21
  222. package/dist/legacy/firebase/discord/api/refreshToken.cjs +0 -80
  223. package/dist/legacy/firebase/discord/api/refreshToken.d.mts +0 -46
  224. package/dist/legacy/firebase/discord/api/refreshToken.mjs +0 -74
  225. package/dist/legacy/firebase/discord/api/revokeToken.cjs +0 -64
  226. package/dist/legacy/firebase/discord/api/revokeToken.d.mts +0 -30
  227. package/dist/legacy/firebase/discord/api/revokeToken.mjs +0 -59
  228. package/dist/legacy/firebase/discord/config.cjs +0 -23
  229. package/dist/legacy/firebase/discord/config.d.mts +0 -28
  230. package/dist/legacy/firebase/discord/config.mjs +0 -18
  231. package/dist/legacy/firebase/discord/firebase_redirect/index.cjs +0 -14
  232. package/dist/legacy/firebase/discord/firebase_redirect/index.d.mts +0 -8
  233. package/dist/legacy/firebase/discord/firebase_redirect/index.mjs +0 -8
  234. package/dist/legacy/firebase/discord/firebase_redirect/login.cjs +0 -112
  235. package/dist/legacy/firebase/discord/firebase_redirect/login.d.mts +0 -5
  236. package/dist/legacy/firebase/discord/firebase_redirect/login.mjs +0 -108
  237. package/dist/legacy/firebase/discord/firebase_redirect/logout.cjs +0 -102
  238. package/dist/legacy/firebase/discord/firebase_redirect/logout.d.mts +0 -5
  239. package/dist/legacy/firebase/discord/firebase_redirect/logout.mjs +0 -98
  240. package/dist/legacy/firebase/discord/get/authURLGenerator.cjs +0 -79
  241. package/dist/legacy/firebase/discord/get/authURLGenerator.d.mts +0 -24
  242. package/dist/legacy/firebase/discord/get/authURLGenerator.mjs +0 -68
  243. package/dist/legacy/firebase/discord/get/cookie-session.cjs +0 -35
  244. package/dist/legacy/firebase/discord/get/cookie-session.d.mts +0 -21
  245. package/dist/legacy/firebase/discord/get/cookie-session.mjs +0 -29
  246. package/dist/legacy/firebase/discord/get/credentials.cjs +0 -26
  247. package/dist/legacy/firebase/discord/get/credentials.d.mts +0 -20
  248. package/dist/legacy/firebase/discord/get/credentials.mjs +0 -21
  249. package/dist/legacy/firebase/discord/get/errorValidator.cjs +0 -63
  250. package/dist/legacy/firebase/discord/get/errorValidator.d.mts +0 -29
  251. package/dist/legacy/firebase/discord/get/errorValidator.mjs +0 -56
  252. package/dist/legacy/firebase/discord/get/index.cjs +0 -20
  253. package/dist/legacy/firebase/discord/get/index.d.mts +0 -14
  254. package/dist/legacy/firebase/discord/get/index.mjs +0 -14
  255. package/dist/legacy/firebase/discord/get/randomAvatar.cjs +0 -40
  256. package/dist/legacy/firebase/discord/get/randomAvatar.d.mts +0 -23
  257. package/dist/legacy/firebase/discord/get/randomAvatar.mjs +0 -31
  258. package/dist/legacy/firebase/discord/http/index.cjs +0 -18
  259. package/dist/legacy/firebase/discord/http/index.d.mts +0 -12
  260. package/dist/legacy/firebase/discord/http/index.mjs +0 -12
  261. package/dist/legacy/firebase/discord/http/login.cjs +0 -130
  262. package/dist/legacy/firebase/discord/http/login.d.mts +0 -22
  263. package/dist/legacy/firebase/discord/http/login.mjs +0 -124
  264. package/dist/legacy/firebase/discord/http/logout.cjs +0 -158
  265. package/dist/legacy/firebase/discord/http/logout.d.mts +0 -23
  266. package/dist/legacy/firebase/discord/http/logout.mjs +0 -144
  267. package/dist/legacy/firebase/discord/http/redirect.cjs +0 -191
  268. package/dist/legacy/firebase/discord/http/redirect.d.mts +0 -25
  269. package/dist/legacy/firebase/discord/http/redirect.mjs +0 -179
  270. package/dist/legacy/firebase/discord/http/refreshToken.cjs +0 -136
  271. package/dist/legacy/firebase/discord/http/refreshToken.d.mts +0 -25
  272. package/dist/legacy/firebase/discord/http/refreshToken.mjs +0 -122
  273. package/dist/legacy/firebase/discord/index.cjs +0 -22
  274. package/dist/legacy/firebase/discord/index.d.mts +0 -16
  275. package/dist/legacy/firebase/discord/index.mjs +0 -16
  276. package/dist/legacy/firebase/discord/template/cookie-session.cjs +0 -1433
  277. package/dist/legacy/firebase/discord/template/cookie-session.d.mts +0 -23
  278. package/dist/legacy/firebase/discord/template/cookie-session.mjs +0 -1160
  279. package/dist/legacy/firebase/domainRedirect.cjs +0 -37
  280. package/dist/legacy/firebase/domainRedirect.d.mts +0 -13
  281. package/dist/legacy/firebase/domainRedirect.mjs +0 -28
  282. package/dist/legacy/firebase/escape.cjs +0 -77
  283. package/dist/legacy/firebase/escape.d.mts +0 -18
  284. package/dist/legacy/firebase/escape.mjs +0 -59
  285. package/dist/legacy/firebase/getDBAsync.cjs +0 -35
  286. package/dist/legacy/firebase/getDBAsync.d.mts +0 -11
  287. package/dist/legacy/firebase/getDBAsync.mjs +0 -27
  288. package/dist/legacy/firebase/getDBData.cjs +0 -24
  289. package/dist/legacy/firebase/getDBData.d.mts +0 -2
  290. package/dist/legacy/firebase/getDBData.mjs +0 -18
  291. package/dist/legacy/firebase/getDBValue.cjs +0 -19
  292. package/dist/legacy/firebase/getDBValue.d.mts +0 -10
  293. package/dist/legacy/firebase/getDBValue.mjs +0 -15
  294. package/dist/legacy/firebase/index.cjs +0 -264
  295. package/dist/legacy/firebase/index.d.mts +0 -52
  296. package/dist/legacy/firebase/index.mjs +0 -235
  297. package/dist/legacy/firebase/isEmulator.cjs +0 -16
  298. package/dist/legacy/firebase/isEmulator.d.mts +0 -9
  299. package/dist/legacy/firebase/isEmulator.mjs +0 -11
  300. package/dist/legacy/firebase/logger.cjs +0 -140
  301. package/dist/legacy/firebase/logger.d.mts +0 -8
  302. package/dist/legacy/firebase/logger.mjs +0 -126
  303. package/dist/legacy/firebase/mySQL.cjs +0 -30
  304. package/dist/legacy/firebase/mySQL.d.mts +0 -11
  305. package/dist/legacy/firebase/mySQL.mjs +0 -23
  306. package/dist/legacy/firebase/mysqlConnector/create.cjs +0 -121
  307. package/dist/legacy/firebase/mysqlConnector/create.d.mts +0 -37
  308. package/dist/legacy/firebase/mysqlConnector/create.mjs +0 -110
  309. package/dist/legacy/firebase/mysqlConnector/index.cjs +0 -26
  310. package/dist/legacy/firebase/mysqlConnector/index.d.mts +0 -12
  311. package/dist/legacy/firebase/mysqlConnector/index.mjs +0 -17
  312. package/dist/legacy/firebase/mysqlConnector/nextPrev.cjs +0 -77
  313. package/dist/legacy/firebase/mysqlConnector/nextPrev.d.mts +0 -32
  314. package/dist/legacy/firebase/mysqlConnector/nextPrev.mjs +0 -64
  315. package/dist/legacy/firebase/mysqlConnector/pagination.cjs +0 -93
  316. package/dist/legacy/firebase/mysqlConnector/pagination.d.mts +0 -34
  317. package/dist/legacy/firebase/mysqlConnector/pagination.mjs +0 -88
  318. package/dist/legacy/firebase/mysqlConnector/sameUser.cjs +0 -31
  319. package/dist/legacy/firebase/mysqlConnector/sameUser.d.mts +0 -13
  320. package/dist/legacy/firebase/mysqlConnector/sameUser.mjs +0 -24
  321. package/dist/legacy/firebase/transactionDBAsync.cjs +0 -35
  322. package/dist/legacy/firebase/transactionDBAsync.d.mts +0 -12
  323. package/dist/legacy/firebase/transactionDBAsync.mjs +0 -28
  324. package/dist/legacy/get/countObj.cjs +0 -7
  325. package/dist/legacy/get/countObj.d.mts +0 -3
  326. package/dist/legacy/get/countObj.mjs +0 -2
  327. package/dist/legacy/get/decimalColor.cjs +0 -63
  328. package/dist/legacy/get/decimalColor.d.mts +0 -14
  329. package/dist/legacy/get/decimalColor.mjs +0 -56
  330. package/dist/legacy/get/objType.cjs +0 -7
  331. package/dist/legacy/get/objType.d.mts +0 -3
  332. package/dist/legacy/get/objType.mjs +0 -2
  333. package/dist/legacy/get/pagination.cjs +0 -109
  334. package/dist/legacy/get/pagination.d.mts +0 -44
  335. package/dist/legacy/get/pagination.mjs +0 -100
  336. package/dist/legacy/get/queryUrlByName.cjs +0 -32
  337. package/dist/legacy/get/queryUrlByName.d.mts +0 -22
  338. package/dist/legacy/get/queryUrlByName.mjs +0 -29
  339. package/dist/legacy/get/queryUrlJSON.cjs +0 -57
  340. package/dist/legacy/get/queryUrlJSON.d.mts +0 -25
  341. package/dist/legacy/get/queryUrlJSON.mjs +0 -59
  342. package/dist/legacy/get/super_string_filter.cjs +0 -109
  343. package/dist/legacy/get/super_string_filter.d.mts +0 -27
  344. package/dist/legacy/get/super_string_filter.mjs +0 -95
  345. package/dist/legacy/get/versionCheck.cjs +0 -50
  346. package/dist/legacy/get/versionCheck.d.mts +0 -29
  347. package/dist/legacy/get/versionCheck.mjs +0 -40
  348. package/dist/legacy/http/HTTP-1.0.cjs +0 -153
  349. package/dist/legacy/http/HTTP-1.0.d.mts +0 -9
  350. package/dist/legacy/http/HTTP-1.0.mjs +0 -138
  351. package/dist/legacy/http/auth.cjs +0 -71
  352. package/dist/legacy/http/auth.d.mts +0 -43
  353. package/dist/legacy/http/auth.mjs +0 -64
  354. package/dist/legacy/http/check_domain.cjs +0 -103
  355. package/dist/legacy/http/check_domain.d.mts +0 -13
  356. package/dist/legacy/http/check_domain.mjs +0 -98
  357. package/dist/legacy/http/csrfTokenAnalyze.cjs +0 -50
  358. package/dist/legacy/http/csrfTokenAnalyze.d.mts +0 -23
  359. package/dist/legacy/http/csrfTokenAnalyze.mjs +0 -45
  360. package/dist/legacy/http/domainValidator.cjs +0 -106
  361. package/dist/legacy/http/domainValidator.d.mts +0 -41
  362. package/dist/legacy/http/domainValidator.mjs +0 -89
  363. package/dist/legacy/http/errorsCallback.cjs +0 -64
  364. package/dist/legacy/http/errorsCallback.d.mts +0 -41
  365. package/dist/legacy/http/errorsCallback.mjs +0 -58
  366. package/dist/legacy/http/fetch/json.cjs +0 -50
  367. package/dist/legacy/http/fetch/json.d.mts +0 -24
  368. package/dist/legacy/http/fetch/json.mjs +0 -43
  369. package/dist/legacy/http/fetch/text.cjs +0 -49
  370. package/dist/legacy/http/fetch/text.d.mts +0 -23
  371. package/dist/legacy/http/fetch/text.mjs +0 -42
  372. package/dist/legacy/http/fileCache.cjs +0 -80
  373. package/dist/legacy/http/fileCache.d.mts +0 -37
  374. package/dist/legacy/http/fileCache.mjs +0 -71
  375. package/dist/legacy/http/getDomainURL.cjs +0 -60
  376. package/dist/legacy/http/getDomainURL.d.mts +0 -20
  377. package/dist/legacy/http/getDomainURL.mjs +0 -55
  378. package/dist/legacy/http/userIP.cjs +0 -65
  379. package/dist/legacy/http/userIP.d.mts +0 -27
  380. package/dist/legacy/http/userIP.mjs +0 -53
  381. package/dist/legacy/index.cjs +0 -125
  382. package/dist/legacy/index.d.mts +0 -89
  383. package/dist/legacy/index.mjs +0 -93
  384. package/dist/legacy/libs/arraySortPositions.cjs +0 -30
  385. package/dist/legacy/libs/arraySortPositions.d.mts +0 -17
  386. package/dist/legacy/libs/arraySortPositions.mjs +0 -27
  387. package/dist/legacy/libs/capitalize.cjs +0 -22
  388. package/dist/legacy/libs/capitalize.d.mts +0 -15
  389. package/dist/legacy/libs/capitalize.mjs +0 -18
  390. package/dist/legacy/libs/convertBytes.cjs +0 -66
  391. package/dist/legacy/libs/convertBytes.d.mts +0 -18
  392. package/dist/legacy/libs/convertBytes.mjs +0 -57
  393. package/dist/legacy/libs/custom_module_loader.cjs +0 -91
  394. package/dist/legacy/libs/custom_module_loader.d.mts +0 -6
  395. package/dist/legacy/libs/custom_module_loader.mjs +0 -87
  396. package/dist/legacy/libs/dice.cjs +0 -37
  397. package/dist/legacy/libs/dice.d.mts +0 -6
  398. package/dist/legacy/libs/dice.mjs +0 -33
  399. package/dist/legacy/libs/markdown.cjs +0 -97
  400. package/dist/legacy/libs/markdown.d.mts +0 -12
  401. package/dist/legacy/libs/markdown.mjs +0 -90
  402. package/dist/legacy/libs/percentage.cjs +0 -23
  403. package/dist/legacy/libs/percentage.d.mts +0 -5
  404. package/dist/legacy/libs/percentage.mjs +0 -20
  405. package/dist/legacy/libs/regex/getLetter.cjs +0 -24
  406. package/dist/legacy/libs/regex/getLetter.d.mts +0 -15
  407. package/dist/legacy/libs/regex/getLetter.mjs +0 -21
  408. package/dist/legacy/libs/replaceAsync.cjs +0 -35
  409. package/dist/legacy/libs/replaceAsync.d.mts +0 -16
  410. package/dist/legacy/libs/replaceAsync.mjs +0 -28
  411. package/dist/legacy/libs/rule3.cjs +0 -59
  412. package/dist/legacy/libs/rule3.d.mts +0 -6
  413. package/dist/legacy/libs/rule3.mjs +0 -55
  414. package/dist/legacy/momentjs/getAge.cjs +0 -29
  415. package/dist/legacy/momentjs/getAge.d.mts +0 -11
  416. package/dist/legacy/momentjs/getAge.mjs +0 -23
  417. package/dist/legacy/momentjs/index.cjs +0 -9
  418. package/dist/legacy/momentjs/index.d.mts +0 -4
  419. package/dist/legacy/momentjs/index.mjs +0 -3
  420. package/dist/legacy/momentjs/timeDuration.cjs +0 -31
  421. package/dist/legacy/momentjs/timeDuration.d.mts +0 -12
  422. package/dist/legacy/momentjs/timeDuration.mjs +0 -25
  423. package/dist/legacy/socket.io/antiFlood/index.cjs +0 -9
  424. package/dist/legacy/socket.io/antiFlood/index.d.mts +0 -4
  425. package/dist/legacy/socket.io/antiFlood/index.mjs +0 -3
  426. package/dist/legacy/socket.io/antiFlood/install.cjs +0 -34
  427. package/dist/legacy/socket.io/antiFlood/install.d.mts +0 -16
  428. package/dist/legacy/socket.io/antiFlood/install.mjs +0 -29
  429. package/dist/legacy/socket.io/antiFlood/verify.cjs +0 -95
  430. package/dist/legacy/socket.io/antiFlood/verify.d.mts +0 -20
  431. package/dist/legacy/socket.io/antiFlood/verify.mjs +0 -79
  432. package/dist/legacy/socket.io/cookie-session.cjs +0 -27
  433. package/dist/legacy/socket.io/cookie-session.d.mts +0 -11
  434. package/dist/legacy/socket.io/cookie-session.mjs +0 -22
  435. package/dist/legacy/socket.io/discord.cjs +0 -62
  436. package/dist/legacy/socket.io/discord.d.mts +0 -12
  437. package/dist/legacy/socket.io/discord.mjs +0 -53
  438. package/dist/legacy/socket.io/index.cjs +0 -13
  439. package/dist/legacy/socket.io/index.d.mts +0 -10
  440. package/dist/legacy/socket.io/index.mjs +0 -9
  441. package/dist/node_modules/firebase-functions/lib/common/trace.cjs +0 -81
  442. package/dist/node_modules/firebase-functions/lib/logger/common.cjs +0 -57
  443. package/dist/node_modules/firebase-functions/lib/logger/index.cjs +0 -159
  444. /package/dist/{legacy/libs/userLevel.cjs → v1/libs/TinyLevelUp.cjs} +0 -0
  445. /package/dist/{legacy/libs/userLevel.mjs → v1/libs/TinyLevelUp.mjs} +0 -0
@@ -0,0 +1,99 @@
1
+ export default TinyHtmlScript;
2
+ /**
3
+ * TinyHtmlScript is a helper class for creating and managing <script> elements.
4
+ * Supports both inline and external scripts, with attributes for async, defer, modules, etc.
5
+ *
6
+ * @extends TinyHtmlTemplate<HTMLScriptElement>
7
+ */
8
+ declare class TinyHtmlScript extends TinyHtmlTemplate<HTMLScriptElement> {
9
+ /**
10
+ * Creates a new TinyHtmlScript instance.
11
+ * @param {Object} config - Configuration object.
12
+ * @param {string} [config.src] - URI of an external script.
13
+ * @param {string} [config.type] - The type of script (e.g., "module", "importmap", "speculationrules", or JS MIME type).
14
+ * @param {boolean} [config.async=false] - Whether the script should be executed asynchronously (requires src).
15
+ * @param {boolean} [config.defer=false] - Whether the script should be deferred until after parsing (requires src).
16
+ * @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
17
+ * @param {string} [config.mainClass=""] - Main CSS class.
18
+ * @param {string} [config.content=""] - Inline script content (ignored if src is provided).
19
+ * @param {string|string[]} [config.blocking] - Space-separated list of blocking tokens (currently only "render").
20
+ * @param {"anonymous" | "use-credentials"} [config.crossorigin] - CORS setting ("anonymous" or "use-credentials").
21
+ * @param {"auto"|"high"|"low"} [config.fetchpriority="auto"] - Fetch priority.
22
+ * @param {string} [config.integrity] - Subresource integrity hash (only valid with src).
23
+ * @param {boolean} [config.nomodule=false] - Whether to prevent execution in browsers supporting modules.
24
+ * @param {string} [config.nonce] - Cryptographic nonce for CSP.
25
+ * @param {string} [config.referrerpolicy] - Referrer policy.
26
+ * @param {boolean|string|string[]} [config.attributionsrc] - Boolean or list of URLs for attribution reporting.
27
+ */
28
+ constructor({ src, type, async, defer, tags, mainClass, content, blocking, crossorigin, fetchpriority, integrity, nomodule, nonce, referrerpolicy, attributionsrc, }?: {
29
+ src?: string | undefined;
30
+ type?: string | undefined;
31
+ async?: boolean | undefined;
32
+ defer?: boolean | undefined;
33
+ tags?: string | string[] | Set<string> | undefined;
34
+ mainClass?: string | undefined;
35
+ content?: string | undefined;
36
+ blocking?: string | string[] | undefined;
37
+ crossorigin?: "anonymous" | "use-credentials" | undefined;
38
+ fetchpriority?: "auto" | "high" | "low" | undefined;
39
+ integrity?: string | undefined;
40
+ nomodule?: boolean | undefined;
41
+ nonce?: string | undefined;
42
+ referrerpolicy?: string | undefined;
43
+ attributionsrc?: string | boolean | string[] | undefined;
44
+ });
45
+ /** @param {string} src */
46
+ set src(src: string);
47
+ /** @returns {string|null} */
48
+ get src(): string | null;
49
+ /** @param {string} type */
50
+ set type(type: string);
51
+ /** @returns {string|null} */
52
+ get type(): string | null;
53
+ /** @param {boolean} async */
54
+ set async(async: boolean);
55
+ /** @returns {boolean} */
56
+ get async(): boolean;
57
+ /** @param {boolean} defer */
58
+ set defer(defer: boolean);
59
+ /** @returns {boolean} */
60
+ get defer(): boolean;
61
+ /** @param {string|string[]} blocking */
62
+ set blocking(blocking: string | string[]);
63
+ /** @returns {string[]|null} */
64
+ get blocking(): string[] | null;
65
+ /** @param {"anonymous"|"use-credentials"} crossorigin */
66
+ set crossorigin(crossorigin: "anonymous" | "use-credentials");
67
+ /** @returns {string|null} */
68
+ get crossorigin(): string | null;
69
+ /** @param {"auto"|"high"|"low"} fetchpriority */
70
+ set fetchpriority(fetchpriority: "auto" | "high" | "low");
71
+ /** @returns {string|null} */
72
+ get fetchpriority(): string | null;
73
+ /** @param {string} integrity */
74
+ set integrity(integrity: string);
75
+ /** @returns {string|null} */
76
+ get integrity(): string | null;
77
+ /** @param {boolean} nomodule */
78
+ set nomodule(nomodule: boolean);
79
+ /** @returns {boolean} */
80
+ get nomodule(): boolean;
81
+ /** @param {string} nonce */
82
+ set nonce(nonce: string);
83
+ /** @returns {string|null} */
84
+ get nonce(): string | null;
85
+ /** @param {string} referrerpolicy */
86
+ set referrerpolicy(referrerpolicy: string);
87
+ /** @returns {string|null} */
88
+ get referrerpolicy(): string | null;
89
+ /** @param {boolean|string|string[]} attributionsrc */
90
+ set attributionsrc(attributionsrc: boolean | string | string[]);
91
+ /** @returns {boolean|string[]|null} */
92
+ get attributionsrc(): boolean | string[] | null;
93
+ /** @param {string} code */
94
+ set content(code: string);
95
+ /** @returns {string|null} */
96
+ get content(): string | null;
97
+ }
98
+ import TinyHtmlTemplate from './TinyHtmlTemplate.mjs';
99
+ //# sourceMappingURL=TinyHtmlScript.d.mts.map
@@ -0,0 +1,209 @@
1
+ import TinyHtmlTemplate from './TinyHtmlTemplate.mjs';
2
+ /**
3
+ * TinyHtmlScript is a helper class for creating and managing <script> elements.
4
+ * Supports both inline and external scripts, with attributes for async, defer, modules, etc.
5
+ *
6
+ * @extends TinyHtmlTemplate<HTMLScriptElement>
7
+ */
8
+ class TinyHtmlScript extends TinyHtmlTemplate {
9
+ /**
10
+ * Creates a new TinyHtmlScript instance.
11
+ * @param {Object} config - Configuration object.
12
+ * @param {string} [config.src] - URI of an external script.
13
+ * @param {string} [config.type] - The type of script (e.g., "module", "importmap", "speculationrules", or JS MIME type).
14
+ * @param {boolean} [config.async=false] - Whether the script should be executed asynchronously (requires src).
15
+ * @param {boolean} [config.defer=false] - Whether the script should be deferred until after parsing (requires src).
16
+ * @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
17
+ * @param {string} [config.mainClass=""] - Main CSS class.
18
+ * @param {string} [config.content=""] - Inline script content (ignored if src is provided).
19
+ * @param {string|string[]} [config.blocking] - Space-separated list of blocking tokens (currently only "render").
20
+ * @param {"anonymous" | "use-credentials"} [config.crossorigin] - CORS setting ("anonymous" or "use-credentials").
21
+ * @param {"auto"|"high"|"low"} [config.fetchpriority="auto"] - Fetch priority.
22
+ * @param {string} [config.integrity] - Subresource integrity hash (only valid with src).
23
+ * @param {boolean} [config.nomodule=false] - Whether to prevent execution in browsers supporting modules.
24
+ * @param {string} [config.nonce] - Cryptographic nonce for CSP.
25
+ * @param {string} [config.referrerpolicy] - Referrer policy.
26
+ * @param {boolean|string|string[]} [config.attributionsrc] - Boolean or list of URLs for attribution reporting.
27
+ */
28
+ constructor({ src, type, async = false, defer = false, tags = [], mainClass = '', content = '', blocking, crossorigin, fetchpriority = 'auto', integrity, nomodule = false, nonce, referrerpolicy, attributionsrc, } = {}) {
29
+ super(document.createElement('script'), tags, mainClass);
30
+ if (src !== undefined)
31
+ this.src = src;
32
+ if (type !== undefined)
33
+ this.type = type;
34
+ this.async = async;
35
+ this.defer = defer;
36
+ if (blocking !== undefined)
37
+ this.blocking = blocking;
38
+ if (crossorigin !== undefined)
39
+ this.crossorigin = crossorigin;
40
+ this.fetchpriority = fetchpriority;
41
+ if (integrity !== undefined)
42
+ this.integrity = integrity;
43
+ this.nomodule = nomodule;
44
+ if (nonce !== undefined)
45
+ this.nonce = nonce;
46
+ if (referrerpolicy !== undefined)
47
+ this.referrerpolicy = referrerpolicy;
48
+ if (attributionsrc !== undefined)
49
+ this.attributionsrc = attributionsrc;
50
+ if (!src && content)
51
+ this.content = content;
52
+ }
53
+ /** @param {string} src */
54
+ set src(src) {
55
+ if (typeof src !== 'string')
56
+ throw new TypeError('TinyHtmlScript: "src" must be a string.');
57
+ this.setAttr('src', src);
58
+ }
59
+ /** @returns {string|null} */
60
+ get src() {
61
+ return this.attrString('src');
62
+ }
63
+ /** @param {string} type */
64
+ set type(type) {
65
+ if (typeof type !== 'string')
66
+ throw new TypeError('TinyHtmlScript: "type" must be a string.');
67
+ this.setAttr('type', type);
68
+ }
69
+ /** @returns {string|null} */
70
+ get type() {
71
+ return this.attrString('type');
72
+ }
73
+ /** @param {boolean} async */
74
+ set async(async) {
75
+ if (typeof async !== 'boolean')
76
+ throw new TypeError('TinyHtmlScript: "async" must be a boolean.');
77
+ if (async && !this.src)
78
+ throw new Error('TinyHtmlScript: "async" requires a "src" attribute.');
79
+ this.toggleProp('async', async);
80
+ }
81
+ /** @returns {boolean} */
82
+ get async() {
83
+ return this.hasProp('async');
84
+ }
85
+ /** @param {boolean} defer */
86
+ set defer(defer) {
87
+ if (typeof defer !== 'boolean')
88
+ throw new TypeError('TinyHtmlScript: "defer" must be a boolean.');
89
+ if (defer && !this.src)
90
+ throw new Error('TinyHtmlScript: "defer" requires a "src" attribute.');
91
+ this.toggleProp('defer', defer);
92
+ }
93
+ /** @returns {boolean} */
94
+ get defer() {
95
+ return this.hasProp('defer');
96
+ }
97
+ /** @param {string|string[]} blocking */
98
+ set blocking(blocking) {
99
+ const values = Array.isArray(blocking) ? blocking : String(blocking).trim().split(/\s+/);
100
+ for (const v of values) {
101
+ if (v !== 'render')
102
+ throw new Error(`TinyHtmlScript: invalid blocking token "${v}".`);
103
+ }
104
+ this.setAttr('blocking', values.join(' '));
105
+ }
106
+ /** @returns {string[]|null} */
107
+ get blocking() {
108
+ const val = this.attrString('blocking');
109
+ return val ? val.split(/\s+/) : null;
110
+ }
111
+ /** @param {"anonymous"|"use-credentials"} crossorigin */
112
+ set crossorigin(crossorigin) {
113
+ if (!['anonymous', 'use-credentials'].includes(crossorigin))
114
+ throw new Error('TinyHtmlScript: "crossorigin" must be "anonymous" or "use-credentials".');
115
+ this.setAttr('crossorigin', crossorigin);
116
+ }
117
+ /** @returns {string|null} */
118
+ get crossorigin() {
119
+ return this.attrString('crossorigin');
120
+ }
121
+ /** @param {"auto"|"high"|"low"} fetchpriority */
122
+ set fetchpriority(fetchpriority) {
123
+ if (!['auto', 'high', 'low'].includes(fetchpriority))
124
+ throw new Error('TinyHtmlScript: "fetchpriority" must be "auto", "high", or "low".');
125
+ this.setAttr('fetchpriority', fetchpriority);
126
+ }
127
+ /** @returns {string|null} */
128
+ get fetchpriority() {
129
+ return this.attrString('fetchpriority');
130
+ }
131
+ /** @param {string} integrity */
132
+ set integrity(integrity) {
133
+ if (!this.src)
134
+ throw new Error('TinyHtmlScript: "integrity" requires "src".');
135
+ if (typeof integrity !== 'string')
136
+ throw new TypeError('TinyHtmlScript: "integrity" must be a string.');
137
+ this.setAttr('integrity', integrity);
138
+ }
139
+ /** @returns {string|null} */
140
+ get integrity() {
141
+ return this.attrString('integrity');
142
+ }
143
+ /** @param {boolean} nomodule */
144
+ set nomodule(nomodule) {
145
+ if (typeof nomodule !== 'boolean')
146
+ throw new TypeError('TinyHtmlScript: "nomodule" must be a boolean.');
147
+ this.toggleProp('nomodule', nomodule);
148
+ }
149
+ /** @returns {boolean} */
150
+ get nomodule() {
151
+ return this.hasProp('nomodule');
152
+ }
153
+ /** @param {string} nonce */
154
+ set nonce(nonce) {
155
+ if (typeof nonce !== 'string')
156
+ throw new TypeError('TinyHtmlScript: "nonce" must be a string.');
157
+ this.setAttr('nonce', nonce);
158
+ }
159
+ /** @returns {string|null} */
160
+ get nonce() {
161
+ return this.attrString('nonce');
162
+ }
163
+ /** @param {string} referrerpolicy */
164
+ set referrerpolicy(referrerpolicy) {
165
+ if (typeof referrerpolicy !== 'string')
166
+ throw new TypeError('TinyHtmlScript: "referrerpolicy" must be a string.');
167
+ this.setAttr('referrerpolicy', referrerpolicy);
168
+ }
169
+ /** @returns {string|null} */
170
+ get referrerpolicy() {
171
+ return this.attrString('referrerpolicy');
172
+ }
173
+ /** @param {boolean|string|string[]} attributionsrc */
174
+ set attributionsrc(attributionsrc) {
175
+ if (attributionsrc === true) {
176
+ this.addProp('attributionsrc');
177
+ }
178
+ else if (typeof attributionsrc === 'string') {
179
+ this.setAttr('attributionsrc', attributionsrc);
180
+ }
181
+ else if (Array.isArray(attributionsrc) &&
182
+ attributionsrc.every((v) => typeof v === 'string')) {
183
+ this.setAttr('attributionsrc', attributionsrc.join(' '));
184
+ }
185
+ else {
186
+ throw new TypeError('TinyHtmlScript: "attributionsrc" must be boolean, string, or string[].');
187
+ }
188
+ }
189
+ /** @returns {boolean|string[]|null} */
190
+ get attributionsrc() {
191
+ if (this.hasProp('attributionsrc'))
192
+ return true;
193
+ const val = this.attrString('attributionsrc');
194
+ return val ? val.split(/\s+/) : null;
195
+ }
196
+ /** @param {string} code */
197
+ set content(code) {
198
+ if (typeof code !== 'string')
199
+ throw new TypeError('TinyHtmlScript: "content" must be a string.');
200
+ if (this.src)
201
+ throw new Error('TinyHtmlScript: Cannot set inline content when "src" is defined.');
202
+ this._preHtmlElem('content').textContent = code;
203
+ }
204
+ /** @returns {string|null} */
205
+ get content() {
206
+ return this._preHtmlElem('content').textContent || null;
207
+ }
208
+ }
209
+ export default TinyHtmlScript;
@@ -0,0 +1,267 @@
1
+ 'use strict';
2
+
3
+ var TinyHtml = require('../TinyHtml.cjs');
4
+ var TinyHtmlTemplate = require('./TinyHtmlTemplate.cjs');
5
+
6
+ /**
7
+ * TinyHtmlSelect is a helper class for managing <select> elements.
8
+ * It supports all standard attributes (multiple, autocomplete, autofocus, disabled, etc.)
9
+ * and provides helpers for managing <option> elements.
10
+ *
11
+ * @example
12
+ * const select = new TinyHtmlSelect({
13
+ * options: [
14
+ * { value: '1', label: 'One' },
15
+ * { value: '2', label: 'Two', selected: true }
16
+ * ],
17
+ * multiple: true,
18
+ * required: true,
19
+ * size: 5,
20
+ * name: 'numbers',
21
+ * });
22
+ *
23
+ * @extends TinyHtmlTemplate<HTMLSelectElement>
24
+ */
25
+ class TinyHtmlSelect extends TinyHtmlTemplate {
26
+ /**
27
+ * Creates a new custom <select> element with configurable options and attributes.
28
+ *
29
+ * @param {Object} [config={}] Configuration object for the select element.
30
+ * @param {Array<{
31
+ * value: string,
32
+ * label: string | Element | TinyHtml<any>,
33
+ * selected?: boolean,
34
+ * allowHtml?: boolean
35
+ * }>} [config.options=[]]
36
+ * An array of option definitions. Each option must provide a `value` and a `label`.
37
+ * The `label` can be a string, a DOM element, or a TinyHtml instance.
38
+ * The `selected` flag sets the option as initially selected.
39
+ * If `allowHtml` is true, the label will be interpreted as HTML instead of plain text.
40
+ *
41
+ * @param {boolean} [config.multiple=false]
42
+ * If true, allows selecting multiple options.
43
+ *
44
+ * @param {string} [config.autocomplete]
45
+ * Provides autocomplete hints for the control.
46
+ * Possible values include `"on"` or `"off"`.
47
+ *
48
+ * @param {boolean} [config.autofocus=false]
49
+ * If true, the element will automatically receive focus when the page loads.
50
+ *
51
+ * @param {boolean} [config.disabled=false]
52
+ * If true, disables the select element so it cannot be interacted with.
53
+ *
54
+ * @param {string} [config.form]
55
+ * Associates the select element with the `id` of a form element.
56
+ *
57
+ * @param {string} [config.name]
58
+ * The name of the select control, used when submitting forms.
59
+ *
60
+ * @param {boolean} [config.required=false]
61
+ * If true, the control must be selected before submitting the form.
62
+ *
63
+ * @param {number} [config.size]
64
+ * Defines the number of visible options in the dropdown (without scrolling).
65
+ *
66
+ * @param {string | string[] | Set<string>} [config.tags=[]]
67
+ * A set of tags or CSS classes that can be used for styling or categorization.
68
+ *
69
+ * @param {string} [config.mainClass='']
70
+ * A primary CSS class name to be applied to the select element.
71
+ */
72
+ constructor({
73
+ options = [],
74
+ multiple = false,
75
+ autocomplete,
76
+ autofocus = false,
77
+ disabled = false,
78
+ form,
79
+ name,
80
+ required = false,
81
+ size,
82
+ tags = [],
83
+ mainClass = '',
84
+ } = {}) {
85
+ super(document.createElement('select'), tags, mainClass);
86
+
87
+ this.multiple = multiple;
88
+ if (autocomplete !== undefined) this.autocomplete = autocomplete;
89
+ this.autofocus = autofocus;
90
+ this.disabled = disabled;
91
+ if (form !== undefined) this.form = form;
92
+ if (name !== undefined) this.name = name;
93
+ this.required = required;
94
+ if (size !== undefined) this.sizeEl = size;
95
+
96
+ for (const opt of options) {
97
+ this.addOption(opt);
98
+ }
99
+ }
100
+
101
+ /** @param {boolean} multiple */
102
+ set multiple(multiple) {
103
+ if (typeof multiple !== 'boolean') throw new TypeError('"multiple" must be a boolean.');
104
+ if (multiple) this.addProp('multiple');
105
+ else this.removeProp('multiple');
106
+ }
107
+
108
+ /** @returns {boolean} */
109
+ get multiple() {
110
+ return this.hasProp('multiple');
111
+ }
112
+
113
+ /** @param {string} autocomplete */
114
+ set autocomplete(autocomplete) {
115
+ if (typeof autocomplete !== 'string') throw new TypeError('"autocomplete" must be a string.');
116
+ this.setAttr('autocomplete', autocomplete);
117
+ }
118
+
119
+ /** @returns {string|null} */
120
+ get autocomplete() {
121
+ return this.attrString('autocomplete');
122
+ }
123
+
124
+ /** @param {boolean} autofocus */
125
+ set autofocus(autofocus) {
126
+ if (typeof autofocus !== 'boolean') throw new TypeError('"autofocus" must be a boolean.');
127
+ if (autofocus) this.addProp('autofocus');
128
+ else this.removeProp('autofocus');
129
+ }
130
+
131
+ /** @returns {boolean} */
132
+ get autofocus() {
133
+ return this.hasProp('autofocus');
134
+ }
135
+
136
+ /** @param {boolean} disabled */
137
+ set disabled(disabled) {
138
+ if (typeof disabled !== 'boolean') throw new TypeError('"disabled" must be a boolean.');
139
+ if (disabled) this.addProp('disabled');
140
+ else this.removeProp('disabled');
141
+ }
142
+
143
+ /** @returns {boolean} */
144
+ get disabled() {
145
+ return this.hasProp('disabled');
146
+ }
147
+
148
+ /** @param {string} form */
149
+ set form(form) {
150
+ if (typeof form !== 'string') throw new TypeError('"form" must be a string (form id).');
151
+ this.setAttr('form', form);
152
+ }
153
+
154
+ /** @returns {string|null} */
155
+ get form() {
156
+ return this.attrString('form');
157
+ }
158
+
159
+ /** @param {string} name */
160
+ set name(name) {
161
+ if (typeof name !== 'string') throw new TypeError('"name" must be a string.');
162
+ this.setAttr('name', name);
163
+ }
164
+
165
+ /** @returns {string|null} */
166
+ get name() {
167
+ return this.attrString('name');
168
+ }
169
+
170
+ /** @param {boolean} required */
171
+ set required(required) {
172
+ if (typeof required !== 'boolean') throw new TypeError('"required" must be a boolean.');
173
+ if (required) this.addProp('required');
174
+ else this.removeProp('required');
175
+ }
176
+
177
+ /** @returns {boolean} */
178
+ get required() {
179
+ return this.hasProp('required');
180
+ }
181
+
182
+ /** @param {number} size */
183
+ set sizeEl(size) {
184
+ if (!Number.isInteger(size) || size < 0)
185
+ throw new TypeError('"size" must be a non-negative integer.');
186
+ this.setAttr('size', size);
187
+ }
188
+
189
+ /** @returns {number|null} */
190
+ get sizeEl() {
191
+ return this.attrNumber('size');
192
+ }
193
+
194
+ /**
195
+ * Adds an option element.
196
+ * @param {{ value: string, label: string|Element|TinyHtml<any>, selected?: boolean, allowHtml?: boolean }} option
197
+ * @returns {this}
198
+ */
199
+ addOption({ value, label, allowHtml = false, selected = false }) {
200
+ if (typeof value !== 'string') throw new TypeError('"value" must be a string.');
201
+ if (typeof selected !== 'boolean') throw new TypeError('"selected" must be a boolean.');
202
+
203
+ const opt = new TinyHtml(document.createElement('option'));
204
+ opt.setAttr('value', value);
205
+
206
+ if (typeof label === 'string') {
207
+ if (!allowHtml) opt.setText(label);
208
+ else opt.setHtml(label);
209
+ } else if (label instanceof Element || label instanceof TinyHtml) {
210
+ if (!allowHtml)
211
+ throw new Error('addOption: Passing an Element/TinyHtml requires allowHtml=true.');
212
+ opt.append(label);
213
+ } else {
214
+ throw new TypeError('"label" must be a string, Element, or TinyHtml instance.');
215
+ }
216
+
217
+ if (selected) opt.addProp('selected');
218
+ this.append(opt);
219
+ return this;
220
+ }
221
+
222
+ /** @returns {string} */
223
+ get value() {
224
+ if (this.multiple)
225
+ throw new Error('TinyHtmlSelect.value: Use "values" getter for multiple selects.');
226
+ return this.valTxt();
227
+ }
228
+
229
+ /** @param {string} val */
230
+ set value(val) {
231
+ if (this.multiple)
232
+ throw new Error('TinyHtmlSelect.value: Use "values" setter for multiple selects.');
233
+ if (typeof val !== 'string') throw new TypeError('"value" must be a string.');
234
+ this.setValue(val);
235
+ }
236
+
237
+ /** @returns {string[]} */
238
+ get values() {
239
+ if (!this.multiple)
240
+ throw new Error('TinyHtmlSelect.values: Use "value" getter for single select.');
241
+ return Array.from(this.prop('selectedOptions')).map((o) => o.value);
242
+ }
243
+
244
+ /** @param {string[]} vals */
245
+ set values(vals) {
246
+ if (!this.multiple)
247
+ throw new Error('TinyHtmlSelect.values: Use "value" setter for single select.');
248
+ if (!Array.isArray(vals) || !vals.every((v) => typeof v === 'string'))
249
+ throw new TypeError('"values" must be an array of strings.');
250
+ this.setValue(vals);
251
+ }
252
+
253
+ /**
254
+ * Internal: apply selection to options.
255
+ * @param {string|string[]} value
256
+ * @returns {this}
257
+ */
258
+ setValue(value) {
259
+ const values = Array.isArray(value) ? value : [value];
260
+ for (const opt of this.prop('options')) {
261
+ opt.selected = values.includes(opt.value);
262
+ }
263
+ return this;
264
+ }
265
+ }
266
+
267
+ module.exports = TinyHtmlSelect;