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,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;