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.
- package/.github/workflows/node.js.yml +2 -2
- package/README.md +6 -2
- package/changelog/1/24/1.md +12 -0
- package/dist/v1/TinyBasicsEs.min.js +1 -1
- package/dist/v1/TinyDragger.min.js +1 -1
- package/dist/v1/TinyEssentials.min.js +1 -1
- package/dist/v1/TinyHtml.min.js +1 -1
- package/dist/v1/TinySmartScroller.min.js +1 -1
- package/dist/v1/TinyUploadClicker.min.js +1 -1
- package/dist/v1/basics/array.cjs +28 -0
- package/dist/v1/basics/array.d.mts +16 -0
- package/dist/v1/basics/array.mjs +27 -0
- package/dist/v1/basics/index.cjs +2 -4
- package/dist/v1/basics/index.d.mts +2 -2
- package/dist/v1/basics/index.mjs +2 -4
- package/dist/v1/basics/text.cjs +33 -0
- package/dist/v1/basics/text.d.mts +15 -0
- package/dist/v1/basics/text.mjs +28 -0
- package/dist/v1/build/TinyLevelUp.cjs +2 -2
- package/dist/v1/build/TinyLevelUp.d.mts +1 -1
- package/dist/v1/build/TinyLevelUp.mjs +1 -1
- package/dist/v1/index.cjs +4 -6
- package/dist/v1/index.d.mts +3 -3
- package/dist/v1/index.mjs +7 -6
- package/dist/v1/libs/TinyHtml/TinyHtmlAnchor.cjs +220 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlAnchor.d.mts +98 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlAnchor.mjs +207 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlButton.cjs +317 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlButton.d.mts +150 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlButton.mjs +290 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlCanvas.cjs +48 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlCanvas.d.mts +36 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlCanvas.mjs +44 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlDatalist.cjs +102 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlDatalist.d.mts +65 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlDatalist.mjs +91 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlEmbed.cjs +80 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlEmbed.d.mts +57 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlEmbed.mjs +75 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlForm.cjs +244 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlForm.d.mts +129 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlForm.mjs +228 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlIcon.cjs +38 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlIcon.d.mts +24 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlIcon.mjs +33 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlIframe.cjs +222 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlIframe.d.mts +108 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlIframe.mjs +212 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlImage.cjs +286 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlImage.d.mts +125 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlImage.mjs +250 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlInput.cjs +154 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlInput.d.mts +76 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlInput.mjs +134 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlLink.cjs +282 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlLink.d.mts +128 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlLink.mjs +264 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlMedia.cjs +358 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlMedia.d.mts +168 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlMedia.mjs +308 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlScript.cjs +226 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlScript.d.mts +99 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlScript.mjs +209 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlSelect.cjs +267 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlSelect.d.mts +146 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlSelect.mjs +251 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlStyle.cjs +110 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlStyle.d.mts +57 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlStyle.mjs +108 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlTemplate.cjs +209 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlTemplate.d.mts +101 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlTemplate.mjs +189 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlTextarea.cjs +331 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlTextarea.d.mts +139 -0
- package/dist/v1/libs/TinyHtml/TinyHtmlTextarea.mjs +299 -0
- package/dist/v1/libs/TinyHtml/index.cjs +202 -0
- package/dist/v1/libs/TinyHtml/index.d.mts +82 -0
- package/dist/v1/libs/TinyHtml/index.mjs +185 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlColorInput.cjs +121 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlColorInput.d.mts +67 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlColorInput.mjs +99 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlFileInput.cjs +109 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlFileInput.d.mts +63 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlFileInput.mjs +92 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlHiddenInput.cjs +101 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlHiddenInput.d.mts +54 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlHiddenInput.mjs +82 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlImageInput.cjs +181 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlImageInput.d.mts +97 -0
- package/dist/v1/libs/TinyHtml/input/TinyHtmlImageInput.mjs +160 -0
- package/dist/v1/libs/TinyHtml/input/button/TinyHtmlButtonInput.cjs +90 -0
- package/dist/v1/libs/TinyHtml/input/button/TinyHtmlButtonInput.d.mts +54 -0
- package/dist/v1/libs/TinyHtml/input/button/TinyHtmlButtonInput.mjs +69 -0
- package/dist/v1/libs/TinyHtml/input/button/TinyHtmlResetInput.cjs +59 -0
- package/dist/v1/libs/TinyHtml/input/button/TinyHtmlResetInput.d.mts +43 -0
- package/dist/v1/libs/TinyHtml/input/button/TinyHtmlResetInput.mjs +45 -0
- package/dist/v1/libs/TinyHtml/input/button/TinyHtmlSubmitInput.cjs +141 -0
- package/dist/v1/libs/TinyHtml/input/button/TinyHtmlSubmitInput.d.mts +74 -0
- package/dist/v1/libs/TinyHtml/input/button/TinyHtmlSubmitInput.mjs +114 -0
- package/dist/v1/libs/TinyHtml/input/check/TinyHtmlCheckboxInput.cjs +103 -0
- package/dist/v1/libs/TinyHtml/input/check/TinyHtmlCheckboxInput.d.mts +61 -0
- package/dist/v1/libs/TinyHtml/input/check/TinyHtmlCheckboxInput.mjs +85 -0
- package/dist/v1/libs/TinyHtml/input/check/TinyHtmlRadioInput.cjs +115 -0
- package/dist/v1/libs/TinyHtml/input/check/TinyHtmlRadioInput.d.mts +56 -0
- package/dist/v1/libs/TinyHtml/input/check/TinyHtmlRadioInput.mjs +94 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateInput.cjs +172 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateInput.d.mts +74 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateInput.mjs +140 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateTimeInput.cjs +145 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateTimeInput.d.mts +77 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlDateTimeInput.mjs +121 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlMonthInput.cjs +146 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlMonthInput.d.mts +74 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlMonthInput.mjs +120 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlTimeInput.cjs +151 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlTimeInput.d.mts +75 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlTimeInput.mjs +128 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlWeekInput.cjs +150 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlWeekInput.d.mts +74 -0
- package/dist/v1/libs/TinyHtml/input/date/TinyHtmlWeekInput.mjs +122 -0
- package/dist/v1/libs/TinyHtml/input/number/TinyHtmlNumberInput.cjs +134 -0
- package/dist/v1/libs/TinyHtml/input/number/TinyHtmlNumberInput.d.mts +74 -0
- package/dist/v1/libs/TinyHtml/input/number/TinyHtmlNumberInput.mjs +110 -0
- package/dist/v1/libs/TinyHtml/input/number/TinyHtmlRangeInput.cjs +133 -0
- package/dist/v1/libs/TinyHtml/input/number/TinyHtmlRangeInput.d.mts +75 -0
- package/dist/v1/libs/TinyHtml/input/number/TinyHtmlRangeInput.mjs +111 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlEmailInput.cjs +179 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlEmailInput.d.mts +87 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlEmailInput.mjs +151 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlPasswordInput.cjs +126 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlPasswordInput.d.mts +70 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlPasswordInput.mjs +104 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlSearchInput.cjs +177 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlSearchInput.d.mts +91 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlSearchInput.mjs +153 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTelInput.cjs +170 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTelInput.d.mts +91 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTelInput.mjs +143 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTextInput.cjs +173 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTextInput.d.mts +89 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlTextInput.mjs +150 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlUrlInput.cjs +166 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlUrlInput.d.mts +81 -0
- package/dist/v1/libs/TinyHtml/input/text/TinyHtmlUrlInput.mjs +142 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlAudio.cjs +135 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlAudio.d.mts +47 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlAudio.mjs +122 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlObject.cjs +100 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlObject.d.mts +62 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlObject.mjs +94 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlSource.cjs +159 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlSource.d.mts +77 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlSource.mjs +136 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlVideo.cjs +193 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlVideo.d.mts +91 -0
- package/dist/v1/libs/TinyHtml/media/TinyHtmlVideo.mjs +167 -0
- package/dist/v1/libs/TinyHtml.cjs +260 -3
- package/dist/v1/libs/TinyHtml.d.mts +196 -5
- package/dist/v1/libs/TinyHtml.mjs +238 -3
- package/dist/{legacy/libs/userLevel.d.mts → v1/libs/TinyLevelUp.d.mts} +1 -1
- package/docs/v1/libs/TinyHtml.md +4 -4
- package/package.json +11 -24
- package/dist/_virtual/_commonjsHelpers.cjs +0 -7
- package/dist/_virtual/common.cjs +0 -5
- package/dist/_virtual/index.cjs +0 -9
- package/dist/_virtual/index2.cjs +0 -5
- package/dist/_virtual/trace.cjs +0 -5
- package/dist/legacy/crypto/decrypt.cjs +0 -59
- package/dist/legacy/crypto/decrypt.d.mts +0 -20
- package/dist/legacy/crypto/decrypt.mjs +0 -49
- package/dist/legacy/crypto/default.cjs +0 -23
- package/dist/legacy/crypto/default.d.mts +0 -36
- package/dist/legacy/crypto/default.mjs +0 -19
- package/dist/legacy/crypto/encrypt.cjs +0 -55
- package/dist/legacy/crypto/encrypt.d.mts +0 -21
- package/dist/legacy/crypto/encrypt.mjs +0 -47
- package/dist/legacy/crypto/index.cjs +0 -11
- package/dist/legacy/crypto/index.d.mts +0 -5
- package/dist/legacy/crypto/index.mjs +0 -6
- package/dist/legacy/firebase/cookieSession.cjs +0 -123
- package/dist/legacy/firebase/cookieSession.d.mts +0 -57
- package/dist/legacy/firebase/cookieSession.mjs +0 -115
- package/dist/legacy/firebase/database/index.cjs +0 -14
- package/dist/legacy/firebase/database/index.d.mts +0 -8
- package/dist/legacy/firebase/database/index.mjs +0 -8
- package/dist/legacy/firebase/database/presence.cjs +0 -137
- package/dist/legacy/firebase/database/presence.d.mts +0 -13
- package/dist/legacy/firebase/database/presence.mjs +0 -115
- package/dist/legacy/firebase/database/saveAsync.cjs +0 -149
- package/dist/legacy/firebase/database/saveAsync.d.mts +0 -55
- package/dist/legacy/firebase/database/saveAsync.mjs +0 -148
- package/dist/legacy/firebase/databaseEscape.cjs +0 -45
- package/dist/legacy/firebase/databaseEscape.d.mts +0 -12
- package/dist/legacy/firebase/databaseEscape.mjs +0 -38
- package/dist/legacy/firebase/databaseLogger.cjs +0 -261
- package/dist/legacy/firebase/databaseLogger.d.mts +0 -8
- package/dist/legacy/firebase/databaseLogger.mjs +0 -235
- package/dist/legacy/firebase/discord/api/addGuildMember.cjs +0 -74
- package/dist/legacy/firebase/discord/api/addGuildMember.d.mts +0 -39
- package/dist/legacy/firebase/discord/api/addGuildMember.mjs +0 -65
- package/dist/legacy/firebase/discord/api/getGuildWidget.cjs +0 -50
- package/dist/legacy/firebase/discord/api/getGuildWidget.d.mts +0 -18
- package/dist/legacy/firebase/discord/api/getGuildWidget.mjs +0 -44
- package/dist/legacy/firebase/discord/api/getToken.cjs +0 -70
- package/dist/legacy/firebase/discord/api/getToken.d.mts +0 -36
- package/dist/legacy/firebase/discord/api/getToken.mjs +0 -64
- package/dist/legacy/firebase/discord/api/getUser.cjs +0 -61
- package/dist/legacy/firebase/discord/api/getUser.d.mts +0 -28
- package/dist/legacy/firebase/discord/api/getUser.mjs +0 -55
- package/dist/legacy/firebase/discord/api/getUserConnections.cjs +0 -60
- package/dist/legacy/firebase/discord/api/getUserConnections.d.mts +0 -27
- package/dist/legacy/firebase/discord/api/getUserConnections.mjs +0 -54
- package/dist/legacy/firebase/discord/api/getUserGuilds.cjs +0 -59
- package/dist/legacy/firebase/discord/api/getUserGuilds.d.mts +0 -26
- package/dist/legacy/firebase/discord/api/getUserGuilds.mjs +0 -53
- package/dist/legacy/firebase/discord/api/index.cjs +0 -27
- package/dist/legacy/firebase/discord/api/index.d.mts +0 -20
- package/dist/legacy/firebase/discord/api/index.mjs +0 -21
- package/dist/legacy/firebase/discord/api/refreshToken.cjs +0 -80
- package/dist/legacy/firebase/discord/api/refreshToken.d.mts +0 -46
- package/dist/legacy/firebase/discord/api/refreshToken.mjs +0 -74
- package/dist/legacy/firebase/discord/api/revokeToken.cjs +0 -64
- package/dist/legacy/firebase/discord/api/revokeToken.d.mts +0 -30
- package/dist/legacy/firebase/discord/api/revokeToken.mjs +0 -59
- package/dist/legacy/firebase/discord/config.cjs +0 -23
- package/dist/legacy/firebase/discord/config.d.mts +0 -28
- package/dist/legacy/firebase/discord/config.mjs +0 -18
- package/dist/legacy/firebase/discord/firebase_redirect/index.cjs +0 -14
- package/dist/legacy/firebase/discord/firebase_redirect/index.d.mts +0 -8
- package/dist/legacy/firebase/discord/firebase_redirect/index.mjs +0 -8
- package/dist/legacy/firebase/discord/firebase_redirect/login.cjs +0 -112
- package/dist/legacy/firebase/discord/firebase_redirect/login.d.mts +0 -5
- package/dist/legacy/firebase/discord/firebase_redirect/login.mjs +0 -108
- package/dist/legacy/firebase/discord/firebase_redirect/logout.cjs +0 -102
- package/dist/legacy/firebase/discord/firebase_redirect/logout.d.mts +0 -5
- package/dist/legacy/firebase/discord/firebase_redirect/logout.mjs +0 -98
- package/dist/legacy/firebase/discord/get/authURLGenerator.cjs +0 -79
- package/dist/legacy/firebase/discord/get/authURLGenerator.d.mts +0 -24
- package/dist/legacy/firebase/discord/get/authURLGenerator.mjs +0 -68
- package/dist/legacy/firebase/discord/get/cookie-session.cjs +0 -35
- package/dist/legacy/firebase/discord/get/cookie-session.d.mts +0 -21
- package/dist/legacy/firebase/discord/get/cookie-session.mjs +0 -29
- package/dist/legacy/firebase/discord/get/credentials.cjs +0 -26
- package/dist/legacy/firebase/discord/get/credentials.d.mts +0 -20
- package/dist/legacy/firebase/discord/get/credentials.mjs +0 -21
- package/dist/legacy/firebase/discord/get/errorValidator.cjs +0 -63
- package/dist/legacy/firebase/discord/get/errorValidator.d.mts +0 -29
- package/dist/legacy/firebase/discord/get/errorValidator.mjs +0 -56
- package/dist/legacy/firebase/discord/get/index.cjs +0 -20
- package/dist/legacy/firebase/discord/get/index.d.mts +0 -14
- package/dist/legacy/firebase/discord/get/index.mjs +0 -14
- package/dist/legacy/firebase/discord/get/randomAvatar.cjs +0 -40
- package/dist/legacy/firebase/discord/get/randomAvatar.d.mts +0 -23
- package/dist/legacy/firebase/discord/get/randomAvatar.mjs +0 -31
- package/dist/legacy/firebase/discord/http/index.cjs +0 -18
- package/dist/legacy/firebase/discord/http/index.d.mts +0 -12
- package/dist/legacy/firebase/discord/http/index.mjs +0 -12
- package/dist/legacy/firebase/discord/http/login.cjs +0 -130
- package/dist/legacy/firebase/discord/http/login.d.mts +0 -22
- package/dist/legacy/firebase/discord/http/login.mjs +0 -124
- package/dist/legacy/firebase/discord/http/logout.cjs +0 -158
- package/dist/legacy/firebase/discord/http/logout.d.mts +0 -23
- package/dist/legacy/firebase/discord/http/logout.mjs +0 -144
- package/dist/legacy/firebase/discord/http/redirect.cjs +0 -191
- package/dist/legacy/firebase/discord/http/redirect.d.mts +0 -25
- package/dist/legacy/firebase/discord/http/redirect.mjs +0 -179
- package/dist/legacy/firebase/discord/http/refreshToken.cjs +0 -136
- package/dist/legacy/firebase/discord/http/refreshToken.d.mts +0 -25
- package/dist/legacy/firebase/discord/http/refreshToken.mjs +0 -122
- package/dist/legacy/firebase/discord/index.cjs +0 -22
- package/dist/legacy/firebase/discord/index.d.mts +0 -16
- package/dist/legacy/firebase/discord/index.mjs +0 -16
- package/dist/legacy/firebase/discord/template/cookie-session.cjs +0 -1433
- package/dist/legacy/firebase/discord/template/cookie-session.d.mts +0 -23
- package/dist/legacy/firebase/discord/template/cookie-session.mjs +0 -1160
- package/dist/legacy/firebase/domainRedirect.cjs +0 -37
- package/dist/legacy/firebase/domainRedirect.d.mts +0 -13
- package/dist/legacy/firebase/domainRedirect.mjs +0 -28
- package/dist/legacy/firebase/escape.cjs +0 -77
- package/dist/legacy/firebase/escape.d.mts +0 -18
- package/dist/legacy/firebase/escape.mjs +0 -59
- package/dist/legacy/firebase/getDBAsync.cjs +0 -35
- package/dist/legacy/firebase/getDBAsync.d.mts +0 -11
- package/dist/legacy/firebase/getDBAsync.mjs +0 -27
- package/dist/legacy/firebase/getDBData.cjs +0 -24
- package/dist/legacy/firebase/getDBData.d.mts +0 -2
- package/dist/legacy/firebase/getDBData.mjs +0 -18
- package/dist/legacy/firebase/getDBValue.cjs +0 -19
- package/dist/legacy/firebase/getDBValue.d.mts +0 -10
- package/dist/legacy/firebase/getDBValue.mjs +0 -15
- package/dist/legacy/firebase/index.cjs +0 -264
- package/dist/legacy/firebase/index.d.mts +0 -52
- package/dist/legacy/firebase/index.mjs +0 -235
- package/dist/legacy/firebase/isEmulator.cjs +0 -16
- package/dist/legacy/firebase/isEmulator.d.mts +0 -9
- package/dist/legacy/firebase/isEmulator.mjs +0 -11
- package/dist/legacy/firebase/logger.cjs +0 -140
- package/dist/legacy/firebase/logger.d.mts +0 -8
- package/dist/legacy/firebase/logger.mjs +0 -126
- package/dist/legacy/firebase/mySQL.cjs +0 -30
- package/dist/legacy/firebase/mySQL.d.mts +0 -11
- package/dist/legacy/firebase/mySQL.mjs +0 -23
- package/dist/legacy/firebase/mysqlConnector/create.cjs +0 -121
- package/dist/legacy/firebase/mysqlConnector/create.d.mts +0 -37
- package/dist/legacy/firebase/mysqlConnector/create.mjs +0 -110
- package/dist/legacy/firebase/mysqlConnector/index.cjs +0 -26
- package/dist/legacy/firebase/mysqlConnector/index.d.mts +0 -12
- package/dist/legacy/firebase/mysqlConnector/index.mjs +0 -17
- package/dist/legacy/firebase/mysqlConnector/nextPrev.cjs +0 -77
- package/dist/legacy/firebase/mysqlConnector/nextPrev.d.mts +0 -32
- package/dist/legacy/firebase/mysqlConnector/nextPrev.mjs +0 -64
- package/dist/legacy/firebase/mysqlConnector/pagination.cjs +0 -93
- package/dist/legacy/firebase/mysqlConnector/pagination.d.mts +0 -34
- package/dist/legacy/firebase/mysqlConnector/pagination.mjs +0 -88
- package/dist/legacy/firebase/mysqlConnector/sameUser.cjs +0 -31
- package/dist/legacy/firebase/mysqlConnector/sameUser.d.mts +0 -13
- package/dist/legacy/firebase/mysqlConnector/sameUser.mjs +0 -24
- package/dist/legacy/firebase/transactionDBAsync.cjs +0 -35
- package/dist/legacy/firebase/transactionDBAsync.d.mts +0 -12
- package/dist/legacy/firebase/transactionDBAsync.mjs +0 -28
- package/dist/legacy/get/countObj.cjs +0 -7
- package/dist/legacy/get/countObj.d.mts +0 -3
- package/dist/legacy/get/countObj.mjs +0 -2
- package/dist/legacy/get/decimalColor.cjs +0 -63
- package/dist/legacy/get/decimalColor.d.mts +0 -14
- package/dist/legacy/get/decimalColor.mjs +0 -56
- package/dist/legacy/get/objType.cjs +0 -7
- package/dist/legacy/get/objType.d.mts +0 -3
- package/dist/legacy/get/objType.mjs +0 -2
- package/dist/legacy/get/pagination.cjs +0 -109
- package/dist/legacy/get/pagination.d.mts +0 -44
- package/dist/legacy/get/pagination.mjs +0 -100
- package/dist/legacy/get/queryUrlByName.cjs +0 -32
- package/dist/legacy/get/queryUrlByName.d.mts +0 -22
- package/dist/legacy/get/queryUrlByName.mjs +0 -29
- package/dist/legacy/get/queryUrlJSON.cjs +0 -57
- package/dist/legacy/get/queryUrlJSON.d.mts +0 -25
- package/dist/legacy/get/queryUrlJSON.mjs +0 -59
- package/dist/legacy/get/super_string_filter.cjs +0 -109
- package/dist/legacy/get/super_string_filter.d.mts +0 -27
- package/dist/legacy/get/super_string_filter.mjs +0 -95
- package/dist/legacy/get/versionCheck.cjs +0 -50
- package/dist/legacy/get/versionCheck.d.mts +0 -29
- package/dist/legacy/get/versionCheck.mjs +0 -40
- package/dist/legacy/http/HTTP-1.0.cjs +0 -153
- package/dist/legacy/http/HTTP-1.0.d.mts +0 -9
- package/dist/legacy/http/HTTP-1.0.mjs +0 -138
- package/dist/legacy/http/auth.cjs +0 -71
- package/dist/legacy/http/auth.d.mts +0 -43
- package/dist/legacy/http/auth.mjs +0 -64
- package/dist/legacy/http/check_domain.cjs +0 -103
- package/dist/legacy/http/check_domain.d.mts +0 -13
- package/dist/legacy/http/check_domain.mjs +0 -98
- package/dist/legacy/http/csrfTokenAnalyze.cjs +0 -50
- package/dist/legacy/http/csrfTokenAnalyze.d.mts +0 -23
- package/dist/legacy/http/csrfTokenAnalyze.mjs +0 -45
- package/dist/legacy/http/domainValidator.cjs +0 -106
- package/dist/legacy/http/domainValidator.d.mts +0 -41
- package/dist/legacy/http/domainValidator.mjs +0 -89
- package/dist/legacy/http/errorsCallback.cjs +0 -64
- package/dist/legacy/http/errorsCallback.d.mts +0 -41
- package/dist/legacy/http/errorsCallback.mjs +0 -58
- package/dist/legacy/http/fetch/json.cjs +0 -50
- package/dist/legacy/http/fetch/json.d.mts +0 -24
- package/dist/legacy/http/fetch/json.mjs +0 -43
- package/dist/legacy/http/fetch/text.cjs +0 -49
- package/dist/legacy/http/fetch/text.d.mts +0 -23
- package/dist/legacy/http/fetch/text.mjs +0 -42
- package/dist/legacy/http/fileCache.cjs +0 -80
- package/dist/legacy/http/fileCache.d.mts +0 -37
- package/dist/legacy/http/fileCache.mjs +0 -71
- package/dist/legacy/http/getDomainURL.cjs +0 -60
- package/dist/legacy/http/getDomainURL.d.mts +0 -20
- package/dist/legacy/http/getDomainURL.mjs +0 -55
- package/dist/legacy/http/userIP.cjs +0 -65
- package/dist/legacy/http/userIP.d.mts +0 -27
- package/dist/legacy/http/userIP.mjs +0 -53
- package/dist/legacy/index.cjs +0 -125
- package/dist/legacy/index.d.mts +0 -89
- package/dist/legacy/index.mjs +0 -93
- package/dist/legacy/libs/arraySortPositions.cjs +0 -30
- package/dist/legacy/libs/arraySortPositions.d.mts +0 -17
- package/dist/legacy/libs/arraySortPositions.mjs +0 -27
- package/dist/legacy/libs/capitalize.cjs +0 -22
- package/dist/legacy/libs/capitalize.d.mts +0 -15
- package/dist/legacy/libs/capitalize.mjs +0 -18
- package/dist/legacy/libs/convertBytes.cjs +0 -66
- package/dist/legacy/libs/convertBytes.d.mts +0 -18
- package/dist/legacy/libs/convertBytes.mjs +0 -57
- package/dist/legacy/libs/custom_module_loader.cjs +0 -91
- package/dist/legacy/libs/custom_module_loader.d.mts +0 -6
- package/dist/legacy/libs/custom_module_loader.mjs +0 -87
- package/dist/legacy/libs/dice.cjs +0 -37
- package/dist/legacy/libs/dice.d.mts +0 -6
- package/dist/legacy/libs/dice.mjs +0 -33
- package/dist/legacy/libs/markdown.cjs +0 -97
- package/dist/legacy/libs/markdown.d.mts +0 -12
- package/dist/legacy/libs/markdown.mjs +0 -90
- package/dist/legacy/libs/percentage.cjs +0 -23
- package/dist/legacy/libs/percentage.d.mts +0 -5
- package/dist/legacy/libs/percentage.mjs +0 -20
- package/dist/legacy/libs/regex/getLetter.cjs +0 -24
- package/dist/legacy/libs/regex/getLetter.d.mts +0 -15
- package/dist/legacy/libs/regex/getLetter.mjs +0 -21
- package/dist/legacy/libs/replaceAsync.cjs +0 -35
- package/dist/legacy/libs/replaceAsync.d.mts +0 -16
- package/dist/legacy/libs/replaceAsync.mjs +0 -28
- package/dist/legacy/libs/rule3.cjs +0 -59
- package/dist/legacy/libs/rule3.d.mts +0 -6
- package/dist/legacy/libs/rule3.mjs +0 -55
- package/dist/legacy/momentjs/getAge.cjs +0 -29
- package/dist/legacy/momentjs/getAge.d.mts +0 -11
- package/dist/legacy/momentjs/getAge.mjs +0 -23
- package/dist/legacy/momentjs/index.cjs +0 -9
- package/dist/legacy/momentjs/index.d.mts +0 -4
- package/dist/legacy/momentjs/index.mjs +0 -3
- package/dist/legacy/momentjs/timeDuration.cjs +0 -31
- package/dist/legacy/momentjs/timeDuration.d.mts +0 -12
- package/dist/legacy/momentjs/timeDuration.mjs +0 -25
- package/dist/legacy/socket.io/antiFlood/index.cjs +0 -9
- package/dist/legacy/socket.io/antiFlood/index.d.mts +0 -4
- package/dist/legacy/socket.io/antiFlood/index.mjs +0 -3
- package/dist/legacy/socket.io/antiFlood/install.cjs +0 -34
- package/dist/legacy/socket.io/antiFlood/install.d.mts +0 -16
- package/dist/legacy/socket.io/antiFlood/install.mjs +0 -29
- package/dist/legacy/socket.io/antiFlood/verify.cjs +0 -95
- package/dist/legacy/socket.io/antiFlood/verify.d.mts +0 -20
- package/dist/legacy/socket.io/antiFlood/verify.mjs +0 -79
- package/dist/legacy/socket.io/cookie-session.cjs +0 -27
- package/dist/legacy/socket.io/cookie-session.d.mts +0 -11
- package/dist/legacy/socket.io/cookie-session.mjs +0 -22
- package/dist/legacy/socket.io/discord.cjs +0 -62
- package/dist/legacy/socket.io/discord.d.mts +0 -12
- package/dist/legacy/socket.io/discord.mjs +0 -53
- package/dist/legacy/socket.io/index.cjs +0 -13
- package/dist/legacy/socket.io/index.d.mts +0 -10
- package/dist/legacy/socket.io/index.mjs +0 -9
- package/dist/node_modules/firebase-functions/lib/common/trace.cjs +0 -81
- package/dist/node_modules/firebase-functions/lib/logger/common.cjs +0 -57
- package/dist/node_modules/firebase-functions/lib/logger/index.cjs +0 -159
- /package/dist/{legacy/libs/userLevel.cjs → v1/libs/TinyLevelUp.cjs} +0 -0
- /package/dist/{legacy/libs/userLevel.mjs → v1/libs/TinyLevelUp.mjs} +0 -0
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var TinyHtmlInput = require('../../TinyHtmlInput.cjs');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* TinyHtmlUrlInput is a helper class for managing `<input type="url">` elements.
|
|
7
|
+
* It provides strongly-typed getters and setters for common attributes,
|
|
8
|
+
* with validation and error handling.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* const urlInput = new TinyHtmlUrlInput({
|
|
12
|
+
* name: 'website',
|
|
13
|
+
* placeholder: 'https://example.com',
|
|
14
|
+
* required: true,
|
|
15
|
+
* maxLength: 200,
|
|
16
|
+
* });
|
|
17
|
+
*/
|
|
18
|
+
class TinyHtmlUrlInput extends TinyHtmlInput {
|
|
19
|
+
/**
|
|
20
|
+
* Creates a new TinyHtmlUrlInput instance.
|
|
21
|
+
* @param {Object} config - Configuration object.
|
|
22
|
+
* @param {string} [config.value] - Initial value of the input.
|
|
23
|
+
* @param {number} [config.minLength] - Minimum number of characters.
|
|
24
|
+
* @param {number} [config.maxLength] - Maximum number of characters.
|
|
25
|
+
* @param {string} [config.name] - The name of the control.
|
|
26
|
+
* @param {string} [config.pattern] - Regex pattern for validation.
|
|
27
|
+
* @param {string} [config.autocomplete] - Autocomplete hint (e.g., "on", "off", "email").
|
|
28
|
+
* @param {string} [config.dirname] - Name for the directionality field (text-based inputs).
|
|
29
|
+
* @param {number} [config.size] - Width of the input in characters.
|
|
30
|
+
* @param {string} [config.list] - ID of an associated <datalist>.
|
|
31
|
+
* @param {boolean} [config.readonly=false] - Whether the input is read-only.
|
|
32
|
+
* @param {boolean} [config.required=false] - Whether the input is required.
|
|
33
|
+
* @param {string} [config.placeholder] - Placeholder text.
|
|
34
|
+
* @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
|
|
35
|
+
* @param {string} [config.mainClass=''] - Main CSS class.
|
|
36
|
+
* @throws {TypeError} If any attribute is of the wrong type.
|
|
37
|
+
*/
|
|
38
|
+
constructor({
|
|
39
|
+
value,
|
|
40
|
+
list,
|
|
41
|
+
placeholder,
|
|
42
|
+
autocomplete,
|
|
43
|
+
minLength,
|
|
44
|
+
maxLength,
|
|
45
|
+
readonly = false,
|
|
46
|
+
required = false,
|
|
47
|
+
dirname,
|
|
48
|
+
size,
|
|
49
|
+
pattern,
|
|
50
|
+
name,
|
|
51
|
+
tags = [],
|
|
52
|
+
mainClass = '',
|
|
53
|
+
} = {}) {
|
|
54
|
+
super({ name, placeholder, type: 'url', tags, mainClass });
|
|
55
|
+
|
|
56
|
+
// Assign attributes via setters for validation
|
|
57
|
+
if (value !== undefined) this.value = value;
|
|
58
|
+
if (list !== undefined) this.list = list;
|
|
59
|
+
if (placeholder !== undefined) this.placeholder = placeholder;
|
|
60
|
+
if (autocomplete !== undefined) this.autocomplete = autocomplete;
|
|
61
|
+
if (minLength !== undefined) this.minLength = minLength;
|
|
62
|
+
if (maxLength !== undefined) this.maxLength = maxLength;
|
|
63
|
+
if (readonly !== undefined) this.readonly = readonly;
|
|
64
|
+
if (required !== undefined) this.required = required;
|
|
65
|
+
if (dirname !== undefined) this.dirname = dirname;
|
|
66
|
+
if (size !== undefined) this.sizeEl = size;
|
|
67
|
+
if (pattern !== undefined) this.pattern = pattern;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/** @param {string} value */
|
|
71
|
+
set value(value) {
|
|
72
|
+
if (typeof value !== 'string')
|
|
73
|
+
throw new TypeError('TinyHtmlUrlInput: "value" must be a string.');
|
|
74
|
+
this.setVal(value);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/** @returns {string} */
|
|
78
|
+
get value() {
|
|
79
|
+
return this.valTxt();
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/** @param {number} minLength */
|
|
83
|
+
set minLength(minLength) {
|
|
84
|
+
if (!Number.isInteger(minLength) || minLength < 0)
|
|
85
|
+
throw new TypeError('TinyHtmlUrlInput: "minLength" must be a non-negative integer.');
|
|
86
|
+
this.setAttr('minlength', minLength);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/** @returns {number|null} */
|
|
90
|
+
get minLength() {
|
|
91
|
+
return this.attrNumber('minlength');
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/** @param {number} maxLength */
|
|
95
|
+
set maxLength(maxLength) {
|
|
96
|
+
if (!Number.isInteger(maxLength) || maxLength < 1)
|
|
97
|
+
throw new TypeError('TinyHtmlUrlInput: "maxLength" must be a positive integer.');
|
|
98
|
+
this.setAttr('maxlength', maxLength);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/** @returns {number|null} */
|
|
102
|
+
get maxLength() {
|
|
103
|
+
return this.attrNumber('maxlength');
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/** @param {string} name */
|
|
107
|
+
set name(name) {
|
|
108
|
+
if (typeof name !== 'string') throw new TypeError('TinyHtmlUrlInput: "name" must be a string.');
|
|
109
|
+
this.setAttr('name', name);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/** @returns {string|null} */
|
|
113
|
+
get name() {
|
|
114
|
+
return this.attrString('name');
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/** @param {string} pattern */
|
|
118
|
+
set pattern(pattern) {
|
|
119
|
+
if (typeof pattern !== 'string')
|
|
120
|
+
throw new TypeError('TinyHtmlUrlInput: "pattern" must be a string.');
|
|
121
|
+
this.setAttr('pattern', pattern);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
/** @returns {string|null} */
|
|
125
|
+
get pattern() {
|
|
126
|
+
return this.attrString('pattern');
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/** @param {string} autocomplete */
|
|
130
|
+
set autocomplete(autocomplete) {
|
|
131
|
+
if (typeof autocomplete !== 'string')
|
|
132
|
+
throw new TypeError('TinyHtmlUrlInput: "autocomplete" must be a string.');
|
|
133
|
+
this.setAttr('autocomplete', autocomplete);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/** @returns {string|null} */
|
|
137
|
+
get autocomplete() {
|
|
138
|
+
return this.attrString('autocomplete');
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
/** @param {string} dirname */
|
|
142
|
+
set dirname(dirname) {
|
|
143
|
+
if (typeof dirname !== 'string')
|
|
144
|
+
throw new TypeError('TinyHtmlUrlInput: "dirname" must be a string.');
|
|
145
|
+
this.setAttr('dirname', dirname);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
/** @returns {string|null} */
|
|
149
|
+
get dirname() {
|
|
150
|
+
return this.attrString('dirname');
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
/** @param {string} list */
|
|
154
|
+
set list(list) {
|
|
155
|
+
if (typeof list !== 'string')
|
|
156
|
+
throw new TypeError('TinyHtmlUrlInput: "list" must be a string (datalist id).');
|
|
157
|
+
this.setAttr('list', list);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/** @returns {string|null} */
|
|
161
|
+
get list() {
|
|
162
|
+
return this.attrString('list');
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
module.exports = TinyHtmlUrlInput;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
export default TinyHtmlUrlInput;
|
|
2
|
+
/**
|
|
3
|
+
* TinyHtmlUrlInput is a helper class for managing `<input type="url">` elements.
|
|
4
|
+
* It provides strongly-typed getters and setters for common attributes,
|
|
5
|
+
* with validation and error handling.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* const urlInput = new TinyHtmlUrlInput({
|
|
9
|
+
* name: 'website',
|
|
10
|
+
* placeholder: 'https://example.com',
|
|
11
|
+
* required: true,
|
|
12
|
+
* maxLength: 200,
|
|
13
|
+
* });
|
|
14
|
+
*/
|
|
15
|
+
declare class TinyHtmlUrlInput extends TinyHtmlInput {
|
|
16
|
+
/**
|
|
17
|
+
* Creates a new TinyHtmlUrlInput instance.
|
|
18
|
+
* @param {Object} config - Configuration object.
|
|
19
|
+
* @param {string} [config.value] - Initial value of the input.
|
|
20
|
+
* @param {number} [config.minLength] - Minimum number of characters.
|
|
21
|
+
* @param {number} [config.maxLength] - Maximum number of characters.
|
|
22
|
+
* @param {string} [config.name] - The name of the control.
|
|
23
|
+
* @param {string} [config.pattern] - Regex pattern for validation.
|
|
24
|
+
* @param {string} [config.autocomplete] - Autocomplete hint (e.g., "on", "off", "email").
|
|
25
|
+
* @param {string} [config.dirname] - Name for the directionality field (text-based inputs).
|
|
26
|
+
* @param {number} [config.size] - Width of the input in characters.
|
|
27
|
+
* @param {string} [config.list] - ID of an associated <datalist>.
|
|
28
|
+
* @param {boolean} [config.readonly=false] - Whether the input is read-only.
|
|
29
|
+
* @param {boolean} [config.required=false] - Whether the input is required.
|
|
30
|
+
* @param {string} [config.placeholder] - Placeholder text.
|
|
31
|
+
* @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
|
|
32
|
+
* @param {string} [config.mainClass=''] - Main CSS class.
|
|
33
|
+
* @throws {TypeError} If any attribute is of the wrong type.
|
|
34
|
+
*/
|
|
35
|
+
constructor({ value, list, placeholder, autocomplete, minLength, maxLength, readonly, required, dirname, size, pattern, name, tags, mainClass, }?: {
|
|
36
|
+
value?: string | undefined;
|
|
37
|
+
minLength?: number | undefined;
|
|
38
|
+
maxLength?: number | undefined;
|
|
39
|
+
name?: string | undefined;
|
|
40
|
+
pattern?: string | undefined;
|
|
41
|
+
autocomplete?: string | undefined;
|
|
42
|
+
dirname?: string | undefined;
|
|
43
|
+
size?: number | undefined;
|
|
44
|
+
list?: string | undefined;
|
|
45
|
+
readonly?: boolean | undefined;
|
|
46
|
+
required?: boolean | undefined;
|
|
47
|
+
placeholder?: string | undefined;
|
|
48
|
+
tags?: string | string[] | Set<string> | undefined;
|
|
49
|
+
mainClass?: string | undefined;
|
|
50
|
+
});
|
|
51
|
+
/** @param {string} value */
|
|
52
|
+
set value(value: string);
|
|
53
|
+
/** @returns {string} */
|
|
54
|
+
get value(): string;
|
|
55
|
+
/** @param {string} list */
|
|
56
|
+
set list(list: string);
|
|
57
|
+
/** @returns {string|null} */
|
|
58
|
+
get list(): string | null;
|
|
59
|
+
/** @param {string} autocomplete */
|
|
60
|
+
set autocomplete(autocomplete: string);
|
|
61
|
+
/** @returns {string|null} */
|
|
62
|
+
get autocomplete(): string | null;
|
|
63
|
+
/** @param {number} minLength */
|
|
64
|
+
set minLength(minLength: number);
|
|
65
|
+
/** @returns {number|null} */
|
|
66
|
+
get minLength(): number | null;
|
|
67
|
+
/** @param {number} maxLength */
|
|
68
|
+
set maxLength(maxLength: number);
|
|
69
|
+
/** @returns {number|null} */
|
|
70
|
+
get maxLength(): number | null;
|
|
71
|
+
/** @param {string} dirname */
|
|
72
|
+
set dirname(dirname: string);
|
|
73
|
+
/** @returns {string|null} */
|
|
74
|
+
get dirname(): string | null;
|
|
75
|
+
/** @param {string} pattern */
|
|
76
|
+
set pattern(pattern: string);
|
|
77
|
+
/** @returns {string|null} */
|
|
78
|
+
get pattern(): string | null;
|
|
79
|
+
}
|
|
80
|
+
import TinyHtmlInput from '../../TinyHtmlInput.mjs';
|
|
81
|
+
//# sourceMappingURL=TinyHtmlUrlInput.d.mts.map
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import TinyHtmlInput from '../../TinyHtmlInput.mjs';
|
|
2
|
+
/**
|
|
3
|
+
* TinyHtmlUrlInput is a helper class for managing `<input type="url">` elements.
|
|
4
|
+
* It provides strongly-typed getters and setters for common attributes,
|
|
5
|
+
* with validation and error handling.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* const urlInput = new TinyHtmlUrlInput({
|
|
9
|
+
* name: 'website',
|
|
10
|
+
* placeholder: 'https://example.com',
|
|
11
|
+
* required: true,
|
|
12
|
+
* maxLength: 200,
|
|
13
|
+
* });
|
|
14
|
+
*/
|
|
15
|
+
class TinyHtmlUrlInput extends TinyHtmlInput {
|
|
16
|
+
/**
|
|
17
|
+
* Creates a new TinyHtmlUrlInput instance.
|
|
18
|
+
* @param {Object} config - Configuration object.
|
|
19
|
+
* @param {string} [config.value] - Initial value of the input.
|
|
20
|
+
* @param {number} [config.minLength] - Minimum number of characters.
|
|
21
|
+
* @param {number} [config.maxLength] - Maximum number of characters.
|
|
22
|
+
* @param {string} [config.name] - The name of the control.
|
|
23
|
+
* @param {string} [config.pattern] - Regex pattern for validation.
|
|
24
|
+
* @param {string} [config.autocomplete] - Autocomplete hint (e.g., "on", "off", "email").
|
|
25
|
+
* @param {string} [config.dirname] - Name for the directionality field (text-based inputs).
|
|
26
|
+
* @param {number} [config.size] - Width of the input in characters.
|
|
27
|
+
* @param {string} [config.list] - ID of an associated <datalist>.
|
|
28
|
+
* @param {boolean} [config.readonly=false] - Whether the input is read-only.
|
|
29
|
+
* @param {boolean} [config.required=false] - Whether the input is required.
|
|
30
|
+
* @param {string} [config.placeholder] - Placeholder text.
|
|
31
|
+
* @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
|
|
32
|
+
* @param {string} [config.mainClass=''] - Main CSS class.
|
|
33
|
+
* @throws {TypeError} If any attribute is of the wrong type.
|
|
34
|
+
*/
|
|
35
|
+
constructor({ value, list, placeholder, autocomplete, minLength, maxLength, readonly = false, required = false, dirname, size, pattern, name, tags = [], mainClass = '', } = {}) {
|
|
36
|
+
super({ name, placeholder, type: 'url', tags, mainClass });
|
|
37
|
+
// Assign attributes via setters for validation
|
|
38
|
+
if (value !== undefined)
|
|
39
|
+
this.value = value;
|
|
40
|
+
if (list !== undefined)
|
|
41
|
+
this.list = list;
|
|
42
|
+
if (placeholder !== undefined)
|
|
43
|
+
this.placeholder = placeholder;
|
|
44
|
+
if (autocomplete !== undefined)
|
|
45
|
+
this.autocomplete = autocomplete;
|
|
46
|
+
if (minLength !== undefined)
|
|
47
|
+
this.minLength = minLength;
|
|
48
|
+
if (maxLength !== undefined)
|
|
49
|
+
this.maxLength = maxLength;
|
|
50
|
+
if (readonly !== undefined)
|
|
51
|
+
this.readonly = readonly;
|
|
52
|
+
if (required !== undefined)
|
|
53
|
+
this.required = required;
|
|
54
|
+
if (dirname !== undefined)
|
|
55
|
+
this.dirname = dirname;
|
|
56
|
+
if (size !== undefined)
|
|
57
|
+
this.sizeEl = size;
|
|
58
|
+
if (pattern !== undefined)
|
|
59
|
+
this.pattern = pattern;
|
|
60
|
+
}
|
|
61
|
+
/** @param {string} value */
|
|
62
|
+
set value(value) {
|
|
63
|
+
if (typeof value !== 'string')
|
|
64
|
+
throw new TypeError('TinyHtmlUrlInput: "value" must be a string.');
|
|
65
|
+
this.setVal(value);
|
|
66
|
+
}
|
|
67
|
+
/** @returns {string} */
|
|
68
|
+
get value() {
|
|
69
|
+
return this.valTxt();
|
|
70
|
+
}
|
|
71
|
+
/** @param {number} minLength */
|
|
72
|
+
set minLength(minLength) {
|
|
73
|
+
if (!Number.isInteger(minLength) || minLength < 0)
|
|
74
|
+
throw new TypeError('TinyHtmlUrlInput: "minLength" must be a non-negative integer.');
|
|
75
|
+
this.setAttr('minlength', minLength);
|
|
76
|
+
}
|
|
77
|
+
/** @returns {number|null} */
|
|
78
|
+
get minLength() {
|
|
79
|
+
return this.attrNumber('minlength');
|
|
80
|
+
}
|
|
81
|
+
/** @param {number} maxLength */
|
|
82
|
+
set maxLength(maxLength) {
|
|
83
|
+
if (!Number.isInteger(maxLength) || maxLength < 1)
|
|
84
|
+
throw new TypeError('TinyHtmlUrlInput: "maxLength" must be a positive integer.');
|
|
85
|
+
this.setAttr('maxlength', maxLength);
|
|
86
|
+
}
|
|
87
|
+
/** @returns {number|null} */
|
|
88
|
+
get maxLength() {
|
|
89
|
+
return this.attrNumber('maxlength');
|
|
90
|
+
}
|
|
91
|
+
/** @param {string} name */
|
|
92
|
+
set name(name) {
|
|
93
|
+
if (typeof name !== 'string')
|
|
94
|
+
throw new TypeError('TinyHtmlUrlInput: "name" must be a string.');
|
|
95
|
+
this.setAttr('name', name);
|
|
96
|
+
}
|
|
97
|
+
/** @returns {string|null} */
|
|
98
|
+
get name() {
|
|
99
|
+
return this.attrString('name');
|
|
100
|
+
}
|
|
101
|
+
/** @param {string} pattern */
|
|
102
|
+
set pattern(pattern) {
|
|
103
|
+
if (typeof pattern !== 'string')
|
|
104
|
+
throw new TypeError('TinyHtmlUrlInput: "pattern" must be a string.');
|
|
105
|
+
this.setAttr('pattern', pattern);
|
|
106
|
+
}
|
|
107
|
+
/** @returns {string|null} */
|
|
108
|
+
get pattern() {
|
|
109
|
+
return this.attrString('pattern');
|
|
110
|
+
}
|
|
111
|
+
/** @param {string} autocomplete */
|
|
112
|
+
set autocomplete(autocomplete) {
|
|
113
|
+
if (typeof autocomplete !== 'string')
|
|
114
|
+
throw new TypeError('TinyHtmlUrlInput: "autocomplete" must be a string.');
|
|
115
|
+
this.setAttr('autocomplete', autocomplete);
|
|
116
|
+
}
|
|
117
|
+
/** @returns {string|null} */
|
|
118
|
+
get autocomplete() {
|
|
119
|
+
return this.attrString('autocomplete');
|
|
120
|
+
}
|
|
121
|
+
/** @param {string} dirname */
|
|
122
|
+
set dirname(dirname) {
|
|
123
|
+
if (typeof dirname !== 'string')
|
|
124
|
+
throw new TypeError('TinyHtmlUrlInput: "dirname" must be a string.');
|
|
125
|
+
this.setAttr('dirname', dirname);
|
|
126
|
+
}
|
|
127
|
+
/** @returns {string|null} */
|
|
128
|
+
get dirname() {
|
|
129
|
+
return this.attrString('dirname');
|
|
130
|
+
}
|
|
131
|
+
/** @param {string} list */
|
|
132
|
+
set list(list) {
|
|
133
|
+
if (typeof list !== 'string')
|
|
134
|
+
throw new TypeError('TinyHtmlUrlInput: "list" must be a string (datalist id).');
|
|
135
|
+
this.setAttr('list', list);
|
|
136
|
+
}
|
|
137
|
+
/** @returns {string|null} */
|
|
138
|
+
get list() {
|
|
139
|
+
return this.attrString('list');
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
export default TinyHtmlUrlInput;
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var TinyHtmlMedia = require('../TinyHtmlMedia.cjs');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* TinyHtmlAudio is a helper class for managing <audio> elements.
|
|
7
|
+
* It provides full support for standard audio attributes such as
|
|
8
|
+
* `src`, `preload`, `controls`, `autoplay`, `loop`, `muted`, and `volume`,
|
|
9
|
+
* using validated getters and setters for consistency.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* const audio = new TinyHtmlAudio({
|
|
13
|
+
* src: 'music.mp3',
|
|
14
|
+
* controls: true,
|
|
15
|
+
* autoplay: false,
|
|
16
|
+
* loop: true,
|
|
17
|
+
* volume: 0.8
|
|
18
|
+
* });
|
|
19
|
+
*
|
|
20
|
+
* @extends TinyHtmlMedia<HTMLAudioElement>
|
|
21
|
+
*/
|
|
22
|
+
class TinyHtmlAudio extends TinyHtmlMedia {
|
|
23
|
+
/**
|
|
24
|
+
* Creates a new TinyHtmlAudio instance.
|
|
25
|
+
* @param {Object} config - Configuration object.
|
|
26
|
+
* @param {string} [config.src=""] - Audio source URL.
|
|
27
|
+
* @param {'auto'|'metadata'|'none'} [config.preload] - Preload behavior.
|
|
28
|
+
* @param {boolean} [config.controls=false] - Whether playback controls are displayed.
|
|
29
|
+
* @param {boolean} [config.autoplay=false] - Whether playback starts automatically.
|
|
30
|
+
* @param {boolean} [config.loop=false] - Whether playback should loop.
|
|
31
|
+
* @param {boolean} [config.muted=false] - Whether the audio starts muted.
|
|
32
|
+
* @param {number} [config.volume] - Initial playback volume (0.0 to 1.0).
|
|
33
|
+
* @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
|
|
34
|
+
* @param {string} [config.mainClass=""] - Main CSS class.
|
|
35
|
+
* @throws {TypeError} If any attribute is of the wrong type.
|
|
36
|
+
*/
|
|
37
|
+
constructor({
|
|
38
|
+
src = '',
|
|
39
|
+
preload,
|
|
40
|
+
controls = false,
|
|
41
|
+
autoplay = false,
|
|
42
|
+
loop = false,
|
|
43
|
+
muted = false,
|
|
44
|
+
volume,
|
|
45
|
+
tags = [],
|
|
46
|
+
mainClass = '',
|
|
47
|
+
} = {}) {
|
|
48
|
+
super(document.createElement('audio'), tags, mainClass);
|
|
49
|
+
|
|
50
|
+
this.src = src;
|
|
51
|
+
if (preload !== undefined) this.preload = preload;
|
|
52
|
+
this.controls = controls;
|
|
53
|
+
this.autoplay = autoplay;
|
|
54
|
+
this.loop = loop;
|
|
55
|
+
this.muted = muted;
|
|
56
|
+
if (volume !== undefined) this.volume = volume;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/** @param {string} src */
|
|
60
|
+
set src(src) {
|
|
61
|
+
if (typeof src !== 'string') throw new TypeError('TinyHtmlAudio: "src" must be a string.');
|
|
62
|
+
if (src) this.setAttr('src', src);
|
|
63
|
+
else this.removeAttr('src');
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/** @returns {string|null} */
|
|
67
|
+
get src() {
|
|
68
|
+
return this.attrString('src');
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/** @param {boolean} controls */
|
|
72
|
+
set controls(controls) {
|
|
73
|
+
if (typeof controls !== 'boolean')
|
|
74
|
+
throw new TypeError('TinyHtmlAudio: "controls" must be a boolean.');
|
|
75
|
+
if (controls) this.addProp('controls');
|
|
76
|
+
else this.removeProp('controls');
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/** @returns {boolean} */
|
|
80
|
+
get controls() {
|
|
81
|
+
return this.hasProp('controls');
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
/** @param {boolean} autoplay */
|
|
85
|
+
set autoplay(autoplay) {
|
|
86
|
+
if (typeof autoplay !== 'boolean')
|
|
87
|
+
throw new TypeError('TinyHtmlAudio: "autoplay" must be a boolean.');
|
|
88
|
+
if (autoplay) this.addProp('autoplay');
|
|
89
|
+
else this.removeProp('autoplay');
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/** @returns {boolean} */
|
|
93
|
+
get autoplay() {
|
|
94
|
+
return this.hasProp('autoplay');
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/** @param {boolean} loop */
|
|
98
|
+
set loop(loop) {
|
|
99
|
+
if (typeof loop !== 'boolean') throw new TypeError('TinyHtmlAudio: "loop" must be a boolean.');
|
|
100
|
+
if (loop) this.addProp('loop');
|
|
101
|
+
else this.removeProp('loop');
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/** @returns {boolean} */
|
|
105
|
+
get loop() {
|
|
106
|
+
return this.hasProp('loop');
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/** @param {boolean} muted */
|
|
110
|
+
set muted(muted) {
|
|
111
|
+
if (typeof muted !== 'boolean')
|
|
112
|
+
throw new TypeError('TinyHtmlAudio: "muted" must be a boolean.');
|
|
113
|
+
if (muted) this.addProp('muted');
|
|
114
|
+
else this.removeProp('muted');
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/** @returns {boolean} */
|
|
118
|
+
get muted() {
|
|
119
|
+
return this.hasProp('muted');
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
/** @param {number} volume */
|
|
123
|
+
set volume(volume) {
|
|
124
|
+
if (typeof volume !== 'number' || volume < 0 || volume > 1)
|
|
125
|
+
throw new TypeError('TinyHtmlAudio: "volume" must be a number between 0.0 and 1.0.');
|
|
126
|
+
this.el.volume = volume; // direct property on <audio>
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/** @returns {number} */
|
|
130
|
+
get volume() {
|
|
131
|
+
return this.el.volume;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
module.exports = TinyHtmlAudio;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export default TinyHtmlAudio;
|
|
2
|
+
/**
|
|
3
|
+
* TinyHtmlAudio is a helper class for managing <audio> elements.
|
|
4
|
+
* It provides full support for standard audio attributes such as
|
|
5
|
+
* `src`, `preload`, `controls`, `autoplay`, `loop`, `muted`, and `volume`,
|
|
6
|
+
* using validated getters and setters for consistency.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* const audio = new TinyHtmlAudio({
|
|
10
|
+
* src: 'music.mp3',
|
|
11
|
+
* controls: true,
|
|
12
|
+
* autoplay: false,
|
|
13
|
+
* loop: true,
|
|
14
|
+
* volume: 0.8
|
|
15
|
+
* });
|
|
16
|
+
*
|
|
17
|
+
* @extends TinyHtmlMedia<HTMLAudioElement>
|
|
18
|
+
*/
|
|
19
|
+
declare class TinyHtmlAudio extends TinyHtmlMedia<HTMLAudioElement> {
|
|
20
|
+
/**
|
|
21
|
+
* Creates a new TinyHtmlAudio instance.
|
|
22
|
+
* @param {Object} config - Configuration object.
|
|
23
|
+
* @param {string} [config.src=""] - Audio source URL.
|
|
24
|
+
* @param {'auto'|'metadata'|'none'} [config.preload] - Preload behavior.
|
|
25
|
+
* @param {boolean} [config.controls=false] - Whether playback controls are displayed.
|
|
26
|
+
* @param {boolean} [config.autoplay=false] - Whether playback starts automatically.
|
|
27
|
+
* @param {boolean} [config.loop=false] - Whether playback should loop.
|
|
28
|
+
* @param {boolean} [config.muted=false] - Whether the audio starts muted.
|
|
29
|
+
* @param {number} [config.volume] - Initial playback volume (0.0 to 1.0).
|
|
30
|
+
* @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
|
|
31
|
+
* @param {string} [config.mainClass=""] - Main CSS class.
|
|
32
|
+
* @throws {TypeError} If any attribute is of the wrong type.
|
|
33
|
+
*/
|
|
34
|
+
constructor({ src, preload, controls, autoplay, loop, muted, volume, tags, mainClass, }?: {
|
|
35
|
+
src?: string | undefined;
|
|
36
|
+
preload?: "auto" | "none" | "metadata" | undefined;
|
|
37
|
+
controls?: boolean | undefined;
|
|
38
|
+
autoplay?: boolean | undefined;
|
|
39
|
+
loop?: boolean | undefined;
|
|
40
|
+
muted?: boolean | undefined;
|
|
41
|
+
volume?: number | undefined;
|
|
42
|
+
tags?: string | string[] | Set<string> | undefined;
|
|
43
|
+
mainClass?: string | undefined;
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
import TinyHtmlMedia from '../TinyHtmlMedia.mjs';
|
|
47
|
+
//# sourceMappingURL=TinyHtmlAudio.d.mts.map
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import TinyHtmlMedia from '../TinyHtmlMedia.mjs';
|
|
2
|
+
/**
|
|
3
|
+
* TinyHtmlAudio is a helper class for managing <audio> elements.
|
|
4
|
+
* It provides full support for standard audio attributes such as
|
|
5
|
+
* `src`, `preload`, `controls`, `autoplay`, `loop`, `muted`, and `volume`,
|
|
6
|
+
* using validated getters and setters for consistency.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* const audio = new TinyHtmlAudio({
|
|
10
|
+
* src: 'music.mp3',
|
|
11
|
+
* controls: true,
|
|
12
|
+
* autoplay: false,
|
|
13
|
+
* loop: true,
|
|
14
|
+
* volume: 0.8
|
|
15
|
+
* });
|
|
16
|
+
*
|
|
17
|
+
* @extends TinyHtmlMedia<HTMLAudioElement>
|
|
18
|
+
*/
|
|
19
|
+
class TinyHtmlAudio extends TinyHtmlMedia {
|
|
20
|
+
/**
|
|
21
|
+
* Creates a new TinyHtmlAudio instance.
|
|
22
|
+
* @param {Object} config - Configuration object.
|
|
23
|
+
* @param {string} [config.src=""] - Audio source URL.
|
|
24
|
+
* @param {'auto'|'metadata'|'none'} [config.preload] - Preload behavior.
|
|
25
|
+
* @param {boolean} [config.controls=false] - Whether playback controls are displayed.
|
|
26
|
+
* @param {boolean} [config.autoplay=false] - Whether playback starts automatically.
|
|
27
|
+
* @param {boolean} [config.loop=false] - Whether playback should loop.
|
|
28
|
+
* @param {boolean} [config.muted=false] - Whether the audio starts muted.
|
|
29
|
+
* @param {number} [config.volume] - Initial playback volume (0.0 to 1.0).
|
|
30
|
+
* @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes.
|
|
31
|
+
* @param {string} [config.mainClass=""] - Main CSS class.
|
|
32
|
+
* @throws {TypeError} If any attribute is of the wrong type.
|
|
33
|
+
*/
|
|
34
|
+
constructor({ src = '', preload, controls = false, autoplay = false, loop = false, muted = false, volume, tags = [], mainClass = '', } = {}) {
|
|
35
|
+
super(document.createElement('audio'), tags, mainClass);
|
|
36
|
+
this.src = src;
|
|
37
|
+
if (preload !== undefined)
|
|
38
|
+
this.preload = preload;
|
|
39
|
+
this.controls = controls;
|
|
40
|
+
this.autoplay = autoplay;
|
|
41
|
+
this.loop = loop;
|
|
42
|
+
this.muted = muted;
|
|
43
|
+
if (volume !== undefined)
|
|
44
|
+
this.volume = volume;
|
|
45
|
+
}
|
|
46
|
+
/** @param {string} src */
|
|
47
|
+
set src(src) {
|
|
48
|
+
if (typeof src !== 'string')
|
|
49
|
+
throw new TypeError('TinyHtmlAudio: "src" must be a string.');
|
|
50
|
+
if (src)
|
|
51
|
+
this.setAttr('src', src);
|
|
52
|
+
else
|
|
53
|
+
this.removeAttr('src');
|
|
54
|
+
}
|
|
55
|
+
/** @returns {string|null} */
|
|
56
|
+
get src() {
|
|
57
|
+
return this.attrString('src');
|
|
58
|
+
}
|
|
59
|
+
/** @param {boolean} controls */
|
|
60
|
+
set controls(controls) {
|
|
61
|
+
if (typeof controls !== 'boolean')
|
|
62
|
+
throw new TypeError('TinyHtmlAudio: "controls" must be a boolean.');
|
|
63
|
+
if (controls)
|
|
64
|
+
this.addProp('controls');
|
|
65
|
+
else
|
|
66
|
+
this.removeProp('controls');
|
|
67
|
+
}
|
|
68
|
+
/** @returns {boolean} */
|
|
69
|
+
get controls() {
|
|
70
|
+
return this.hasProp('controls');
|
|
71
|
+
}
|
|
72
|
+
/** @param {boolean} autoplay */
|
|
73
|
+
set autoplay(autoplay) {
|
|
74
|
+
if (typeof autoplay !== 'boolean')
|
|
75
|
+
throw new TypeError('TinyHtmlAudio: "autoplay" must be a boolean.');
|
|
76
|
+
if (autoplay)
|
|
77
|
+
this.addProp('autoplay');
|
|
78
|
+
else
|
|
79
|
+
this.removeProp('autoplay');
|
|
80
|
+
}
|
|
81
|
+
/** @returns {boolean} */
|
|
82
|
+
get autoplay() {
|
|
83
|
+
return this.hasProp('autoplay');
|
|
84
|
+
}
|
|
85
|
+
/** @param {boolean} loop */
|
|
86
|
+
set loop(loop) {
|
|
87
|
+
if (typeof loop !== 'boolean')
|
|
88
|
+
throw new TypeError('TinyHtmlAudio: "loop" must be a boolean.');
|
|
89
|
+
if (loop)
|
|
90
|
+
this.addProp('loop');
|
|
91
|
+
else
|
|
92
|
+
this.removeProp('loop');
|
|
93
|
+
}
|
|
94
|
+
/** @returns {boolean} */
|
|
95
|
+
get loop() {
|
|
96
|
+
return this.hasProp('loop');
|
|
97
|
+
}
|
|
98
|
+
/** @param {boolean} muted */
|
|
99
|
+
set muted(muted) {
|
|
100
|
+
if (typeof muted !== 'boolean')
|
|
101
|
+
throw new TypeError('TinyHtmlAudio: "muted" must be a boolean.');
|
|
102
|
+
if (muted)
|
|
103
|
+
this.addProp('muted');
|
|
104
|
+
else
|
|
105
|
+
this.removeProp('muted');
|
|
106
|
+
}
|
|
107
|
+
/** @returns {boolean} */
|
|
108
|
+
get muted() {
|
|
109
|
+
return this.hasProp('muted');
|
|
110
|
+
}
|
|
111
|
+
/** @param {number} volume */
|
|
112
|
+
set volume(volume) {
|
|
113
|
+
if (typeof volume !== 'number' || volume < 0 || volume > 1)
|
|
114
|
+
throw new TypeError('TinyHtmlAudio: "volume" must be a number between 0.0 and 1.0.');
|
|
115
|
+
this.el.volume = volume; // direct property on <audio>
|
|
116
|
+
}
|
|
117
|
+
/** @returns {number} */
|
|
118
|
+
get volume() {
|
|
119
|
+
return this.el.volume;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
export default TinyHtmlAudio;
|