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,193 @@
1
+ 'use strict';
2
+
3
+ var TinyHtmlMedia = require('../TinyHtmlMedia.cjs');
4
+
5
+ /**
6
+ * TinyVideo is a helper class for managing <video> elements.
7
+ * It allows configuring all standard attributes such as src, poster, controls,
8
+ * autoplay, loop, muted, playsinline, controlslist, crossorigin, preload,
9
+ * disablepictureinpicture, disableremoteplayback, width, height, and volume,
10
+ * with validation.
11
+ *
12
+ * @example
13
+ * const video = new TinyHtmlVideo({
14
+ * src: 'video.mp4',
15
+ * controls: true,
16
+ * autoplay: false,
17
+ * width: 640,
18
+ * height: 360
19
+ * });
20
+ *
21
+ * @extends TinyHtmlMedia<HTMLVideoElement>
22
+ */
23
+ class TinyHtmlVideo extends TinyHtmlMedia {
24
+ /**
25
+ * Creates a new TinyVideo instance.
26
+ * @param {Object} config
27
+ * @param {string} [config.src=''] - The video file URL.
28
+ * @param {string} [config.poster=''] - Image URL shown before playback starts.
29
+ * @param {boolean} [config.controls=false] - Whether to show default controls.
30
+ * @param {boolean} [config.autoplay=false] - Start playback automatically (muted may be required).
31
+ * @param {boolean} [config.loop=false] - Replay automatically when finished.
32
+ * @param {boolean} [config.muted=false] - Start playback muted.
33
+ * @param {boolean} [config.playsinline=false] - Play inline instead of fullscreen (mobile devices).
34
+ * @param {'nodownload'|'nofullscreen'|'noremoteplayback'|string} [config.controlslist] - Restrict controls visibility.
35
+ * @param {'anonymous'|'use-credentials'} [config.crossorigin] - CORS setting for the video request.
36
+ * @param {boolean} [config.disablepictureinpicture=false] - Disable Picture-in-Picture mode.
37
+ * @param {boolean} [config.disableremoteplayback=false] - Disable casting / remote playback.
38
+ * @param {'auto'|'metadata'|'none'} [config.preload] - Preload behavior suggestion.
39
+ * @param {number} [config.width] - CSS pixel width of the video display.
40
+ * @param {number} [config.height] - CSS pixel height of the video display.
41
+ * @param {number} [config.volume] - Initial volume (0.0–1.0).
42
+ * @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
43
+ * @param {string} [config.mainClass=""] - Main CSS class applied.
44
+ */
45
+ constructor({
46
+ src = '',
47
+ poster = '',
48
+ controls = false,
49
+ autoplay = false,
50
+ loop = false,
51
+ muted = false,
52
+ playsinline = false,
53
+ controlslist,
54
+ crossorigin,
55
+ disablepictureinpicture = false,
56
+ disableremoteplayback = false,
57
+ preload,
58
+ width,
59
+ height,
60
+ volume,
61
+ tags = [],
62
+ mainClass = '',
63
+ } = {}) {
64
+ super(document.createElement('video'), tags, mainClass);
65
+
66
+ if (src) this.src = src;
67
+ if (poster) this.poster = poster;
68
+ if (preload) this.preload = preload;
69
+
70
+ this.controls = controls;
71
+ this.autoplay = autoplay;
72
+ this.loop = loop;
73
+ this.muted = muted;
74
+ this.playsinline = playsinline;
75
+ this.disablepictureinpicture = disablepictureinpicture;
76
+ this.disableremoteplayback = disableremoteplayback;
77
+
78
+ if (controlslist) this.controlslist = controlslist;
79
+ if (crossorigin) this.crossorigin = crossorigin;
80
+
81
+ if (typeof volume === 'number') this.volume = volume;
82
+ if (width !== undefined) this.width = width;
83
+ if (height !== undefined) this.height = height;
84
+ }
85
+
86
+ // ------------------------
87
+ // Attribute getters/setters
88
+ // ------------------------
89
+
90
+ /** @param {string} src */
91
+ set src(src) {
92
+ if (typeof src !== 'string') throw new TypeError('TinyVideo: "src" must be a string.');
93
+ this.setAttr('src', src);
94
+ }
95
+ /** @returns {string|null} */
96
+ get src() {
97
+ return this.attrString('src');
98
+ }
99
+
100
+ /** @param {string} poster */
101
+ set poster(poster) {
102
+ if (typeof poster !== 'string') throw new TypeError('TinyVideo: "poster" must be a string.');
103
+ this.setAttr('poster', poster);
104
+ }
105
+ /** @returns {string|null} */
106
+ get poster() {
107
+ return this.attrString('poster');
108
+ }
109
+
110
+ /** @param {boolean} controls */
111
+ set controls(controls) {
112
+ if (typeof controls !== 'boolean') throw new TypeError('"controls" must be a boolean.');
113
+ controls ? this.addProp('controls') : this.removeProp('controls');
114
+ }
115
+ /** @returns {boolean} */
116
+ get controls() {
117
+ return this.hasProp('controls');
118
+ }
119
+
120
+ /** @param {boolean} playsinline */
121
+ set playsinline(playsinline) {
122
+ if (typeof playsinline !== 'boolean') throw new TypeError('"playsinline" must be a boolean.');
123
+ playsinline ? this.addProp('playsinline') : this.removeProp('playsinline');
124
+ }
125
+ /** @returns {boolean} */
126
+ get playsinline() {
127
+ return this.hasProp('playsinline');
128
+ }
129
+
130
+ /** @param {'nodownload'|'nofullscreen'|'noremoteplayback'|string} controlslist */
131
+ set controlslist(controlslist) {
132
+ if (typeof controlslist !== 'string')
133
+ throw new TypeError('TinyVideo: "controlslist" must be a string.');
134
+ this.setAttr('controlslist', controlslist);
135
+ }
136
+ /** @returns {string|null} */
137
+ get controlslist() {
138
+ return this.attrString('controlslist');
139
+ }
140
+
141
+ /** @param {'anonymous'|'use-credentials'} crossorigin */
142
+ set crossorigin(crossorigin) {
143
+ if (!['anonymous', 'use-credentials'].includes(crossorigin))
144
+ throw new TypeError('TinyVideo: "crossorigin" must be "anonymous" or "use-credentials".');
145
+ this.setAttr('crossorigin', crossorigin);
146
+ }
147
+ /** @returns {string|null} */
148
+ get crossorigin() {
149
+ return this.attrString('crossorigin');
150
+ }
151
+
152
+ /** @param {boolean} disable */
153
+ set disablepictureinpicture(disable) {
154
+ if (typeof disable !== 'boolean')
155
+ throw new TypeError('"disablepictureinpicture" must be a boolean.');
156
+ disable ? this.addProp('disablepictureinpicture') : this.removeProp('disablepictureinpicture');
157
+ }
158
+ /** @returns {boolean} */
159
+ get disablepictureinpicture() {
160
+ return this.hasProp('disablepictureinpicture');
161
+ }
162
+
163
+ /** @param {boolean} disable */
164
+ set disableremoteplayback(disable) {
165
+ if (typeof disable !== 'boolean')
166
+ throw new TypeError('"disableremoteplayback" must be a boolean.');
167
+ disable ? this.addProp('disableremoteplayback') : this.removeProp('disableremoteplayback');
168
+ }
169
+ /** @returns {boolean} */
170
+ get disableremoteplayback() {
171
+ return this.hasProp('disableremoteplayback');
172
+ }
173
+
174
+ // ------------------------
175
+ // Fullscreen controls
176
+ // ------------------------
177
+
178
+ /** @returns {Promise<void>|undefined} */
179
+ requestFullscreen() {
180
+ return this.el.requestFullscreen();
181
+ }
182
+
183
+ /** @returns {Promise<boolean>} */
184
+ async exitFullscreen() {
185
+ if (document.fullscreenElement === this.el) {
186
+ await document.exitFullscreen();
187
+ return true;
188
+ }
189
+ return false;
190
+ }
191
+ }
192
+
193
+ module.exports = TinyHtmlVideo;
@@ -0,0 +1,91 @@
1
+ export default TinyHtmlVideo;
2
+ /**
3
+ * TinyVideo is a helper class for managing <video> elements.
4
+ * It allows configuring all standard attributes such as src, poster, controls,
5
+ * autoplay, loop, muted, playsinline, controlslist, crossorigin, preload,
6
+ * disablepictureinpicture, disableremoteplayback, width, height, and volume,
7
+ * with validation.
8
+ *
9
+ * @example
10
+ * const video = new TinyHtmlVideo({
11
+ * src: 'video.mp4',
12
+ * controls: true,
13
+ * autoplay: false,
14
+ * width: 640,
15
+ * height: 360
16
+ * });
17
+ *
18
+ * @extends TinyHtmlMedia<HTMLVideoElement>
19
+ */
20
+ declare class TinyHtmlVideo extends TinyHtmlMedia<HTMLVideoElement> {
21
+ /**
22
+ * Creates a new TinyVideo instance.
23
+ * @param {Object} config
24
+ * @param {string} [config.src=''] - The video file URL.
25
+ * @param {string} [config.poster=''] - Image URL shown before playback starts.
26
+ * @param {boolean} [config.controls=false] - Whether to show default controls.
27
+ * @param {boolean} [config.autoplay=false] - Start playback automatically (muted may be required).
28
+ * @param {boolean} [config.loop=false] - Replay automatically when finished.
29
+ * @param {boolean} [config.muted=false] - Start playback muted.
30
+ * @param {boolean} [config.playsinline=false] - Play inline instead of fullscreen (mobile devices).
31
+ * @param {'nodownload'|'nofullscreen'|'noremoteplayback'|string} [config.controlslist] - Restrict controls visibility.
32
+ * @param {'anonymous'|'use-credentials'} [config.crossorigin] - CORS setting for the video request.
33
+ * @param {boolean} [config.disablepictureinpicture=false] - Disable Picture-in-Picture mode.
34
+ * @param {boolean} [config.disableremoteplayback=false] - Disable casting / remote playback.
35
+ * @param {'auto'|'metadata'|'none'} [config.preload] - Preload behavior suggestion.
36
+ * @param {number} [config.width] - CSS pixel width of the video display.
37
+ * @param {number} [config.height] - CSS pixel height of the video display.
38
+ * @param {number} [config.volume] - Initial volume (0.0–1.0).
39
+ * @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
40
+ * @param {string} [config.mainClass=""] - Main CSS class applied.
41
+ */
42
+ constructor({ src, poster, controls, autoplay, loop, muted, playsinline, controlslist, crossorigin, disablepictureinpicture, disableremoteplayback, preload, width, height, volume, tags, mainClass, }?: {
43
+ src?: string | undefined;
44
+ poster?: string | undefined;
45
+ controls?: boolean | undefined;
46
+ autoplay?: boolean | undefined;
47
+ loop?: boolean | undefined;
48
+ muted?: boolean | undefined;
49
+ playsinline?: boolean | undefined;
50
+ controlslist?: string | undefined;
51
+ crossorigin?: "anonymous" | "use-credentials" | undefined;
52
+ disablepictureinpicture?: boolean | undefined;
53
+ disableremoteplayback?: boolean | undefined;
54
+ preload?: "auto" | "none" | "metadata" | undefined;
55
+ width?: number | undefined;
56
+ height?: number | undefined;
57
+ volume?: number | undefined;
58
+ tags?: string | string[] | Set<string> | undefined;
59
+ mainClass?: string | undefined;
60
+ });
61
+ /** @param {string} poster */
62
+ set poster(poster: string);
63
+ /** @returns {string|null} */
64
+ get poster(): string | null;
65
+ /** @param {boolean} playsinline */
66
+ set playsinline(playsinline: boolean);
67
+ /** @returns {boolean} */
68
+ get playsinline(): boolean;
69
+ /** @param {boolean} disable */
70
+ set disablepictureinpicture(disable: boolean);
71
+ /** @returns {boolean} */
72
+ get disablepictureinpicture(): boolean;
73
+ /** @param {boolean} disable */
74
+ set disableremoteplayback(disable: boolean);
75
+ /** @returns {boolean} */
76
+ get disableremoteplayback(): boolean;
77
+ /** @param {'nodownload'|'nofullscreen'|'noremoteplayback'|string} controlslist */
78
+ set controlslist(controlslist: "nodownload" | "nofullscreen" | "noremoteplayback" | string);
79
+ /** @returns {string|null} */
80
+ get controlslist(): string | null;
81
+ /** @param {'anonymous'|'use-credentials'} crossorigin */
82
+ set crossorigin(crossorigin: "anonymous" | "use-credentials");
83
+ /** @returns {string|null} */
84
+ get crossorigin(): string | null;
85
+ /** @returns {Promise<void>|undefined} */
86
+ requestFullscreen(): Promise<void> | undefined;
87
+ /** @returns {Promise<boolean>} */
88
+ exitFullscreen(): Promise<boolean>;
89
+ }
90
+ import TinyHtmlMedia from '../TinyHtmlMedia.mjs';
91
+ //# sourceMappingURL=TinyHtmlVideo.d.mts.map
@@ -0,0 +1,167 @@
1
+ import TinyHtmlMedia from '../TinyHtmlMedia.mjs';
2
+ /**
3
+ * TinyVideo is a helper class for managing <video> elements.
4
+ * It allows configuring all standard attributes such as src, poster, controls,
5
+ * autoplay, loop, muted, playsinline, controlslist, crossorigin, preload,
6
+ * disablepictureinpicture, disableremoteplayback, width, height, and volume,
7
+ * with validation.
8
+ *
9
+ * @example
10
+ * const video = new TinyHtmlVideo({
11
+ * src: 'video.mp4',
12
+ * controls: true,
13
+ * autoplay: false,
14
+ * width: 640,
15
+ * height: 360
16
+ * });
17
+ *
18
+ * @extends TinyHtmlMedia<HTMLVideoElement>
19
+ */
20
+ class TinyHtmlVideo extends TinyHtmlMedia {
21
+ /**
22
+ * Creates a new TinyVideo instance.
23
+ * @param {Object} config
24
+ * @param {string} [config.src=''] - The video file URL.
25
+ * @param {string} [config.poster=''] - Image URL shown before playback starts.
26
+ * @param {boolean} [config.controls=false] - Whether to show default controls.
27
+ * @param {boolean} [config.autoplay=false] - Start playback automatically (muted may be required).
28
+ * @param {boolean} [config.loop=false] - Replay automatically when finished.
29
+ * @param {boolean} [config.muted=false] - Start playback muted.
30
+ * @param {boolean} [config.playsinline=false] - Play inline instead of fullscreen (mobile devices).
31
+ * @param {'nodownload'|'nofullscreen'|'noremoteplayback'|string} [config.controlslist] - Restrict controls visibility.
32
+ * @param {'anonymous'|'use-credentials'} [config.crossorigin] - CORS setting for the video request.
33
+ * @param {boolean} [config.disablepictureinpicture=false] - Disable Picture-in-Picture mode.
34
+ * @param {boolean} [config.disableremoteplayback=false] - Disable casting / remote playback.
35
+ * @param {'auto'|'metadata'|'none'} [config.preload] - Preload behavior suggestion.
36
+ * @param {number} [config.width] - CSS pixel width of the video display.
37
+ * @param {number} [config.height] - CSS pixel height of the video display.
38
+ * @param {number} [config.volume] - Initial volume (0.0–1.0).
39
+ * @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
40
+ * @param {string} [config.mainClass=""] - Main CSS class applied.
41
+ */
42
+ constructor({ src = '', poster = '', controls = false, autoplay = false, loop = false, muted = false, playsinline = false, controlslist, crossorigin, disablepictureinpicture = false, disableremoteplayback = false, preload, width, height, volume, tags = [], mainClass = '', } = {}) {
43
+ super(document.createElement('video'), tags, mainClass);
44
+ if (src)
45
+ this.src = src;
46
+ if (poster)
47
+ this.poster = poster;
48
+ if (preload)
49
+ this.preload = preload;
50
+ this.controls = controls;
51
+ this.autoplay = autoplay;
52
+ this.loop = loop;
53
+ this.muted = muted;
54
+ this.playsinline = playsinline;
55
+ this.disablepictureinpicture = disablepictureinpicture;
56
+ this.disableremoteplayback = disableremoteplayback;
57
+ if (controlslist)
58
+ this.controlslist = controlslist;
59
+ if (crossorigin)
60
+ this.crossorigin = crossorigin;
61
+ if (typeof volume === 'number')
62
+ this.volume = volume;
63
+ if (width !== undefined)
64
+ this.width = width;
65
+ if (height !== undefined)
66
+ this.height = height;
67
+ }
68
+ // ------------------------
69
+ // Attribute getters/setters
70
+ // ------------------------
71
+ /** @param {string} src */
72
+ set src(src) {
73
+ if (typeof src !== 'string')
74
+ throw new TypeError('TinyVideo: "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} poster */
82
+ set poster(poster) {
83
+ if (typeof poster !== 'string')
84
+ throw new TypeError('TinyVideo: "poster" must be a string.');
85
+ this.setAttr('poster', poster);
86
+ }
87
+ /** @returns {string|null} */
88
+ get poster() {
89
+ return this.attrString('poster');
90
+ }
91
+ /** @param {boolean} controls */
92
+ set controls(controls) {
93
+ if (typeof controls !== 'boolean')
94
+ throw new TypeError('"controls" must be a boolean.');
95
+ controls ? this.addProp('controls') : this.removeProp('controls');
96
+ }
97
+ /** @returns {boolean} */
98
+ get controls() {
99
+ return this.hasProp('controls');
100
+ }
101
+ /** @param {boolean} playsinline */
102
+ set playsinline(playsinline) {
103
+ if (typeof playsinline !== 'boolean')
104
+ throw new TypeError('"playsinline" must be a boolean.');
105
+ playsinline ? this.addProp('playsinline') : this.removeProp('playsinline');
106
+ }
107
+ /** @returns {boolean} */
108
+ get playsinline() {
109
+ return this.hasProp('playsinline');
110
+ }
111
+ /** @param {'nodownload'|'nofullscreen'|'noremoteplayback'|string} controlslist */
112
+ set controlslist(controlslist) {
113
+ if (typeof controlslist !== 'string')
114
+ throw new TypeError('TinyVideo: "controlslist" must be a string.');
115
+ this.setAttr('controlslist', controlslist);
116
+ }
117
+ /** @returns {string|null} */
118
+ get controlslist() {
119
+ return this.attrString('controlslist');
120
+ }
121
+ /** @param {'anonymous'|'use-credentials'} crossorigin */
122
+ set crossorigin(crossorigin) {
123
+ if (!['anonymous', 'use-credentials'].includes(crossorigin))
124
+ throw new TypeError('TinyVideo: "crossorigin" must be "anonymous" or "use-credentials".');
125
+ this.setAttr('crossorigin', crossorigin);
126
+ }
127
+ /** @returns {string|null} */
128
+ get crossorigin() {
129
+ return this.attrString('crossorigin');
130
+ }
131
+ /** @param {boolean} disable */
132
+ set disablepictureinpicture(disable) {
133
+ if (typeof disable !== 'boolean')
134
+ throw new TypeError('"disablepictureinpicture" must be a boolean.');
135
+ disable ? this.addProp('disablepictureinpicture') : this.removeProp('disablepictureinpicture');
136
+ }
137
+ /** @returns {boolean} */
138
+ get disablepictureinpicture() {
139
+ return this.hasProp('disablepictureinpicture');
140
+ }
141
+ /** @param {boolean} disable */
142
+ set disableremoteplayback(disable) {
143
+ if (typeof disable !== 'boolean')
144
+ throw new TypeError('"disableremoteplayback" must be a boolean.');
145
+ disable ? this.addProp('disableremoteplayback') : this.removeProp('disableremoteplayback');
146
+ }
147
+ /** @returns {boolean} */
148
+ get disableremoteplayback() {
149
+ return this.hasProp('disableremoteplayback');
150
+ }
151
+ // ------------------------
152
+ // Fullscreen controls
153
+ // ------------------------
154
+ /** @returns {Promise<void>|undefined} */
155
+ requestFullscreen() {
156
+ return this.el.requestFullscreen();
157
+ }
158
+ /** @returns {Promise<boolean>} */
159
+ async exitFullscreen() {
160
+ if (document.fullscreenElement === this.el) {
161
+ await document.exitFullscreen();
162
+ return true;
163
+ }
164
+ return false;
165
+ }
166
+ }
167
+ export default TinyHtmlVideo;