tiny-essentials 1.24.0 → 1.24.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/node.js.yml +2 -2
- package/README.md +6 -2
- package/changelog/1/24/1.md +14 -0
- package/changelog/1/24/2.md +21 -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/Exports.md +133 -0
- package/docs/v1/README.md +2 -0
- package/docs/v1/libs/TinyHtml.md +4 -4
- package/package.json +41 -46
- 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,129 @@
|
|
|
1
|
+
export default TinyHtmlForm;
|
|
2
|
+
/**
|
|
3
|
+
* TinyHtmlForm is a helper for creating and managing <form> elements
|
|
4
|
+
* with full attribute support and validation.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* const form = new TinyHtmlForm({
|
|
8
|
+
* action: '/submit',
|
|
9
|
+
* method: 'post',
|
|
10
|
+
* enctype: 'multipart/form-data',
|
|
11
|
+
* autocomplete: 'on',
|
|
12
|
+
* novalidate: true,
|
|
13
|
+
* target: '_blank',
|
|
14
|
+
* tags: ['form', 'signup'],
|
|
15
|
+
* mainClass: 'primary-form'
|
|
16
|
+
* });
|
|
17
|
+
*
|
|
18
|
+
* @extends TinyHtmlTemplate<HTMLFormElement>
|
|
19
|
+
*/
|
|
20
|
+
declare class TinyHtmlForm extends TinyHtmlTemplate<HTMLFormElement> {
|
|
21
|
+
/**
|
|
22
|
+
* Creates a new TinyHtmlForm instance.
|
|
23
|
+
*
|
|
24
|
+
* The constructor accepts a single `config` object with named options to
|
|
25
|
+
* configure the created `<form>` element. Validation is performed for each
|
|
26
|
+
* option and a `TypeError` is thrown when an invalid type or value is
|
|
27
|
+
* provided. Deprecated attributes are accepted but will emit a console.warn.
|
|
28
|
+
*
|
|
29
|
+
* @param {Object} [config={}] - Configuration object.
|
|
30
|
+
* @param {string} [config.action=""] - The URL that processes the form submission.
|
|
31
|
+
* If omitted the form will submit to the current document URL.
|
|
32
|
+
* @param {'get'|'post'|'dialog'} [config.method='get'] - The HTTP method to submit the form with.
|
|
33
|
+
* - `get` (default): form data appended to the action URL.
|
|
34
|
+
* - `post`: form data sent in request body; `enctype` is relevant.
|
|
35
|
+
* - `dialog`: when the form is inside a `<dialog>`, closes the dialog and fires a submit event without sending data.
|
|
36
|
+
* @param {'application/x-www-form-urlencoded'|'multipart/form-data'|'text/plain'} [config.enctype]
|
|
37
|
+
* The encoding type for form submission (only used when method is `post`).
|
|
38
|
+
* @param {string} [config.acceptCharset] - The character encoding accepted by the server (e.g. "UTF-8").
|
|
39
|
+
* The specification recommends "UTF-8".
|
|
40
|
+
* @param {'none'|'off'|'sentences'|'on'|'words'|'characters'} [config.autocapitalize]
|
|
41
|
+
* Controls automatic capitalization for text inputs inside the form.
|
|
42
|
+
* @param {'on'|'off'} [config.autocomplete] - Hint to the browser whether autofill is allowed for controls in the form.
|
|
43
|
+
* @param {string} [config.name] - The form name. Must be a non-empty string when provided.
|
|
44
|
+
* @param {string} [config.rel] - Space-separated relationship tokens describing the form's link semantics.
|
|
45
|
+
* @param {boolean} [config.novalidate=false] - When true, disables built-in form validation on submit.
|
|
46
|
+
* @param {string} [config.target] - Target browsing context for the response.
|
|
47
|
+
* Can be one of `_self`, `_blank`, `_parent`, `_top`, `_unfencedTop` or a valid browsing context name
|
|
48
|
+
* (pattern: starts with a letter/underscore, then alphanumeric/`-`/`_`).
|
|
49
|
+
* @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes to apply to the form element.
|
|
50
|
+
* @param {string} [config.mainClass=''] - Main CSS class to append to the element.
|
|
51
|
+
*
|
|
52
|
+
* @throws {TypeError} If `action` is provided and is not a string.
|
|
53
|
+
* @throws {TypeError} If `method` is not one of 'get', 'post' or 'dialog'.
|
|
54
|
+
* @throws {TypeError} If `enctype` is provided and is not one of the allowed encodings.
|
|
55
|
+
* @throws {TypeError} If `acceptCharset` is provided and is not a string.
|
|
56
|
+
* @throws {TypeError} If `autocapitalize` is provided and is not one of the allowed tokens.
|
|
57
|
+
* @throws {TypeError} If `autocomplete` is provided and is not 'on' or 'off'.
|
|
58
|
+
* @throws {TypeError} If `name` is provided and is not a non-empty string.
|
|
59
|
+
* @throws {TypeError} If `rel` is provided and is not a string.
|
|
60
|
+
* @throws {TypeError} If `novalidate` is not a boolean.
|
|
61
|
+
* @throws {TypeError} If `target` is not a valid target keyword or a valid browsing context name.
|
|
62
|
+
*/
|
|
63
|
+
constructor({ action, method, enctype, acceptCharset, autocapitalize, autocomplete, name, rel, novalidate, target, tags, mainClass, }?: {
|
|
64
|
+
action?: string | undefined;
|
|
65
|
+
method?: "dialog" | "get" | "post" | undefined;
|
|
66
|
+
enctype?: "text/plain" | "application/x-www-form-urlencoded" | "multipart/form-data" | undefined;
|
|
67
|
+
acceptCharset?: string | undefined;
|
|
68
|
+
autocapitalize?: "none" | "off" | "on" | "sentences" | "words" | "characters" | undefined;
|
|
69
|
+
autocomplete?: "off" | "on" | undefined;
|
|
70
|
+
name?: string | undefined;
|
|
71
|
+
rel?: string | undefined;
|
|
72
|
+
novalidate?: boolean | undefined;
|
|
73
|
+
target?: string | undefined;
|
|
74
|
+
tags?: string | string[] | Set<string> | undefined;
|
|
75
|
+
mainClass?: string | undefined;
|
|
76
|
+
});
|
|
77
|
+
/** @param {string} action */
|
|
78
|
+
set action(action: string);
|
|
79
|
+
/** @returns {string|null} */
|
|
80
|
+
get action(): string | null;
|
|
81
|
+
/** @param {'get'|'post'|'dialog'} method */
|
|
82
|
+
set method(method: "get" | "post" | "dialog");
|
|
83
|
+
/** @returns {string|null} */
|
|
84
|
+
get method(): string | null;
|
|
85
|
+
/** @param {'application/x-www-form-urlencoded'|'multipart/form-data'|'text/plain'} enctype */
|
|
86
|
+
set enctype(enctype: "application/x-www-form-urlencoded" | "multipart/form-data" | "text/plain");
|
|
87
|
+
/** @returns {string|null} */
|
|
88
|
+
get enctype(): string | null;
|
|
89
|
+
/** @param {string} charset */
|
|
90
|
+
set acceptCharset(charset: string);
|
|
91
|
+
/** @returns {string|null} */
|
|
92
|
+
get acceptCharset(): string | null;
|
|
93
|
+
/** @param {'none'|'off'|'sentences'|'on'|'words'|'characters'} value */
|
|
94
|
+
set autocapitalize(value: "none" | "off" | "sentences" | "on" | "words" | "characters");
|
|
95
|
+
/** @returns {string|null} */
|
|
96
|
+
get autocapitalize(): string | null;
|
|
97
|
+
/** @param {'on'|'off'} value */
|
|
98
|
+
set autocomplete(value: "on" | "off");
|
|
99
|
+
/** @returns {string|null} */
|
|
100
|
+
get autocomplete(): string | null;
|
|
101
|
+
/** @param {string} name */
|
|
102
|
+
set name(name: string);
|
|
103
|
+
/** @returns {string|null} */
|
|
104
|
+
get name(): string | null;
|
|
105
|
+
/** @param {string} rel */
|
|
106
|
+
set rel(rel: string);
|
|
107
|
+
/** @returns {string|null} */
|
|
108
|
+
get rel(): string | null;
|
|
109
|
+
/** @param {boolean} novalidate */
|
|
110
|
+
set novalidate(novalidate: boolean);
|
|
111
|
+
/** @returns {boolean} */
|
|
112
|
+
get novalidate(): boolean;
|
|
113
|
+
/** @param {string} target */
|
|
114
|
+
set target(target: string);
|
|
115
|
+
/** @returns {string|null} */
|
|
116
|
+
get target(): string | null;
|
|
117
|
+
/**
|
|
118
|
+
* Programmatically submits the form.
|
|
119
|
+
* @returns {this}
|
|
120
|
+
*/
|
|
121
|
+
submit(): this;
|
|
122
|
+
/**
|
|
123
|
+
* Resets the form.
|
|
124
|
+
* @returns {this}
|
|
125
|
+
*/
|
|
126
|
+
reset(): this;
|
|
127
|
+
}
|
|
128
|
+
import TinyHtmlTemplate from './TinyHtmlTemplate.mjs';
|
|
129
|
+
//# sourceMappingURL=TinyHtmlForm.d.mts.map
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import TinyHtmlTemplate from './TinyHtmlTemplate.mjs';
|
|
2
|
+
/**
|
|
3
|
+
* TinyHtmlForm is a helper for creating and managing <form> elements
|
|
4
|
+
* with full attribute support and validation.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* const form = new TinyHtmlForm({
|
|
8
|
+
* action: '/submit',
|
|
9
|
+
* method: 'post',
|
|
10
|
+
* enctype: 'multipart/form-data',
|
|
11
|
+
* autocomplete: 'on',
|
|
12
|
+
* novalidate: true,
|
|
13
|
+
* target: '_blank',
|
|
14
|
+
* tags: ['form', 'signup'],
|
|
15
|
+
* mainClass: 'primary-form'
|
|
16
|
+
* });
|
|
17
|
+
*
|
|
18
|
+
* @extends TinyHtmlTemplate<HTMLFormElement>
|
|
19
|
+
*/
|
|
20
|
+
class TinyHtmlForm extends TinyHtmlTemplate {
|
|
21
|
+
/**
|
|
22
|
+
* Creates a new TinyHtmlForm instance.
|
|
23
|
+
*
|
|
24
|
+
* The constructor accepts a single `config` object with named options to
|
|
25
|
+
* configure the created `<form>` element. Validation is performed for each
|
|
26
|
+
* option and a `TypeError` is thrown when an invalid type or value is
|
|
27
|
+
* provided. Deprecated attributes are accepted but will emit a console.warn.
|
|
28
|
+
*
|
|
29
|
+
* @param {Object} [config={}] - Configuration object.
|
|
30
|
+
* @param {string} [config.action=""] - The URL that processes the form submission.
|
|
31
|
+
* If omitted the form will submit to the current document URL.
|
|
32
|
+
* @param {'get'|'post'|'dialog'} [config.method='get'] - The HTTP method to submit the form with.
|
|
33
|
+
* - `get` (default): form data appended to the action URL.
|
|
34
|
+
* - `post`: form data sent in request body; `enctype` is relevant.
|
|
35
|
+
* - `dialog`: when the form is inside a `<dialog>`, closes the dialog and fires a submit event without sending data.
|
|
36
|
+
* @param {'application/x-www-form-urlencoded'|'multipart/form-data'|'text/plain'} [config.enctype]
|
|
37
|
+
* The encoding type for form submission (only used when method is `post`).
|
|
38
|
+
* @param {string} [config.acceptCharset] - The character encoding accepted by the server (e.g. "UTF-8").
|
|
39
|
+
* The specification recommends "UTF-8".
|
|
40
|
+
* @param {'none'|'off'|'sentences'|'on'|'words'|'characters'} [config.autocapitalize]
|
|
41
|
+
* Controls automatic capitalization for text inputs inside the form.
|
|
42
|
+
* @param {'on'|'off'} [config.autocomplete] - Hint to the browser whether autofill is allowed for controls in the form.
|
|
43
|
+
* @param {string} [config.name] - The form name. Must be a non-empty string when provided.
|
|
44
|
+
* @param {string} [config.rel] - Space-separated relationship tokens describing the form's link semantics.
|
|
45
|
+
* @param {boolean} [config.novalidate=false] - When true, disables built-in form validation on submit.
|
|
46
|
+
* @param {string} [config.target] - Target browsing context for the response.
|
|
47
|
+
* Can be one of `_self`, `_blank`, `_parent`, `_top`, `_unfencedTop` or a valid browsing context name
|
|
48
|
+
* (pattern: starts with a letter/underscore, then alphanumeric/`-`/`_`).
|
|
49
|
+
* @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes to apply to the form element.
|
|
50
|
+
* @param {string} [config.mainClass=''] - Main CSS class to append to the element.
|
|
51
|
+
*
|
|
52
|
+
* @throws {TypeError} If `action` is provided and is not a string.
|
|
53
|
+
* @throws {TypeError} If `method` is not one of 'get', 'post' or 'dialog'.
|
|
54
|
+
* @throws {TypeError} If `enctype` is provided and is not one of the allowed encodings.
|
|
55
|
+
* @throws {TypeError} If `acceptCharset` is provided and is not a string.
|
|
56
|
+
* @throws {TypeError} If `autocapitalize` is provided and is not one of the allowed tokens.
|
|
57
|
+
* @throws {TypeError} If `autocomplete` is provided and is not 'on' or 'off'.
|
|
58
|
+
* @throws {TypeError} If `name` is provided and is not a non-empty string.
|
|
59
|
+
* @throws {TypeError} If `rel` is provided and is not a string.
|
|
60
|
+
* @throws {TypeError} If `novalidate` is not a boolean.
|
|
61
|
+
* @throws {TypeError} If `target` is not a valid target keyword or a valid browsing context name.
|
|
62
|
+
*/
|
|
63
|
+
constructor({ action = '', method = 'get', enctype, acceptCharset, autocapitalize, autocomplete, name, rel, novalidate = false, target, tags = [], mainClass = '', } = {}) {
|
|
64
|
+
super(document.createElement('form'), tags, mainClass);
|
|
65
|
+
// action
|
|
66
|
+
this.action = action;
|
|
67
|
+
// method
|
|
68
|
+
this.method = method;
|
|
69
|
+
// enctype
|
|
70
|
+
if (enctype !== undefined)
|
|
71
|
+
this.enctype = enctype;
|
|
72
|
+
// accept-charset
|
|
73
|
+
if (acceptCharset !== undefined)
|
|
74
|
+
this.acceptCharset = acceptCharset;
|
|
75
|
+
// autocapitalize
|
|
76
|
+
if (autocapitalize !== undefined)
|
|
77
|
+
this.autocapitalize = autocapitalize;
|
|
78
|
+
// autocomplete
|
|
79
|
+
if (autocomplete !== undefined)
|
|
80
|
+
this.autocomplete = autocomplete;
|
|
81
|
+
// name
|
|
82
|
+
if (name !== undefined)
|
|
83
|
+
this.name = name;
|
|
84
|
+
// rel
|
|
85
|
+
if (rel !== undefined)
|
|
86
|
+
this.rel = rel;
|
|
87
|
+
// novalidate
|
|
88
|
+
this.novalidate = novalidate;
|
|
89
|
+
// target
|
|
90
|
+
if (target !== undefined)
|
|
91
|
+
this.target = target;
|
|
92
|
+
}
|
|
93
|
+
/** @param {string} action */
|
|
94
|
+
set action(action) {
|
|
95
|
+
if (typeof action !== 'string')
|
|
96
|
+
throw new TypeError('TinyForm: "action" must be a string.');
|
|
97
|
+
if (action)
|
|
98
|
+
this.setAttr('action', action);
|
|
99
|
+
}
|
|
100
|
+
/** @returns {string|null} */
|
|
101
|
+
get action() {
|
|
102
|
+
return this.attrString('action');
|
|
103
|
+
}
|
|
104
|
+
/** @param {'get'|'post'|'dialog'} method */
|
|
105
|
+
set method(method) {
|
|
106
|
+
if (typeof method !== 'string')
|
|
107
|
+
throw new TypeError('TinyForm: "method" must be a string.');
|
|
108
|
+
const valid = ['get', 'post', 'dialog'];
|
|
109
|
+
const norm = method.toLowerCase();
|
|
110
|
+
if (!valid.includes(norm))
|
|
111
|
+
throw new TypeError(`TinyForm: "method" must be one of ${valid.join(', ')}.`);
|
|
112
|
+
this.setAttr('method', norm);
|
|
113
|
+
}
|
|
114
|
+
/** @returns {string|null} */
|
|
115
|
+
get method() {
|
|
116
|
+
return this.attrString('method');
|
|
117
|
+
}
|
|
118
|
+
/** @param {'application/x-www-form-urlencoded'|'multipart/form-data'|'text/plain'} enctype */
|
|
119
|
+
set enctype(enctype) {
|
|
120
|
+
const valid = ['application/x-www-form-urlencoded', 'multipart/form-data', 'text/plain'];
|
|
121
|
+
if (!valid.includes(enctype))
|
|
122
|
+
throw new TypeError(`TinyForm: "enctype" must be one of ${valid.join(', ')}.`);
|
|
123
|
+
this.setAttr('enctype', enctype);
|
|
124
|
+
}
|
|
125
|
+
/** @returns {string|null} */
|
|
126
|
+
get enctype() {
|
|
127
|
+
return this.attrString('enctype');
|
|
128
|
+
}
|
|
129
|
+
/** @param {string} charset */
|
|
130
|
+
set acceptCharset(charset) {
|
|
131
|
+
if (typeof charset !== 'string')
|
|
132
|
+
throw new TypeError('TinyForm: "acceptCharset" must be a string.');
|
|
133
|
+
if (charset.toUpperCase() !== 'UTF-8')
|
|
134
|
+
console.warn('TinyForm: Only "UTF-8" is recommended for accept-charset.');
|
|
135
|
+
this.setAttr('accept-charset', charset);
|
|
136
|
+
}
|
|
137
|
+
/** @returns {string|null} */
|
|
138
|
+
get acceptCharset() {
|
|
139
|
+
return this.attrString('accept-charset');
|
|
140
|
+
}
|
|
141
|
+
/** @param {'none'|'off'|'sentences'|'on'|'words'|'characters'} value */
|
|
142
|
+
set autocapitalize(value) {
|
|
143
|
+
const valid = ['none', 'off', 'sentences', 'on', 'words', 'characters'];
|
|
144
|
+
if (!valid.includes(value))
|
|
145
|
+
throw new TypeError(`TinyForm: "autocapitalize" must be one of ${valid.join(', ')}.`);
|
|
146
|
+
this.setAttr('autocapitalize', value);
|
|
147
|
+
}
|
|
148
|
+
/** @returns {string|null} */
|
|
149
|
+
get autocapitalize() {
|
|
150
|
+
return this.attrString('autocapitalize');
|
|
151
|
+
}
|
|
152
|
+
/** @param {'on'|'off'} value */
|
|
153
|
+
set autocomplete(value) {
|
|
154
|
+
if (!['on', 'off'].includes(value))
|
|
155
|
+
throw new TypeError('TinyForm: "autocomplete" must be "on" or "off".');
|
|
156
|
+
this.setAttr('autocomplete', value);
|
|
157
|
+
}
|
|
158
|
+
/** @returns {string|null} */
|
|
159
|
+
get autocomplete() {
|
|
160
|
+
return this.attrString('autocomplete');
|
|
161
|
+
}
|
|
162
|
+
/** @param {string} name */
|
|
163
|
+
set name(name) {
|
|
164
|
+
if (typeof name !== 'string')
|
|
165
|
+
throw new TypeError('TinyForm: "name" must be a string.');
|
|
166
|
+
if (name.trim() === '')
|
|
167
|
+
throw new TypeError('TinyForm: "name" cannot be empty.');
|
|
168
|
+
this.setAttr('name', name);
|
|
169
|
+
}
|
|
170
|
+
/** @returns {string|null} */
|
|
171
|
+
get name() {
|
|
172
|
+
return this.attrString('name');
|
|
173
|
+
}
|
|
174
|
+
/** @param {string} rel */
|
|
175
|
+
set rel(rel) {
|
|
176
|
+
if (typeof rel !== 'string')
|
|
177
|
+
throw new TypeError('TinyForm: "rel" must be a string.');
|
|
178
|
+
this.setAttr('rel', rel);
|
|
179
|
+
}
|
|
180
|
+
/** @returns {string|null} */
|
|
181
|
+
get rel() {
|
|
182
|
+
return this.attrString('rel');
|
|
183
|
+
}
|
|
184
|
+
/** @param {boolean} novalidate */
|
|
185
|
+
set novalidate(novalidate) {
|
|
186
|
+
if (typeof novalidate !== 'boolean')
|
|
187
|
+
throw new TypeError('TinyForm: "novalidate" must be a boolean.');
|
|
188
|
+
if (novalidate)
|
|
189
|
+
this.addProp('novalidate');
|
|
190
|
+
else
|
|
191
|
+
this.removeProp('novalidate');
|
|
192
|
+
}
|
|
193
|
+
/** @returns {boolean} */
|
|
194
|
+
get novalidate() {
|
|
195
|
+
return this.hasProp('novalidate');
|
|
196
|
+
}
|
|
197
|
+
/** @param {string} target */
|
|
198
|
+
set target(target) {
|
|
199
|
+
if (typeof target !== 'string')
|
|
200
|
+
throw new TypeError('TinyForm: "target" must be a string.');
|
|
201
|
+
const validTargets = ['_self', '_blank', '_parent', '_top', '_unfencedTop'];
|
|
202
|
+
const validName = /^[a-zA-Z_][\w-]*$/;
|
|
203
|
+
if (!validTargets.includes(target) && !validName.test(target))
|
|
204
|
+
throw new TypeError(`TinyForm: "target" must be a valid context name or one of ${validTargets.join(', ')}.`);
|
|
205
|
+
this.setAttr('target', target);
|
|
206
|
+
}
|
|
207
|
+
/** @returns {string|null} */
|
|
208
|
+
get target() {
|
|
209
|
+
return this.attrString('target');
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Programmatically submits the form.
|
|
213
|
+
* @returns {this}
|
|
214
|
+
*/
|
|
215
|
+
submit() {
|
|
216
|
+
this.el.submit();
|
|
217
|
+
return this;
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Resets the form.
|
|
221
|
+
* @returns {this}
|
|
222
|
+
*/
|
|
223
|
+
reset() {
|
|
224
|
+
this.el.reset();
|
|
225
|
+
return this;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
export default TinyHtmlForm;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var TinyHtmlTemplate = require('./TinyHtmlTemplate.cjs');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* TinyIcon is a lightweight helper class for managing icon-like elements
|
|
7
|
+
* (such as `<i>` or `<span>` tags) with class-based styling.
|
|
8
|
+
* It extends TinyHtml to provide direct DOM element manipulation.
|
|
9
|
+
*
|
|
10
|
+
* @extends TinyHtmlTemplate<HTMLElement>
|
|
11
|
+
*/
|
|
12
|
+
class TinyHtmlIcon extends TinyHtmlTemplate {
|
|
13
|
+
/** @type {string} */
|
|
14
|
+
static #defaultTag = 'i';
|
|
15
|
+
|
|
16
|
+
/** @returns {string} */
|
|
17
|
+
static get defaultTag() {
|
|
18
|
+
return TinyHtmlIcon.#defaultTag;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/** @param {string} value */
|
|
22
|
+
static set defaultTag(value) {
|
|
23
|
+
if (typeof value !== 'string') throw new TypeError('defaultTag must be a string');
|
|
24
|
+
TinyHtmlIcon.#defaultTag = value;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Creates a new TinyIcon instance.
|
|
29
|
+
* @param {string|string[]|Set<string>} tags - Initial icon classes to apply.
|
|
30
|
+
* @param {string} [tagName=TinyHtmlIcon.#defaultTag] - The HTML tag to use for the element (e.g., `i`, `span`).
|
|
31
|
+
*/
|
|
32
|
+
constructor(tags, tagName = TinyHtmlIcon.#defaultTag) {
|
|
33
|
+
if (typeof tagName !== 'string') throw new TypeError('TinyIcon: "tagName" must be a string.');
|
|
34
|
+
super(document.createElement(tagName), tags);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
module.exports = TinyHtmlIcon;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export default TinyHtmlIcon;
|
|
2
|
+
/**
|
|
3
|
+
* TinyIcon is a lightweight helper class for managing icon-like elements
|
|
4
|
+
* (such as `<i>` or `<span>` tags) with class-based styling.
|
|
5
|
+
* It extends TinyHtml to provide direct DOM element manipulation.
|
|
6
|
+
*
|
|
7
|
+
* @extends TinyHtmlTemplate<HTMLElement>
|
|
8
|
+
*/
|
|
9
|
+
declare class TinyHtmlIcon extends TinyHtmlTemplate<HTMLElement> {
|
|
10
|
+
/** @type {string} */
|
|
11
|
+
static "__#38@#defaultTag": string;
|
|
12
|
+
/** @param {string} value */
|
|
13
|
+
static set defaultTag(value: string);
|
|
14
|
+
/** @returns {string} */
|
|
15
|
+
static get defaultTag(): string;
|
|
16
|
+
/**
|
|
17
|
+
* Creates a new TinyIcon instance.
|
|
18
|
+
* @param {string|string[]|Set<string>} tags - Initial icon classes to apply.
|
|
19
|
+
* @param {string} [tagName=TinyHtmlIcon.#defaultTag] - The HTML tag to use for the element (e.g., `i`, `span`).
|
|
20
|
+
*/
|
|
21
|
+
constructor(tags: string | string[] | Set<string>, tagName?: string);
|
|
22
|
+
}
|
|
23
|
+
import TinyHtmlTemplate from './TinyHtmlTemplate.mjs';
|
|
24
|
+
//# sourceMappingURL=TinyHtmlIcon.d.mts.map
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import TinyHtmlTemplate from './TinyHtmlTemplate.mjs';
|
|
2
|
+
/**
|
|
3
|
+
* TinyIcon is a lightweight helper class for managing icon-like elements
|
|
4
|
+
* (such as `<i>` or `<span>` tags) with class-based styling.
|
|
5
|
+
* It extends TinyHtml to provide direct DOM element manipulation.
|
|
6
|
+
*
|
|
7
|
+
* @extends TinyHtmlTemplate<HTMLElement>
|
|
8
|
+
*/
|
|
9
|
+
class TinyHtmlIcon extends TinyHtmlTemplate {
|
|
10
|
+
/** @type {string} */
|
|
11
|
+
static #defaultTag = 'i';
|
|
12
|
+
/** @returns {string} */
|
|
13
|
+
static get defaultTag() {
|
|
14
|
+
return TinyHtmlIcon.#defaultTag;
|
|
15
|
+
}
|
|
16
|
+
/** @param {string} value */
|
|
17
|
+
static set defaultTag(value) {
|
|
18
|
+
if (typeof value !== 'string')
|
|
19
|
+
throw new TypeError('defaultTag must be a string');
|
|
20
|
+
TinyHtmlIcon.#defaultTag = value;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Creates a new TinyIcon instance.
|
|
24
|
+
* @param {string|string[]|Set<string>} tags - Initial icon classes to apply.
|
|
25
|
+
* @param {string} [tagName=TinyHtmlIcon.#defaultTag] - The HTML tag to use for the element (e.g., `i`, `span`).
|
|
26
|
+
*/
|
|
27
|
+
constructor(tags, tagName = TinyHtmlIcon.#defaultTag) {
|
|
28
|
+
if (typeof tagName !== 'string')
|
|
29
|
+
throw new TypeError('TinyIcon: "tagName" must be a string.');
|
|
30
|
+
super(document.createElement(tagName), tags);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export default TinyHtmlIcon;
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var TinyHtmlTemplate = require('./TinyHtmlTemplate.cjs');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* TinyHtmlIframe is a helper class for managing <iframe> elements.
|
|
7
|
+
* It supports all standard attributes with validation and type safety.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* const iframe = new TinyHtmlIframe({
|
|
11
|
+
* src: 'https://example.com',
|
|
12
|
+
* width: 600,
|
|
13
|
+
* height: 400,
|
|
14
|
+
* loading: 'lazy',
|
|
15
|
+
* sandbox: 'allow-scripts allow-same-origin',
|
|
16
|
+
* referrerpolicy: 'no-referrer',
|
|
17
|
+
* });
|
|
18
|
+
*
|
|
19
|
+
* @extends TinyHtmlTemplate<HTMLIFrameElement>
|
|
20
|
+
*/
|
|
21
|
+
class TinyHtmlIframe extends TinyHtmlTemplate {
|
|
22
|
+
/**
|
|
23
|
+
* Creates a new TinyHtmlIframe instance with the specified configuration options.
|
|
24
|
+
*
|
|
25
|
+
* @param {Object} [config={}] - Configuration object for the iframe element.
|
|
26
|
+
* @param {string} [config.src] - The URL of the page to embed inside the iframe.
|
|
27
|
+
* @param {string} [config.srcdoc] - Inline HTML content to display inside the iframe (overrides `src` if provided).
|
|
28
|
+
* @param {string} [config.name] - A name for the browsing context (used as the target for links or forms).
|
|
29
|
+
* @param {string} [config.allow] - Permissions policy for the iframe (e.g., `"fullscreen; autoplay"`).
|
|
30
|
+
* @param {boolean} [config.allowFullScreen=false] - Whether the iframe is allowed to display content in fullscreen mode.
|
|
31
|
+
* @param {boolean} [config.browsingtopics] - Enables the Browsing Topics API.
|
|
32
|
+
* @param {boolean} [config.credentialless] - Enables credentialless mode for cross-origin iframes.
|
|
33
|
+
* @param {string} [config.csp] - Content Security Policy applied specifically to the iframe's content.
|
|
34
|
+
* @param {string} [config.sandbox] - A space-separated list of sandboxing flags that restrict iframe capabilities.
|
|
35
|
+
* @param {'no-referrer'|'no-referrer-when-downgrade'|'origin'|'origin-when-cross-origin'|'same-origin'|'strict-origin'|'strict-origin-when-cross-origin'|'unsafe-url'} [config.referrerpolicy] - Referrer policy to control the amount of referrer information sent.
|
|
36
|
+
* @param {number|string} [config.width] - Width of the iframe in pixels or as a CSS dimension string (e.g., `"100%"`).
|
|
37
|
+
* @param {number|string} [config.height] - Height of the iframe in pixels or as a CSS dimension string (e.g., `"500px"`).
|
|
38
|
+
* @param {string} [config.title] - Accessible title for the iframe content.
|
|
39
|
+
* @param {'lazy'|'eager'} [config.loading] - Loading strategy for the iframe. `"lazy"` defers loading until visible in the viewport.
|
|
40
|
+
* @param {string|string[]|Set<string>} [config.tags=[]] - Additional tags or identifiers for this instance.
|
|
41
|
+
* @param {string} [config.mainClass=''] - A main CSS class applied to the iframe element.
|
|
42
|
+
*/
|
|
43
|
+
constructor({
|
|
44
|
+
src,
|
|
45
|
+
srcdoc,
|
|
46
|
+
name,
|
|
47
|
+
allow,
|
|
48
|
+
allowFullScreen = false,
|
|
49
|
+
browsingtopics,
|
|
50
|
+
credentialless,
|
|
51
|
+
csp,
|
|
52
|
+
sandbox,
|
|
53
|
+
referrerpolicy,
|
|
54
|
+
width,
|
|
55
|
+
height,
|
|
56
|
+
title,
|
|
57
|
+
loading,
|
|
58
|
+
tags = [],
|
|
59
|
+
mainClass = '',
|
|
60
|
+
} = {}) {
|
|
61
|
+
super(document.createElement('iframe'), tags, mainClass);
|
|
62
|
+
|
|
63
|
+
if (src !== undefined) this.src = src;
|
|
64
|
+
if (srcdoc !== undefined) this.srcdoc = srcdoc;
|
|
65
|
+
if (name !== undefined) this.name = name;
|
|
66
|
+
if (allow !== undefined) this.allow = allow;
|
|
67
|
+
this.allowFullScreen = allowFullScreen;
|
|
68
|
+
if (browsingtopics !== undefined) this.browsingtopics = browsingtopics;
|
|
69
|
+
if (credentialless !== undefined) this.credentialless = credentialless;
|
|
70
|
+
if (csp !== undefined) this.csp = csp;
|
|
71
|
+
if (sandbox !== undefined) this.sandbox = sandbox;
|
|
72
|
+
if (referrerpolicy !== undefined) this.referrerpolicy = referrerpolicy;
|
|
73
|
+
if (width !== undefined) this.setWidth(width);
|
|
74
|
+
if (height !== undefined) this.setHeight(height);
|
|
75
|
+
if (title !== undefined) this.title = title;
|
|
76
|
+
if (loading !== undefined) this.loading = loading;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// --- attributes ---
|
|
80
|
+
|
|
81
|
+
/** @param {string} src */
|
|
82
|
+
set src(src) {
|
|
83
|
+
if (typeof src !== 'string') throw new TypeError('TinyIframe: "src" must be a string.');
|
|
84
|
+
this.setAttr('src', src);
|
|
85
|
+
}
|
|
86
|
+
/** @returns {string|null} */
|
|
87
|
+
get src() {
|
|
88
|
+
return this.attrString('src');
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/** @param {string} srcdoc */
|
|
92
|
+
set srcdoc(srcdoc) {
|
|
93
|
+
if (typeof srcdoc !== 'string') throw new TypeError('TinyIframe: "srcdoc" must be a string.');
|
|
94
|
+
this.setAttr('srcdoc', srcdoc);
|
|
95
|
+
}
|
|
96
|
+
/** @returns {string|null} */
|
|
97
|
+
get srcdoc() {
|
|
98
|
+
return this.attrString('srcdoc');
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/** @param {string} name */
|
|
102
|
+
set name(name) {
|
|
103
|
+
if (typeof name !== 'string') throw new TypeError('TinyIframe: "name" must be a string.');
|
|
104
|
+
this.setAttr('name', name);
|
|
105
|
+
}
|
|
106
|
+
/** @returns {string|null} */
|
|
107
|
+
get name() {
|
|
108
|
+
return this.attrString('name');
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/** @param {string} allow */
|
|
112
|
+
set allow(allow) {
|
|
113
|
+
if (typeof allow !== 'string') throw new TypeError('TinyIframe: "allow" must be a string.');
|
|
114
|
+
this.setAttr('allow', allow);
|
|
115
|
+
}
|
|
116
|
+
/** @returns {string|null} */
|
|
117
|
+
get allow() {
|
|
118
|
+
return this.attrString('allow');
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/** @param {boolean} allowFullScreen */
|
|
122
|
+
set allowFullScreen(allowFullScreen) {
|
|
123
|
+
if (typeof allowFullScreen !== 'boolean')
|
|
124
|
+
throw new TypeError('TinyIframe: "allowFullScreen" must be a boolean.');
|
|
125
|
+
if (allowFullScreen) this.addProp('allowfullscreen');
|
|
126
|
+
else this.removeProp('allowfullscreen');
|
|
127
|
+
}
|
|
128
|
+
/** @returns {boolean} */
|
|
129
|
+
get allowFullScreen() {
|
|
130
|
+
return this.hasProp('allowfullscreen');
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
/** @param {boolean} browsingtopics */
|
|
134
|
+
set browsingtopics(browsingtopics) {
|
|
135
|
+
if (typeof browsingtopics !== 'boolean')
|
|
136
|
+
throw new TypeError('TinyIframe: "browsingtopics" must be a boolean.');
|
|
137
|
+
if (browsingtopics) this.addProp('browsingtopics');
|
|
138
|
+
else this.removeProp('browsingtopics');
|
|
139
|
+
}
|
|
140
|
+
/** @returns {boolean} */
|
|
141
|
+
get browsingtopics() {
|
|
142
|
+
return this.hasProp('browsingtopics');
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/** @param {boolean} credentialless */
|
|
146
|
+
set credentialless(credentialless) {
|
|
147
|
+
if (typeof credentialless !== 'boolean')
|
|
148
|
+
throw new TypeError('TinyIframe: "credentialless" must be a boolean.');
|
|
149
|
+
if (credentialless) this.addProp('credentialless');
|
|
150
|
+
else this.removeProp('credentialless');
|
|
151
|
+
}
|
|
152
|
+
/** @returns {boolean} */
|
|
153
|
+
get credentialless() {
|
|
154
|
+
return this.hasProp('credentialless');
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
/** @param {string} csp */
|
|
158
|
+
set csp(csp) {
|
|
159
|
+
if (typeof csp !== 'string') throw new TypeError('TinyIframe: "csp" must be a string.');
|
|
160
|
+
this.setAttr('csp', csp);
|
|
161
|
+
}
|
|
162
|
+
/** @returns {string|null} */
|
|
163
|
+
get csp() {
|
|
164
|
+
return this.attrString('csp');
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
/** @param {string} sandbox */
|
|
168
|
+
set sandbox(sandbox) {
|
|
169
|
+
if (typeof sandbox !== 'string')
|
|
170
|
+
throw new TypeError('TinyIframe: "sandbox" must be a string (space-separated tokens).');
|
|
171
|
+
this.setAttr('sandbox', sandbox);
|
|
172
|
+
}
|
|
173
|
+
/** @returns {string|null} */
|
|
174
|
+
get sandbox() {
|
|
175
|
+
return this.attrString('sandbox');
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/** @param {string} referrerpolicy */
|
|
179
|
+
set referrerpolicy(referrerpolicy) {
|
|
180
|
+
const valid = [
|
|
181
|
+
'no-referrer',
|
|
182
|
+
'no-referrer-when-downgrade',
|
|
183
|
+
'origin',
|
|
184
|
+
'origin-when-cross-origin',
|
|
185
|
+
'same-origin',
|
|
186
|
+
'strict-origin',
|
|
187
|
+
'strict-origin-when-cross-origin',
|
|
188
|
+
'unsafe-url',
|
|
189
|
+
];
|
|
190
|
+
if (!valid.includes(referrerpolicy))
|
|
191
|
+
throw new TypeError(`TinyIframe: "referrerpolicy" must be one of: ${valid.join(', ')}.`);
|
|
192
|
+
this.setAttr('referrerpolicy', referrerpolicy);
|
|
193
|
+
}
|
|
194
|
+
/** @returns {string|null} */
|
|
195
|
+
get referrerpolicy() {
|
|
196
|
+
return this.attrString('referrerpolicy');
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
/** @param {string} title */
|
|
200
|
+
set title(title) {
|
|
201
|
+
if (typeof title !== 'string') throw new TypeError('TinyIframe: "title" must be a string.');
|
|
202
|
+
this.setAttr('title', title);
|
|
203
|
+
}
|
|
204
|
+
/** @returns {string|null} */
|
|
205
|
+
get title() {
|
|
206
|
+
return this.attrString('title');
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
/** @param {'lazy'|'eager'} loading */
|
|
210
|
+
set loading(loading) {
|
|
211
|
+
const valid = ['lazy', 'eager'];
|
|
212
|
+
if (!valid.includes(loading))
|
|
213
|
+
throw new TypeError(`TinyIframe: "loading" must be one of: ${valid.join(', ')}.`);
|
|
214
|
+
this.setAttr('loading', loading);
|
|
215
|
+
}
|
|
216
|
+
/** @returns {string|null} */
|
|
217
|
+
get loading() {
|
|
218
|
+
return this.attrString('loading');
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
module.exports = TinyHtmlIframe;
|