tiny-essentials 1.24.0 → 1.24.1

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 (442) hide show
  1. package/.github/workflows/node.js.yml +2 -2
  2. package/README.md +6 -2
  3. package/changelog/1/24/1.md +12 -0
  4. package/dist/v1/TinyBasicsEs.min.js +1 -1
  5. package/dist/v1/TinyDragger.min.js +1 -1
  6. package/dist/v1/TinyEssentials.min.js +1 -1
  7. package/dist/v1/TinyHtml.min.js +1 -1
  8. package/dist/v1/TinySmartScroller.min.js +1 -1
  9. package/dist/v1/TinyUploadClicker.min.js +1 -1
  10. package/dist/v1/basics/array.cjs +28 -0
  11. package/dist/v1/basics/array.d.mts +16 -0
  12. package/dist/v1/basics/array.mjs +27 -0
  13. package/dist/v1/basics/index.cjs +2 -4
  14. package/dist/v1/basics/index.d.mts +2 -2
  15. package/dist/v1/basics/index.mjs +2 -4
  16. package/dist/v1/basics/text.cjs +33 -0
  17. package/dist/v1/basics/text.d.mts +15 -0
  18. package/dist/v1/basics/text.mjs +28 -0
  19. package/dist/v1/build/TinyLevelUp.cjs +2 -2
  20. package/dist/v1/build/TinyLevelUp.d.mts +1 -1
  21. package/dist/v1/build/TinyLevelUp.mjs +1 -1
  22. package/dist/v1/index.cjs +4 -6
  23. package/dist/v1/index.d.mts +3 -3
  24. package/dist/v1/index.mjs +7 -6
  25. package/dist/v1/libs/TinyHtml/TinyHtmlAnchor.cjs +220 -0
  26. package/dist/v1/libs/TinyHtml/TinyHtmlAnchor.d.mts +98 -0
  27. package/dist/v1/libs/TinyHtml/TinyHtmlAnchor.mjs +207 -0
  28. package/dist/v1/libs/TinyHtml/TinyHtmlButton.cjs +317 -0
  29. package/dist/v1/libs/TinyHtml/TinyHtmlButton.d.mts +150 -0
  30. package/dist/v1/libs/TinyHtml/TinyHtmlButton.mjs +290 -0
  31. package/dist/v1/libs/TinyHtml/TinyHtmlCanvas.cjs +48 -0
  32. package/dist/v1/libs/TinyHtml/TinyHtmlCanvas.d.mts +36 -0
  33. package/dist/v1/libs/TinyHtml/TinyHtmlCanvas.mjs +44 -0
  34. package/dist/v1/libs/TinyHtml/TinyHtmlDatalist.cjs +102 -0
  35. package/dist/v1/libs/TinyHtml/TinyHtmlDatalist.d.mts +65 -0
  36. package/dist/v1/libs/TinyHtml/TinyHtmlDatalist.mjs +91 -0
  37. package/dist/v1/libs/TinyHtml/TinyHtmlEmbed.cjs +80 -0
  38. package/dist/v1/libs/TinyHtml/TinyHtmlEmbed.d.mts +57 -0
  39. package/dist/v1/libs/TinyHtml/TinyHtmlEmbed.mjs +75 -0
  40. package/dist/v1/libs/TinyHtml/TinyHtmlForm.cjs +244 -0
  41. package/dist/v1/libs/TinyHtml/TinyHtmlForm.d.mts +129 -0
  42. package/dist/v1/libs/TinyHtml/TinyHtmlForm.mjs +228 -0
  43. package/dist/v1/libs/TinyHtml/TinyHtmlIcon.cjs +38 -0
  44. package/dist/v1/libs/TinyHtml/TinyHtmlIcon.d.mts +24 -0
  45. package/dist/v1/libs/TinyHtml/TinyHtmlIcon.mjs +33 -0
  46. package/dist/v1/libs/TinyHtml/TinyHtmlIframe.cjs +222 -0
  47. package/dist/v1/libs/TinyHtml/TinyHtmlIframe.d.mts +108 -0
  48. package/dist/v1/libs/TinyHtml/TinyHtmlIframe.mjs +212 -0
  49. package/dist/v1/libs/TinyHtml/TinyHtmlImage.cjs +286 -0
  50. package/dist/v1/libs/TinyHtml/TinyHtmlImage.d.mts +125 -0
  51. package/dist/v1/libs/TinyHtml/TinyHtmlImage.mjs +250 -0
  52. package/dist/v1/libs/TinyHtml/TinyHtmlInput.cjs +154 -0
  53. package/dist/v1/libs/TinyHtml/TinyHtmlInput.d.mts +76 -0
  54. package/dist/v1/libs/TinyHtml/TinyHtmlInput.mjs +134 -0
  55. package/dist/v1/libs/TinyHtml/TinyHtmlLink.cjs +282 -0
  56. package/dist/v1/libs/TinyHtml/TinyHtmlLink.d.mts +128 -0
  57. package/dist/v1/libs/TinyHtml/TinyHtmlLink.mjs +264 -0
  58. package/dist/v1/libs/TinyHtml/TinyHtmlMedia.cjs +358 -0
  59. package/dist/v1/libs/TinyHtml/TinyHtmlMedia.d.mts +168 -0
  60. package/dist/v1/libs/TinyHtml/TinyHtmlMedia.mjs +308 -0
  61. package/dist/v1/libs/TinyHtml/TinyHtmlScript.cjs +226 -0
  62. package/dist/v1/libs/TinyHtml/TinyHtmlScript.d.mts +99 -0
  63. package/dist/v1/libs/TinyHtml/TinyHtmlScript.mjs +209 -0
  64. package/dist/v1/libs/TinyHtml/TinyHtmlSelect.cjs +267 -0
  65. package/dist/v1/libs/TinyHtml/TinyHtmlSelect.d.mts +146 -0
  66. package/dist/v1/libs/TinyHtml/TinyHtmlSelect.mjs +251 -0
  67. package/dist/v1/libs/TinyHtml/TinyHtmlStyle.cjs +110 -0
  68. package/dist/v1/libs/TinyHtml/TinyHtmlStyle.d.mts +57 -0
  69. package/dist/v1/libs/TinyHtml/TinyHtmlStyle.mjs +108 -0
  70. package/dist/v1/libs/TinyHtml/TinyHtmlTemplate.cjs +209 -0
  71. package/dist/v1/libs/TinyHtml/TinyHtmlTemplate.d.mts +101 -0
  72. package/dist/v1/libs/TinyHtml/TinyHtmlTemplate.mjs +189 -0
  73. package/dist/v1/libs/TinyHtml/TinyHtmlTextarea.cjs +331 -0
  74. package/dist/v1/libs/TinyHtml/TinyHtmlTextarea.d.mts +139 -0
  75. package/dist/v1/libs/TinyHtml/TinyHtmlTextarea.mjs +299 -0
  76. package/dist/v1/libs/TinyHtml/index.cjs +202 -0
  77. package/dist/v1/libs/TinyHtml/index.d.mts +82 -0
  78. package/dist/v1/libs/TinyHtml/index.mjs +185 -0
  79. package/dist/v1/libs/TinyHtml/input/TinyHtmlColorInput.cjs +121 -0
  80. package/dist/v1/libs/TinyHtml/input/TinyHtmlColorInput.d.mts +67 -0
  81. package/dist/v1/libs/TinyHtml/input/TinyHtmlColorInput.mjs +99 -0
  82. package/dist/v1/libs/TinyHtml/input/TinyHtmlFileInput.cjs +109 -0
  83. package/dist/v1/libs/TinyHtml/input/TinyHtmlFileInput.d.mts +63 -0
  84. package/dist/v1/libs/TinyHtml/input/TinyHtmlFileInput.mjs +92 -0
  85. package/dist/v1/libs/TinyHtml/input/TinyHtmlHiddenInput.cjs +101 -0
  86. package/dist/v1/libs/TinyHtml/input/TinyHtmlHiddenInput.d.mts +54 -0
  87. package/dist/v1/libs/TinyHtml/input/TinyHtmlHiddenInput.mjs +82 -0
  88. package/dist/v1/libs/TinyHtml/input/TinyHtmlImageInput.cjs +181 -0
  89. package/dist/v1/libs/TinyHtml/input/TinyHtmlImageInput.d.mts +97 -0
  90. package/dist/v1/libs/TinyHtml/input/TinyHtmlImageInput.mjs +160 -0
  91. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlButtonInput.cjs +90 -0
  92. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlButtonInput.d.mts +54 -0
  93. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlButtonInput.mjs +69 -0
  94. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlResetInput.cjs +59 -0
  95. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlResetInput.d.mts +43 -0
  96. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlResetInput.mjs +45 -0
  97. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlSubmitInput.cjs +141 -0
  98. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlSubmitInput.d.mts +74 -0
  99. package/dist/v1/libs/TinyHtml/input/button/TinyHtmlSubmitInput.mjs +114 -0
  100. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlCheckboxInput.cjs +103 -0
  101. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlCheckboxInput.d.mts +61 -0
  102. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlCheckboxInput.mjs +85 -0
  103. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlRadioInput.cjs +115 -0
  104. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlRadioInput.d.mts +56 -0
  105. package/dist/v1/libs/TinyHtml/input/check/TinyHtmlRadioInput.mjs +94 -0
  106. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateInput.cjs +172 -0
  107. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateInput.d.mts +74 -0
  108. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateInput.mjs +140 -0
  109. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateTimeInput.cjs +145 -0
  110. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateTimeInput.d.mts +77 -0
  111. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateTimeInput.mjs +121 -0
  112. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlMonthInput.cjs +146 -0
  113. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlMonthInput.d.mts +74 -0
  114. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlMonthInput.mjs +120 -0
  115. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlTimeInput.cjs +151 -0
  116. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlTimeInput.d.mts +75 -0
  117. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlTimeInput.mjs +128 -0
  118. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlWeekInput.cjs +150 -0
  119. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlWeekInput.d.mts +74 -0
  120. package/dist/v1/libs/TinyHtml/input/date/TinyHtmlWeekInput.mjs +122 -0
  121. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlNumberInput.cjs +134 -0
  122. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlNumberInput.d.mts +74 -0
  123. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlNumberInput.mjs +110 -0
  124. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlRangeInput.cjs +133 -0
  125. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlRangeInput.d.mts +75 -0
  126. package/dist/v1/libs/TinyHtml/input/number/TinyHtmlRangeInput.mjs +111 -0
  127. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlEmailInput.cjs +179 -0
  128. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlEmailInput.d.mts +87 -0
  129. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlEmailInput.mjs +151 -0
  130. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlPasswordInput.cjs +126 -0
  131. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlPasswordInput.d.mts +70 -0
  132. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlPasswordInput.mjs +104 -0
  133. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlSearchInput.cjs +177 -0
  134. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlSearchInput.d.mts +91 -0
  135. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlSearchInput.mjs +153 -0
  136. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTelInput.cjs +170 -0
  137. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTelInput.d.mts +91 -0
  138. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTelInput.mjs +143 -0
  139. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTextInput.cjs +173 -0
  140. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTextInput.d.mts +89 -0
  141. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTextInput.mjs +150 -0
  142. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlUrlInput.cjs +166 -0
  143. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlUrlInput.d.mts +81 -0
  144. package/dist/v1/libs/TinyHtml/input/text/TinyHtmlUrlInput.mjs +142 -0
  145. package/dist/v1/libs/TinyHtml/media/TinyHtmlAudio.cjs +135 -0
  146. package/dist/v1/libs/TinyHtml/media/TinyHtmlAudio.d.mts +47 -0
  147. package/dist/v1/libs/TinyHtml/media/TinyHtmlAudio.mjs +122 -0
  148. package/dist/v1/libs/TinyHtml/media/TinyHtmlObject.cjs +100 -0
  149. package/dist/v1/libs/TinyHtml/media/TinyHtmlObject.d.mts +62 -0
  150. package/dist/v1/libs/TinyHtml/media/TinyHtmlObject.mjs +94 -0
  151. package/dist/v1/libs/TinyHtml/media/TinyHtmlSource.cjs +159 -0
  152. package/dist/v1/libs/TinyHtml/media/TinyHtmlSource.d.mts +77 -0
  153. package/dist/v1/libs/TinyHtml/media/TinyHtmlSource.mjs +136 -0
  154. package/dist/v1/libs/TinyHtml/media/TinyHtmlVideo.cjs +193 -0
  155. package/dist/v1/libs/TinyHtml/media/TinyHtmlVideo.d.mts +91 -0
  156. package/dist/v1/libs/TinyHtml/media/TinyHtmlVideo.mjs +167 -0
  157. package/dist/v1/libs/TinyHtml.cjs +260 -3
  158. package/dist/v1/libs/TinyHtml.d.mts +196 -5
  159. package/dist/v1/libs/TinyHtml.mjs +238 -3
  160. package/dist/{legacy/libs/userLevel.d.mts → v1/libs/TinyLevelUp.d.mts} +1 -1
  161. package/docs/v1/libs/TinyHtml.md +4 -4
  162. package/package.json +11 -24
  163. package/dist/_virtual/_commonjsHelpers.cjs +0 -7
  164. package/dist/_virtual/common.cjs +0 -5
  165. package/dist/_virtual/index.cjs +0 -9
  166. package/dist/_virtual/index2.cjs +0 -5
  167. package/dist/_virtual/trace.cjs +0 -5
  168. package/dist/legacy/crypto/decrypt.cjs +0 -59
  169. package/dist/legacy/crypto/decrypt.d.mts +0 -20
  170. package/dist/legacy/crypto/decrypt.mjs +0 -49
  171. package/dist/legacy/crypto/default.cjs +0 -23
  172. package/dist/legacy/crypto/default.d.mts +0 -36
  173. package/dist/legacy/crypto/default.mjs +0 -19
  174. package/dist/legacy/crypto/encrypt.cjs +0 -55
  175. package/dist/legacy/crypto/encrypt.d.mts +0 -21
  176. package/dist/legacy/crypto/encrypt.mjs +0 -47
  177. package/dist/legacy/crypto/index.cjs +0 -11
  178. package/dist/legacy/crypto/index.d.mts +0 -5
  179. package/dist/legacy/crypto/index.mjs +0 -6
  180. package/dist/legacy/firebase/cookieSession.cjs +0 -123
  181. package/dist/legacy/firebase/cookieSession.d.mts +0 -57
  182. package/dist/legacy/firebase/cookieSession.mjs +0 -115
  183. package/dist/legacy/firebase/database/index.cjs +0 -14
  184. package/dist/legacy/firebase/database/index.d.mts +0 -8
  185. package/dist/legacy/firebase/database/index.mjs +0 -8
  186. package/dist/legacy/firebase/database/presence.cjs +0 -137
  187. package/dist/legacy/firebase/database/presence.d.mts +0 -13
  188. package/dist/legacy/firebase/database/presence.mjs +0 -115
  189. package/dist/legacy/firebase/database/saveAsync.cjs +0 -149
  190. package/dist/legacy/firebase/database/saveAsync.d.mts +0 -55
  191. package/dist/legacy/firebase/database/saveAsync.mjs +0 -148
  192. package/dist/legacy/firebase/databaseEscape.cjs +0 -45
  193. package/dist/legacy/firebase/databaseEscape.d.mts +0 -12
  194. package/dist/legacy/firebase/databaseEscape.mjs +0 -38
  195. package/dist/legacy/firebase/databaseLogger.cjs +0 -261
  196. package/dist/legacy/firebase/databaseLogger.d.mts +0 -8
  197. package/dist/legacy/firebase/databaseLogger.mjs +0 -235
  198. package/dist/legacy/firebase/discord/api/addGuildMember.cjs +0 -74
  199. package/dist/legacy/firebase/discord/api/addGuildMember.d.mts +0 -39
  200. package/dist/legacy/firebase/discord/api/addGuildMember.mjs +0 -65
  201. package/dist/legacy/firebase/discord/api/getGuildWidget.cjs +0 -50
  202. package/dist/legacy/firebase/discord/api/getGuildWidget.d.mts +0 -18
  203. package/dist/legacy/firebase/discord/api/getGuildWidget.mjs +0 -44
  204. package/dist/legacy/firebase/discord/api/getToken.cjs +0 -70
  205. package/dist/legacy/firebase/discord/api/getToken.d.mts +0 -36
  206. package/dist/legacy/firebase/discord/api/getToken.mjs +0 -64
  207. package/dist/legacy/firebase/discord/api/getUser.cjs +0 -61
  208. package/dist/legacy/firebase/discord/api/getUser.d.mts +0 -28
  209. package/dist/legacy/firebase/discord/api/getUser.mjs +0 -55
  210. package/dist/legacy/firebase/discord/api/getUserConnections.cjs +0 -60
  211. package/dist/legacy/firebase/discord/api/getUserConnections.d.mts +0 -27
  212. package/dist/legacy/firebase/discord/api/getUserConnections.mjs +0 -54
  213. package/dist/legacy/firebase/discord/api/getUserGuilds.cjs +0 -59
  214. package/dist/legacy/firebase/discord/api/getUserGuilds.d.mts +0 -26
  215. package/dist/legacy/firebase/discord/api/getUserGuilds.mjs +0 -53
  216. package/dist/legacy/firebase/discord/api/index.cjs +0 -27
  217. package/dist/legacy/firebase/discord/api/index.d.mts +0 -20
  218. package/dist/legacy/firebase/discord/api/index.mjs +0 -21
  219. package/dist/legacy/firebase/discord/api/refreshToken.cjs +0 -80
  220. package/dist/legacy/firebase/discord/api/refreshToken.d.mts +0 -46
  221. package/dist/legacy/firebase/discord/api/refreshToken.mjs +0 -74
  222. package/dist/legacy/firebase/discord/api/revokeToken.cjs +0 -64
  223. package/dist/legacy/firebase/discord/api/revokeToken.d.mts +0 -30
  224. package/dist/legacy/firebase/discord/api/revokeToken.mjs +0 -59
  225. package/dist/legacy/firebase/discord/config.cjs +0 -23
  226. package/dist/legacy/firebase/discord/config.d.mts +0 -28
  227. package/dist/legacy/firebase/discord/config.mjs +0 -18
  228. package/dist/legacy/firebase/discord/firebase_redirect/index.cjs +0 -14
  229. package/dist/legacy/firebase/discord/firebase_redirect/index.d.mts +0 -8
  230. package/dist/legacy/firebase/discord/firebase_redirect/index.mjs +0 -8
  231. package/dist/legacy/firebase/discord/firebase_redirect/login.cjs +0 -112
  232. package/dist/legacy/firebase/discord/firebase_redirect/login.d.mts +0 -5
  233. package/dist/legacy/firebase/discord/firebase_redirect/login.mjs +0 -108
  234. package/dist/legacy/firebase/discord/firebase_redirect/logout.cjs +0 -102
  235. package/dist/legacy/firebase/discord/firebase_redirect/logout.d.mts +0 -5
  236. package/dist/legacy/firebase/discord/firebase_redirect/logout.mjs +0 -98
  237. package/dist/legacy/firebase/discord/get/authURLGenerator.cjs +0 -79
  238. package/dist/legacy/firebase/discord/get/authURLGenerator.d.mts +0 -24
  239. package/dist/legacy/firebase/discord/get/authURLGenerator.mjs +0 -68
  240. package/dist/legacy/firebase/discord/get/cookie-session.cjs +0 -35
  241. package/dist/legacy/firebase/discord/get/cookie-session.d.mts +0 -21
  242. package/dist/legacy/firebase/discord/get/cookie-session.mjs +0 -29
  243. package/dist/legacy/firebase/discord/get/credentials.cjs +0 -26
  244. package/dist/legacy/firebase/discord/get/credentials.d.mts +0 -20
  245. package/dist/legacy/firebase/discord/get/credentials.mjs +0 -21
  246. package/dist/legacy/firebase/discord/get/errorValidator.cjs +0 -63
  247. package/dist/legacy/firebase/discord/get/errorValidator.d.mts +0 -29
  248. package/dist/legacy/firebase/discord/get/errorValidator.mjs +0 -56
  249. package/dist/legacy/firebase/discord/get/index.cjs +0 -20
  250. package/dist/legacy/firebase/discord/get/index.d.mts +0 -14
  251. package/dist/legacy/firebase/discord/get/index.mjs +0 -14
  252. package/dist/legacy/firebase/discord/get/randomAvatar.cjs +0 -40
  253. package/dist/legacy/firebase/discord/get/randomAvatar.d.mts +0 -23
  254. package/dist/legacy/firebase/discord/get/randomAvatar.mjs +0 -31
  255. package/dist/legacy/firebase/discord/http/index.cjs +0 -18
  256. package/dist/legacy/firebase/discord/http/index.d.mts +0 -12
  257. package/dist/legacy/firebase/discord/http/index.mjs +0 -12
  258. package/dist/legacy/firebase/discord/http/login.cjs +0 -130
  259. package/dist/legacy/firebase/discord/http/login.d.mts +0 -22
  260. package/dist/legacy/firebase/discord/http/login.mjs +0 -124
  261. package/dist/legacy/firebase/discord/http/logout.cjs +0 -158
  262. package/dist/legacy/firebase/discord/http/logout.d.mts +0 -23
  263. package/dist/legacy/firebase/discord/http/logout.mjs +0 -144
  264. package/dist/legacy/firebase/discord/http/redirect.cjs +0 -191
  265. package/dist/legacy/firebase/discord/http/redirect.d.mts +0 -25
  266. package/dist/legacy/firebase/discord/http/redirect.mjs +0 -179
  267. package/dist/legacy/firebase/discord/http/refreshToken.cjs +0 -136
  268. package/dist/legacy/firebase/discord/http/refreshToken.d.mts +0 -25
  269. package/dist/legacy/firebase/discord/http/refreshToken.mjs +0 -122
  270. package/dist/legacy/firebase/discord/index.cjs +0 -22
  271. package/dist/legacy/firebase/discord/index.d.mts +0 -16
  272. package/dist/legacy/firebase/discord/index.mjs +0 -16
  273. package/dist/legacy/firebase/discord/template/cookie-session.cjs +0 -1433
  274. package/dist/legacy/firebase/discord/template/cookie-session.d.mts +0 -23
  275. package/dist/legacy/firebase/discord/template/cookie-session.mjs +0 -1160
  276. package/dist/legacy/firebase/domainRedirect.cjs +0 -37
  277. package/dist/legacy/firebase/domainRedirect.d.mts +0 -13
  278. package/dist/legacy/firebase/domainRedirect.mjs +0 -28
  279. package/dist/legacy/firebase/escape.cjs +0 -77
  280. package/dist/legacy/firebase/escape.d.mts +0 -18
  281. package/dist/legacy/firebase/escape.mjs +0 -59
  282. package/dist/legacy/firebase/getDBAsync.cjs +0 -35
  283. package/dist/legacy/firebase/getDBAsync.d.mts +0 -11
  284. package/dist/legacy/firebase/getDBAsync.mjs +0 -27
  285. package/dist/legacy/firebase/getDBData.cjs +0 -24
  286. package/dist/legacy/firebase/getDBData.d.mts +0 -2
  287. package/dist/legacy/firebase/getDBData.mjs +0 -18
  288. package/dist/legacy/firebase/getDBValue.cjs +0 -19
  289. package/dist/legacy/firebase/getDBValue.d.mts +0 -10
  290. package/dist/legacy/firebase/getDBValue.mjs +0 -15
  291. package/dist/legacy/firebase/index.cjs +0 -264
  292. package/dist/legacy/firebase/index.d.mts +0 -52
  293. package/dist/legacy/firebase/index.mjs +0 -235
  294. package/dist/legacy/firebase/isEmulator.cjs +0 -16
  295. package/dist/legacy/firebase/isEmulator.d.mts +0 -9
  296. package/dist/legacy/firebase/isEmulator.mjs +0 -11
  297. package/dist/legacy/firebase/logger.cjs +0 -140
  298. package/dist/legacy/firebase/logger.d.mts +0 -8
  299. package/dist/legacy/firebase/logger.mjs +0 -126
  300. package/dist/legacy/firebase/mySQL.cjs +0 -30
  301. package/dist/legacy/firebase/mySQL.d.mts +0 -11
  302. package/dist/legacy/firebase/mySQL.mjs +0 -23
  303. package/dist/legacy/firebase/mysqlConnector/create.cjs +0 -121
  304. package/dist/legacy/firebase/mysqlConnector/create.d.mts +0 -37
  305. package/dist/legacy/firebase/mysqlConnector/create.mjs +0 -110
  306. package/dist/legacy/firebase/mysqlConnector/index.cjs +0 -26
  307. package/dist/legacy/firebase/mysqlConnector/index.d.mts +0 -12
  308. package/dist/legacy/firebase/mysqlConnector/index.mjs +0 -17
  309. package/dist/legacy/firebase/mysqlConnector/nextPrev.cjs +0 -77
  310. package/dist/legacy/firebase/mysqlConnector/nextPrev.d.mts +0 -32
  311. package/dist/legacy/firebase/mysqlConnector/nextPrev.mjs +0 -64
  312. package/dist/legacy/firebase/mysqlConnector/pagination.cjs +0 -93
  313. package/dist/legacy/firebase/mysqlConnector/pagination.d.mts +0 -34
  314. package/dist/legacy/firebase/mysqlConnector/pagination.mjs +0 -88
  315. package/dist/legacy/firebase/mysqlConnector/sameUser.cjs +0 -31
  316. package/dist/legacy/firebase/mysqlConnector/sameUser.d.mts +0 -13
  317. package/dist/legacy/firebase/mysqlConnector/sameUser.mjs +0 -24
  318. package/dist/legacy/firebase/transactionDBAsync.cjs +0 -35
  319. package/dist/legacy/firebase/transactionDBAsync.d.mts +0 -12
  320. package/dist/legacy/firebase/transactionDBAsync.mjs +0 -28
  321. package/dist/legacy/get/countObj.cjs +0 -7
  322. package/dist/legacy/get/countObj.d.mts +0 -3
  323. package/dist/legacy/get/countObj.mjs +0 -2
  324. package/dist/legacy/get/decimalColor.cjs +0 -63
  325. package/dist/legacy/get/decimalColor.d.mts +0 -14
  326. package/dist/legacy/get/decimalColor.mjs +0 -56
  327. package/dist/legacy/get/objType.cjs +0 -7
  328. package/dist/legacy/get/objType.d.mts +0 -3
  329. package/dist/legacy/get/objType.mjs +0 -2
  330. package/dist/legacy/get/pagination.cjs +0 -109
  331. package/dist/legacy/get/pagination.d.mts +0 -44
  332. package/dist/legacy/get/pagination.mjs +0 -100
  333. package/dist/legacy/get/queryUrlByName.cjs +0 -32
  334. package/dist/legacy/get/queryUrlByName.d.mts +0 -22
  335. package/dist/legacy/get/queryUrlByName.mjs +0 -29
  336. package/dist/legacy/get/queryUrlJSON.cjs +0 -57
  337. package/dist/legacy/get/queryUrlJSON.d.mts +0 -25
  338. package/dist/legacy/get/queryUrlJSON.mjs +0 -59
  339. package/dist/legacy/get/super_string_filter.cjs +0 -109
  340. package/dist/legacy/get/super_string_filter.d.mts +0 -27
  341. package/dist/legacy/get/super_string_filter.mjs +0 -95
  342. package/dist/legacy/get/versionCheck.cjs +0 -50
  343. package/dist/legacy/get/versionCheck.d.mts +0 -29
  344. package/dist/legacy/get/versionCheck.mjs +0 -40
  345. package/dist/legacy/http/HTTP-1.0.cjs +0 -153
  346. package/dist/legacy/http/HTTP-1.0.d.mts +0 -9
  347. package/dist/legacy/http/HTTP-1.0.mjs +0 -138
  348. package/dist/legacy/http/auth.cjs +0 -71
  349. package/dist/legacy/http/auth.d.mts +0 -43
  350. package/dist/legacy/http/auth.mjs +0 -64
  351. package/dist/legacy/http/check_domain.cjs +0 -103
  352. package/dist/legacy/http/check_domain.d.mts +0 -13
  353. package/dist/legacy/http/check_domain.mjs +0 -98
  354. package/dist/legacy/http/csrfTokenAnalyze.cjs +0 -50
  355. package/dist/legacy/http/csrfTokenAnalyze.d.mts +0 -23
  356. package/dist/legacy/http/csrfTokenAnalyze.mjs +0 -45
  357. package/dist/legacy/http/domainValidator.cjs +0 -106
  358. package/dist/legacy/http/domainValidator.d.mts +0 -41
  359. package/dist/legacy/http/domainValidator.mjs +0 -89
  360. package/dist/legacy/http/errorsCallback.cjs +0 -64
  361. package/dist/legacy/http/errorsCallback.d.mts +0 -41
  362. package/dist/legacy/http/errorsCallback.mjs +0 -58
  363. package/dist/legacy/http/fetch/json.cjs +0 -50
  364. package/dist/legacy/http/fetch/json.d.mts +0 -24
  365. package/dist/legacy/http/fetch/json.mjs +0 -43
  366. package/dist/legacy/http/fetch/text.cjs +0 -49
  367. package/dist/legacy/http/fetch/text.d.mts +0 -23
  368. package/dist/legacy/http/fetch/text.mjs +0 -42
  369. package/dist/legacy/http/fileCache.cjs +0 -80
  370. package/dist/legacy/http/fileCache.d.mts +0 -37
  371. package/dist/legacy/http/fileCache.mjs +0 -71
  372. package/dist/legacy/http/getDomainURL.cjs +0 -60
  373. package/dist/legacy/http/getDomainURL.d.mts +0 -20
  374. package/dist/legacy/http/getDomainURL.mjs +0 -55
  375. package/dist/legacy/http/userIP.cjs +0 -65
  376. package/dist/legacy/http/userIP.d.mts +0 -27
  377. package/dist/legacy/http/userIP.mjs +0 -53
  378. package/dist/legacy/index.cjs +0 -125
  379. package/dist/legacy/index.d.mts +0 -89
  380. package/dist/legacy/index.mjs +0 -93
  381. package/dist/legacy/libs/arraySortPositions.cjs +0 -30
  382. package/dist/legacy/libs/arraySortPositions.d.mts +0 -17
  383. package/dist/legacy/libs/arraySortPositions.mjs +0 -27
  384. package/dist/legacy/libs/capitalize.cjs +0 -22
  385. package/dist/legacy/libs/capitalize.d.mts +0 -15
  386. package/dist/legacy/libs/capitalize.mjs +0 -18
  387. package/dist/legacy/libs/convertBytes.cjs +0 -66
  388. package/dist/legacy/libs/convertBytes.d.mts +0 -18
  389. package/dist/legacy/libs/convertBytes.mjs +0 -57
  390. package/dist/legacy/libs/custom_module_loader.cjs +0 -91
  391. package/dist/legacy/libs/custom_module_loader.d.mts +0 -6
  392. package/dist/legacy/libs/custom_module_loader.mjs +0 -87
  393. package/dist/legacy/libs/dice.cjs +0 -37
  394. package/dist/legacy/libs/dice.d.mts +0 -6
  395. package/dist/legacy/libs/dice.mjs +0 -33
  396. package/dist/legacy/libs/markdown.cjs +0 -97
  397. package/dist/legacy/libs/markdown.d.mts +0 -12
  398. package/dist/legacy/libs/markdown.mjs +0 -90
  399. package/dist/legacy/libs/percentage.cjs +0 -23
  400. package/dist/legacy/libs/percentage.d.mts +0 -5
  401. package/dist/legacy/libs/percentage.mjs +0 -20
  402. package/dist/legacy/libs/regex/getLetter.cjs +0 -24
  403. package/dist/legacy/libs/regex/getLetter.d.mts +0 -15
  404. package/dist/legacy/libs/regex/getLetter.mjs +0 -21
  405. package/dist/legacy/libs/replaceAsync.cjs +0 -35
  406. package/dist/legacy/libs/replaceAsync.d.mts +0 -16
  407. package/dist/legacy/libs/replaceAsync.mjs +0 -28
  408. package/dist/legacy/libs/rule3.cjs +0 -59
  409. package/dist/legacy/libs/rule3.d.mts +0 -6
  410. package/dist/legacy/libs/rule3.mjs +0 -55
  411. package/dist/legacy/momentjs/getAge.cjs +0 -29
  412. package/dist/legacy/momentjs/getAge.d.mts +0 -11
  413. package/dist/legacy/momentjs/getAge.mjs +0 -23
  414. package/dist/legacy/momentjs/index.cjs +0 -9
  415. package/dist/legacy/momentjs/index.d.mts +0 -4
  416. package/dist/legacy/momentjs/index.mjs +0 -3
  417. package/dist/legacy/momentjs/timeDuration.cjs +0 -31
  418. package/dist/legacy/momentjs/timeDuration.d.mts +0 -12
  419. package/dist/legacy/momentjs/timeDuration.mjs +0 -25
  420. package/dist/legacy/socket.io/antiFlood/index.cjs +0 -9
  421. package/dist/legacy/socket.io/antiFlood/index.d.mts +0 -4
  422. package/dist/legacy/socket.io/antiFlood/index.mjs +0 -3
  423. package/dist/legacy/socket.io/antiFlood/install.cjs +0 -34
  424. package/dist/legacy/socket.io/antiFlood/install.d.mts +0 -16
  425. package/dist/legacy/socket.io/antiFlood/install.mjs +0 -29
  426. package/dist/legacy/socket.io/antiFlood/verify.cjs +0 -95
  427. package/dist/legacy/socket.io/antiFlood/verify.d.mts +0 -20
  428. package/dist/legacy/socket.io/antiFlood/verify.mjs +0 -79
  429. package/dist/legacy/socket.io/cookie-session.cjs +0 -27
  430. package/dist/legacy/socket.io/cookie-session.d.mts +0 -11
  431. package/dist/legacy/socket.io/cookie-session.mjs +0 -22
  432. package/dist/legacy/socket.io/discord.cjs +0 -62
  433. package/dist/legacy/socket.io/discord.d.mts +0 -12
  434. package/dist/legacy/socket.io/discord.mjs +0 -53
  435. package/dist/legacy/socket.io/index.cjs +0 -13
  436. package/dist/legacy/socket.io/index.d.mts +0 -10
  437. package/dist/legacy/socket.io/index.mjs +0 -9
  438. package/dist/node_modules/firebase-functions/lib/common/trace.cjs +0 -81
  439. package/dist/node_modules/firebase-functions/lib/logger/common.cjs +0 -57
  440. package/dist/node_modules/firebase-functions/lib/logger/index.cjs +0 -159
  441. /package/dist/{legacy/libs/userLevel.cjs → v1/libs/TinyLevelUp.cjs} +0 -0
  442. /package/dist/{legacy/libs/userLevel.mjs → v1/libs/TinyLevelUp.mjs} +0 -0
@@ -0,0 +1,108 @@
1
+ export default TinyHtmlIframe;
2
+ /**
3
+ * TinyHtmlIframe is a helper class for managing <iframe> elements.
4
+ * It supports all standard attributes with validation and type safety.
5
+ *
6
+ * @example
7
+ * const iframe = new TinyHtmlIframe({
8
+ * src: 'https://example.com',
9
+ * width: 600,
10
+ * height: 400,
11
+ * loading: 'lazy',
12
+ * sandbox: 'allow-scripts allow-same-origin',
13
+ * referrerpolicy: 'no-referrer',
14
+ * });
15
+ *
16
+ * @extends TinyHtmlTemplate<HTMLIFrameElement>
17
+ */
18
+ declare class TinyHtmlIframe extends TinyHtmlTemplate<HTMLIFrameElement> {
19
+ /**
20
+ * Creates a new TinyHtmlIframe instance with the specified configuration options.
21
+ *
22
+ * @param {Object} [config={}] - Configuration object for the iframe element.
23
+ * @param {string} [config.src] - The URL of the page to embed inside the iframe.
24
+ * @param {string} [config.srcdoc] - Inline HTML content to display inside the iframe (overrides `src` if provided).
25
+ * @param {string} [config.name] - A name for the browsing context (used as the target for links or forms).
26
+ * @param {string} [config.allow] - Permissions policy for the iframe (e.g., `"fullscreen; autoplay"`).
27
+ * @param {boolean} [config.allowFullScreen=false] - Whether the iframe is allowed to display content in fullscreen mode.
28
+ * @param {boolean} [config.browsingtopics] - Enables the Browsing Topics API.
29
+ * @param {boolean} [config.credentialless] - Enables credentialless mode for cross-origin iframes.
30
+ * @param {string} [config.csp] - Content Security Policy applied specifically to the iframe's content.
31
+ * @param {string} [config.sandbox] - A space-separated list of sandboxing flags that restrict iframe capabilities.
32
+ * @param {'no-referrer'|'no-referrer-when-downgrade'|'origin'|'origin-when-cross-origin'|'same-origin'|'strict-origin'|'strict-origin-when-cross-origin'|'unsafe-url'} [config.referrerpolicy] - Referrer policy to control the amount of referrer information sent.
33
+ * @param {number|string} [config.width] - Width of the iframe in pixels or as a CSS dimension string (e.g., `"100%"`).
34
+ * @param {number|string} [config.height] - Height of the iframe in pixels or as a CSS dimension string (e.g., `"500px"`).
35
+ * @param {string} [config.title] - Accessible title for the iframe content.
36
+ * @param {'lazy'|'eager'} [config.loading] - Loading strategy for the iframe. `"lazy"` defers loading until visible in the viewport.
37
+ * @param {string|string[]|Set<string>} [config.tags=[]] - Additional tags or identifiers for this instance.
38
+ * @param {string} [config.mainClass=''] - A main CSS class applied to the iframe element.
39
+ */
40
+ constructor({ src, srcdoc, name, allow, allowFullScreen, browsingtopics, credentialless, csp, sandbox, referrerpolicy, width, height, title, loading, tags, mainClass, }?: {
41
+ src?: string | undefined;
42
+ srcdoc?: string | undefined;
43
+ name?: string | undefined;
44
+ allow?: string | undefined;
45
+ allowFullScreen?: boolean | undefined;
46
+ browsingtopics?: boolean | undefined;
47
+ credentialless?: boolean | undefined;
48
+ csp?: string | undefined;
49
+ sandbox?: string | undefined;
50
+ referrerpolicy?: "origin" | "same-origin" | "no-referrer" | "no-referrer-when-downgrade" | "origin-when-cross-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined;
51
+ width?: string | number | undefined;
52
+ height?: string | number | undefined;
53
+ title?: string | undefined;
54
+ loading?: "eager" | "lazy" | undefined;
55
+ tags?: string | string[] | Set<string> | undefined;
56
+ mainClass?: string | undefined;
57
+ });
58
+ /** @param {string} src */
59
+ set src(src: string);
60
+ /** @returns {string|null} */
61
+ get src(): string | null;
62
+ /** @param {string} srcdoc */
63
+ set srcdoc(srcdoc: string);
64
+ /** @returns {string|null} */
65
+ get srcdoc(): string | null;
66
+ /** @param {string} name */
67
+ set name(name: string);
68
+ /** @returns {string|null} */
69
+ get name(): string | null;
70
+ /** @param {string} allow */
71
+ set allow(allow: string);
72
+ /** @returns {string|null} */
73
+ get allow(): string | null;
74
+ /** @param {boolean} allowFullScreen */
75
+ set allowFullScreen(allowFullScreen: boolean);
76
+ /** @returns {boolean} */
77
+ get allowFullScreen(): boolean;
78
+ /** @param {boolean} browsingtopics */
79
+ set browsingtopics(browsingtopics: boolean);
80
+ /** @returns {boolean} */
81
+ get browsingtopics(): boolean;
82
+ /** @param {boolean} credentialless */
83
+ set credentialless(credentialless: boolean);
84
+ /** @returns {boolean} */
85
+ get credentialless(): boolean;
86
+ /** @param {string} csp */
87
+ set csp(csp: string);
88
+ /** @returns {string|null} */
89
+ get csp(): string | null;
90
+ /** @param {string} sandbox */
91
+ set sandbox(sandbox: string);
92
+ /** @returns {string|null} */
93
+ get sandbox(): string | null;
94
+ /** @param {string} referrerpolicy */
95
+ set referrerpolicy(referrerpolicy: string);
96
+ /** @returns {string|null} */
97
+ get referrerpolicy(): string | null;
98
+ /** @param {string} title */
99
+ set title(title: string);
100
+ /** @returns {string|null} */
101
+ get title(): string | null;
102
+ /** @param {'lazy'|'eager'} loading */
103
+ set loading(loading: "lazy" | "eager");
104
+ /** @returns {string|null} */
105
+ get loading(): string | null;
106
+ }
107
+ import TinyHtmlTemplate from './TinyHtmlTemplate.mjs';
108
+ //# sourceMappingURL=TinyHtmlIframe.d.mts.map
@@ -0,0 +1,212 @@
1
+ import TinyHtmlTemplate from './TinyHtmlTemplate.mjs';
2
+ /**
3
+ * TinyHtmlIframe is a helper class for managing <iframe> elements.
4
+ * It supports all standard attributes with validation and type safety.
5
+ *
6
+ * @example
7
+ * const iframe = new TinyHtmlIframe({
8
+ * src: 'https://example.com',
9
+ * width: 600,
10
+ * height: 400,
11
+ * loading: 'lazy',
12
+ * sandbox: 'allow-scripts allow-same-origin',
13
+ * referrerpolicy: 'no-referrer',
14
+ * });
15
+ *
16
+ * @extends TinyHtmlTemplate<HTMLIFrameElement>
17
+ */
18
+ class TinyHtmlIframe extends TinyHtmlTemplate {
19
+ /**
20
+ * Creates a new TinyHtmlIframe instance with the specified configuration options.
21
+ *
22
+ * @param {Object} [config={}] - Configuration object for the iframe element.
23
+ * @param {string} [config.src] - The URL of the page to embed inside the iframe.
24
+ * @param {string} [config.srcdoc] - Inline HTML content to display inside the iframe (overrides `src` if provided).
25
+ * @param {string} [config.name] - A name for the browsing context (used as the target for links or forms).
26
+ * @param {string} [config.allow] - Permissions policy for the iframe (e.g., `"fullscreen; autoplay"`).
27
+ * @param {boolean} [config.allowFullScreen=false] - Whether the iframe is allowed to display content in fullscreen mode.
28
+ * @param {boolean} [config.browsingtopics] - Enables the Browsing Topics API.
29
+ * @param {boolean} [config.credentialless] - Enables credentialless mode for cross-origin iframes.
30
+ * @param {string} [config.csp] - Content Security Policy applied specifically to the iframe's content.
31
+ * @param {string} [config.sandbox] - A space-separated list of sandboxing flags that restrict iframe capabilities.
32
+ * @param {'no-referrer'|'no-referrer-when-downgrade'|'origin'|'origin-when-cross-origin'|'same-origin'|'strict-origin'|'strict-origin-when-cross-origin'|'unsafe-url'} [config.referrerpolicy] - Referrer policy to control the amount of referrer information sent.
33
+ * @param {number|string} [config.width] - Width of the iframe in pixels or as a CSS dimension string (e.g., `"100%"`).
34
+ * @param {number|string} [config.height] - Height of the iframe in pixels or as a CSS dimension string (e.g., `"500px"`).
35
+ * @param {string} [config.title] - Accessible title for the iframe content.
36
+ * @param {'lazy'|'eager'} [config.loading] - Loading strategy for the iframe. `"lazy"` defers loading until visible in the viewport.
37
+ * @param {string|string[]|Set<string>} [config.tags=[]] - Additional tags or identifiers for this instance.
38
+ * @param {string} [config.mainClass=''] - A main CSS class applied to the iframe element.
39
+ */
40
+ constructor({ src, srcdoc, name, allow, allowFullScreen = false, browsingtopics, credentialless, csp, sandbox, referrerpolicy, width, height, title, loading, tags = [], mainClass = '', } = {}) {
41
+ super(document.createElement('iframe'), tags, mainClass);
42
+ if (src !== undefined)
43
+ this.src = src;
44
+ if (srcdoc !== undefined)
45
+ this.srcdoc = srcdoc;
46
+ if (name !== undefined)
47
+ this.name = name;
48
+ if (allow !== undefined)
49
+ this.allow = allow;
50
+ this.allowFullScreen = allowFullScreen;
51
+ if (browsingtopics !== undefined)
52
+ this.browsingtopics = browsingtopics;
53
+ if (credentialless !== undefined)
54
+ this.credentialless = credentialless;
55
+ if (csp !== undefined)
56
+ this.csp = csp;
57
+ if (sandbox !== undefined)
58
+ this.sandbox = sandbox;
59
+ if (referrerpolicy !== undefined)
60
+ this.referrerpolicy = referrerpolicy;
61
+ if (width !== undefined)
62
+ this.setWidth(width);
63
+ if (height !== undefined)
64
+ this.setHeight(height);
65
+ if (title !== undefined)
66
+ this.title = title;
67
+ if (loading !== undefined)
68
+ this.loading = loading;
69
+ }
70
+ // --- attributes ---
71
+ /** @param {string} src */
72
+ set src(src) {
73
+ if (typeof src !== 'string')
74
+ throw new TypeError('TinyIframe: "src" must be a string.');
75
+ this.setAttr('src', src);
76
+ }
77
+ /** @returns {string|null} */
78
+ get src() {
79
+ return this.attrString('src');
80
+ }
81
+ /** @param {string} srcdoc */
82
+ set srcdoc(srcdoc) {
83
+ if (typeof srcdoc !== 'string')
84
+ throw new TypeError('TinyIframe: "srcdoc" must be a string.');
85
+ this.setAttr('srcdoc', srcdoc);
86
+ }
87
+ /** @returns {string|null} */
88
+ get srcdoc() {
89
+ return this.attrString('srcdoc');
90
+ }
91
+ /** @param {string} name */
92
+ set name(name) {
93
+ if (typeof name !== 'string')
94
+ throw new TypeError('TinyIframe: "name" must be a string.');
95
+ this.setAttr('name', name);
96
+ }
97
+ /** @returns {string|null} */
98
+ get name() {
99
+ return this.attrString('name');
100
+ }
101
+ /** @param {string} allow */
102
+ set allow(allow) {
103
+ if (typeof allow !== 'string')
104
+ throw new TypeError('TinyIframe: "allow" must be a string.');
105
+ this.setAttr('allow', allow);
106
+ }
107
+ /** @returns {string|null} */
108
+ get allow() {
109
+ return this.attrString('allow');
110
+ }
111
+ /** @param {boolean} allowFullScreen */
112
+ set allowFullScreen(allowFullScreen) {
113
+ if (typeof allowFullScreen !== 'boolean')
114
+ throw new TypeError('TinyIframe: "allowFullScreen" must be a boolean.');
115
+ if (allowFullScreen)
116
+ this.addProp('allowfullscreen');
117
+ else
118
+ this.removeProp('allowfullscreen');
119
+ }
120
+ /** @returns {boolean} */
121
+ get allowFullScreen() {
122
+ return this.hasProp('allowfullscreen');
123
+ }
124
+ /** @param {boolean} browsingtopics */
125
+ set browsingtopics(browsingtopics) {
126
+ if (typeof browsingtopics !== 'boolean')
127
+ throw new TypeError('TinyIframe: "browsingtopics" must be a boolean.');
128
+ if (browsingtopics)
129
+ this.addProp('browsingtopics');
130
+ else
131
+ this.removeProp('browsingtopics');
132
+ }
133
+ /** @returns {boolean} */
134
+ get browsingtopics() {
135
+ return this.hasProp('browsingtopics');
136
+ }
137
+ /** @param {boolean} credentialless */
138
+ set credentialless(credentialless) {
139
+ if (typeof credentialless !== 'boolean')
140
+ throw new TypeError('TinyIframe: "credentialless" must be a boolean.');
141
+ if (credentialless)
142
+ this.addProp('credentialless');
143
+ else
144
+ this.removeProp('credentialless');
145
+ }
146
+ /** @returns {boolean} */
147
+ get credentialless() {
148
+ return this.hasProp('credentialless');
149
+ }
150
+ /** @param {string} csp */
151
+ set csp(csp) {
152
+ if (typeof csp !== 'string')
153
+ throw new TypeError('TinyIframe: "csp" must be a string.');
154
+ this.setAttr('csp', csp);
155
+ }
156
+ /** @returns {string|null} */
157
+ get csp() {
158
+ return this.attrString('csp');
159
+ }
160
+ /** @param {string} sandbox */
161
+ set sandbox(sandbox) {
162
+ if (typeof sandbox !== 'string')
163
+ throw new TypeError('TinyIframe: "sandbox" must be a string (space-separated tokens).');
164
+ this.setAttr('sandbox', sandbox);
165
+ }
166
+ /** @returns {string|null} */
167
+ get sandbox() {
168
+ return this.attrString('sandbox');
169
+ }
170
+ /** @param {string} referrerpolicy */
171
+ set referrerpolicy(referrerpolicy) {
172
+ const valid = [
173
+ 'no-referrer',
174
+ 'no-referrer-when-downgrade',
175
+ 'origin',
176
+ 'origin-when-cross-origin',
177
+ 'same-origin',
178
+ 'strict-origin',
179
+ 'strict-origin-when-cross-origin',
180
+ 'unsafe-url',
181
+ ];
182
+ if (!valid.includes(referrerpolicy))
183
+ throw new TypeError(`TinyIframe: "referrerpolicy" must be one of: ${valid.join(', ')}.`);
184
+ this.setAttr('referrerpolicy', referrerpolicy);
185
+ }
186
+ /** @returns {string|null} */
187
+ get referrerpolicy() {
188
+ return this.attrString('referrerpolicy');
189
+ }
190
+ /** @param {string} title */
191
+ set title(title) {
192
+ if (typeof title !== 'string')
193
+ throw new TypeError('TinyIframe: "title" must be a string.');
194
+ this.setAttr('title', title);
195
+ }
196
+ /** @returns {string|null} */
197
+ get title() {
198
+ return this.attrString('title');
199
+ }
200
+ /** @param {'lazy'|'eager'} loading */
201
+ set loading(loading) {
202
+ const valid = ['lazy', 'eager'];
203
+ if (!valid.includes(loading))
204
+ throw new TypeError(`TinyIframe: "loading" must be one of: ${valid.join(', ')}.`);
205
+ this.setAttr('loading', loading);
206
+ }
207
+ /** @returns {string|null} */
208
+ get loading() {
209
+ return this.attrString('loading');
210
+ }
211
+ }
212
+ export default TinyHtmlIframe;
@@ -0,0 +1,286 @@
1
+ 'use strict';
2
+
3
+ var TinyHtmlTemplate = require('./TinyHtmlTemplate.cjs');
4
+
5
+ /**
6
+ * {boolean} [config.fetchMode=TinyHtmlImage.#defaultFetchMode] - Whether to enable or disable fetch mode. Must be a boolean.
7
+ */
8
+
9
+ /**
10
+ * TinyImage is a helper class for managing <img> elements.
11
+ * It supports modern attributes like srcset, sizes, decoding, fetchpriority,
12
+ * as well as width, height, alt, crossorigin, loading, and more.
13
+ *
14
+ * @example
15
+ * const img = new TinyHtmlImage({
16
+ * src: '/logo.png',
17
+ * alt: 'Logo',
18
+ * width: 200,
19
+ * height: 100,
20
+ * loading: 'lazy',
21
+ * decoding: 'async',
22
+ * });
23
+ *
24
+ * @extends TinyHtmlTemplate<HTMLImageElement>
25
+ */
26
+ class TinyHtmlImage extends TinyHtmlTemplate {
27
+ /** @type {boolean} */
28
+ // static #defaultFetchMode = false;
29
+
30
+ /** @returns {boolean} */
31
+ // static get defaultFetchMode() {
32
+ // return TinyHtmlImage.#defaultFetchMode;
33
+ // }
34
+
35
+ /** @param {boolean} value */
36
+ // static set defaultFetchMode(value) {
37
+ // if (typeof value !== 'boolean')
38
+ // throw new TypeError('Expected a boolean value for defaultFetchMode');
39
+ // TinyHtmlImage.#defaultFetchMode = value;
40
+ // }
41
+
42
+ /** @type {boolean} */
43
+ // #fetchMode;
44
+
45
+ /** @returns {boolean} */
46
+ // get fetchMode() {
47
+ // return this.#fetchMode;
48
+ // }
49
+
50
+ /**
51
+ * Creates a new TinyHtmlImage instance wrapping an <img> element.
52
+ * This class simplifies working with images by providing a structured API
53
+ * for common attributes and configuration options.
54
+ *
55
+ * @param {Object} config - Image configuration object.
56
+ * @param {string} config.src - Image source URL (**required**).
57
+ * @param {string} [config.alt=""] - Alternate text for the image. Defaults to an empty string.
58
+ * @param {number} [config.width] - Width of the image in pixels.
59
+ * @param {number} [config.height] - Height of the image in pixels.
60
+ * @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes to apply.
61
+ * @param {string} [config.mainClass=""] - Main CSS class applied to the element.
62
+ * @param {string|string[]|boolean} [config.attributionsrc] - Attribution source; may be a string, array of strings, or `true/false`.
63
+ * @param {"anonymous"|"use-credentials"} [config.crossorigin] - Cross-origin policy for loading the image.
64
+ * @param {"sync"|"async"|"auto"} [config.decoding] - Decoding mode for the image.
65
+ * @param {string} [config.elementtiming] - Name used for performance timing attribution.
66
+ * @param {"high"|"low"|"auto"} [config.fetchpriority] - Fetch priority for the image resource.
67
+ * @param {boolean} [config.ismap=false] - Whether the image is part of a server-side image map.
68
+ * @param {"eager"|"lazy"} [config.loading] - Loading behavior hint (`"lazy"` defers off-screen images).
69
+ * @param {string} [config.referrerpolicy] - Referrer policy when fetching the image.
70
+ * @param {string} [config.sizes] - Sizes attribute, used with `srcset` for responsive images.
71
+ * @param {string} [config.srcset] - List of image sources for responsive loading.
72
+ * @param {string} [config.usemap] - Name of an associated image map to use.
73
+ */
74
+ constructor({
75
+ src,
76
+ alt,
77
+ width,
78
+ height,
79
+ tags = [],
80
+ mainClass = '',
81
+ // fetchMode = TinyHtmlImage.#defaultFetchMode,
82
+ attributionsrc,
83
+ crossorigin,
84
+ decoding,
85
+ elementtiming,
86
+ fetchpriority,
87
+ ismap = false,
88
+ loading,
89
+ referrerpolicy,
90
+ sizes,
91
+ srcset,
92
+ usemap,
93
+ }) {
94
+ super(document.createElement('img'), tags, mainClass);
95
+
96
+ // required
97
+ this.src = src;
98
+
99
+ if (alt !== undefined) this.alt = alt;
100
+ if (width !== undefined) this.setWidth(width);
101
+ if (height !== undefined) this.setHeight(height);
102
+ if (attributionsrc !== undefined) this.attributionsrc = attributionsrc;
103
+ if (crossorigin !== undefined) this.crossorigin = crossorigin;
104
+ if (decoding !== undefined) this.decoding = decoding;
105
+ if (elementtiming !== undefined) this.elementtiming = elementtiming;
106
+ if (fetchpriority !== undefined) this.fetchpriority = fetchpriority;
107
+ this.ismap = ismap;
108
+ if (loading !== undefined) this.loading = loading;
109
+ if (referrerpolicy !== undefined) this.referrerpolicy = referrerpolicy;
110
+ if (sizes !== undefined) this.sizes = sizes;
111
+ if (srcset !== undefined) this.srcset = srcset;
112
+ if (usemap !== undefined) this.usemap = usemap;
113
+
114
+ // if (typeof fetchMode !== 'boolean')
115
+ // throw new TypeError('TinyImage: "fetchMode" must be a boolean.');
116
+ // this.#fetchMode = fetchMode;
117
+ }
118
+
119
+ // --- Attributes ---
120
+
121
+ /** @param {string} value */
122
+ set src(value) {
123
+ if (typeof value !== 'string') throw new TypeError('TinyImage: "src" must be a string.');
124
+ this.setAttr('src', value);
125
+ }
126
+
127
+ /** @returns {string|null} */
128
+ get src() {
129
+ return this.attrString('src');
130
+ }
131
+
132
+ /** @param {string} value */
133
+ set alt(value) {
134
+ if (typeof value !== 'string') throw new TypeError('TinyImage: "alt" must be a string.');
135
+ this.setAttr('alt', value);
136
+ }
137
+
138
+ /** @returns {string|null} */
139
+ get alt() {
140
+ return this.attrString('alt');
141
+ }
142
+
143
+ /** @param {string|string[]|boolean} value */
144
+ set attributionsrc(value) {
145
+ if (typeof value === 'boolean') {
146
+ if (value) this.addProp('attributionsrc');
147
+ else this.removeProp('attributionsrc');
148
+ return;
149
+ }
150
+ if (typeof value === 'string') {
151
+ this.setAttr('attributionsrc', value);
152
+ return;
153
+ }
154
+ if (Array.isArray(value)) {
155
+ this.setAttr('attributionsrc', value.join(','));
156
+ return;
157
+ }
158
+ throw new TypeError(
159
+ 'TinyImage: "attributionsrc" must be a boolean, string, or array of strings.',
160
+ );
161
+ }
162
+
163
+ /** @returns {string|null} */
164
+ get attributionsrc() {
165
+ return this.attrString('attributionsrc');
166
+ }
167
+
168
+ /** @param {'anonymous'|'use-credentials'} value */
169
+ set crossorigin(value) {
170
+ if (!['anonymous', 'use-credentials'].includes(value))
171
+ throw new TypeError('TinyImage: "crossorigin" must be "anonymous" or "use-credentials".');
172
+ this.setAttr('crossorigin', value);
173
+ }
174
+
175
+ /** @returns {string|null} */
176
+ get crossorigin() {
177
+ return this.attrString('crossorigin');
178
+ }
179
+
180
+ /** @param {'sync'|'async'|'auto'} value */
181
+ set decoding(value) {
182
+ if (!['sync', 'async', 'auto'].includes(value))
183
+ throw new TypeError('TinyImage: "decoding" must be "sync", "async" or "auto".');
184
+ this.setAttr('decoding', value);
185
+ }
186
+
187
+ /** @returns {string|null} */
188
+ get decoding() {
189
+ return this.attrString('decoding');
190
+ }
191
+
192
+ /** @param {string} value */
193
+ set elementtiming(value) {
194
+ if (typeof value !== 'string')
195
+ throw new TypeError('TinyImage: "elementtiming" must be a string.');
196
+ this.setAttr('elementtiming', value);
197
+ }
198
+
199
+ /** @returns {string|null} */
200
+ get elementtiming() {
201
+ return this.attrString('elementtiming');
202
+ }
203
+
204
+ /** @param {'high'|'low'|'auto'} value */
205
+ set fetchpriority(value) {
206
+ if (!['high', 'low', 'auto'].includes(value))
207
+ throw new TypeError('TinyImage: "fetchpriority" must be "high", "low" or "auto".');
208
+ this.setAttr('fetchpriority', value);
209
+ }
210
+
211
+ /** @returns {string|null} */
212
+ get fetchpriority() {
213
+ return this.attrString('fetchpriority');
214
+ }
215
+
216
+ /** @param {boolean} value */
217
+ set ismap(value) {
218
+ if (typeof value !== 'boolean') throw new TypeError('TinyImage: "ismap" must be a boolean.');
219
+ if (value) this.addProp('ismap');
220
+ else this.removeProp('ismap');
221
+ }
222
+
223
+ /** @returns {boolean} */
224
+ get ismap() {
225
+ return this.hasProp('ismap');
226
+ }
227
+
228
+ /** @param {'eager'|'lazy'} value */
229
+ set loading(value) {
230
+ if (!['eager', 'lazy'].includes(value))
231
+ throw new TypeError('TinyImage: "loading" must be "eager" or "lazy".');
232
+ this.setAttr('loading', value);
233
+ }
234
+
235
+ /** @returns {string|null} */
236
+ get loading() {
237
+ return this.attrString('loading');
238
+ }
239
+
240
+ /** @param {string} value */
241
+ set referrerpolicy(value) {
242
+ if (typeof value !== 'string')
243
+ throw new TypeError('TinyImage: "referrerpolicy" must be a string.');
244
+ this.setAttr('referrerpolicy', value);
245
+ }
246
+
247
+ /** @returns {string|null} */
248
+ get referrerpolicy() {
249
+ return this.attrString('referrerpolicy');
250
+ }
251
+
252
+ /** @param {string} value */
253
+ set sizes(value) {
254
+ if (typeof value !== 'string') throw new TypeError('TinyImage: "sizes" must be a string.');
255
+ this.setAttr('sizes', value);
256
+ }
257
+
258
+ /** @returns {string|null} */
259
+ get sizes() {
260
+ return this.attrString('sizes');
261
+ }
262
+
263
+ /** @param {string} value */
264
+ set srcset(value) {
265
+ if (typeof value !== 'string') throw new TypeError('TinyImage: "srcset" must be a string.');
266
+ this.setAttr('srcset', value);
267
+ }
268
+
269
+ /** @returns {string|null} */
270
+ get srcset() {
271
+ return this.attrString('srcset');
272
+ }
273
+
274
+ /** @param {string} value */
275
+ set usemap(value) {
276
+ if (typeof value !== 'string') throw new TypeError('TinyImage: "usemap" must be a string.');
277
+ this.setAttr('usemap', value);
278
+ }
279
+
280
+ /** @returns {string|null} */
281
+ get usemap() {
282
+ return this.attrString('usemap');
283
+ }
284
+ }
285
+
286
+ module.exports = TinyHtmlImage;