From 073192568a0e6a46da2ce71314a68c9646c87d25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <59501884+LoicE5@users.noreply.github.com> Date: Mon, 16 Mar 2026 22:23:32 +0100 Subject: [PATCH 01/10] chore: add .pnpm-store to .gitignore --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 077d90e3..dc8d7907 100755 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,5 @@ package-lock.json node_modules experiments coverage -test/__screenshots__ \ No newline at end of file +test/__screenshots__ +.pnpm-store \ No newline at end of file From 3d53208aba05a34ae6c9b275095aace59caf2c3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <59501884+LoicE5@users.noreply.github.com> Date: Mon, 16 Mar 2026 22:23:43 +0100 Subject: [PATCH 02/10] chore: update deps, switch to chromium, add files field --- .npmignore | 14 -------------- package.json | 25 ++++++++++++++----------- 2 files changed, 14 insertions(+), 25 deletions(-) delete mode 100755 .npmignore diff --git a/.npmignore b/.npmignore deleted file mode 100755 index 3d55c8ec..00000000 --- a/.npmignore +++ /dev/null @@ -1,14 +0,0 @@ -.github -.gitignore -.nyc_output -package-lock.json -node_modules -experiments -docs -coverage -vite.config.mts -vite.config.components.mts -vitest.config.mts -vitest.config-ui.mts -test -src \ No newline at end of file diff --git a/package.json b/package.json index f9a884a7..70399bfb 100755 --- a/package.json +++ b/package.json @@ -80,7 +80,7 @@ "dev": "vite --open ./docs/index-dev.html --port 8577", "serve": "vite --open ./docs/index.html --port 8577", "test": "pnpm pre-test && vitest --config vitest.config.ts", - "test-ui": "pnpm pre-test && vitest --config vitest.config-ui.ts --browser=chrome", + "test-ui": "pnpm pre-test && vitest --config vitest.config-ui.ts --browser=chromium", "clean-coverage": "rm -rf coverage .nyc_output", "badges": "npx -p dependency-version-badge update-badge typescript vitest vite", "build": "pnpm build-vite && pnpm build-components && pnpm copy-docs", @@ -94,6 +94,9 @@ "bugs": { "url": "https://github.com/thednp/bootstrap.native/issues" }, + "files": [ + "dist" + ], "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org/" @@ -109,21 +112,21 @@ "typescript" ], "dependencies": { - "@thednp/event-listener": "^2.0.10", + "@thednp/event-listener": "^2.0.12", "@thednp/position-observer": "^1.1.0", "@thednp/shorty": "^2.0.11" }, "devDependencies": { - "@types/node": "^24.3.1", - "@vitest/browser": "^3.2.4", - "@vitest/coverage-istanbul": "^3.2.4", - "@vitest/ui": "^3.2.4", - "playwright": "^1.55.0", - "typescript": "^5.9.2", - "vite": "^7.1.4", + "@types/node": "^25.5.0", + "@vitest/browser": "^4.1.0", + "@vitest/coverage-istanbul": "^4.1.0", + "@vitest/ui": "^4.1.0", + "playwright": "^1.58.2", + "typescript": "^5.9.3", + "vite": "^8.0.0", "vite-plugin-dts": "^4.5.4", - "vite-plugin-strip-comments": "^0.0.6", - "vitest": "^3.2.4" + "vite-plugin-strip-comments": "^0.0.9", + "vitest": "^4.1.0" }, "packageManager": "pnpm@8.6.12", "engines": { From 134e3aaac6441df67ffd4170d5134170af6311a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <59501884+LoicE5@users.noreply.github.com> Date: Mon, 16 Mar 2026 22:24:20 +0100 Subject: [PATCH 03/10] chore: bump dev dependencies to latest versions --- pnpm-lock.yaml | 1833 ++++++++++++++++++------------------------------ 1 file changed, 667 insertions(+), 1166 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 75e164c5..b872f10d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,8 +6,8 @@ settings: dependencies: '@thednp/event-listener': - specifier: ^2.0.10 - version: 2.0.10 + specifier: ^2.0.12 + version: 2.0.12 '@thednp/position-observer': specifier: ^1.1.0 version: 1.1.0 @@ -17,68 +17,68 @@ dependencies: devDependencies: '@types/node': - specifier: ^24.3.1 - version: 24.3.1 + specifier: ^25.5.0 + version: 25.5.0 '@vitest/browser': - specifier: ^3.2.4 - version: 3.2.4(playwright@1.55.0)(vite@7.1.4)(vitest@3.2.4) + specifier: ^4.1.0 + version: 4.1.0(vite@8.0.0)(vitest@4.1.0) '@vitest/coverage-istanbul': - specifier: ^3.2.4 - version: 3.2.4(vitest@3.2.4) + specifier: ^4.1.0 + version: 4.1.0(vitest@4.1.0) '@vitest/ui': - specifier: ^3.2.4 - version: 3.2.4(vitest@3.2.4) + specifier: ^4.1.0 + version: 4.1.0(vitest@4.1.0) playwright: - specifier: ^1.55.0 - version: 1.55.0 + specifier: ^1.58.2 + version: 1.58.2 typescript: - specifier: ^5.9.2 - version: 5.9.2 + specifier: ^5.9.3 + version: 5.9.3 vite: - specifier: ^7.1.4 - version: 7.1.4(@types/node@24.3.1) + specifier: ^8.0.0 + version: 8.0.0(@types/node@25.5.0) vite-plugin-dts: specifier: ^4.5.4 - version: 4.5.4(@types/node@24.3.1)(typescript@5.9.2)(vite@7.1.4) + version: 4.5.4(@types/node@25.5.0)(typescript@5.9.3)(vite@8.0.0) vite-plugin-strip-comments: - specifier: ^0.0.6 - version: 0.0.6 + specifier: ^0.0.9 + version: 0.0.9 vitest: - specifier: ^3.2.4 - version: 3.2.4(@types/node@24.3.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4) + specifier: ^4.1.0 + version: 4.1.0(@types/node@25.5.0)(@vitest/ui@4.1.0)(vite@8.0.0) packages: - /@babel/code-frame@7.27.1: - resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + /@babel/code-frame@7.29.0: + resolution: {integrity: sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 js-tokens: 4.0.0 picocolors: 1.1.1 dev: true - /@babel/compat-data@7.28.4: - resolution: {integrity: sha512-YsmSKC29MJwf0gF8Rjjrg5LQCmyh+j/nD8/eP7f+BeoQTKYqs9RoWbjGOdy0+1Ekr68RJZMUOPVQaQisnIo4Rw==} + /@babel/compat-data@7.29.0: + resolution: {integrity: sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==} engines: {node: '>=6.9.0'} dev: true - /@babel/core@7.28.4: - resolution: {integrity: sha512-2BCOP7TN8M+gVDj7/ht3hsaO/B/n5oDbiAyyvnRlNOs+u1o+JWNYTQrmpuNp1/Wq2gcFrI01JAW+paEKDMx/CA==} + /@babel/core@7.29.0: + resolution: {integrity: sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.27.1 - '@babel/generator': 7.28.3 - '@babel/helper-compilation-targets': 7.27.2 - '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.4) - '@babel/helpers': 7.28.4 - '@babel/parser': 7.28.4 - '@babel/template': 7.27.2 - '@babel/traverse': 7.28.4 - '@babel/types': 7.28.4 + '@babel/code-frame': 7.29.0 + '@babel/generator': 7.29.1 + '@babel/helper-compilation-targets': 7.28.6 + '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0) + '@babel/helpers': 7.28.6 + '@babel/parser': 7.29.0 + '@babel/template': 7.28.6 + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 '@jridgewell/remapping': 2.3.5 convert-source-map: 2.0.0 - debug: 4.4.1 + debug: 4.4.3 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -86,24 +86,24 @@ packages: - supports-color dev: true - /@babel/generator@7.28.3: - resolution: {integrity: sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw==} + /@babel/generator@7.29.1: + resolution: {integrity: sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/parser': 7.28.4 - '@babel/types': 7.28.4 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 '@jridgewell/gen-mapping': 0.3.13 - '@jridgewell/trace-mapping': 0.3.30 + '@jridgewell/trace-mapping': 0.3.31 jsesc: 3.1.0 dev: true - /@babel/helper-compilation-targets@7.27.2: - resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==} + /@babel/helper-compilation-targets@7.28.6: + resolution: {integrity: sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/compat-data': 7.28.4 + '@babel/compat-data': 7.29.0 '@babel/helper-validator-option': 7.27.1 - browserslist: 4.25.4 + browserslist: 4.28.1 lru-cache: 5.1.1 semver: 6.3.1 dev: true @@ -113,26 +113,26 @@ packages: engines: {node: '>=6.9.0'} dev: true - /@babel/helper-module-imports@7.27.1: - resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==} + /@babel/helper-module-imports@7.28.6: + resolution: {integrity: sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/traverse': 7.28.4 - '@babel/types': 7.28.4 + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 transitivePeerDependencies: - supports-color dev: true - /@babel/helper-module-transforms@7.28.3(@babel/core@7.28.4): - resolution: {integrity: sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==} + /@babel/helper-module-transforms@7.28.6(@babel/core@7.29.0): + resolution: {integrity: sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.28.4 - '@babel/helper-module-imports': 7.27.1 - '@babel/helper-validator-identifier': 7.27.1 - '@babel/traverse': 7.28.4 + '@babel/core': 7.29.0 + '@babel/helper-module-imports': 7.28.6 + '@babel/helper-validator-identifier': 7.28.5 + '@babel/traverse': 7.29.0 transitivePeerDependencies: - supports-color dev: true @@ -142,8 +142,8 @@ packages: engines: {node: '>=6.9.0'} dev: true - /@babel/helper-validator-identifier@7.27.1: - resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} + /@babel/helper-validator-identifier@7.28.5: + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} engines: {node: '>=6.9.0'} dev: true @@ -152,316 +152,82 @@ packages: engines: {node: '>=6.9.0'} dev: true - /@babel/helpers@7.28.4: - resolution: {integrity: sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==} + /@babel/helpers@7.28.6: + resolution: {integrity: sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.27.2 - '@babel/types': 7.28.4 + '@babel/template': 7.28.6 + '@babel/types': 7.29.0 dev: true - /@babel/parser@7.28.4: - resolution: {integrity: sha512-yZbBqeM6TkpP9du/I2pUZnJsRMGGvOuIrhjzC1AwHwW+6he4mni6Bp/m8ijn0iOuZuPI2BfkCoSRunpyjnrQKg==} + /@babel/parser@7.29.0: + resolution: {integrity: sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.28.4 + '@babel/types': 7.29.0 dev: true - /@babel/runtime@7.28.4: - resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==} - engines: {node: '>=6.9.0'} - dev: true - - /@babel/template@7.27.2: - resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} + /@babel/template@7.28.6: + resolution: {integrity: sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.27.1 - '@babel/parser': 7.28.4 - '@babel/types': 7.28.4 + '@babel/code-frame': 7.29.0 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 dev: true - /@babel/traverse@7.28.4: - resolution: {integrity: sha512-YEzuboP2qvQavAcjgQNVgsvHIDv6ZpwXvcvjmyySP2DIMuByS/6ioU5G9pYrWHM6T2YDfc7xga9iNzYOs12CFQ==} + /@babel/traverse@7.29.0: + resolution: {integrity: sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.27.1 - '@babel/generator': 7.28.3 + '@babel/code-frame': 7.29.0 + '@babel/generator': 7.29.1 '@babel/helper-globals': 7.28.0 - '@babel/parser': 7.28.4 - '@babel/template': 7.27.2 - '@babel/types': 7.28.4 - debug: 4.4.1 + '@babel/parser': 7.29.0 + '@babel/template': 7.28.6 + '@babel/types': 7.29.0 + debug: 4.4.3 transitivePeerDependencies: - supports-color dev: true - /@babel/types@7.28.4: - resolution: {integrity: sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q==} + /@babel/types@7.29.0: + resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.27.1 - '@babel/helper-validator-identifier': 7.27.1 - dev: true - - /@esbuild/aix-ppc64@0.25.9: - resolution: {integrity: sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - requiresBuild: true - dev: true - optional: true - - /@esbuild/android-arm64@0.25.9: - resolution: {integrity: sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/android-arm@0.25.9: - resolution: {integrity: sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/android-x64@0.25.9: - resolution: {integrity: sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/darwin-arm64@0.25.9: - resolution: {integrity: sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@esbuild/darwin-x64@0.25.9: - resolution: {integrity: sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@esbuild/freebsd-arm64@0.25.9: - resolution: {integrity: sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - requiresBuild: true + '@babel/helper-validator-identifier': 7.28.5 dev: true - optional: true - /@esbuild/freebsd-x64@0.25.9: - resolution: {integrity: sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - requiresBuild: true + /@blazediff/core@1.9.1: + resolution: {integrity: sha512-ehg3jIkYKulZh+8om/O25vkvSsXXwC+skXmyA87FFx6A/45eqOkZsBltMw/TVteb0mloiGT8oGRTcjRAz66zaA==} dev: true - optional: true - /@esbuild/linux-arm64@0.25.9: - resolution: {integrity: sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-arm@0.25.9: - resolution: {integrity: sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-ia32@0.25.9: - resolution: {integrity: sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-loong64@0.25.9: - resolution: {integrity: sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-mips64el@0.25.9: - resolution: {integrity: sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-ppc64@0.25.9: - resolution: {integrity: sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-riscv64@0.25.9: - resolution: {integrity: sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-s390x@0.25.9: - resolution: {integrity: sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-x64@0.25.9: - resolution: {integrity: sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/netbsd-arm64@0.25.9: - resolution: {integrity: sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [netbsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/netbsd-x64@0.25.9: - resolution: {integrity: sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/openbsd-arm64@0.25.9: - resolution: {integrity: sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/openbsd-x64@0.25.9: - resolution: {integrity: sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/openharmony-arm64@0.25.9: - resolution: {integrity: sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openharmony] - requiresBuild: true - dev: true - optional: true - - /@esbuild/sunos-x64@0.25.9: - resolution: {integrity: sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - requiresBuild: true - dev: true - optional: true - - /@esbuild/win32-arm64@0.25.9: - resolution: {integrity: sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] + /@emnapi/core@1.9.0: + resolution: {integrity: sha512-0DQ98G9ZQZOxfUcQn1waV2yS8aWdZ6kJMbYCJB3oUBecjWYO1fqJ+a1DRfPF3O5JEkwqwP1A9QEN/9mYm2Yd0w==} requiresBuild: true + dependencies: + '@emnapi/wasi-threads': 1.2.0 + tslib: 2.8.1 dev: true optional: true - /@esbuild/win32-ia32@0.25.9: - resolution: {integrity: sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] + /@emnapi/runtime@1.9.0: + resolution: {integrity: sha512-QN75eB0IH2ywSpRpNddCRfQIhmJYBCJ1x5Lb3IscKAL8bMnVAKnRg8dCoXbHzVLLH7P38N2Z3mtulB7W0J0FKw==} requiresBuild: true + dependencies: + tslib: 2.8.1 dev: true optional: true - /@esbuild/win32-x64@0.25.9: - resolution: {integrity: sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] + /@emnapi/wasi-threads@1.2.0: + resolution: {integrity: sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==} requiresBuild: true - dev: true - optional: true - - /@isaacs/balanced-match@4.0.1: - resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} - engines: {node: 20 || >=22} - dev: true - - /@isaacs/brace-expansion@5.0.0: - resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==} - engines: {node: 20 || >=22} - dependencies: - '@isaacs/balanced-match': 4.0.1 - dev: true - - /@isaacs/cliui@8.0.2: - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} dependencies: - string-width: 5.1.2 - string-width-cjs: /string-width@4.2.3 - strip-ansi: 7.1.0 - strip-ansi-cjs: /strip-ansi@6.0.1 - wrap-ansi: 8.1.0 - wrap-ansi-cjs: /wrap-ansi@7.0.0 + tslib: 2.8.1 dev: true + optional: true /@istanbuljs/schema@0.1.3: resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} @@ -472,14 +238,14 @@ packages: resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} dependencies: '@jridgewell/sourcemap-codec': 1.5.5 - '@jridgewell/trace-mapping': 0.3.30 + '@jridgewell/trace-mapping': 0.3.31 dev: true /@jridgewell/remapping@2.3.5: resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} dependencies: '@jridgewell/gen-mapping': 0.3.13 - '@jridgewell/trace-mapping': 0.3.30 + '@jridgewell/trace-mapping': 0.3.31 dev: true /@jridgewell/resolve-uri@3.1.2: @@ -491,37 +257,38 @@ packages: resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} dev: true - /@jridgewell/trace-mapping@0.3.30: - resolution: {integrity: sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==} + /@jridgewell/trace-mapping@0.3.31: + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} dependencies: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.5 dev: true - /@microsoft/api-extractor-model@7.30.7(@types/node@24.3.1): - resolution: {integrity: sha512-TBbmSI2/BHpfR9YhQA7nH0nqVmGgJ0xH0Ex4D99/qBDAUpnhA2oikGmdXanbw9AWWY/ExBYIpkmY8dBHdla3YQ==} + /@microsoft/api-extractor-model@7.33.4(@types/node@25.5.0): + resolution: {integrity: sha512-u1LTaNTikZAQ9uK6KG1Ms7nvNedsnODnspq/gH2dcyETWvH4hVNGNDvRAEutH66kAmxA4/necElqGNs1FggC8w==} dependencies: - '@microsoft/tsdoc': 0.15.1 - '@microsoft/tsdoc-config': 0.17.1 - '@rushstack/node-core-library': 5.14.0(@types/node@24.3.1) + '@microsoft/tsdoc': 0.16.0 + '@microsoft/tsdoc-config': 0.18.1 + '@rushstack/node-core-library': 5.20.3(@types/node@25.5.0) transitivePeerDependencies: - '@types/node' dev: true - /@microsoft/api-extractor@7.52.11(@types/node@24.3.1): - resolution: {integrity: sha512-IKQ7bHg6f/Io3dQds6r9QPYk4q0OlR9A4nFDtNhUt3UUIhyitbxAqRN1CLjUVtk6IBk3xzyCMOdwwtIXQ7AlGg==} + /@microsoft/api-extractor@7.57.7(@types/node@25.5.0): + resolution: {integrity: sha512-kmnmVs32MFWbV5X6BInC1/TfCs7y1ugwxv1xHsAIj/DyUfoe7vtO0alRUgbQa57+yRGHBBjlNcEk33SCAt5/dA==} hasBin: true dependencies: - '@microsoft/api-extractor-model': 7.30.7(@types/node@24.3.1) - '@microsoft/tsdoc': 0.15.1 - '@microsoft/tsdoc-config': 0.17.1 - '@rushstack/node-core-library': 5.14.0(@types/node@24.3.1) - '@rushstack/rig-package': 0.5.3 - '@rushstack/terminal': 0.15.4(@types/node@24.3.1) - '@rushstack/ts-command-line': 5.0.2(@types/node@24.3.1) - lodash: 4.17.21 - minimatch: 10.0.3 - resolve: 1.22.10 + '@microsoft/api-extractor-model': 7.33.4(@types/node@25.5.0) + '@microsoft/tsdoc': 0.16.0 + '@microsoft/tsdoc-config': 0.18.1 + '@rushstack/node-core-library': 5.20.3(@types/node@25.5.0) + '@rushstack/rig-package': 0.7.2 + '@rushstack/terminal': 0.22.3(@types/node@25.5.0) + '@rushstack/ts-command-line': 5.3.3(@types/node@25.5.0) + diff: 8.0.3 + lodash: 4.17.23 + minimatch: 10.2.3 + resolve: 1.22.11 semver: 7.5.4 source-map: 0.6.1 typescript: 5.8.2 @@ -529,255 +296,251 @@ packages: - '@types/node' dev: true - /@microsoft/tsdoc-config@0.17.1: - resolution: {integrity: sha512-UtjIFe0C6oYgTnad4q1QP4qXwLhe6tIpNTRStJ2RZEPIkqQPREAwE5spzVxsdn9UaEMUqhh0AqSx3X4nWAKXWw==} + /@microsoft/tsdoc-config@0.18.1: + resolution: {integrity: sha512-9brPoVdfN9k9g0dcWkFeA7IH9bbcttzDJlXvkf8b2OBzd5MueR1V2wkKBL0abn0otvmkHJC6aapBOTJDDeMCZg==} dependencies: - '@microsoft/tsdoc': 0.15.1 - ajv: 8.12.0 + '@microsoft/tsdoc': 0.16.0 + ajv: 8.18.0 jju: 1.4.0 - resolve: 1.22.10 + resolve: 1.22.11 dev: true - /@microsoft/tsdoc@0.15.1: - resolution: {integrity: sha512-4aErSrCR/On/e5G2hDP0wjooqDdauzEbIq8hIkIe5pXV0rtWJZvdCEKL0ykZxex+IxIwBp0eGeV48hQN07dXtw==} + /@microsoft/tsdoc@0.16.0: + resolution: {integrity: sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==} dev: true - /@pkgjs/parseargs@0.11.0: - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} + /@napi-rs/wasm-runtime@1.1.1: + resolution: {integrity: sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==} requiresBuild: true + dependencies: + '@emnapi/core': 1.9.0 + '@emnapi/runtime': 1.9.0 + '@tybys/wasm-util': 0.10.1 dev: true optional: true - /@polka/url@1.0.0-next.29: - resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} + /@oxc-project/runtime@0.115.0: + resolution: {integrity: sha512-Rg8Wlt5dCbXhQnsXPrkOjL1DTSvXLgb2R/KYfnf1/K+R0k6UMLEmbQXPM+kwrWqSmWA2t0B1EtHy2/3zikQpvQ==} + engines: {node: ^20.19.0 || >=22.12.0} dev: true - /@rollup/pluginutils@5.3.0: - resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - dependencies: - '@types/estree': 1.0.8 - estree-walker: 2.0.2 - picomatch: 4.0.3 + /@oxc-project/types@0.115.0: + resolution: {integrity: sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw==} dev: true - /@rollup/rollup-android-arm-eabi@4.50.0: - resolution: {integrity: sha512-lVgpeQyy4fWN5QYebtW4buT/4kn4p4IJ+kDNB4uYNT5b8c8DLJDg6titg20NIg7E8RWwdWZORW6vUFfrLyG3KQ==} - cpu: [arm] - os: [android] - requiresBuild: true + /@polka/url@1.0.0-next.29: + resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} dev: true - optional: true - /@rollup/rollup-android-arm64@4.50.0: - resolution: {integrity: sha512-2O73dR4Dc9bp+wSYhviP6sDziurB5/HCym7xILKifWdE9UsOe2FtNcM+I4xZjKrfLJnq5UR8k9riB87gauiQtw==} + /@rolldown/binding-android-arm64@1.0.0-rc.9: + resolution: {integrity: sha512-lcJL0bN5hpgJfSIz/8PIf02irmyL43P+j1pTCfbD1DbLkmGRuFIA4DD3B3ZOvGqG0XiVvRznbKtN0COQVaKUTg==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-arm64@4.50.0: - resolution: {integrity: sha512-vwSXQN8T4sKf1RHr1F0s98Pf8UPz7pS6P3LG9NSmuw0TVh7EmaE+5Ny7hJOZ0M2yuTctEsHHRTMi2wuHkdS6Hg==} + /@rolldown/binding-darwin-arm64@1.0.0-rc.9: + resolution: {integrity: sha512-J7Zk3kLYFsLtuH6U+F4pS2sYVzac0qkjcO5QxHS7OS7yZu2LRs+IXo+uvJ/mvpyUljDJ3LROZPoQfgBIpCMhdQ==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-x64@4.50.0: - resolution: {integrity: sha512-cQp/WG8HE7BCGyFVuzUg0FNmupxC+EPZEwWu2FCGGw5WDT1o2/YlENbm5e9SMvfDFR6FRhVCBePLqj0o8MN7Vw==} + /@rolldown/binding-darwin-x64@1.0.0-rc.9: + resolution: {integrity: sha512-iwtmmghy8nhfRGeNAIltcNXzD0QMNaaA5U/NyZc1Ia4bxrzFByNMDoppoC+hl7cDiUq5/1CnFthpT9n+UtfFyg==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-freebsd-arm64@4.50.0: - resolution: {integrity: sha512-UR1uTJFU/p801DvvBbtDD7z9mQL8J80xB0bR7DqW7UGQHRm/OaKzp4is7sQSdbt2pjjSS72eAtRh43hNduTnnQ==} - cpu: [arm64] - os: [freebsd] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-freebsd-x64@4.50.0: - resolution: {integrity: sha512-G/DKyS6PK0dD0+VEzH/6n/hWDNPDZSMBmqsElWnCRGrYOb2jC0VSupp7UAHHQ4+QILwkxSMaYIbQ72dktp8pKA==} + /@rolldown/binding-freebsd-x64@1.0.0-rc.9: + resolution: {integrity: sha512-DLFYI78SCiZr5VvdEplsVC2Vx53lnA4/Ga5C65iyldMVaErr86aiqCoNBLl92PXPfDtUYjUh+xFFor40ueNs4Q==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm-gnueabihf@4.50.0: - resolution: {integrity: sha512-u72Mzc6jyJwKjJbZZcIYmd9bumJu7KNmHYdue43vT1rXPm2rITwmPWF0mmPzLm9/vJWxIRbao/jrQmxTO0Sm9w==} - cpu: [arm] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-linux-arm-musleabihf@4.50.0: - resolution: {integrity: sha512-S4UefYdV0tnynDJV1mdkNawp0E5Qm2MtSs330IyHgaccOFrwqsvgigUD29uT+B/70PDY1eQ3t40+xf6wIvXJyg==} + /@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.9: + resolution: {integrity: sha512-CsjTmTwd0Hri6iTw/DRMK7kOZ7FwAkrO4h8YWKoX/kcj833e4coqo2wzIFywtch/8Eb5enQ/lwLM7w6JX1W5RQ==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-gnu@4.50.0: - resolution: {integrity: sha512-1EhkSvUQXJsIhk4msxP5nNAUWoB4MFDHhtc4gAYvnqoHlaL9V3F37pNHabndawsfy/Tp7BPiy/aSa6XBYbaD1g==} + /@rolldown/binding-linux-arm64-gnu@1.0.0-rc.9: + resolution: {integrity: sha512-2x9O2JbSPxpxMDhP9Z74mahAStibTlrBMW0520+epJH5sac7/LwZW5Bmg/E6CXuEF53JJFW509uP+lSedaUNxg==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-musl@4.50.0: - resolution: {integrity: sha512-EtBDIZuDtVg75xIPIK1l5vCXNNCIRM0OBPUG+tbApDuJAy9mKago6QxX+tfMzbCI6tXEhMuZuN1+CU8iDW+0UQ==} + /@rolldown/binding-linux-arm64-musl@1.0.0-rc.9: + resolution: {integrity: sha512-JA1QRW31ogheAIRhIg9tjMfsYbglXXYGNPLdPEYrwFxdbkQCAzvpSCSHCDWNl4hTtrol8WeboCSEpjdZK8qrCg==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-loongarch64-gnu@4.50.0: - resolution: {integrity: sha512-BGYSwJdMP0hT5CCmljuSNx7+k+0upweM2M4YGfFBjnFSZMHOLYR0gEEj/dxyYJ6Zc6AiSeaBY8dWOa11GF/ppQ==} - cpu: [loong64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-linux-ppc64-gnu@4.50.0: - resolution: {integrity: sha512-I1gSMzkVe1KzAxKAroCJL30hA4DqSi+wGc5gviD0y3IL/VkvcnAqwBf4RHXHyvH66YVHxpKO8ojrgc4SrWAnLg==} + /@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.9: + resolution: {integrity: sha512-aOKU9dJheda8Kj8Y3w9gnt9QFOO+qKPAl8SWd7JPHP+Cu0EuDAE5wokQubLzIDQWg2myXq2XhTpOVS07qqvT+w==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-riscv64-gnu@4.50.0: - resolution: {integrity: sha512-bSbWlY3jZo7molh4tc5dKfeSxkqnf48UsLqYbUhnkdnfgZjgufLS/NTA8PcP/dnvct5CCdNkABJ56CbclMRYCA==} - cpu: [riscv64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-linux-riscv64-musl@4.50.0: - resolution: {integrity: sha512-LSXSGumSURzEQLT2e4sFqFOv3LWZsEF8FK7AAv9zHZNDdMnUPYH3t8ZlaeYYZyTXnsob3htwTKeWtBIkPV27iQ==} - cpu: [riscv64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-linux-s390x-gnu@4.50.0: - resolution: {integrity: sha512-CxRKyakfDrsLXiCyucVfVWVoaPA4oFSpPpDwlMcDFQvrv3XY6KEzMtMZrA+e/goC8xxp2WSOxHQubP8fPmmjOQ==} + /@rolldown/binding-linux-s390x-gnu@1.0.0-rc.9: + resolution: {integrity: sha512-OalO94fqj7IWRn3VdXWty75jC5dk4C197AWEuMhIpvVv2lw9fiPhud0+bW2ctCxb3YoBZor71QHbY+9/WToadA==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-gnu@4.50.0: - resolution: {integrity: sha512-8PrJJA7/VU8ToHVEPu14FzuSAqVKyo5gg/J8xUerMbyNkWkO9j2ExBho/68RnJsMGNJq4zH114iAttgm7BZVkA==} + /@rolldown/binding-linux-x64-gnu@1.0.0-rc.9: + resolution: {integrity: sha512-cVEl1vZtBsBZna3YMjGXNvnYYrOJ7RzuWvZU0ffvJUexWkukMaDuGhUXn0rjnV0ptzGVkvc+vW9Yqy6h8YX4pg==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-musl@4.50.0: - resolution: {integrity: sha512-SkE6YQp+CzpyOrbw7Oc4MgXFvTw2UIBElvAvLCo230pyxOLmYwRPwZ/L5lBe/VW/qT1ZgND9wJfOsdy0XptRvw==} + /@rolldown/binding-linux-x64-musl@1.0.0-rc.9: + resolution: {integrity: sha512-UzYnKCIIc4heAKgI4PZ3dfBGUZefGCJ1TPDuLHoCzgrMYPb5Rv6TLFuYtyM4rWyHM7hymNdsg5ik2C+UD9VDbA==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-openharmony-arm64@4.50.0: - resolution: {integrity: sha512-PZkNLPfvXeIOgJWA804zjSFH7fARBBCpCXxgkGDRjjAhRLOR8o0IGS01ykh5GYfod4c2yiiREuDM8iZ+pVsT+Q==} + /@rolldown/binding-openharmony-arm64@1.0.0-rc.9: + resolution: {integrity: sha512-+6zoiF+RRyf5cdlFQP7nm58mq7+/2PFaY2DNQeD4B87N36JzfF/l9mdBkkmTvSYcYPE8tMh/o3cRlsx1ldLfog==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-arm64-msvc@4.50.0: - resolution: {integrity: sha512-q7cIIdFvWQoaCbLDUyUc8YfR3Jh2xx3unO8Dn6/TTogKjfwrax9SyfmGGK6cQhKtjePI7jRfd7iRYcxYs93esg==} - cpu: [arm64] - os: [win32] + /@rolldown/binding-wasm32-wasi@1.0.0-rc.9: + resolution: {integrity: sha512-rgFN6sA/dyebil3YTlL2evvi/M+ivhfnyxec7AccTpRPccno/rPoNlqybEZQBkcbZu8Hy+eqNJCqfBR8P7Pg8g==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] requiresBuild: true + dependencies: + '@napi-rs/wasm-runtime': 1.1.1 dev: true optional: true - /@rollup/rollup-win32-ia32-msvc@4.50.0: - resolution: {integrity: sha512-XzNOVg/YnDOmFdDKcxxK410PrcbcqZkBmz+0FicpW5jtjKQxcW1BZJEQOF0NJa6JO7CZhett8GEtRN/wYLYJuw==} - cpu: [ia32] + /@rolldown/binding-win32-arm64-msvc@1.0.0-rc.9: + resolution: {integrity: sha512-lHVNUG/8nlF1IQk1C0Ci574qKYyty2goMiPlRqkC5R+3LkXDkL5Dhx8ytbxq35m+pkHVIvIxviD+TWLdfeuadA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-x64-msvc@4.50.0: - resolution: {integrity: sha512-xMmiWRR8sp72Zqwjgtf3QbZfF1wdh8X2ABu3EaozvZcyHJeU0r+XAnXdKgs4cCAp6ORoYoCygipYP1mjmbjrsg==} + /@rolldown/binding-win32-x64-msvc@1.0.0-rc.9: + resolution: {integrity: sha512-G0oA4+w1iY5AGi5HcDTxWsoxF509hrFIPB2rduV5aDqS9FtDg1CAfa7V34qImbjfhIcA8C+RekocJZA96EarwQ==} + engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] requiresBuild: true dev: true optional: true - /@rushstack/node-core-library@5.14.0(@types/node@24.3.1): - resolution: {integrity: sha512-eRong84/rwQUlATGFW3TMTYVyqL1vfW9Lf10PH+mVGfIb9HzU3h5AASNIw+axnBLjnD0n3rT5uQBwu9fvzATrg==} + /@rolldown/pluginutils@1.0.0-rc.9: + resolution: {integrity: sha512-w6oiRWgEBl04QkFZgmW+jnU1EC9b57Oihi2ot3HNWIQRqgHp5PnYDia5iZ5FF7rpa4EQdiqMDXjlqKGXBhsoXw==} + dev: true + + /@rollup/pluginutils@5.3.0: + resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@types/estree': 1.0.8 + estree-walker: 2.0.2 + picomatch: 4.0.3 + dev: true + + /@rushstack/node-core-library@5.20.3(@types/node@25.5.0): + resolution: {integrity: sha512-95JgEPq2k7tHxhF9/OJnnyHDXfC9cLhhta0An/6MlkDsX2A6dTzDrTUG18vx4vjc280V0fi0xDH9iQczpSuWsw==} peerDependencies: '@types/node': '*' peerDependenciesMeta: '@types/node': optional: true dependencies: - '@types/node': 24.3.1 - ajv: 8.13.0 - ajv-draft-04: 1.0.0(ajv@8.13.0) - ajv-formats: 3.0.1(ajv@8.13.0) - fs-extra: 11.3.1 + '@types/node': 25.5.0 + ajv: 8.18.0 + ajv-draft-04: 1.0.0(ajv@8.18.0) + ajv-formats: 3.0.1(ajv@8.18.0) + fs-extra: 11.3.4 import-lazy: 4.0.0 jju: 1.4.0 - resolve: 1.22.10 + resolve: 1.22.11 semver: 7.5.4 dev: true - /@rushstack/rig-package@0.5.3: - resolution: {integrity: sha512-olzSSjYrvCNxUFZowevC3uz8gvKr3WTpHQ7BkpjtRpA3wK+T0ybep/SRUMfr195gBzJm5gaXw0ZMgjIyHqJUow==} + /@rushstack/problem-matcher@0.2.1(@types/node@25.5.0): + resolution: {integrity: sha512-gulfhBs6n+I5b7DvjKRfhMGyUejtSgOHTclF/eONr8hcgF1APEDjhxIsfdUYYMzC3rvLwGluqLjbwCFZ8nxrog==} + peerDependencies: + '@types/node': '*' + peerDependenciesMeta: + '@types/node': + optional: true dependencies: - resolve: 1.22.10 + '@types/node': 25.5.0 + dev: true + + /@rushstack/rig-package@0.7.2: + resolution: {integrity: sha512-9XbFWuqMYcHUso4mnETfhGVUSaADBRj6HUAAEYk50nMPn8WRICmBuCphycQGNB3duIR6EEZX3Xj3SYc2XiP+9A==} + dependencies: + resolve: 1.22.11 strip-json-comments: 3.1.1 dev: true - /@rushstack/terminal@0.15.4(@types/node@24.3.1): - resolution: {integrity: sha512-OQSThV0itlwVNHV6thoXiAYZlQh4Fgvie2CzxFABsbO2MWQsI4zOh3LRNigYSTrmS+ba2j0B3EObakPzf/x6Zg==} + /@rushstack/terminal@0.22.3(@types/node@25.5.0): + resolution: {integrity: sha512-gHC9pIMrUPzAbBiI4VZMU7Q+rsCzb8hJl36lFIulIzoceKotyKL3Rd76AZ2CryCTKEg+0bnTj406HE5YY5OQvw==} peerDependencies: '@types/node': '*' peerDependenciesMeta: '@types/node': optional: true dependencies: - '@rushstack/node-core-library': 5.14.0(@types/node@24.3.1) - '@types/node': 24.3.1 + '@rushstack/node-core-library': 5.20.3(@types/node@25.5.0) + '@rushstack/problem-matcher': 0.2.1(@types/node@25.5.0) + '@types/node': 25.5.0 supports-color: 8.1.1 dev: true - /@rushstack/ts-command-line@5.0.2(@types/node@24.3.1): - resolution: {integrity: sha512-+AkJDbu1GFMPIU8Sb7TLVXDv/Q7Mkvx+wAjEl8XiXVVq+p1FmWW6M3LYpJMmoHNckSofeMecgWg5lfMwNAAsEQ==} + /@rushstack/ts-command-line@5.3.3(@types/node@25.5.0): + resolution: {integrity: sha512-c+ltdcvC7ym+10lhwR/vWiOhsrm/bP3By2VsFcs5qTKv+6tTmxgbVrtJ5NdNjANiV5TcmOZgUN+5KYQ4llsvEw==} dependencies: - '@rushstack/terminal': 0.15.4(@types/node@24.3.1) + '@rushstack/terminal': 0.22.3(@types/node@25.5.0) '@types/argparse': 1.0.38 argparse: 1.0.10 string-argv: 0.3.2 @@ -785,31 +548,12 @@ packages: - '@types/node' dev: true - /@testing-library/dom@10.4.1: - resolution: {integrity: sha512-o4PXJQidqJl82ckFaXUeoAW+XysPLauYI43Abki5hABd853iMhitooc6znOnczgbTYmEP6U6/y1ZyKAIsvMKGg==} - engines: {node: '>=18'} - dependencies: - '@babel/code-frame': 7.27.1 - '@babel/runtime': 7.28.4 - '@types/aria-query': 5.0.4 - aria-query: 5.3.0 - dom-accessibility-api: 0.5.16 - lz-string: 1.5.0 - picocolors: 1.1.1 - pretty-format: 27.5.1 - dev: true - - /@testing-library/user-event@14.6.1(@testing-library/dom@10.4.1): - resolution: {integrity: sha512-vq7fv0rnt+QTXgPxr5Hjc210p6YKq2kmdziLgnsZGgLJ9e6VAShx1pACLuRjd/AS/sr7phAR58OIIpf0LlmQNw==} - engines: {node: '>=12', npm: '>=6'} - peerDependencies: - '@testing-library/dom': '>=7.21.4' - dependencies: - '@testing-library/dom': 10.4.1 + /@standard-schema/spec@1.1.0: + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} dev: true - /@thednp/event-listener@2.0.10: - resolution: {integrity: sha512-TH7YVKmoKg6GBLqZB+ETXObofcqJ/Tp5ycheolvYZMjLbMpzYf6MmOWTcBtx8+zrhWy8deV0hYkPvDFioDXdVQ==} + /@thednp/event-listener@2.0.12: + resolution: {integrity: sha512-PbW05+EwNfGVy2uwz0vL2xbEmcLhpuBZ2nm0pdLT088gjmY9dySfJOZUtWCmzSPJcVFn3BkgH1m1MiS11AubJA==} engines: {node: '>=16', pnpm: '>=8.6.0'} dev: false @@ -825,18 +569,23 @@ packages: engines: {node: '>=16', pnpm: '>=8.6.0'} dev: false - /@types/argparse@1.0.38: - resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==} + /@tybys/wasm-util@0.10.1: + resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} + requiresBuild: true + dependencies: + tslib: 2.8.1 dev: true + optional: true - /@types/aria-query@5.0.4: - resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} + /@types/argparse@1.0.38: + resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==} dev: true - /@types/chai@5.2.2: - resolution: {integrity: sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg==} + /@types/chai@5.2.3: + resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==} dependencies: '@types/deep-eql': 4.0.2 + assertion-error: 2.0.1 dev: true /@types/deep-eql@4.0.2: @@ -847,37 +596,26 @@ packages: resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} dev: true - /@types/node@24.3.1: - resolution: {integrity: sha512-3vXmQDXy+woz+gnrTvuvNrPzekOi+Ds0ReMxw0LzBiK3a+1k0kQn9f2NWk+lgD4rJehFUmYy2gMhJ2ZI+7YP9g==} + /@types/node@25.5.0: + resolution: {integrity: sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw==} dependencies: - undici-types: 7.10.0 + undici-types: 7.18.2 dev: true - /@vitest/browser@3.2.4(playwright@1.55.0)(vite@7.1.4)(vitest@3.2.4): - resolution: {integrity: sha512-tJxiPrWmzH8a+w9nLKlQMzAKX/7VjFs50MWgcAj7p9XQ7AQ9/35fByFYptgPELyLw+0aixTnC4pUWV+APcZ/kw==} + /@vitest/browser@4.1.0(vite@8.0.0)(vitest@4.1.0): + resolution: {integrity: sha512-tG/iOrgbiHQks0ew7CdelUyNEHkv8NLrt+CqdTivIuoSnXvO7scWMn4Kqo78/UGY1NJ6Hv+vp8BvRnED/bjFdQ==} peerDependencies: - playwright: '*' - safaridriver: '*' - vitest: 3.2.4 - webdriverio: ^7.0.0 || ^8.0.0 || ^9.0.0 - peerDependenciesMeta: - playwright: - optional: true - safaridriver: - optional: true - webdriverio: - optional: true + vitest: 4.1.0 dependencies: - '@testing-library/dom': 10.4.1 - '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.1) - '@vitest/mocker': 3.2.4(vite@7.1.4) - '@vitest/utils': 3.2.4 - magic-string: 0.30.18 - playwright: 1.55.0 + '@blazediff/core': 1.9.1 + '@vitest/mocker': 4.1.0(vite@8.0.0) + '@vitest/utils': 4.1.0 + magic-string: 0.30.21 + pngjs: 7.0.0 sirv: 3.0.2 - tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/node@24.3.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4) - ws: 8.18.3 + tinyrainbow: 3.1.0 + vitest: 4.1.0(@types/node@25.5.0)(@vitest/ui@4.1.0)(vite@8.0.0) + ws: 8.19.0 transitivePeerDependencies: - bufferutil - msw @@ -885,137 +623,136 @@ packages: - vite dev: true - /@vitest/coverage-istanbul@3.2.4(vitest@3.2.4): - resolution: {integrity: sha512-IDlpuFJiWU9rhcKLkpzj8mFu/lpe64gVgnV15ZOrYx1iFzxxrxCzbExiUEKtwwXRvEiEMUS6iZeYgnMxgbqbxQ==} + /@vitest/coverage-istanbul@4.1.0(vitest@4.1.0): + resolution: {integrity: sha512-0+67gA94YToxd+Pc3XgIA/2c8HN2hXNSg3T+1FI4HW7W/2gPitYCtktsY6Ke7vrt5caboMq3TUf0/vwbHRb0og==} peerDependencies: - vitest: 3.2.4 + vitest: 4.1.0 dependencies: + '@babel/core': 7.29.0 '@istanbuljs/schema': 0.1.3 - debug: 4.4.1 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 istanbul-lib-coverage: 3.2.2 - istanbul-lib-instrument: 6.0.3 istanbul-lib-report: 3.0.1 - istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.2.0 - magicast: 0.3.5 - test-exclude: 7.0.1 - tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/node@24.3.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4) + magicast: 0.5.2 + obug: 2.1.1 + tinyrainbow: 3.1.0 + vitest: 4.1.0(@types/node@25.5.0)(@vitest/ui@4.1.0)(vite@8.0.0) transitivePeerDependencies: - supports-color dev: true - /@vitest/expect@3.2.4: - resolution: {integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==} + /@vitest/expect@4.1.0: + resolution: {integrity: sha512-EIxG7k4wlWweuCLG9Y5InKFwpMEOyrMb6ZJ1ihYu02LVj/bzUwn2VMU+13PinsjRW75XnITeFrQBMH5+dLvCDA==} dependencies: - '@types/chai': 5.2.2 - '@vitest/spy': 3.2.4 - '@vitest/utils': 3.2.4 - chai: 5.3.3 - tinyrainbow: 2.0.0 + '@standard-schema/spec': 1.1.0 + '@types/chai': 5.2.3 + '@vitest/spy': 4.1.0 + '@vitest/utils': 4.1.0 + chai: 6.2.2 + tinyrainbow: 3.1.0 dev: true - /@vitest/mocker@3.2.4(vite@7.1.4): - resolution: {integrity: sha512-46ryTE9RZO/rfDd7pEqFl7etuyzekzEhUbTW3BvmeO/BcCMEgq59BKhek3dXDWgAj4oMK6OZi+vRr1wPW6qjEQ==} + /@vitest/mocker@4.1.0(vite@8.0.0): + resolution: {integrity: sha512-evxREh+Hork43+Y4IOhTo+h5lGmVRyjqI739Rz4RlUPqwrkFFDF6EMvOOYjTx4E8Tl6gyCLRL8Mu7Ry12a13Tw==} peerDependencies: msw: ^2.4.9 - vite: ^5.0.0 || ^6.0.0 || ^7.0.0-0 + vite: ^6.0.0 || ^7.0.0 || ^8.0.0-0 peerDependenciesMeta: msw: optional: true vite: optional: true dependencies: - '@vitest/spy': 3.2.4 + '@vitest/spy': 4.1.0 estree-walker: 3.0.3 - magic-string: 0.30.18 - vite: 7.1.4(@types/node@24.3.1) + magic-string: 0.30.21 + vite: 8.0.0(@types/node@25.5.0) dev: true - /@vitest/pretty-format@3.2.4: - resolution: {integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==} + /@vitest/pretty-format@4.1.0: + resolution: {integrity: sha512-3RZLZlh88Ib0J7NQTRATfc/3ZPOnSUn2uDBUoGNn5T36+bALixmzphN26OUD3LRXWkJu4H0s5vvUeqBiw+kS0A==} dependencies: - tinyrainbow: 2.0.0 + tinyrainbow: 3.1.0 dev: true - /@vitest/runner@3.2.4: - resolution: {integrity: sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==} + /@vitest/runner@4.1.0: + resolution: {integrity: sha512-Duvx2OzQ7d6OjchL+trw+aSrb9idh7pnNfxrklo14p3zmNL4qPCDeIJAK+eBKYjkIwG96Bc6vYuxhqDXQOWpoQ==} dependencies: - '@vitest/utils': 3.2.4 + '@vitest/utils': 4.1.0 pathe: 2.0.3 - strip-literal: 3.0.0 dev: true - /@vitest/snapshot@3.2.4: - resolution: {integrity: sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==} + /@vitest/snapshot@4.1.0: + resolution: {integrity: sha512-0Vy9euT1kgsnj1CHttwi9i9o+4rRLEaPRSOJ5gyv579GJkNpgJK+B4HSv/rAWixx2wdAFci1X4CEPjiu2bXIMg==} dependencies: - '@vitest/pretty-format': 3.2.4 - magic-string: 0.30.18 + '@vitest/pretty-format': 4.1.0 + '@vitest/utils': 4.1.0 + magic-string: 0.30.21 pathe: 2.0.3 dev: true - /@vitest/spy@3.2.4: - resolution: {integrity: sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==} - dependencies: - tinyspy: 4.0.3 + /@vitest/spy@4.1.0: + resolution: {integrity: sha512-pz77k+PgNpyMDv2FV6qmk5ZVau6c3R8HC8v342T2xlFxQKTrSeYw9waIJG8KgV9fFwAtTu4ceRzMivPTH6wSxw==} dev: true - /@vitest/ui@3.2.4(vitest@3.2.4): - resolution: {integrity: sha512-hGISOaP18plkzbWEcP/QvtRW1xDXF2+96HbEX6byqQhAUbiS5oH6/9JwW+QsQCIYON2bI6QZBF+2PvOmrRZ9wA==} + /@vitest/ui@4.1.0(vitest@4.1.0): + resolution: {integrity: sha512-sTSDtVM1GOevRGsCNhp1mBUHKo9Qlc55+HCreFT4fe99AHxl1QQNXSL3uj4Pkjh5yEuWZIx8E2tVC94nnBZECQ==} peerDependencies: - vitest: 3.2.4 + vitest: 4.1.0 dependencies: - '@vitest/utils': 3.2.4 + '@vitest/utils': 4.1.0 fflate: 0.8.2 - flatted: 3.3.3 + flatted: 3.4.0 pathe: 2.0.3 sirv: 3.0.2 tinyglobby: 0.2.15 - tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/node@24.3.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4) + tinyrainbow: 3.1.0 + vitest: 4.1.0(@types/node@25.5.0)(@vitest/ui@4.1.0)(vite@8.0.0) dev: true - /@vitest/utils@3.2.4: - resolution: {integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==} + /@vitest/utils@4.1.0: + resolution: {integrity: sha512-XfPXT6a8TZY3dcGY8EdwsBulFCIw+BeeX0RZn2x/BtiY/75YGh8FeWGG8QISN/WhaqSrE2OrlDgtF8q5uhOTmw==} dependencies: - '@vitest/pretty-format': 3.2.4 - loupe: 3.2.1 - tinyrainbow: 2.0.0 + '@vitest/pretty-format': 4.1.0 + convert-source-map: 2.0.0 + tinyrainbow: 3.1.0 dev: true - /@volar/language-core@2.4.23: - resolution: {integrity: sha512-hEEd5ET/oSmBC6pi1j6NaNYRWoAiDhINbT8rmwtINugR39loROSlufGdYMF9TaKGfz+ViGs1Idi3mAhnuPcoGQ==} + /@volar/language-core@2.4.28: + resolution: {integrity: sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==} dependencies: - '@volar/source-map': 2.4.23 + '@volar/source-map': 2.4.28 dev: true - /@volar/source-map@2.4.23: - resolution: {integrity: sha512-Z1Uc8IB57Lm6k7q6KIDu/p+JWtf3xsXJqAX/5r18hYOTpJyBn0KXUR8oTJ4WFYOcDzWC9n3IflGgHowx6U6z9Q==} + /@volar/source-map@2.4.28: + resolution: {integrity: sha512-yX2BDBqJkRXfKw8my8VarTyjv48QwxdJtvRgUpNE5erCsgEUdI2DsLbpa+rOQVAJYshY99szEcRDmyHbF10ggQ==} dev: true - /@volar/typescript@2.4.23: - resolution: {integrity: sha512-lAB5zJghWxVPqfcStmAP1ZqQacMpe90UrP5RJ3arDyrhy4aCUQqmxPPLB2PWDKugvylmO41ljK7vZ+t6INMTag==} + /@volar/typescript@2.4.28: + resolution: {integrity: sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==} dependencies: - '@volar/language-core': 2.4.23 + '@volar/language-core': 2.4.28 path-browserify: 1.0.1 vscode-uri: 3.1.0 dev: true - /@vue/compiler-core@3.5.21: - resolution: {integrity: sha512-8i+LZ0vf6ZgII5Z9XmUvrCyEzocvWT+TeR2VBUVlzIH6Tyv57E20mPZ1bCS+tbejgUgmjrEh7q/0F0bibskAmw==} + /@vue/compiler-core@3.5.30: + resolution: {integrity: sha512-s3DfdZkcu/qExZ+td75015ljzHc6vE+30cFMGRPROYjqkroYI5NV2X1yAMX9UeyBNWB9MxCfPcsjpLS11nzkkw==} dependencies: - '@babel/parser': 7.28.4 - '@vue/shared': 3.5.21 - entities: 4.5.0 + '@babel/parser': 7.29.0 + '@vue/shared': 3.5.30 + entities: 7.0.1 estree-walker: 2.0.2 source-map-js: 1.2.1 dev: true - /@vue/compiler-dom@3.5.21: - resolution: {integrity: sha512-jNtbu/u97wiyEBJlJ9kmdw7tAr5Vy0Aj5CgQmo+6pxWNQhXZDPsRr1UWPN4v3Zf82s2H3kF51IbzZ4jMWAgPlQ==} + /@vue/compiler-dom@3.5.30: + resolution: {integrity: sha512-eCFYESUEVYHhiMuK4SQTldO3RYxyMR/UQL4KdGD1Yrkfdx4m/HYuZ9jSfPdA+nWJY34VWndiYdW/wZXyiPEB9g==} dependencies: - '@vue/compiler-core': 3.5.21 - '@vue/shared': 3.5.21 + '@vue/compiler-core': 3.5.30 + '@vue/shared': 3.5.30 dev: true /@vue/compiler-vue2@2.7.16: @@ -1025,7 +762,7 @@ packages: he: 1.2.0 dev: true - /@vue/language-core@2.2.0(typescript@5.9.2): + /@vue/language-core@2.2.0(typescript@5.9.3): resolution: {integrity: sha512-O1ZZFaaBGkKbsRfnVH1ifOK1/1BUkyK+3SQsfnh6PmMmD4qJcTU8godCeA96jjDRTL6zgnK7YzCHfaUlH2r0Mw==} peerDependencies: typescript: '*' @@ -1033,28 +770,28 @@ packages: typescript: optional: true dependencies: - '@volar/language-core': 2.4.23 - '@vue/compiler-dom': 3.5.21 + '@volar/language-core': 2.4.28 + '@vue/compiler-dom': 3.5.30 '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.5.21 + '@vue/shared': 3.5.30 alien-signals: 0.4.14 - minimatch: 9.0.5 + minimatch: 9.0.9 muggle-string: 0.4.1 path-browserify: 1.0.1 - typescript: 5.9.2 + typescript: 5.9.3 dev: true - /@vue/shared@3.5.21: - resolution: {integrity: sha512-+2k1EQpnYuVuu3N7atWyG3/xoFWIVJZq4Mz8XNOdScFI0etES75fbny/oU4lKWk/577P1zmg0ioYvpGEDZ3DLw==} + /@vue/shared@3.5.30: + resolution: {integrity: sha512-YXgQ7JjaO18NeK2K9VTbDHaFy62WrObMa6XERNfNOkAhD1F1oDSf3ZJ7K6GqabZ0BvSDHajp8qfS5Sa2I9n8uQ==} dev: true - /acorn@8.15.0: - resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} + /acorn@8.16.0: + resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==} engines: {node: '>=0.4.0'} hasBin: true dev: true - /ajv-draft-04@1.0.0(ajv@8.13.0): + /ajv-draft-04@1.0.0(ajv@8.18.0): resolution: {integrity: sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==} peerDependencies: ajv: ^8.5.0 @@ -1062,10 +799,10 @@ packages: ajv: optional: true dependencies: - ajv: 8.13.0 + ajv: 8.18.0 dev: true - /ajv-formats@3.0.1(ajv@8.13.0): + /ajv-formats@3.0.1(ajv@8.18.0): resolution: {integrity: sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==} peerDependencies: ajv: ^8.0.0 @@ -1073,56 +810,20 @@ packages: ajv: optional: true dependencies: - ajv: 8.13.0 - dev: true - - /ajv@8.12.0: - resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 + ajv: 8.18.0 dev: true - /ajv@8.13.0: - resolution: {integrity: sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==} + /ajv@8.18.0: + resolution: {integrity: sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==} dependencies: fast-deep-equal: 3.1.3 + fast-uri: 3.1.0 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 - uri-js: 4.4.1 dev: true /alien-signals@0.4.14: - resolution: {integrity: sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==} - dev: true - - /ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - dev: true - - /ansi-regex@6.2.0: - resolution: {integrity: sha512-TKY5pyBkHyADOPYlRT9Lx6F544mPl0vS5Ew7BJ45hA08Q+t3GjbueLliBWN3sMICk6+y7HdyxSzC4bWS8baBdg==} - engines: {node: '>=12'} - dev: true - - /ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - dependencies: - color-convert: 2.0.1 - dev: true - - /ansi-styles@5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} - dev: true - - /ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} + resolution: {integrity: sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==} dev: true /argparse@1.0.10: @@ -1131,12 +832,6 @@ packages: sprintf-js: 1.0.3 dev: true - /aria-query@5.3.0: - resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} - dependencies: - dequal: 2.0.3 - dev: true - /assertion-error@2.0.1: resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} engines: {node: '>=12'} @@ -1146,57 +841,49 @@ packages: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: true - /brace-expansion@2.0.2: - resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} - dependencies: - balanced-match: 1.0.2 + /balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} dev: true - /browserslist@4.25.4: - resolution: {integrity: sha512-4jYpcjabC606xJ3kw2QwGEZKX0Aw7sgQdZCvIK9dhVSPh76BKo+C+btT1RRofH7B+8iNpEbgGNVWiLki5q93yg==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + /baseline-browser-mapping@2.10.8: + resolution: {integrity: sha512-PCLz/LXGBsNTErbtB6i5u4eLpHeMfi93aUv5duMmj6caNu6IphS4q6UevDnL36sZQv9lrP11dbPKGMaXPwMKfQ==} + engines: {node: '>=6.0.0'} hasBin: true - dependencies: - caniuse-lite: 1.0.30001741 - electron-to-chromium: 1.5.214 - node-releases: 2.0.20 - update-browserslist-db: 1.1.3(browserslist@4.25.4) - dev: true - - /cac@6.7.14: - resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} - engines: {node: '>=8'} dev: true - /caniuse-lite@1.0.30001741: - resolution: {integrity: sha512-QGUGitqsc8ARjLdgAfxETDhRbJ0REsP6O3I96TAth/mVjh2cYzN2u+3AzPP3aVSm2FehEItaJw1xd+IGBXWeSw==} + /brace-expansion@2.0.2: + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + dependencies: + balanced-match: 1.0.2 dev: true - /chai@5.3.3: - resolution: {integrity: sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==} - engines: {node: '>=18'} + /brace-expansion@5.0.4: + resolution: {integrity: sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==} + engines: {node: 18 || 20 || >=22} dependencies: - assertion-error: 2.0.1 - check-error: 2.1.1 - deep-eql: 5.0.2 - loupe: 3.2.1 - pathval: 2.0.1 + balanced-match: 4.0.4 dev: true - /check-error@2.1.1: - resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} - engines: {node: '>= 16'} + /browserslist@4.28.1: + resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + dependencies: + baseline-browser-mapping: 2.10.8 + caniuse-lite: 1.0.30001779 + electron-to-chromium: 1.5.313 + node-releases: 2.0.36 + update-browserslist-db: 1.2.3(browserslist@4.28.1) dev: true - /color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} - dependencies: - color-name: 1.1.4 + /caniuse-lite@1.0.30001779: + resolution: {integrity: sha512-U5og2PN7V4DMgF50YPNtnZJGWVLFjjsN3zb6uMT5VGYIewieDj1upwfuVNXf4Kor+89c3iCRJnSzMD5LmTvsfA==} dev: true - /color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + /chai@6.2.2: + resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} + engines: {node: '>=18'} dev: true /compare-versions@6.1.1: @@ -1207,29 +894,20 @@ packages: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} dev: true - /confbox@0.2.2: - resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==} + /confbox@0.2.4: + resolution: {integrity: sha512-ysOGlgTFbN2/Y6Cg3Iye8YKulHw+R2fNXHrgSmXISQdMnomY6eNDprVdW9R5xBguEqI954+S6709UyiO7B+6OQ==} dev: true /convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} dev: true - /cross-spawn@7.0.6: - resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} - engines: {node: '>= 8'} - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - dev: true - /de-indent@1.0.2: resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} dev: true - /debug@4.4.1: - resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + /debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -1240,77 +918,27 @@ packages: ms: 2.1.3 dev: true - /deep-eql@5.0.2: - resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} - engines: {node: '>=6'} - dev: true - - /dequal@2.0.3: - resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} - engines: {node: '>=6'} - dev: true - - /dom-accessibility-api@0.5.16: - resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} - dev: true - - /eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - dev: true - - /electron-to-chromium@1.5.214: - resolution: {integrity: sha512-TpvUNdha+X3ybfU78NoQatKvQEm1oq3lf2QbnmCEdw+Bd9RuIAY+hJTvq1avzHM0f7EJfnH3vbCnbzKzisc/9Q==} + /detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + engines: {node: '>=8'} dev: true - /emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + /diff@8.0.3: + resolution: {integrity: sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ==} + engines: {node: '>=0.3.1'} dev: true - /emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + /electron-to-chromium@1.5.313: + resolution: {integrity: sha512-QBMrTWEf00GXZmJyx2lbYD45jpI3TUFnNIzJ5BBc8piGUDwMPa1GV6HJWTZVvY/eiN3fSopl7NRbgGp9sZ9LTA==} dev: true - /entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + /entities@7.0.1: + resolution: {integrity: sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==} engines: {node: '>=0.12'} dev: true - /es-module-lexer@1.7.0: - resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==} - dev: true - - /esbuild@0.25.9: - resolution: {integrity: sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g==} - engines: {node: '>=18'} - hasBin: true - requiresBuild: true - optionalDependencies: - '@esbuild/aix-ppc64': 0.25.9 - '@esbuild/android-arm': 0.25.9 - '@esbuild/android-arm64': 0.25.9 - '@esbuild/android-x64': 0.25.9 - '@esbuild/darwin-arm64': 0.25.9 - '@esbuild/darwin-x64': 0.25.9 - '@esbuild/freebsd-arm64': 0.25.9 - '@esbuild/freebsd-x64': 0.25.9 - '@esbuild/linux-arm': 0.25.9 - '@esbuild/linux-arm64': 0.25.9 - '@esbuild/linux-ia32': 0.25.9 - '@esbuild/linux-loong64': 0.25.9 - '@esbuild/linux-mips64el': 0.25.9 - '@esbuild/linux-ppc64': 0.25.9 - '@esbuild/linux-riscv64': 0.25.9 - '@esbuild/linux-s390x': 0.25.9 - '@esbuild/linux-x64': 0.25.9 - '@esbuild/netbsd-arm64': 0.25.9 - '@esbuild/netbsd-x64': 0.25.9 - '@esbuild/openbsd-arm64': 0.25.9 - '@esbuild/openbsd-x64': 0.25.9 - '@esbuild/openharmony-arm64': 0.25.9 - '@esbuild/sunos-x64': 0.25.9 - '@esbuild/win32-arm64': 0.25.9 - '@esbuild/win32-ia32': 0.25.9 - '@esbuild/win32-x64': 0.25.9 + /es-module-lexer@2.0.0: + resolution: {integrity: sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==} dev: true /escalade@3.2.0: @@ -1328,19 +956,23 @@ packages: '@types/estree': 1.0.8 dev: true - /expect-type@1.2.2: - resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==} + /expect-type@1.3.0: + resolution: {integrity: sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==} engines: {node: '>=12.0.0'} dev: true - /exsolve@1.0.7: - resolution: {integrity: sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==} + /exsolve@1.0.8: + resolution: {integrity: sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==} dev: true /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true + /fast-uri@3.1.0: + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + dev: true + /fdir@6.5.0(picomatch@4.0.3): resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} engines: {node: '>=12.0.0'} @@ -1357,20 +989,12 @@ packages: resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==} dev: true - /flatted@3.3.3: - resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} - dev: true - - /foreground-child@3.3.1: - resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} - engines: {node: '>=14'} - dependencies: - cross-spawn: 7.0.6 - signal-exit: 4.1.0 + /flatted@3.4.0: + resolution: {integrity: sha512-kC6Bb+ooptOIvWj5B63EQWkF0FEnNjV2ZNkLMLZRDDduIiWeFF4iKnslwhiWxjAdbg4NzTNo6h0qLuvFrcx+Sw==} dev: true - /fs-extra@11.3.1: - resolution: {integrity: sha512-eXvGGwZ5CL17ZSwHWd3bbgk7UUpF6IFHtP57NYYakPvHOs8GDgDe5KJI36jIJzDkJ6eJjuzRA8eBQb6SkKue0g==} + /fs-extra@11.3.4: + resolution: {integrity: sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA==} engines: {node: '>=14.14'} dependencies: graceful-fs: 4.2.11 @@ -1403,18 +1027,6 @@ packages: engines: {node: '>=6.9.0'} dev: true - /glob@10.4.5: - resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} - hasBin: true - dependencies: - foreground-child: 3.3.1 - jackspeak: 3.4.3 - minimatch: 9.0.5 - minipass: 7.1.2 - package-json-from-dist: 1.0.1 - path-scurry: 1.11.1 - dev: true - /graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} dev: true @@ -1452,33 +1064,11 @@ packages: hasown: 2.0.2 dev: true - /is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - dev: true - - /isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - dev: true - /istanbul-lib-coverage@3.2.2: resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} engines: {node: '>=8'} dev: true - /istanbul-lib-instrument@6.0.3: - resolution: {integrity: sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==} - engines: {node: '>=10'} - dependencies: - '@babel/core': 7.28.4 - '@babel/parser': 7.28.4 - '@istanbuljs/schema': 0.1.3 - istanbul-lib-coverage: 3.2.2 - semver: 7.7.2 - transitivePeerDependencies: - - supports-color - dev: true - /istanbul-lib-report@3.0.1: resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} engines: {node: '>=10'} @@ -1488,17 +1078,6 @@ packages: supports-color: 7.2.0 dev: true - /istanbul-lib-source-maps@5.0.6: - resolution: {integrity: sha512-yg2d+Em4KizZC5niWhQaIomgf5WlL4vOOjZ5xGCmF8SnPE/mDWWXgvRExdcpCgh9lLRRa1/fSYp2ymmbJ1pI+A==} - engines: {node: '>=10'} - dependencies: - '@jridgewell/trace-mapping': 0.3.30 - debug: 4.4.1 - istanbul-lib-coverage: 3.2.2 - transitivePeerDependencies: - - supports-color - dev: true - /istanbul-reports@3.2.0: resolution: {integrity: sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==} engines: {node: '>=8'} @@ -1507,14 +1086,6 @@ packages: istanbul-lib-report: 3.0.1 dev: true - /jackspeak@3.4.3: - resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - dev: true - /jju@1.4.0: resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==} dev: true @@ -1523,10 +1094,6 @@ packages: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} dev: true - /js-tokens@9.0.1: - resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==} - dev: true - /jsesc@3.1.0: resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} engines: {node: '>=6'} @@ -1555,25 +1122,135 @@ packages: resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} dev: true + /lightningcss-android-arm64@1.32.0: + resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /lightningcss-darwin-arm64@1.32.0: + resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /lightningcss-darwin-x64@1.32.0: + resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /lightningcss-freebsd-x64@1.32.0: + resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /lightningcss-linux-arm-gnueabihf@1.32.0: + resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /lightningcss-linux-arm64-gnu@1.32.0: + resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /lightningcss-linux-arm64-musl@1.32.0: + resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /lightningcss-linux-x64-gnu@1.32.0: + resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /lightningcss-linux-x64-musl@1.32.0: + resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /lightningcss-win32-arm64-msvc@1.32.0: + resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /lightningcss-win32-x64-msvc@1.32.0: + resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /lightningcss@1.32.0: + resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==} + engines: {node: '>= 12.0.0'} + dependencies: + detect-libc: 2.1.2 + optionalDependencies: + lightningcss-android-arm64: 1.32.0 + lightningcss-darwin-arm64: 1.32.0 + lightningcss-darwin-x64: 1.32.0 + lightningcss-freebsd-x64: 1.32.0 + lightningcss-linux-arm-gnueabihf: 1.32.0 + lightningcss-linux-arm64-gnu: 1.32.0 + lightningcss-linux-arm64-musl: 1.32.0 + lightningcss-linux-x64-gnu: 1.32.0 + lightningcss-linux-x64-musl: 1.32.0 + lightningcss-win32-arm64-msvc: 1.32.0 + lightningcss-win32-x64-msvc: 1.32.0 + dev: true + /local-pkg@1.1.2: resolution: {integrity: sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==} engines: {node: '>=14'} dependencies: - mlly: 1.8.0 + mlly: 1.8.1 pkg-types: 2.3.0 quansync: 0.2.11 dev: true - /lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - dev: true - - /loupe@3.2.1: - resolution: {integrity: sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==} - dev: true - - /lru-cache@10.4.3: - resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + /lodash@4.17.23: + resolution: {integrity: sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==} dev: true /lru-cache@5.1.1: @@ -1589,22 +1266,17 @@ packages: yallist: 4.0.0 dev: true - /lz-string@1.5.0: - resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} - hasBin: true - dev: true - - /magic-string@0.30.18: - resolution: {integrity: sha512-yi8swmWbO17qHhwIBNeeZxTceJMeBvWJaId6dyvTSOwTipqeHhMhOrz6513r1sOKnpvQ7zkhlG8tPrpilwTxHQ==} + /magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} dependencies: '@jridgewell/sourcemap-codec': 1.5.5 dev: true - /magicast@0.3.5: - resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} + /magicast@0.5.2: + resolution: {integrity: sha512-E3ZJh4J3S9KfwdjZhe2afj6R9lGIN5Pher1pF39UGrXRqq/VDaGVIGN13BjHd2u8B61hArAGOnso7nBOouW3TQ==} dependencies: - '@babel/parser': 7.28.4 - '@babel/types': 7.28.4 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 source-map-js: 1.2.1 dev: true @@ -1612,35 +1284,30 @@ packages: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} engines: {node: '>=10'} dependencies: - semver: 7.7.2 + semver: 7.7.4 dev: true - /minimatch@10.0.3: - resolution: {integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==} - engines: {node: 20 || >=22} + /minimatch@10.2.3: + resolution: {integrity: sha512-Rwi3pnapEqirPSbWbrZaa6N3nmqq4Xer/2XooiOKyV3q12ML06f7MOuc5DVH8ONZIFhwIYQ3yzPH4nt7iWHaTg==} + engines: {node: 18 || 20 || >=22} dependencies: - '@isaacs/brace-expansion': 5.0.0 + brace-expansion: 5.0.4 dev: true - /minimatch@9.0.5: - resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + /minimatch@9.0.9: + resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==} engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.2 dev: true - /minipass@7.1.2: - resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} - engines: {node: '>=16 || 14 >=14.17'} - dev: true - - /mlly@1.8.0: - resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==} + /mlly@1.8.1: + resolution: {integrity: sha512-SnL6sNutTwRWWR/vcmCYHSADjiEesp5TGQQ0pXyLhW5IoeibRlF/CbSLailbB3CNqJUk9cVJ9dUDnbD7GrcHBQ==} dependencies: - acorn: 8.15.0 + acorn: 8.16.0 pathe: 2.0.3 pkg-types: 1.3.1 - ufo: 1.6.1 + ufo: 1.6.3 dev: true /mrmime@2.0.1: @@ -1662,44 +1329,26 @@ packages: hasBin: true dev: true - /node-releases@2.0.20: - resolution: {integrity: sha512-7gK6zSXEH6neM212JgfYFXe+GmZQM+fia5SsusuBIUgnPheLFBmIPhtFoAQRj8/7wASYQnbDlHPVwY0BefoFgA==} + /node-releases@2.0.36: + resolution: {integrity: sha512-TdC8FSgHz8Mwtw9g5L4gR/Sh9XhSP/0DEkQxfEFXOpiul5IiHgHan2VhYYb6agDSfp4KuvltmGApc8HMgUrIkA==} dev: true - /package-json-from-dist@1.0.1: - resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + /obug@2.1.1: + resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} dev: true /path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} dev: true - /path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - dev: true - /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: true - /path-scurry@1.11.1: - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} - engines: {node: '>=16 || 14 >=14.18'} - dependencies: - lru-cache: 10.4.3 - minipass: 7.1.2 - dev: true - /pathe@2.0.3: resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} dev: true - /pathval@2.0.1: - resolution: {integrity: sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==} - engines: {node: '>= 14.16'} - dev: true - /picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} dev: true @@ -1713,36 +1362,41 @@ packages: resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} dependencies: confbox: 0.1.8 - mlly: 1.8.0 + mlly: 1.8.1 pathe: 2.0.3 dev: true /pkg-types@2.3.0: resolution: {integrity: sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==} dependencies: - confbox: 0.2.2 - exsolve: 1.0.7 + confbox: 0.2.4 + exsolve: 1.0.8 pathe: 2.0.3 dev: true - /playwright-core@1.55.0: - resolution: {integrity: sha512-GvZs4vU3U5ro2nZpeiwyb0zuFaqb9sUiAJuyrWpcGouD8y9/HLgGbNRjIph7zU9D3hnPaisMl9zG9CgFi/biIg==} + /playwright-core@1.58.2: + resolution: {integrity: sha512-yZkEtftgwS8CsfYo7nm0KE8jsvm6i/PTgVtB8DL726wNf6H2IMsDuxCpJj59KDaxCtSnrWan2AeDqM7JBaultg==} engines: {node: '>=18'} hasBin: true dev: true - /playwright@1.55.0: - resolution: {integrity: sha512-sdCWStblvV1YU909Xqx0DhOjPZE4/5lJsIS84IfN9dAZfcl/CIZ5O8l3o0j7hPMjDvqoTF8ZUcc+i/GL5erstA==} + /playwright@1.58.2: + resolution: {integrity: sha512-vA30H8Nvkq/cPBnNw4Q8TWz1EJyqgpuinBcHET0YVJVFldr8JDNiU9LaWAE1KqSkRYazuaBhTpB5ZzShOezQ6A==} engines: {node: '>=18'} hasBin: true dependencies: - playwright-core: 1.55.0 + playwright-core: 1.58.2 optionalDependencies: fsevents: 2.3.2 dev: true - /postcss@8.5.6: - resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} + /pngjs@7.0.0: + resolution: {integrity: sha512-LKWqWJRhstyYo9pGvgor/ivk2w94eSjE3RGVuzLGlr3NmD8bf7RcYGze1mNdEHRP6TRP6rMuDHk5t44hnTRyow==} + engines: {node: '>=14.19.0'} + dev: true + + /postcss@8.5.8: + resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.11 @@ -1750,35 +1404,17 @@ packages: source-map-js: 1.2.1 dev: true - /pretty-format@27.5.1: - resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - ansi-regex: 5.0.1 - ansi-styles: 5.2.0 - react-is: 17.0.2 - dev: true - - /punycode@2.3.1: - resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} - engines: {node: '>=6'} - dev: true - /quansync@0.2.11: resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==} dev: true - /react-is@17.0.2: - resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - dev: true - /require-from-string@2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} dev: true - /resolve@1.22.10: - resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + /resolve@1.22.11: + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} engines: {node: '>= 0.4'} hasBin: true dependencies: @@ -1787,35 +1423,29 @@ packages: supports-preserve-symlinks-flag: 1.0.0 dev: true - /rollup@4.50.0: - resolution: {integrity: sha512-/Zl4D8zPifNmyGzJS+3kVoyXeDeT/GrsJM94sACNg9RtUE0hrHa1bNPtRSrfHTMH5HjRzce6K7rlTh3Khiw+pw==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} + /rolldown@1.0.0-rc.9: + resolution: {integrity: sha512-9EbgWge7ZH+yqb4d2EnELAntgPTWbfL8ajiTW+SyhJEC4qhBbkCKbqFV4Ge4zmu5ziQuVbWxb/XwLZ+RIO7E8Q==} + engines: {node: ^20.19.0 || >=22.12.0} hasBin: true dependencies: - '@types/estree': 1.0.8 + '@oxc-project/types': 0.115.0 + '@rolldown/pluginutils': 1.0.0-rc.9 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.50.0 - '@rollup/rollup-android-arm64': 4.50.0 - '@rollup/rollup-darwin-arm64': 4.50.0 - '@rollup/rollup-darwin-x64': 4.50.0 - '@rollup/rollup-freebsd-arm64': 4.50.0 - '@rollup/rollup-freebsd-x64': 4.50.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.50.0 - '@rollup/rollup-linux-arm-musleabihf': 4.50.0 - '@rollup/rollup-linux-arm64-gnu': 4.50.0 - '@rollup/rollup-linux-arm64-musl': 4.50.0 - '@rollup/rollup-linux-loongarch64-gnu': 4.50.0 - '@rollup/rollup-linux-ppc64-gnu': 4.50.0 - '@rollup/rollup-linux-riscv64-gnu': 4.50.0 - '@rollup/rollup-linux-riscv64-musl': 4.50.0 - '@rollup/rollup-linux-s390x-gnu': 4.50.0 - '@rollup/rollup-linux-x64-gnu': 4.50.0 - '@rollup/rollup-linux-x64-musl': 4.50.0 - '@rollup/rollup-openharmony-arm64': 4.50.0 - '@rollup/rollup-win32-arm64-msvc': 4.50.0 - '@rollup/rollup-win32-ia32-msvc': 4.50.0 - '@rollup/rollup-win32-x64-msvc': 4.50.0 - fsevents: 2.3.3 + '@rolldown/binding-android-arm64': 1.0.0-rc.9 + '@rolldown/binding-darwin-arm64': 1.0.0-rc.9 + '@rolldown/binding-darwin-x64': 1.0.0-rc.9 + '@rolldown/binding-freebsd-x64': 1.0.0-rc.9 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.9 + '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.9 + '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.9 + '@rolldown/binding-linux-ppc64-gnu': 1.0.0-rc.9 + '@rolldown/binding-linux-s390x-gnu': 1.0.0-rc.9 + '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.9 + '@rolldown/binding-linux-x64-musl': 1.0.0-rc.9 + '@rolldown/binding-openharmony-arm64': 1.0.0-rc.9 + '@rolldown/binding-wasm32-wasi': 1.0.0-rc.9 + '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.9 + '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.9 dev: true /semver@6.3.1: @@ -1831,33 +1461,16 @@ packages: lru-cache: 6.0.0 dev: true - /semver@7.7.2: - resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} + /semver@7.7.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} engines: {node: '>=10'} hasBin: true dev: true - /shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} - dependencies: - shebang-regex: 3.0.0 - dev: true - - /shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - dev: true - /siginfo@2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} dev: true - /signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - dev: true - /sirv@3.0.2: resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==} engines: {node: '>=18'} @@ -1885,8 +1498,8 @@ packages: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} dev: true - /std-env@3.9.0: - resolution: {integrity: sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==} + /std-env@4.0.0: + resolution: {integrity: sha512-zUMPtQ/HBY3/50VbpkupYHbRroTRZJPRLvreamgErJVys0ceuzMkD44J/QjqhHjOzK42GQ3QZIeFG1OYfOtKqQ==} dev: true /string-argv@0.3.2: @@ -1894,49 +1507,11 @@ packages: engines: {node: '>=0.6.19'} dev: true - /string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - dependencies: - emoji-regex: 8.0.0 - is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.1 - dev: true - - /string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - dependencies: - eastasianwidth: 0.2.0 - emoji-regex: 9.2.2 - strip-ansi: 7.1.0 - dev: true - - /strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - dependencies: - ansi-regex: 5.0.1 - dev: true - - /strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - dependencies: - ansi-regex: 6.2.0 - dev: true - /strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} dev: true - /strip-literal@3.0.0: - resolution: {integrity: sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==} - dependencies: - js-tokens: 9.0.1 - dev: true - /supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} @@ -1956,21 +1531,13 @@ packages: engines: {node: '>= 0.4'} dev: true - /test-exclude@7.0.1: - resolution: {integrity: sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg==} - engines: {node: '>=18'} - dependencies: - '@istanbuljs/schema': 0.1.3 - glob: 10.4.5 - minimatch: 9.0.5 - dev: true - /tinybench@2.9.0: resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} dev: true - /tinyexec@0.3.2: - resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} + /tinyexec@1.0.4: + resolution: {integrity: sha512-u9r3uZC0bdpGOXtlxUIdwf9pkmvhqJdrVCH9fapQtgy/OeTTMZ1nqH7agtvEfmGui6e1XxjcdrlxvxJvc3sMqw==} + engines: {node: '>=18'} dev: true /tinyglobby@0.2.15: @@ -1981,18 +1548,8 @@ packages: picomatch: 4.0.3 dev: true - /tinypool@1.1.1: - resolution: {integrity: sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==} - engines: {node: ^18.0.0 || >=20.0.0} - dev: true - - /tinyrainbow@2.0.0: - resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==} - engines: {node: '>=14.0.0'} - dev: true - - /tinyspy@4.0.3: - resolution: {integrity: sha512-t2T/WLB2WRgZ9EpE4jgPJ9w+i66UZfDc8wHh0xrwiRNN+UwH98GIJkTeZqX9rg0i0ptwzqW+uYeIF0T4F8LR7A==} + /tinyrainbow@3.1.0: + resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} engines: {node: '>=14.0.0'} dev: true @@ -2001,24 +1558,30 @@ packages: engines: {node: '>=6'} dev: true + /tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + requiresBuild: true + dev: true + optional: true + /typescript@5.8.2: resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} engines: {node: '>=14.17'} hasBin: true dev: true - /typescript@5.9.2: - resolution: {integrity: sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==} + /typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} engines: {node: '>=14.17'} hasBin: true dev: true - /ufo@1.6.1: - resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} + /ufo@1.6.3: + resolution: {integrity: sha512-yDJTmhydvl5lJzBmy/hyOAA0d+aqCBuwl818haVdYCRrWV84o7YyeVm4QlVHStqNrrJSTb6jKuFAVqAFsr+K3Q==} dev: true - /undici-types@7.10.0: - resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==} + /undici-types@7.18.2: + resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} dev: true /universalify@2.0.1: @@ -2026,49 +1589,18 @@ packages: engines: {node: '>= 10.0.0'} dev: true - /update-browserslist-db@1.1.3(browserslist@4.25.4): - resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} + /update-browserslist-db@1.2.3(browserslist@4.28.1): + resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: - browserslist: 4.25.4 + browserslist: 4.28.1 escalade: 3.2.0 picocolors: 1.1.1 dev: true - /uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - dependencies: - punycode: 2.3.1 - dev: true - - /vite-node@3.2.4(@types/node@24.3.1): - resolution: {integrity: sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==} - engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} - hasBin: true - dependencies: - cac: 6.7.14 - debug: 4.4.1 - es-module-lexer: 1.7.0 - pathe: 2.0.3 - vite: 7.1.4(@types/node@24.3.1) - transitivePeerDependencies: - - '@types/node' - - jiti - - less - - lightningcss - - sass - - sass-embedded - - stylus - - sugarss - - supports-color - - terser - - tsx - - yaml - dev: true - - /vite-plugin-dts@4.5.4(@types/node@24.3.1)(typescript@5.9.2)(vite@7.1.4): + /vite-plugin-dts@4.5.4(@types/node@25.5.0)(typescript@5.9.3)(vite@8.0.0): resolution: {integrity: sha512-d4sOM8M/8z7vRXHHq/ebbblfaxENjogAAekcfcDCCwAyvGqnPrc7f4NZbvItS+g4WTgerW0xDwSz5qz11JT3vg==} peerDependencies: typescript: '*' @@ -2077,37 +1609,38 @@ packages: vite: optional: true dependencies: - '@microsoft/api-extractor': 7.52.11(@types/node@24.3.1) + '@microsoft/api-extractor': 7.57.7(@types/node@25.5.0) '@rollup/pluginutils': 5.3.0 - '@volar/typescript': 2.4.23 - '@vue/language-core': 2.2.0(typescript@5.9.2) + '@volar/typescript': 2.4.28 + '@vue/language-core': 2.2.0(typescript@5.9.3) compare-versions: 6.1.1 - debug: 4.4.1 + debug: 4.4.3 kolorist: 1.8.0 local-pkg: 1.1.2 - magic-string: 0.30.18 - typescript: 5.9.2 - vite: 7.1.4(@types/node@24.3.1) + magic-string: 0.30.21 + typescript: 5.9.3 + vite: 8.0.0(@types/node@25.5.0) transitivePeerDependencies: - '@types/node' - rollup - supports-color dev: true - /vite-plugin-strip-comments@0.0.6: - resolution: {integrity: sha512-QmwdghtbNuvYtTcF8SmTBynrXwGezSg/cMkFzK0KB1frjvpZpDohjbWs9Ob+tytY4jIVZi37FkmEFi6YBMDnMA==} + /vite-plugin-strip-comments@0.0.9: + resolution: {integrity: sha512-o9+wDnGRlfa7B40tCv3ah6RgY2WBGzju3SeA9m2x9FlwqROq25PXuLSEoAPzTkCIjqmtRLw4y36CwGTPlPuevQ==} engines: {deno: '>=2.0.4', node: '>=20', pnpm: '>=9.10.0'} dev: true - /vite@7.1.4(@types/node@24.3.1): - resolution: {integrity: sha512-X5QFK4SGynAeeIt+A7ZWnApdUyHYm+pzv/8/A57LqSGcI88U6R6ipOs3uCesdc6yl7nl+zNO0t8LmqAdXcQihw==} + /vite@8.0.0(@types/node@25.5.0): + resolution: {integrity: sha512-fPGaRNj9Zytaf8LEiBhY7Z6ijnFKdzU/+mL8EFBaKr7Vw1/FWcTBAMW0wLPJAGMPX38ZPVCVgLceWiEqeoqL2Q==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: '@types/node': ^20.19.0 || >=22.12.0 + '@vitejs/devtools': ^0.0.0-alpha.31 + esbuild: ^0.27.0 jiti: '>=1.21.0' less: ^4.0.0 - lightningcss: ^1.21.0 sass: ^1.70.0 sass-embedded: ^1.70.0 stylus: '>=0.54.8' @@ -2118,12 +1651,14 @@ packages: peerDependenciesMeta: '@types/node': optional: true + '@vitejs/devtools': + optional: true + esbuild: + optional: true jiti: optional: true less: optional: true - lightningcss: - optional: true sass: optional: true sass-embedded: @@ -2139,37 +1674,44 @@ packages: yaml: optional: true dependencies: - '@types/node': 24.3.1 - esbuild: 0.25.9 - fdir: 6.5.0(picomatch@4.0.3) + '@oxc-project/runtime': 0.115.0 + '@types/node': 25.5.0 + lightningcss: 1.32.0 picomatch: 4.0.3 - postcss: 8.5.6 - rollup: 4.50.0 + postcss: 8.5.8 + rolldown: 1.0.0-rc.9 tinyglobby: 0.2.15 optionalDependencies: fsevents: 2.3.3 dev: true - /vitest@3.2.4(@types/node@24.3.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4): - resolution: {integrity: sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==} - engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + /vitest@4.1.0(@types/node@25.5.0)(@vitest/ui@4.1.0)(vite@8.0.0): + resolution: {integrity: sha512-YbDrMF9jM2Lqc++2530UourxZHmkKLxrs4+mYhEwqWS97WJ7wOYEkcr+QfRgJ3PW9wz3odRijLZjHEaRLTNbqw==} + engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' - '@types/debug': ^4.1.12 - '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 - '@vitest/browser': 3.2.4 - '@vitest/ui': 3.2.4 + '@opentelemetry/api': ^1.9.0 + '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 + '@vitest/browser-playwright': 4.1.0 + '@vitest/browser-preview': 4.1.0 + '@vitest/browser-webdriverio': 4.1.0 + '@vitest/ui': 4.1.0 happy-dom: '*' jsdom: '*' + vite: ^6.0.0 || ^7.0.0 || ^8.0.0-0 peerDependenciesMeta: '@edge-runtime/vm': optional: true - '@types/debug': + '@opentelemetry/api': optional: true '@types/node': optional: true - '@vitest/browser': + '@vitest/browser-playwright': + optional: true + '@vitest/browser-preview': + optional: true + '@vitest/browser-webdriverio': optional: true '@vitest/ui': optional: true @@ -2178,59 +1720,36 @@ packages: jsdom: optional: true dependencies: - '@types/chai': 5.2.2 - '@types/node': 24.3.1 - '@vitest/browser': 3.2.4(playwright@1.55.0)(vite@7.1.4)(vitest@3.2.4) - '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@7.1.4) - '@vitest/pretty-format': 3.2.4 - '@vitest/runner': 3.2.4 - '@vitest/snapshot': 3.2.4 - '@vitest/spy': 3.2.4 - '@vitest/ui': 3.2.4(vitest@3.2.4) - '@vitest/utils': 3.2.4 - chai: 5.3.3 - debug: 4.4.1 - expect-type: 1.2.2 - magic-string: 0.30.18 + '@types/node': 25.5.0 + '@vitest/expect': 4.1.0 + '@vitest/mocker': 4.1.0(vite@8.0.0) + '@vitest/pretty-format': 4.1.0 + '@vitest/runner': 4.1.0 + '@vitest/snapshot': 4.1.0 + '@vitest/spy': 4.1.0 + '@vitest/ui': 4.1.0(vitest@4.1.0) + '@vitest/utils': 4.1.0 + es-module-lexer: 2.0.0 + expect-type: 1.3.0 + magic-string: 0.30.21 + obug: 2.1.1 pathe: 2.0.3 picomatch: 4.0.3 - std-env: 3.9.0 + std-env: 4.0.0 tinybench: 2.9.0 - tinyexec: 0.3.2 + tinyexec: 1.0.4 tinyglobby: 0.2.15 - tinypool: 1.1.1 - tinyrainbow: 2.0.0 - vite: 7.1.4(@types/node@24.3.1) - vite-node: 3.2.4(@types/node@24.3.1) + tinyrainbow: 3.1.0 + vite: 8.0.0(@types/node@25.5.0) why-is-node-running: 2.3.0 transitivePeerDependencies: - - jiti - - less - - lightningcss - msw - - sass - - sass-embedded - - stylus - - sugarss - - supports-color - - terser - - tsx - - yaml dev: true /vscode-uri@3.1.0: resolution: {integrity: sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==} dev: true - /which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true - dependencies: - isexe: 2.0.0 - dev: true - /why-is-node-running@2.3.0: resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} engines: {node: '>=8'} @@ -2240,26 +1759,8 @@ packages: stackback: 0.0.2 dev: true - /wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - dev: true - - /wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - dependencies: - ansi-styles: 6.2.1 - string-width: 5.1.2 - strip-ansi: 7.1.0 - dev: true - - /ws@8.18.3: - resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} + /ws@8.19.0: + resolution: {integrity: sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 From e032bf371116f840e2de2e5b92fd7090643a41d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <59501884+LoicE5@users.noreply.github.com> Date: Mon, 16 Mar 2026 22:24:30 +0100 Subject: [PATCH 04/10] chore: add deno.json with lint rule to allow sloppy imports --- deno.json | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 deno.json diff --git a/deno.json b/deno.json new file mode 100644 index 00000000..5ddf61d9 --- /dev/null +++ b/deno.json @@ -0,0 +1,7 @@ +{ + "lint": { + "rules": { + "exclude": ["no-sloppy-imports"] + } + } +} From 52602a467aec2552ed92c6b4214d14238948c03b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <59501884+LoicE5@users.noreply.github.com> Date: Mon, 16 Mar 2026 22:24:47 +0100 Subject: [PATCH 05/10] chore: switch minifier from esbuild to oxc, remove legalComments config --- vite.config.components.ts | 5 +---- vite.config.ts | 5 +---- vitest.config-ui.ts | 1 - 3 files changed, 2 insertions(+), 9 deletions(-) diff --git a/vite.config.components.ts b/vite.config.components.ts index abe38708..afd8d00a 100755 --- a/vite.config.components.ts +++ b/vite.config.components.ts @@ -17,9 +17,6 @@ export default defineConfig({ "~": resolve(__dirname, "src"), }, }, - esbuild: { - legalComments: 'none', - }, plugins: [ dts({ outDir: 'dist/components', @@ -30,7 +27,7 @@ export default defineConfig({ ], build: { target: 'ESNext', - minify: 'esbuild', + minify: 'oxc', outDir: 'dist/components', lib: { entry: components.map((component) => resolve(__dirname, `src/components/${component}.ts`)), diff --git a/vite.config.ts b/vite.config.ts index c5aa1537..8b749f61 100755 --- a/vite.config.ts +++ b/vite.config.ts @@ -23,9 +23,6 @@ export default defineConfig({ "~": resolve(__dirname, "src"), }, }, - esbuild: { - legalComments: 'none', - }, plugins: [ dts({ outDir: 'dist', @@ -35,7 +32,7 @@ export default defineConfig({ stripComments({ type: 'none' }), ], build: { - minify: 'esbuild', + minify: 'oxc', target: 'ESNext', outDir: 'dist', emptyOutDir: true, diff --git a/vitest.config-ui.ts b/vitest.config-ui.ts index 3c8aa7d5..54d9258c 100755 --- a/vitest.config-ui.ts +++ b/vitest.config-ui.ts @@ -29,7 +29,6 @@ export default defineConfig({ exclude: ["src/util/init.ts"], }, browser: { - // provider: 'preview', // or 'webdriverio' enabled: true, headless: false, instances: [ From b9d744e7107ebc01a2a49904e5d62817369bb3d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <59501884+LoicE5@users.noreply.github.com> Date: Mon, 16 Mar 2026 22:24:54 +0100 Subject: [PATCH 06/10] docs: update dependency version badges in README --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index d910c879..f6058426 100755 --- a/README.md +++ b/README.md @@ -3,9 +3,9 @@ [![ci](https://github.com/thednp/bootstrap.native/actions/workflows/ci.yml/badge.svg)](https://github.com/thednp/bootstrap.native/actions/workflows/ci.yml) [![NPM Version](https://img.shields.io/npm/v/bootstrap.native.svg)](https://www.npmjs.com/package/bootstrap.native) [![jsDeliver](https://img.shields.io/jsdelivr/npm/hw/bootstrap.native)](https://www.jsdelivr.com/package/npm/bootstrap.native) -[![typescript version](https://img.shields.io/badge/typescript-5.9.2-brightgreen)](https://www.typescriptlang.org/) -[![vitest version](https://img.shields.io/badge/vitest-3.2.4-brightgreen)](https://vitest.dev/) -[![vite version](https://img.shields.io/badge/vite-7.1.4-brightgreen)](https://vitejs.dev/) +[![typescript version](https://img.shields.io/badge/typescript-5.9.3-brightgreen)](https://www.typescriptlang.org/) +[![vitest version](https://img.shields.io/badge/vitest-4.1.0-brightgreen)](https://vitest.dev/) +[![vite version](https://img.shields.io/badge/vite-8.0.0-brightgreen)](https://vitejs.dev/) The faster, lighter and more compact set of JavaScript components for **Bootstrap 5**, sourced with TypeScript and free from major dependecies such as jQuery, Popper. From d6f10ccae24f41e1c734415f0373d0f15c562941 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <59501884+LoicE5@users.noreply.github.com> Date: Mon, 16 Mar 2026 22:25:04 +0100 Subject: [PATCH 07/10] test: improve scrollspy test stability with delays and viewport --- test/scrollspy.test.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/test/scrollspy.test.ts b/test/scrollspy.test.ts index f089b392..4746fa1d 100755 --- a/test/scrollspy.test.ts +++ b/test/scrollspy.test.ts @@ -12,6 +12,7 @@ describe("ScrollSpy Class Tests", async () => { beforeEach(async () => { wrapper.innerHTML = ""; + await page.viewport(800, 600); }); it("Init without any parameters - throws error", () => { @@ -32,6 +33,7 @@ describe("ScrollSpy Class Tests", async () => { const container = getMarkup("scrollspy"); wrapper.append(container); await vi.waitFor(() => container.querySelector('[data-bs-spy="scroll"]'), 200); + await new Promise(res => setTimeout(res, 250)); const element = container.querySelector('[data-bs-spy="scroll"]')!; const instance = ScrollSpy.init(element); @@ -41,7 +43,9 @@ describe("ScrollSpy Class Tests", async () => { expect(instance._observables).to.be.instanceOf(Map).and.have.property('size').above(0); // expect(instance.items).to.be.instanceOf(Array).and.have.length.above(0); // expect(instance.items[0].className).to.contain("active"); - expect(Array.from(instance._observables)[0][1].className).to.contain("active"); + await vi.waitFor(() => { + expect(Array.from(instance._observables)[0][1].className).to.contain("active"); + }, 350); expect(instance.name).to.eq("ScrollSpy"); expect(instance.options).to.not.be.empty; expect(instance.defaults).to.not.be.undefined; @@ -75,7 +79,7 @@ describe("ScrollSpy Class Tests", async () => { await new Promise(res => setTimeout(res, 250)); const instance = ScrollSpy.init(element); - + await new Promise(res => setTimeout(res, 251)); instance.scrollTarget.scrollTo({ top: 2500, behavior: 'smooth' }); await new Promise(res => setTimeout(res, 251)); @@ -89,6 +93,7 @@ describe("ScrollSpy Class Tests", async () => { const container = getMarkup("scrollspy"); wrapper.append(container); await vi.waitFor(() => container.querySelector('[data-bs-spy="scroll"]'), 200); + await new Promise(res => setTimeout(res, 250)); const element = container.querySelector('[data-bs-spy="scroll"]')!; const instance = ScrollSpy.init(element); From e8e9188f9c13baacaae610d2b14595eb7d20b212 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <59501884+LoicE5@users.noreply.github.com> Date: Mon, 16 Mar 2026 22:25:28 +0100 Subject: [PATCH 08/10] refactor: newly built dist/ --- dist/bootstrap-native.cjs | 4 +- dist/bootstrap-native.cjs.map | 2 +- dist/bootstrap-native.js | 4 +- dist/bootstrap-native.js.map | 2 +- dist/bootstrap-native.mjs | 3290 ++++++++--------- dist/bootstrap-native.mjs.map | 2 +- dist/components/activeClass-CiLr15n0.js | 2 + dist/components/activeClass-CiLr15n0.js.map | 1 + dist/components/activeClass-CxJYQAGN.js | 2 - dist/components/activeClass-CxJYQAGN.js.map | 1 - dist/components/activeClass-LUKCeUHG.mjs | 6 + dist/components/activeClass-LUKCeUHG.mjs.map | 1 + dist/components/activeClass-iqaD75Su.mjs | 5 - dist/components/activeClass-iqaD75Su.mjs.map | 1 - dist/components/alert.cjs | 4 +- dist/components/alert.cjs.map | 2 +- dist/components/alert.mjs | 77 +- dist/components/alert.mjs.map | 2 +- dist/components/base-component-BazRqYWL.mjs | 338 -- .../base-component-BazRqYWL.mjs.map | 1 - dist/components/base-component-Bm8KwB_I.mjs | 261 ++ .../base-component-Bm8KwB_I.mjs.map | 1 + dist/components/base-component-LPll9cLQ.js | 2 + .../components/base-component-LPll9cLQ.js.map | 1 + dist/components/base-component-_c7CmBvl.js | 2 - .../components/base-component-_c7CmBvl.js.map | 1 - dist/components/button.cjs | 4 +- dist/components/button.cjs.map | 2 +- dist/components/button.mjs | 65 +- dist/components/button.mjs.map | 2 +- dist/components/carousel.cjs | 4 +- dist/components/carousel.cjs.map | 2 +- dist/components/carousel.mjs | 368 +- dist/components/carousel.mjs.map | 2 +- dist/components/collapse.cjs | 4 +- dist/components/collapse.cjs.map | 2 +- dist/components/collapse.mjs | 127 +- dist/components/collapse.mjs.map | 2 +- dist/components/collapsingClass-BxKtDBMH.mjs | 5 - .../collapsingClass-BxKtDBMH.mjs.map | 1 - dist/components/collapsingClass-CLblascz.js | 2 - .../collapsingClass-CLblascz.js.map | 1 - dist/components/collapsingClass-D_kpczLT.js | 2 + .../collapsingClass-D_kpczLT.js.map | 1 + dist/components/collapsingClass-uyOZrepn.mjs | 6 + .../collapsingClass-uyOZrepn.mjs.map | 1 + dist/components/dataBsDismiss-CMHF7If_.js | 2 - dist/components/dataBsDismiss-CMHF7If_.js.map | 1 - dist/components/dataBsDismiss-D_m2Bp4t.mjs | 6 + .../components/dataBsDismiss-D_m2Bp4t.mjs.map | 1 + dist/components/dataBsDismiss-DdNPQYa-.mjs | 5 - .../components/dataBsDismiss-DdNPQYa-.mjs.map | 1 - dist/components/dataBsDismiss-gvZhVct3.js | 2 + dist/components/dataBsDismiss-gvZhVct3.js.map | 1 + dist/components/dataBsToggle-B84TS15h.mjs | 5 - dist/components/dataBsToggle-B84TS15h.mjs.map | 1 - dist/components/dataBsToggle-CeJMDTHb.mjs | 6 + dist/components/dataBsToggle-CeJMDTHb.mjs.map | 1 + dist/components/dataBsToggle-Dj-Ng54N.js | 2 - dist/components/dataBsToggle-Dj-Ng54N.js.map | 1 - dist/components/dataBsToggle-rqyimqAB.js | 2 + dist/components/dataBsToggle-rqyimqAB.js.map | 1 + dist/components/dist-CAr49AgA.mjs | 80 + dist/components/dist-CAr49AgA.mjs.map | 1 + dist/components/dist-CtVym8U0.js | 2 + dist/components/dist-CtVym8U0.js.map | 1 + dist/components/dropdown.cjs | 4 +- dist/components/dropdown.cjs.map | 2 +- dist/components/dropdown.mjs | 341 +- dist/components/dropdown.mjs.map | 2 +- dist/components/dropdownClasses-CdCdZ-PX.mjs | 5 - .../dropdownClasses-CdCdZ-PX.mjs.map | 1 - dist/components/dropdownClasses-CnEyz_iw.js | 2 - .../dropdownClasses-CnEyz_iw.js.map | 1 - dist/components/dropdownClasses-D0wJUlik.js | 2 + .../dropdownClasses-D0wJUlik.js.map | 1 + dist/components/dropdownClasses-DJ-0Bzzu.mjs | 11 + .../dropdownClasses-DJ-0Bzzu.mjs.map | 1 + dist/components/fadeClass-Bzjdr13Y.mjs | 6 + dist/components/fadeClass-Bzjdr13Y.mjs.map | 1 + dist/components/fadeClass-CLIYI_zn.mjs | 5 - dist/components/fadeClass-CLIYI_zn.mjs.map | 1 - dist/components/fadeClass-Co6nOzNJ.js | 2 - dist/components/fadeClass-Co6nOzNJ.js.map | 1 - dist/components/fadeClass-DAfX8y06.js | 2 + dist/components/fadeClass-DAfX8y06.js.map | 1 + dist/components/getTargetElement-BZ3GCU7c.js | 2 - .../getTargetElement-BZ3GCU7c.js.map | 1 - dist/components/getTargetElement-C5FGBrqE.js | 2 + .../getTargetElement-C5FGBrqE.js.map | 1 + dist/components/getTargetElement-CNLJ8Fpo.mjs | 18 + .../getTargetElement-CNLJ8Fpo.mjs.map | 1 + dist/components/getTargetElement-DX_B2QXD.mjs | 13 - .../getTargetElement-DX_B2QXD.mjs.map | 1 - dist/components/index-DgzRtWFW.js | 2 - dist/components/index-DgzRtWFW.js.map | 1 - dist/components/index-K6w9MeGG.mjs | 128 - dist/components/index-K6w9MeGG.mjs.map | 1 - dist/components/isDisabled-BI_fUUV9.js | 2 - dist/components/isDisabled-BI_fUUV9.js.map | 1 - dist/components/isDisabled-CA05SUmE.mjs | 7 + dist/components/isDisabled-CA05SUmE.mjs.map | 1 + dist/components/isDisabled-CipSDrHr.mjs | 6 - dist/components/isDisabled-CipSDrHr.mjs.map | 1 - dist/components/isDisabled-VaupgHJv.js | 2 + dist/components/isDisabled-VaupgHJv.js.map | 1 + dist/components/isVisible-BBb0IrW-.js | 2 - dist/components/isVisible-BBb0IrW-.js.map | 1 - dist/components/isVisible-BcmgTZhm.js | 2 + dist/components/isVisible-BcmgTZhm.js.map | 1 + dist/components/isVisible-Bwf_dI1N.mjs | 57 + dist/components/isVisible-Bwf_dI1N.mjs.map | 1 + dist/components/isVisible-DPm_sCau.mjs | 72 - dist/components/isVisible-DPm_sCau.mjs.map | 1 - dist/components/modal.cjs | 4 +- dist/components/modal.cjs.map | 2 +- dist/components/modal.mjs | 233 +- dist/components/modal.mjs.map | 2 +- dist/components/offcanvas.cjs | 4 +- dist/components/offcanvas.cjs.map | 2 +- dist/components/offcanvas.mjs | 204 +- dist/components/offcanvas.mjs.map | 2 +- dist/components/popover.cjs | 4 +- dist/components/popover.cjs.map | 2 +- dist/components/popover.mjs | 66 +- dist/components/popover.mjs.map | 2 +- dist/components/popupContainer-Dhe1NpFt.mjs | 22 - .../popupContainer-Dhe1NpFt.mjs.map | 1 - dist/components/popupContainer-DocKVrIM.js | 2 + .../components/popupContainer-DocKVrIM.js.map | 1 + dist/components/popupContainer-Dxpyo8Ll.js | 2 - .../components/popupContainer-Dxpyo8Ll.js.map | 1 - dist/components/popupContainer-cXLEqUgV.mjs | 19 + .../popupContainer-cXLEqUgV.mjs.map | 1 + dist/components/scrollspy.cjs | 4 +- dist/components/scrollspy.cjs.map | 2 +- dist/components/scrollspy.mjs | 198 +- dist/components/scrollspy.mjs.map | 2 +- dist/components/showClass-C8hdJfjQ.mjs | 5 - dist/components/showClass-C8hdJfjQ.mjs.map | 1 - dist/components/showClass-CH6sh0pm.mjs | 6 + dist/components/showClass-CH6sh0pm.mjs.map | 1 + dist/components/showClass-CR_WzH06.js | 2 + dist/components/showClass-CR_WzH06.js.map | 1 + dist/components/showClass-D_Ms1FgG.js | 2 - dist/components/showClass-D_Ms1FgG.js.map | 1 - dist/components/tab.cjs | 4 +- dist/components/tab.cjs.map | 2 +- dist/components/tab.mjs | 240 +- dist/components/tab.mjs.map | 2 +- dist/components/toast.cjs | 4 +- dist/components/toast.cjs.map | 2 +- dist/components/toast.mjs | 171 +- dist/components/toast.mjs.map | 2 +- dist/components/tooltip-BL2s6EHC.mjs | 301 -- dist/components/tooltip-BL2s6EHC.mjs.map | 1 - dist/components/tooltip-BUNhKri3.js | 2 + dist/components/tooltip-BUNhKri3.js.map | 1 + dist/components/tooltip-D4dIPTdQ.mjs | 211 ++ dist/components/tooltip-D4dIPTdQ.mjs.map | 1 + dist/components/tooltip-Dh4nNEki.js | 2 - dist/components/tooltip-Dh4nNEki.js.map | 1 - dist/components/tooltip.cjs | 3 +- dist/components/tooltip.cjs.map | 1 - dist/components/tooltip.mjs | 15 +- dist/components/tooltip.mjs.map | 1 - docs/assets/js/bootstrap-native.js | 4 +- docs/assets/js/bootstrap-native.js.map | 2 +- 168 files changed, 3323 insertions(+), 3912 deletions(-) create mode 100644 dist/components/activeClass-CiLr15n0.js create mode 100644 dist/components/activeClass-CiLr15n0.js.map delete mode 100644 dist/components/activeClass-CxJYQAGN.js delete mode 100644 dist/components/activeClass-CxJYQAGN.js.map create mode 100644 dist/components/activeClass-LUKCeUHG.mjs create mode 100644 dist/components/activeClass-LUKCeUHG.mjs.map delete mode 100644 dist/components/activeClass-iqaD75Su.mjs delete mode 100644 dist/components/activeClass-iqaD75Su.mjs.map delete mode 100644 dist/components/base-component-BazRqYWL.mjs delete mode 100644 dist/components/base-component-BazRqYWL.mjs.map create mode 100644 dist/components/base-component-Bm8KwB_I.mjs create mode 100644 dist/components/base-component-Bm8KwB_I.mjs.map create mode 100644 dist/components/base-component-LPll9cLQ.js create mode 100644 dist/components/base-component-LPll9cLQ.js.map delete mode 100644 dist/components/base-component-_c7CmBvl.js delete mode 100644 dist/components/base-component-_c7CmBvl.js.map delete mode 100644 dist/components/collapsingClass-BxKtDBMH.mjs delete mode 100644 dist/components/collapsingClass-BxKtDBMH.mjs.map delete mode 100644 dist/components/collapsingClass-CLblascz.js delete mode 100644 dist/components/collapsingClass-CLblascz.js.map create mode 100644 dist/components/collapsingClass-D_kpczLT.js create mode 100644 dist/components/collapsingClass-D_kpczLT.js.map create mode 100644 dist/components/collapsingClass-uyOZrepn.mjs create mode 100644 dist/components/collapsingClass-uyOZrepn.mjs.map delete mode 100644 dist/components/dataBsDismiss-CMHF7If_.js delete mode 100644 dist/components/dataBsDismiss-CMHF7If_.js.map create mode 100644 dist/components/dataBsDismiss-D_m2Bp4t.mjs create mode 100644 dist/components/dataBsDismiss-D_m2Bp4t.mjs.map delete mode 100644 dist/components/dataBsDismiss-DdNPQYa-.mjs delete mode 100644 dist/components/dataBsDismiss-DdNPQYa-.mjs.map create mode 100644 dist/components/dataBsDismiss-gvZhVct3.js create mode 100644 dist/components/dataBsDismiss-gvZhVct3.js.map delete mode 100644 dist/components/dataBsToggle-B84TS15h.mjs delete mode 100644 dist/components/dataBsToggle-B84TS15h.mjs.map create mode 100644 dist/components/dataBsToggle-CeJMDTHb.mjs create mode 100644 dist/components/dataBsToggle-CeJMDTHb.mjs.map delete mode 100644 dist/components/dataBsToggle-Dj-Ng54N.js delete mode 100644 dist/components/dataBsToggle-Dj-Ng54N.js.map create mode 100644 dist/components/dataBsToggle-rqyimqAB.js create mode 100644 dist/components/dataBsToggle-rqyimqAB.js.map create mode 100644 dist/components/dist-CAr49AgA.mjs create mode 100644 dist/components/dist-CAr49AgA.mjs.map create mode 100644 dist/components/dist-CtVym8U0.js create mode 100644 dist/components/dist-CtVym8U0.js.map delete mode 100644 dist/components/dropdownClasses-CdCdZ-PX.mjs delete mode 100644 dist/components/dropdownClasses-CdCdZ-PX.mjs.map delete mode 100644 dist/components/dropdownClasses-CnEyz_iw.js delete mode 100644 dist/components/dropdownClasses-CnEyz_iw.js.map create mode 100644 dist/components/dropdownClasses-D0wJUlik.js create mode 100644 dist/components/dropdownClasses-D0wJUlik.js.map create mode 100644 dist/components/dropdownClasses-DJ-0Bzzu.mjs create mode 100644 dist/components/dropdownClasses-DJ-0Bzzu.mjs.map create mode 100644 dist/components/fadeClass-Bzjdr13Y.mjs create mode 100644 dist/components/fadeClass-Bzjdr13Y.mjs.map delete mode 100644 dist/components/fadeClass-CLIYI_zn.mjs delete mode 100644 dist/components/fadeClass-CLIYI_zn.mjs.map delete mode 100644 dist/components/fadeClass-Co6nOzNJ.js delete mode 100644 dist/components/fadeClass-Co6nOzNJ.js.map create mode 100644 dist/components/fadeClass-DAfX8y06.js create mode 100644 dist/components/fadeClass-DAfX8y06.js.map delete mode 100644 dist/components/getTargetElement-BZ3GCU7c.js delete mode 100644 dist/components/getTargetElement-BZ3GCU7c.js.map create mode 100644 dist/components/getTargetElement-C5FGBrqE.js create mode 100644 dist/components/getTargetElement-C5FGBrqE.js.map create mode 100644 dist/components/getTargetElement-CNLJ8Fpo.mjs create mode 100644 dist/components/getTargetElement-CNLJ8Fpo.mjs.map delete mode 100644 dist/components/getTargetElement-DX_B2QXD.mjs delete mode 100644 dist/components/getTargetElement-DX_B2QXD.mjs.map delete mode 100644 dist/components/index-DgzRtWFW.js delete mode 100644 dist/components/index-DgzRtWFW.js.map delete mode 100644 dist/components/index-K6w9MeGG.mjs delete mode 100644 dist/components/index-K6w9MeGG.mjs.map delete mode 100644 dist/components/isDisabled-BI_fUUV9.js delete mode 100644 dist/components/isDisabled-BI_fUUV9.js.map create mode 100644 dist/components/isDisabled-CA05SUmE.mjs create mode 100644 dist/components/isDisabled-CA05SUmE.mjs.map delete mode 100644 dist/components/isDisabled-CipSDrHr.mjs delete mode 100644 dist/components/isDisabled-CipSDrHr.mjs.map create mode 100644 dist/components/isDisabled-VaupgHJv.js create mode 100644 dist/components/isDisabled-VaupgHJv.js.map delete mode 100644 dist/components/isVisible-BBb0IrW-.js delete mode 100644 dist/components/isVisible-BBb0IrW-.js.map create mode 100644 dist/components/isVisible-BcmgTZhm.js create mode 100644 dist/components/isVisible-BcmgTZhm.js.map create mode 100644 dist/components/isVisible-Bwf_dI1N.mjs create mode 100644 dist/components/isVisible-Bwf_dI1N.mjs.map delete mode 100644 dist/components/isVisible-DPm_sCau.mjs delete mode 100644 dist/components/isVisible-DPm_sCau.mjs.map delete mode 100644 dist/components/popupContainer-Dhe1NpFt.mjs delete mode 100644 dist/components/popupContainer-Dhe1NpFt.mjs.map create mode 100644 dist/components/popupContainer-DocKVrIM.js create mode 100644 dist/components/popupContainer-DocKVrIM.js.map delete mode 100644 dist/components/popupContainer-Dxpyo8Ll.js delete mode 100644 dist/components/popupContainer-Dxpyo8Ll.js.map create mode 100644 dist/components/popupContainer-cXLEqUgV.mjs create mode 100644 dist/components/popupContainer-cXLEqUgV.mjs.map delete mode 100644 dist/components/showClass-C8hdJfjQ.mjs delete mode 100644 dist/components/showClass-C8hdJfjQ.mjs.map create mode 100644 dist/components/showClass-CH6sh0pm.mjs create mode 100644 dist/components/showClass-CH6sh0pm.mjs.map create mode 100644 dist/components/showClass-CR_WzH06.js create mode 100644 dist/components/showClass-CR_WzH06.js.map delete mode 100644 dist/components/showClass-D_Ms1FgG.js delete mode 100644 dist/components/showClass-D_Ms1FgG.js.map delete mode 100644 dist/components/tooltip-BL2s6EHC.mjs delete mode 100644 dist/components/tooltip-BL2s6EHC.mjs.map create mode 100644 dist/components/tooltip-BUNhKri3.js create mode 100644 dist/components/tooltip-BUNhKri3.js.map create mode 100644 dist/components/tooltip-D4dIPTdQ.mjs create mode 100644 dist/components/tooltip-D4dIPTdQ.mjs.map delete mode 100644 dist/components/tooltip-Dh4nNEki.js delete mode 100644 dist/components/tooltip-Dh4nNEki.js.map delete mode 100644 dist/components/tooltip.cjs.map delete mode 100644 dist/components/tooltip.mjs.map diff --git a/dist/bootstrap-native.cjs b/dist/bootstrap-native.cjs index b0284e96..f8db370b 100644 --- a/dist/bootstrap-native.cjs +++ b/dist/bootstrap-native.cjs @@ -1,2 +1,2 @@ -"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const kn="aria-describedby",Ee="aria-expanded",re="aria-hidden",$e="aria-modal",Ms="aria-pressed",Me="aria-selected",cs="focus",ls="focusin",Mn="focusout",ye="keydown",Wo="keyup",D="click",Nn="mousedown",jo="hover",Ce="mouseenter",ds="mouseleave",Bn="pointerdown",zo="pointermove",Ko="pointerup",_e="touchstart",Vo="dragstart",Xo='a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]',Ue="ArrowDown",Ye="ArrowUp",Ns="ArrowLeft",Bs="ArrowRight",hs="Escape",qo="transitionDuration",Uo="transitionDelay",Ne="transitionend",Rn="transitionProperty",Fn=()=>{const e=/iPhone|iPad|iPod|Android/i;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},Yo=()=>{const e=/(iPhone|iPod|iPad)/;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},Te=()=>{},Zo=(e,t,s,n)=>{e.addEventListener(t,s,!1)},Qo=(e,t,s,n)=>{e.removeEventListener(t,s,!1)},Y=(e,t)=>e.getAttribute(t),Jt=(e,t)=>e.hasAttribute(t),I=(e,t,s)=>e.setAttribute(t,s),Dt=(e,t)=>e.removeAttribute(t),d=(e,...t)=>{e.classList.add(...t)},v=(e,...t)=>{e.classList.remove(...t)},h=(e,t)=>e.classList.contains(t),ae=e=>e!=null&&typeof e=="object"||!1,P=e=>ae(e)&&typeof e.nodeType=="number"&&[1,2,3,4,5,6,7,8,9,10,11].some(t=>e.nodeType===t)||!1,z=e=>P(e)&&e.nodeType===1||!1,jt=new Map,At={data:jt,set:(e,t,s)=>{z(e)&&(jt.has(t)||jt.set(t,new Map),jt.get(t).set(e,s))},getAllFor:e=>jt.get(e)||null,get:(e,t)=>{if(!z(e)||!t)return null;const s=At.getAllFor(t);return e&&s&&s.get(e)||null},remove:(e,t)=>{const s=At.getAllFor(t);!s||!z(e)||(s.delete(e),s.size===0&&jt.delete(t))}},F=(e,t)=>At.get(e,t),Rs=e=>e?.trim().replace(/(?:^\w|[A-Z]|\b\w)/g,(t,s)=>s===0?t.toLowerCase():t.toUpperCase()).replace(/\s+/g,""),ce=e=>typeof e=="string"||!1,Wn=e=>ae(e)&&e.constructor.name==="Window"||!1,jn=e=>P(e)&&e.nodeType===9||!1,w=e=>jn(e)?e:P(e)?e.ownerDocument:Wn(e)?e.document:globalThis.document,ct=(e,...t)=>Object.assign(e,...t),bt=e=>{if(!e)return;if(ce(e))return w().createElement(e);const{tagName:t}=e,s=bt(t);if(!s)return;const n={...e};return delete n.tagName,ct(s,n)},b=(e,t)=>e.dispatchEvent(t),R=(e,t,s)=>{const n=getComputedStyle(e,s),o=t.replace("webkit","Webkit").replace(/([A-Z])/g,"-$1").toLowerCase();return n.getPropertyValue(o)},Go=e=>{const t=R(e,Rn),s=R(e,Uo),n=s.includes("ms")?1:1e3,o=t&&t!=="none"?parseFloat(s)*n:0;return Number.isNaN(o)?0:o},le=e=>{const t=R(e,Rn),s=R(e,qo),n=s.includes("ms")?1:1e3,o=t&&t!=="none"?parseFloat(s)*n:0;return Number.isNaN(o)?0:o},S=(e,t)=>{let s=0;const n=new Event(Ne),o=le(e),i=Go(e);if(o){const r=a=>{a.target===e&&(t.apply(e,[a]),e.removeEventListener(Ne,r),s=1)};e.addEventListener(Ne,r),setTimeout(()=>{s||b(e,n)},o+i+17)}else t.apply(e,[n])},lt=(e,t)=>e.focus(t),Fs=e=>["true",!0].includes(e)?!0:["false",!1].includes(e)?!1:["null","",null,void 0].includes(e)?null:e!==""&&!Number.isNaN(+e)?+e:e,pe=e=>Object.entries(e),Jo=(e,t,s,n)=>{if(!z(e))return t;const o={...s},i={...e.dataset},r={...t},a={},c="title";return pe(i).forEach(([l,f])=>{const p=typeof l=="string"&&l.includes(n)?Rs(l.replace(n,"")):Rs(l);a[p]=Fs(f)}),pe(o).forEach(([l,f])=>{o[l]=Fs(f)}),pe(t).forEach(([l,f])=>{l in o?r[l]=o[l]:l in a?r[l]=a[l]:r[l]=l===c?Y(e,c):f}),r},Ws=e=>Object.keys(e),E=(e,t)=>{const s=new CustomEvent(e,{cancelable:!0,bubbles:!0});return ae(t)&&ct(s,t),s},te={passive:!0},kt=e=>e.offsetHeight,x=(e,t)=>{pe(t).forEach(([s,n])=>{if(n&&ce(s)&&s.includes("--"))e.style.setProperty(s,n);else{const o={};o[s]=n,ct(e.style,o)}})},Ze=e=>ae(e)&&e.constructor.name==="Map"||!1,ti=e=>typeof e=="number"||!1,pt=new Map,u={set:(e,t,s,n)=>{z(e)&&(n&&n.length?(pt.has(e)||pt.set(e,new Map),pt.get(e).set(n,setTimeout(t,s))):pt.set(e,setTimeout(t,s)))},get:(e,t)=>{if(!z(e))return null;const s=pt.get(e);return t&&s&&Ze(s)?s.get(t)||null:ti(s)?s:null},clear:(e,t)=>{if(!z(e))return;const s=pt.get(e);t&&t.length&&Ze(s)?(clearTimeout(s.get(t)),s.delete(t),s.size===0&&pt.delete(e)):(clearTimeout(s),pt.delete(e))}},ee=e=>e.toLowerCase(),U=(e,t)=>(P(t)?t:w()).querySelectorAll(e),fs=new Map;function zn(e){const{shiftKey:t,code:s}=e,n=w(this),o=[...U(Xo,this)].filter(a=>!Jt(a,"disabled")&&!Y(a,re));if(!o.length)return;const i=o[0],r=o[o.length-1];s==="Tab"&&(t&&n.activeElement===i?(r.focus(),e.preventDefault()):!t&&n.activeElement===r&&(i.focus(),e.preventDefault()))}const us=e=>fs.has(e)===!0,ei=e=>{us(e)||(Zo(e,"keydown",zn),fs.set(e,!0))},si=e=>{us(e)&&(Qo(e,"keydown",zn),fs.delete(e))},Se=e=>{us(e)?si(e):ei(e)},A=e=>z(e)&&"offsetWidth"in e||!1,It=(e,t)=>{const{width:s,height:n,top:o,right:i,bottom:r,left:a}=e.getBoundingClientRect();let c=1,l=1;if(t&&A(e)){const{offsetWidth:f,offsetHeight:p}=e;c=f>0?Math.round(s)/f:1,l=p>0?Math.round(n)/p:1}return{width:s/c,height:n/l,top:o/l,right:i/c,bottom:r/l,left:a/c,x:a/c,y:o/l}},Mt=e=>w(e).body,dt=e=>w(e).documentElement,ni=e=>{const t=Wn(e),s=t?e.scrollX:e.scrollLeft,n=t?e.scrollY:e.scrollTop;return{x:s,y:n}},Kn=e=>P(e)&&e.constructor.name==="ShadowRoot"||!1,oi=e=>e.nodeName==="HTML"?e:z(e)&&e.assignedSlot||P(e)&&e.parentNode||Kn(e)&&e.host||dt(e),Vn=e=>e?jn(e)?e.defaultView:P(e)?e?.ownerDocument?.defaultView:e:window,ii=e=>P(e)&&["TABLE","TD","TH"].includes(e.nodeName)||!1,Xn=(e,t)=>e.matches(t),ri=e=>{if(!A(e))return!1;const{width:t,height:s}=It(e),{offsetWidth:n,offsetHeight:o}=e;return Math.round(t)!==n||Math.round(s)!==o},ai=(e,t,s)=>{const n=A(t),o=It(e,n&&ri(t)),i={x:0,y:0};if(n){const r=It(t,!0);i.x=r.x+t.clientLeft,i.y=r.y+t.clientTop}return{x:o.left+s.x-i.x,y:o.top+s.y-i.y,width:o.width,height:o.height}};let js=0,zs=0;const zt=new Map,qn=(e,t)=>{let s=t?js:zs;if(t){const n=qn(e),o=zt.get(n)||new Map;zt.has(n)||zt.set(n,o),Ze(o)&&!o.has(t)?(o.set(t,s),js+=1):s=o.get(t)}else{const n=e.id||e;zt.has(n)?s=zt.get(n):(zt.set(n,s),zs+=1)}return s},ci=e=>Array.isArray(e)||!1,Un=e=>{if(!P(e))return!1;const{top:t,bottom:s}=It(e),{clientHeight:n}=dt(e);return t<=n&&s>=0},Yn=e=>typeof e=="function"||!1,li=e=>ae(e)&&e.constructor.name==="NodeList"||!1,Tt=e=>dt(e).dir==="rtl",N=(e,t)=>!e||!t?null:e.closest(t)||N(e.getRootNode().host,t)||null,_=(e,t)=>z(e)?e:(z(t)?t:w()).querySelector(e),gs=(e,t)=>(P(t)?t:w()).getElementsByTagName(e),di=(e,t)=>w(t).getElementById(e),rt=(e,t)=>(t&&P(t)?t:w()).getElementsByClassName(e),Kt={},Zn=e=>{const{type:t,currentTarget:s}=e;Kt[t].forEach((n,o)=>{s===o&&n.forEach((i,r)=>{r.apply(o,[e]),typeof i=="object"&&i.once&&O(o,t,r,i)})})},L=(e,t,s,n)=>{Kt[t]||(Kt[t]=new Map);const o=Kt[t];o.has(e)||o.set(e,new Map);const i=o.get(e),{size:r}=i;i.set(s,n),r||e.addEventListener(t,Zn,n)},O=(e,t,s,n)=>{const o=Kt[t],i=o&&o.get(e),r=i&&i.get(s),a=r!==void 0?r:n;i&&i.has(s)&&i.delete(s),o&&(!i||!i.size)&&o.delete(e),(!o||!o.size)&&delete Kt[t],(!i||!i.size)&&e.removeEventListener(t,Zn,a)},k="fade",g="show",xe="data-bs-dismiss",Ae="alert",Qn="Alert",nt=e=>h(e,"disabled")||Y(e,"disabled")==="true",hi="5.1.6",fi=hi;class st{constructor(t,s){let n;try{if(z(t))n=t;else if(ce(t)){if(n=_(t),!n)throw Error(`"${t}" is not a valid selector.`)}else throw Error("your target is not an instance of HTMLElement.")}catch(i){throw Error(`${this.name} Error: ${i.message}`)}const o=At.get(n,this.name);o&&o._toggleEventListeners(),this.element=n,this.options=this.defaults&&Ws(this.defaults).length?Jo(n,this.defaults,s||{},"bs"):{},At.set(n,this.name,this)}get version(){return fi}get name(){return"BaseComponent"}get defaults(){return{}}_toggleEventListeners=()=>{};dispose(){At.remove(this.element,this.name),Ws(this).forEach(t=>{delete this[t]})}}const ui=`.${Ae}`,gi=`[${xe}="${Ae}"]`,pi=e=>F(e,Qn),mi=e=>new ps(e),Ks=E(`close.bs.${Ae}`),vi=E(`closed.bs.${Ae}`),Vs=e=>{const{element:t}=e;b(t,vi),e._toggleEventListeners(),e.dispose(),t.remove()};class ps extends st{static selector=ui;static init=mi;static getInstance=pi;dismiss;constructor(t){super(t),this.dismiss=_(gi,this.element),this._toggleEventListeners(!0)}get name(){return Qn}close=t=>{const{element:s,dismiss:n}=this;!s||!h(s,g)||t&&n&&nt(n)||(b(s,Ks),!Ks.defaultPrevented&&(v(s,g),h(s,k)?S(s,()=>Vs(this)):Vs(this)))};_toggleEventListeners=t=>{const s=t?L:O,{dismiss:n,close:o}=this;n&&s(n,D,o)};dispose(){this._toggleEventListeners(),super.dispose()}}const T="active",ot="data-bs-toggle",bi="button",Gn="Button",wi=`[${ot}="${bi}"]`,Ei=e=>F(e,Gn),Ti=e=>new ms(e);class ms extends st{static selector=wi;static init=Ti;static getInstance=Ei;constructor(t){super(t);const{element:s}=this;this.isActive=h(s,T),I(s,Ms,String(!!this.isActive)),this._toggleEventListeners(!0)}get name(){return Gn}toggle=t=>{t&&t.preventDefault();const{element:s,isActive:n}=this;if(nt(s))return;(n?v:d)(s,T),I(s,Ms,n?"false":"true"),this.isActive=h(s,T)};_toggleEventListeners=t=>{(t?L:O)(this.element,D,this.toggle)};dispose(){this._toggleEventListeners(),super.dispose()}}const Qe="data-bs-target",Pt="carousel",Jn="Carousel",Xs="data-bs-parent",$i="data-bs-container",K=e=>{const t=[Qe,Xs,$i,"href"],s=w(e);return t.map(n=>{const o=Y(e,n);return o?n===Xs?N(e,o):_(o,s):null}).filter(n=>n)[0]},de=`[data-bs-ride="${Pt}"]`,tt=`${Pt}-item`,Ge="data-bs-slide-to",vt="data-bs-slide",wt="paused",yi=Fn()?_e:Bn;console.log({isMobile:Fn(),touchEvent:yi});const qs={pause:"hover",keyboard:!1,touch:!0,interval:5e3},ht=e=>F(e,Jn),Ci=e=>new vs(e);let Gt=0,me=0,Be=0;const Re=E(`slide.bs.${Pt}`),Je=E(`slid.bs.${Pt}`),Us=e=>{const{index:t,direction:s,element:n,slides:o,options:i}=e;if(e.isAnimating){const r=ts(e),a=s==="left"?"next":"prev",c=s==="left"?"start":"end";d(o[t],T),v(o[t],`${tt}-${a}`),v(o[t],`${tt}-${c}`),v(o[r],T),v(o[r],`${tt}-${c}`),b(n,Je),u.clear(n,vt),e.cycle&&!w(n).hidden&&i.interval&&!e.isPaused&&e.cycle()}};function _i(){const e=ht(this);e&&!e.isPaused&&!u.get(this,wt)&&d(this,wt)}function Si(){const e=ht(this);e&&e.isPaused&&!u.get(this,wt)&&e.cycle()}function xi(e){e.preventDefault();const t=N(this,de)||K(this),s=t&&ht(t);if(nt(this)||!s||s.isAnimating)return;const n=+(Y(this,Ge)||0);this&&!h(this,T)&&!Number.isNaN(n)&&s.to(n)}function Ai(e){e.preventDefault();const t=N(this,de)||K(this),s=t&&ht(t);if(nt(this)||!s||s.isAnimating)return;const n=Y(this,vt);n==="next"?s.next():n==="prev"&&s.prev()}const Pi=({code:e,target:t})=>{const s=w(t),[n]=[...U(de,s)].filter(c=>Un(c)),o=ht(n);if(!o||o.isAnimating||/textarea|input|select/i.test(t.nodeName))return;const i=Tt(n);e===(i?Bs:Ns)?o.prev():e===(i?Ns:Bs)&&o.next()};function Ys(e){const{target:t}=e,s=ht(this);s&&s.isTouch&&!s.controls.includes(t)&&!s.controls.includes(t?.parentElement)&&(!s.indicator||!s.indicator.contains(t))&&e.preventDefault()}function Hi(e){const{target:t}=e,s=ht(this);if(!s||s.isAnimating||s.isTouch)return;const{controls:n,indicator:o}=s;![...n,o].every(i=>i&&(i===t||i.contains(t)))&&this.contains(t)&&(Gt=e.pageX,s.isTouch=!0,to(s,!0))}const Di=e=>{me=e.pageX},Ii=e=>{const{target:t}=e,s=w(t),n=[...U(de,s)].map(a=>ht(a)).find(a=>a.isTouch);if(!n)return;const{element:o,index:i}=n,r=Tt(o);Be=e.pageX,n.isTouch=!1,to(n),!s.getSelection()?.toString().length&&o.contains(t)&&Math.abs(Gt-Be)>120&&(meGt&&n.to(i+(r?1:-1))),Gt=0,me=0,Be=0},Fe=(e,t)=>{const{indicators:s}=e;[...s].forEach(n=>v(n,T)),e.indicators[t]&&d(s[t],T)},to=(e,t)=>{const{element:s}=e,n=t?L:O;n(w(s),zo,Di,te),n(w(s),Ko,Ii,te)},ts=e=>{const{slides:t,element:s}=e,n=_(`.${tt}.${T}`,s);return n?[...t].indexOf(n):-1};class vs extends st{static selector=de;static init=Ci;static getInstance=ht;constructor(t,s){super(t,s);const{element:n}=this;this.direction=Tt(n)?"right":"left",this.isTouch=!1,this.slides=rt(tt,n);const{slides:o}=this;if(o.length<2)return;const i=ts(this),r=[...o].find(l=>Xn(l,`.${tt}-next`));this.index=i;const a=w(n);this.controls=[...U(`[${vt}]`,n),...U(`[${vt}][${Qe}="#${n.id}"]`,a)].filter((l,f,p)=>f===p.indexOf(l)),this.indicator=_(`.${Pt}-indicators`,n),this.indicators=[...this.indicator?U(`[${Ge}]`,this.indicator):[],...U(`[${Ge}][${Qe}="#${n.id}"]`,a)].filter((l,f,p)=>f===p.indexOf(l));const{options:c}=this;this.options.interval=c.interval===!0?qs.interval:c.interval,r?this.index=[...o].indexOf(r):i<0&&(this.index=0,d(o[0],T),this.indicators.length&&Fe(this,0)),this.indicators.length&&Fe(this,this.index),this._toggleEventListeners(!0),c.interval&&this.cycle()}get name(){return Jn}get defaults(){return qs}get isPaused(){return h(this.element,wt)}get isAnimating(){return _(`.${tt}-next,.${tt}-prev`,this.element)!==null}cycle(){const{element:t,options:s,isPaused:n,index:o}=this;u.clear(t,Pt),n&&(u.clear(t,wt),v(t,wt)),u.set(t,()=>{this.element&&!this.isPaused&&!this.isTouch&&Un(t)&&this.to(o+1)},s.interval,Pt)}pause(){const{element:t,options:s}=this;this.isPaused||!s.interval||(d(t,wt),u.set(t,()=>{},1,wt))}next(){this.isAnimating||this.to(this.index+1)}prev(){this.isAnimating||this.to(this.index-1)}to(t){const{element:s,slides:n,options:o}=this,i=ts(this),r=Tt(s);let a=t;if(this.isAnimating||i===a||u.get(s,vt))return;ia||i===n.length-1&&a===0)&&(this.direction=r?"left":"right");const{direction:c}=this;a<0?a=n.length-1:a>=n.length&&(a=0);const l=c==="left"?"next":"prev",f=c==="left"?"start":"end",p={relatedTarget:n[a],from:i,to:a,direction:c};ct(Re,p),ct(Je,p),b(s,Re),!Re.defaultPrevented&&(this.index=a,Fe(this,a),le(n[a])&&h(s,"slide")?u.set(s,()=>{d(n[a],`${tt}-${l}`),kt(n[a]),d(n[a],`${tt}-${f}`),d(n[i],`${tt}-${f}`),S(n[a],()=>this.slides&&this.slides.length&&Us(this))},0,vt):(d(n[a],T),v(n[i],T),u.set(s,()=>{u.clear(s,vt),s&&o.interval&&!this.isPaused&&this.cycle(),b(s,Je)},0,vt)))}_toggleEventListeners=t=>{const{element:s,options:n,slides:o,controls:i,indicators:r}=this,{touch:a,pause:c,interval:l,keyboard:f}=n,p=t?L:O;c&&l&&(p(s,Ce,_i),p(s,ds,Si)),a&&o.length>2&&(p(s,Bn,Hi,te),p(s,_e,Ys,{passive:!1}),p(s,Vo,Ys,{passive:!1})),i.length&&i.forEach(y=>{p(y,D,Ai)}),r.length&&r.forEach(y=>{p(y,D,xi)}),f&&p(w(s),ye,Pi)};dispose(){const{isAnimating:t}=this,s={...this,isAnimating:t};this._toggleEventListeners(),super.dispose(),s.isAnimating&&S(s.slides[s.index],()=>{Us(s)})}}const Lt="collapsing",j="collapse",eo="Collapse",Li=`.${j}`,so=`[${ot}="${j}"]`,Oi={parent:null},ve=e=>F(e,eo),ki=e=>new bs(e),Zs=E(`show.bs.${j}`),Mi=E(`shown.bs.${j}`),Qs=E(`hide.bs.${j}`),Ni=E(`hidden.bs.${j}`),Bi=e=>{const{element:t,parent:s,triggers:n}=e;b(t,Zs),Zs.defaultPrevented||(u.set(t,Te,17),s&&u.set(s,Te,17),d(t,Lt),v(t,j),x(t,{height:`${t.scrollHeight}px`}),S(t,()=>{u.clear(t),s&&u.clear(s),n.forEach(o=>I(o,Ee,"true")),v(t,Lt),d(t,j),d(t,g),x(t,{height:""}),b(t,Mi)}))},Gs=e=>{const{element:t,parent:s,triggers:n}=e;b(t,Qs),Qs.defaultPrevented||(u.set(t,Te,17),s&&u.set(s,Te,17),x(t,{height:`${t.scrollHeight}px`}),v(t,j),v(t,g),d(t,Lt),kt(t),x(t,{height:"0px"}),S(t,()=>{u.clear(t),s&&u.clear(s),n.forEach(o=>I(o,Ee,"false")),v(t,Lt),d(t,j),x(t,{height:""}),b(t,Ni)}))},Ri=e=>{const{target:t}=e,s=t&&N(t,so),n=s&&K(s),o=n&&ve(n);s&&nt(s)||o&&(o.toggle(),s?.tagName==="A"&&e.preventDefault())};class bs extends st{static selector=Li;static init=ki;static getInstance=ve;constructor(t,s){super(t,s);const{element:n,options:o}=this,i=w(n);this.triggers=[...U(so,i)].filter(r=>K(r)===n),this.parent=A(o.parent)?o.parent:ce(o.parent)?K(n)||_(o.parent,i):null,this._toggleEventListeners(!0)}get name(){return eo}get defaults(){return Oi}hide(){const{triggers:t,element:s}=this;u.get(s)||(Gs(this),t.length&&t.forEach(n=>d(n,`${j}d`)))}show(){const{element:t,parent:s,triggers:n}=this;let o,i;s&&(o=[...U(`.${j}.${g}`,s)].find(r=>ve(r)),i=o&&ve(o)),(!s||!u.get(s))&&!u.get(t)&&(i&&o!==t&&(Gs(i),i.triggers.forEach(r=>{d(r,`${j}d`)})),Bi(this),n.length&&n.forEach(r=>v(r,`${j}d`)))}toggle(){h(this.element,g)?this.hide():this.show()}_toggleEventListeners=t=>{const s=t?L:O,{triggers:n}=this;n.length&&n.forEach(o=>{s(o,D,Ri)})};dispose(){this._toggleEventListeners(),super.dispose()}}var Fi="1.1.0";const Wi=["all","intersecting","update"],Js="PositionObserver Error";var ws=class{entries;static version=Fi;_t;_r;_cm;_w;_h;_rm;_th;_c;constructor(e,t){if(!Yn(e))throw new Error(`${Js}: ${e} is not a function.`);this.entries=new Map,this._c=e,this._t=0;const s=z(t?.root)?t.root:document?.documentElement;this._r=s,this._rm=t?.rootMargin,this._th=t?.threshold;this._cm=Wi.indexOf(t?.callbackMode||"intersecting"),this._w=s.clientWidth,this._h=s.clientHeight}observe=e=>{if(!z(e))throw new Error(`${Js}: ${e} is not an instance of Element.`);this._r.contains(e)&&this._n(e).then(t=>{t.boundingClientRect&&!this.getEntry(e)&&this.entries.set(e,t);this._t||(this._t=requestAnimationFrame(this._rc))})};unobserve=e=>{this.entries.has(e)&&this.entries.delete(e)};_rc=()=>{if(!this.entries.size){this._t=0;return}const{clientWidth:e,clientHeight:t}=this._r,s=new Promise(n=>{const o=[];this.entries.forEach(({target:i,boundingClientRect:r,isIntersecting:a})=>{this._r.contains(i)&&this._n(i).then(c=>{if(!c.isIntersecting){if(this._cm===1)return;if(this._cm===2){a&&(this.entries.set(i,c),o.push(c));return}}const{left:l,top:f}=c.boundingClientRect;(r.top!==f||r.left!==l||this._w!==e||this._h!==t)&&(this.entries.set(i,c),o.push(c))})}),this._w=e,this._h=t,n(o)});this._t=requestAnimationFrame(async()=>{const n=await s;n.length&&this._c(n,this),this._rc()})};_n=e=>new Promise(t=>{new IntersectionObserver(([n],o)=>{o.disconnect(),t(n)},{threshold:this._th,rootMargin:this._rm}).observe(e)});getEntry=e=>this.entries.get(e);disconnect=()=>{cancelAnimationFrame(this._t),this.entries.clear(),this._t=0}};const Ot=["dropdown","dropup","dropstart","dropend"],no="Dropdown",oo="dropdown-menu",io=e=>{const t=N(e,"A");return e.tagName==="A"&&Jt(e,"href")&&Y(e,"href")?.slice(-1)==="#"||t&&Jt(t,"href")&&Y(t,"href")?.slice(-1)==="#"},[et,es,ss,ns]=Ot,ji=`[${ot}="${et}"]`,se=e=>F(e,no),zi=e=>new Ts(e),Ki=`${oo}-end`,tn=[et,es],en=[ss,ns],sn=["A","BUTTON"],Vi={offset:5,display:"dynamic"},We=E(`show.bs.${et}`),nn=E(`shown.bs.${et}`),je=E(`hide.bs.${et}`),on=E(`hidden.bs.${et}`),ro=E(`updated.bs.${et}`),rn=e=>{const{element:t,menu:s,parentElement:n,options:o}=e,{offset:i}=o;if(R(s,"position")==="static")return;const r=Tt(t),a=h(s,Ki);["margin","top","bottom","left","right"].forEach(B=>{const Ct={};Ct[B]="",x(s,Ct)});let l=Ot.find(B=>h(n,B))||et;const f={dropdown:[i,0,0],dropup:[0,0,i],dropstart:r?[-1,0,0,i]:[-1,i,0],dropend:r?[-1,i,0]:[-1,0,0,i]},p={dropdown:{top:"100%"},dropup:{top:"auto",bottom:"100%"},dropstart:r?{left:"100%",right:"auto"}:{left:"auto",right:"100%"},dropend:r?{left:"auto",right:"100%"}:{left:"100%",right:"auto"},menuStart:r?{right:"0",left:"auto"}:{right:"auto",left:"0"},menuEnd:r?{right:"auto",left:"0"}:{right:"0",left:"auto"}},{offsetWidth:y,offsetHeight:M}=s,{clientWidth:q,clientHeight:G}=dt(t),{left:m,top:V,width:$t,height:yt}=It(t),C=m-y-i<0,ft=m+y+$t+i>=q,it=V+M+i>=G,J=V+M+yt+i>=G,Bt=V-M-i<0,$=(!r&&a||r&&!a)&&m+$t-y<0,W=(r&&a||!r&&!a)&&m+y>=q;if(en.includes(l)&&C&&ft&&(l=et),l===ss&&(r?ft:C)&&(l=ns),l===ns&&(r?C:ft)&&(l=ss),l===es&&Bt&&!J&&(l=et),l===et&&J&&!Bt&&(l=es),en.includes(l)&&it&&ct(p[l],{top:"auto",bottom:0}),tn.includes(l)&&($||W)){let B={left:"auto",right:"auto"};!$&&W&&!r&&(B={left:"auto",right:0}),$&&!W&&r&&(B={left:0,right:"auto"}),B&&ct(p[l],B)}const Rt=f[l];x(s,{...p[l],margin:`${Rt.map(B=>B&&`${B}px`).join(" ")}`}),tn.includes(l)&&a&&a&&x(s,p[!r&&$||r&&W?"menuStart":"menuEnd"]),b(n,ro)},Xi=e=>Array.from(e.children).map(t=>{if(t&&sn.includes(t.tagName))return t;const{firstElementChild:s}=t;return s&&sn.includes(s.tagName)?s:null}).filter(t=>t),an=e=>{const{element:t,options:s,menu:n}=e,o=e.open?L:O,i=w(t);o(i,D,cn),o(i,cs,cn),o(i,ye,Ui),o(i,Wo,Yi),s.display==="dynamic"&&(e.open?e._observer.observe(n):e._observer.disconnect())},Es=e=>{const t=[...Ot,"btn-group","input-group"].map(s=>rt(`${s} ${g}`,w(e))).find(s=>s.length);if(t&&t.length)return[...t[0].children].find(s=>Ot.some(n=>n===Y(s,ot)))},cn=e=>{const{target:t,type:s}=e;if(!A(t))return;const n=Es(t),o=n&&se(n);if(!o)return;const{parentElement:i,menu:r}=o,a=i&&i.contains(t)&&(t.tagName==="form"||N(t,"form")!==null);[D,Nn].includes(s)&&io(t)&&e.preventDefault(),!a&&s!==cs&&t!==n&&t!==r&&o.hide()};function qi(e){const t=se(this);nt(this)||t&&(e.stopPropagation(),t.toggle(),io(this)&&e.preventDefault())}const Ui=e=>{[Ue,Ye].includes(e.code)&&e.preventDefault()};function Yi(e){const{code:t}=e,s=Es(this);if(!s)return;const n=se(s),{activeElement:o}=w(s);if(!n||!o)return;const{menu:i,open:r}=n,a=Xi(i);if(a&&a.length&&[Ue,Ye].includes(t)){let c=a.indexOf(o);o===s?c=0:t===Ye?c=c>1?c-1:0:t===Ue&&(c=crn(this)),this._toggleEventListeners(!0))}get name(){return no}get defaults(){return Vi}toggle(){this.open?this.hide():this.show()}show(){const{element:t,open:s,menu:n,parentElement:o}=this;if(s)return;const i=Es(t),r=i&&se(i);r&&r.hide(),[We,nn,ro].forEach(a=>{a.relatedTarget=t}),b(o,We),!We.defaultPrevented&&(d(n,g),d(o,g),I(t,Ee,"true"),rn(this),this.open=!s,lt(t),an(this),b(o,nn))}hide(){const{element:t,open:s,menu:n,parentElement:o}=this;s&&([je,on].forEach(i=>{i.relatedTarget=t}),b(o,je),!je.defaultPrevented&&(v(n,g),v(o,g),I(t,Ee,"false"),this.open=!s,an(this),b(o,on)))}_toggleEventListeners=t=>{(t?L:O)(this.element,D,qi)};dispose(){this.open&&this.hide(),this._toggleEventListeners(),super.dispose()}}const X="modal",$s="Modal",ys="Offcanvas",Zi="fixed-top",Qi="fixed-bottom",ao="sticky-top",co="position-sticky",lo=e=>[...rt(Zi,e),...rt(Qi,e),...rt(ao,e),...rt(co,e),...rt("is-fixed",e)],Gi=e=>{const t=Mt(e);x(t,{paddingRight:"",overflow:""});const s=lo(t);s.length&&s.forEach(n=>{x(n,{paddingRight:"",marginRight:""})})},ho=e=>{const{clientWidth:t}=dt(e),{innerWidth:s}=Vn(e);return Math.abs(s-t)},fo=(e,t)=>{const s=Mt(e),n=parseInt(R(s,"paddingRight"),10),i=R(s,"overflow")==="hidden"&&n?0:ho(e),r=lo(s);t&&(x(s,{overflow:"hidden",paddingRight:`${n+i}px`}),r.length&&r.forEach(a=>{const c=R(a,"paddingRight");if(a.style.paddingRight=`${parseInt(c,10)+i}px`,[ao,co].some(l=>h(a,l))){const l=R(a,"marginRight");a.style.marginRight=`${parseInt(l,10)-i}px`}}))},Z="offcanvas",Et=bt({tagName:"div",className:"popup-container"}),uo=(e,t)=>{const s=P(t)&&t.nodeName==="BODY",n=P(t)&&!s?t:Et,o=s?t:Mt(e);P(e)&&(n===Et&&o.append(Et),n.append(e))},go=(e,t)=>{const s=P(t)&&t.nodeName==="BODY",n=P(t)&&!s?t:Et;P(e)&&(e.remove(),n===Et&&!Et.children.length&&Et.remove())},Cs=(e,t)=>{const s=P(t)&&t.nodeName!=="BODY"?t:Et;return P(e)&&s.contains(e)},po="backdrop",ln=`${X}-${po}`,dn=`${Z}-${po}`,mo=`.${X}.${g}`,_s=`.${Z}.${g}`,H=bt("div"),Nt=e=>_(`${mo},${_s}`,w(e)),Ss=e=>{const t=e?ln:dn;[ln,dn].forEach(s=>{v(H,s)}),d(H,t)},vo=(e,t,s)=>{Ss(s),uo(H,Mt(e)),t&&d(H,k)},bo=()=>{h(H,g)||(d(H,g),kt(H))},Pe=()=>{v(H,g)},wo=e=>{Nt(e)||(v(H,k),go(H,Mt(e)),Gi(e))},Eo=e=>A(e)&&R(e,"visibility")!=="hidden"&&e.offsetParent!==null,Ji=`.${X}`,tr=`[${ot}="${X}"]`,er=`[${xe}="${X}"]`,To=`${X}-static`,sr={backdrop:!0,keyboard:!0},ne=e=>F(e,$s),nr=e=>new xs(e),be=E(`show.bs.${X}`),hn=E(`shown.bs.${X}`),ze=E(`hide.bs.${X}`),fn=E(`hidden.bs.${X}`),$o=e=>{const{element:t}=e,s=ho(t),{clientHeight:n,scrollHeight:o}=dt(t),{clientHeight:i,scrollHeight:r}=t,a=i!==r;if(!a&&s){const l={[Tt(t)?"paddingLeft":"paddingRight"]:`${s}px`};x(t,l)}fo(t,a||n!==o)},yo=(e,t)=>{const s=t?L:O,{element:n}=e;s(n,D,rr),s(w(n),ye,ir),t?e._observer.observe(n):e._observer.disconnect()},un=e=>{const{triggers:t,element:s,relatedTarget:n}=e;wo(s),x(s,{paddingRight:"",display:""}),yo(e);const o=be.relatedTarget||t.find(Eo);o&<(o),fn.relatedTarget=n||void 0,b(s,fn),Se(s)},gn=e=>{const{element:t,relatedTarget:s}=e;lt(t),yo(e,!0),hn.relatedTarget=s||void 0,b(t,hn),Se(t)},pn=e=>{const{element:t,hasFade:s}=e;x(t,{display:"block"}),$o(e),Nt(t)||x(Mt(t),{overflow:"hidden"}),d(t,g),Dt(t,re),I(t,$e,"true"),s?S(t,()=>gn(e)):gn(e)},mn=e=>{const{element:t,options:s,hasFade:n}=e;s.backdrop&&n&&h(H,g)&&!Nt(t)?(Pe(),S(H,()=>un(e))):un(e)};function or(e){const t=K(this),s=t&&ne(t);nt(this)||s&&(this.tagName==="A"&&e.preventDefault(),s.relatedTarget=this,s.toggle())}const ir=({code:e,target:t})=>{const s=_(mo,w(t)),n=s&&ne(s);if(!n)return;const{options:o}=n;o.keyboard&&e===hs&&h(s,g)&&(n.relatedTarget=null,n.hide())},rr=e=>{const{currentTarget:t}=e,s=t&&ne(t);if(!s||!t||u.get(t))return;const{options:n,isStatic:o,modalDialog:i}=s,{backdrop:r}=n,{target:a}=e,c=w(t)?.getSelection()?.toString().length,l=i.contains(a),f=a&&N(a,er);o&&!l?u.set(t,()=>{d(t,To),S(i,()=>ar(s))},17):(f||!c&&!o&&!l&&r)&&(s.relatedTarget=f||null,s.hide(),e.preventDefault())},ar=e=>{const{element:t,modalDialog:s}=e,n=(le(s)||0)+17;v(t,To),u.set(t,()=>u.clear(t),n)};class xs extends st{static selector=Ji;static init=nr;static getInstance=ne;constructor(t,s){super(t,s);const{element:n}=this,o=_(`.${X}-dialog`,n);o&&(this.modalDialog=o,this.triggers=[...U(tr,w(n))].filter(i=>K(i)===n),this.isStatic=this.options.backdrop==="static",this.hasFade=h(n,k),this.relatedTarget=null,this._observer=new ResizeObserver(()=>this.update()),this._toggleEventListeners(!0))}get name(){return $s}get defaults(){return sr}toggle(){h(this.element,g)?this.hide():this.show()}show(){const{element:t,options:s,hasFade:n,relatedTarget:o}=this,{backdrop:i}=s;let r=0;if(h(t,g)||(be.relatedTarget=o||void 0,b(t,be),be.defaultPrevented))return;const a=Nt(t);if(a&&a!==t){const c=ne(a)||F(a,ys);c&&c.hide()}i?(Cs(H)?Ss(!0):vo(t,n,!0),r=le(H),bo(),setTimeout(()=>pn(this),r)):(pn(this),a&&h(H,g)&&Pe())}hide(){const{element:t,hasFade:s,relatedTarget:n}=this;h(t,g)&&(ze.relatedTarget=n||void 0,b(t,ze),!ze.defaultPrevented&&(v(t,g),I(t,re,"true"),Dt(t,$e),s?S(t,()=>mn(this)):mn(this)))}update=()=>{h(this.element,g)&&$o(this)};_toggleEventListeners=t=>{const s=t?L:O,{triggers:n}=this;n.length&&n.forEach(o=>{s(o,D,or)})};dispose(){const t={...this},{modalDialog:s,hasFade:n}=t,o=()=>setTimeout(()=>super.dispose(),17);this.hide(),this._toggleEventListeners(),n?S(s,o):o()}}const cr=`.${Z}`,Co=`[${ot}="${Z}"]`,lr=`[${xe}="${Z}"]`,He=`${Z}-toggling`,dr={backdrop:!0,keyboard:!0,scroll:!1},oe=e=>F(e,ys),hr=e=>new As(e),we=E(`show.bs.${Z}`),_o=E(`shown.bs.${Z}`),Ke=E(`hide.bs.${Z}`),So=E(`hidden.bs.${Z}`),fr=e=>{const{element:t}=e,{clientHeight:s,scrollHeight:n}=dt(t);fo(t,s!==n)},xo=(e,t)=>{const s=t?L:O,n=w(e.element);s(n,ye,mr),s(n,D,pr)},vn=e=>{const{element:t,options:s}=e;s.scroll||(fr(e),x(Mt(t),{overflow:"hidden"})),d(t,He),d(t,g),x(t,{visibility:"visible"}),S(t,()=>vr(e))},ur=e=>{const{element:t,options:s}=e,n=Nt(t);t.blur(),!n&&s.backdrop&&h(H,g)&&Pe(),S(t,()=>br(e))};function gr(e){const t=K(this),s=t&&oe(t);nt(this)||s&&(s.relatedTarget=this,s.toggle(),this.tagName==="A"&&e.preventDefault())}const pr=e=>{const{target:t}=e,s=_(_s,w(t));if(!s)return;const n=_(lr,s),o=oe(s);if(!o)return;const{options:i,triggers:r}=o,{backdrop:a}=i,c=N(t,Co),l=w(s).getSelection();H.contains(t)&&a==="static"||(!(l&&l.toString().length)&&(!s.contains(t)&&a&&(!c||r.includes(t))||n&&n.contains(t))&&(o.relatedTarget=n&&n.contains(t)?n:void 0,o.hide()),c&&c.tagName==="A"&&e.preventDefault())},mr=({code:e,target:t})=>{const s=_(_s,w(t)),n=s&&oe(s);n&&n.options.keyboard&&e===hs&&(n.relatedTarget=void 0,n.hide())},vr=e=>{const{element:t}=e;v(t,He),Dt(t,re),I(t,$e,"true"),I(t,"role","dialog"),b(t,_o),xo(e,!0),lt(t),Se(t)},br=e=>{const{element:t,triggers:s}=e;I(t,re,"true"),Dt(t,$e),Dt(t,"role"),x(t,{visibility:""});const n=we.relatedTarget||s.find(Eo);n&<(n),wo(t),b(t,So),v(t,He),Se(t),Nt(t)||xo(e)};class As extends st{static selector=cr;static init=hr;static getInstance=oe;constructor(t,s){super(t,s);const{element:n}=this;this.triggers=[...U(Co,w(n))].filter(o=>K(o)===n),this.relatedTarget=void 0,this._toggleEventListeners(!0)}get name(){return ys}get defaults(){return dr}toggle(){h(this.element,g)?this.hide():this.show()}show(){const{element:t,options:s,relatedTarget:n}=this;let o=0;if(h(t,g)||(we.relatedTarget=n||void 0,_o.relatedTarget=n||void 0,b(t,we),we.defaultPrevented))return;const i=Nt(t);if(i&&i!==t){const r=oe(i)||F(i,$s);r&&r.hide()}s.backdrop?(Cs(H)?Ss():vo(t,!0),o=le(H),bo(),setTimeout(()=>vn(this),o)):(vn(this),i&&h(H,g)&&Pe())}hide(){const{element:t,relatedTarget:s}=this;h(t,g)&&(Ke.relatedTarget=s||void 0,So.relatedTarget=s||void 0,b(t,Ke),!Ke.defaultPrevented&&(d(t,He),v(t,g),ur(this)))}_toggleEventListeners=t=>{const s=t?L:O;this.triggers.forEach(n=>{s(n,D,gr)})};dispose(){const{element:t}=this,s=h(t,g),n=()=>setTimeout(()=>super.dispose(),1);this.hide(),this._toggleEventListeners(),s?S(t,n):n()}}const Ht="popover",Ps="Popover",at="tooltip",Ao=e=>{const t=e===at,s=t?`${e}-inner`:`${e}-body`,n=t?"":`

`,o=`
`,i=`
`;return`
${n+o+i}
`},Po={top:"top",bottom:"bottom",left:"start",right:"end"},os=e=>{requestAnimationFrame(()=>{const t=/\b(top|bottom|start|end)+/,{element:s,tooltip:n,container:o,offsetParent:i,options:r,arrow:a}=e;if(!n)return;const c=Tt(s),{x:l,y:f}=ni(i);x(n,{top:"",left:"",right:"",bottom:""});const{offsetWidth:p,offsetHeight:y}=n,{clientWidth:M,clientHeight:q,offsetWidth:G}=dt(s);let{placement:m}=r;const{clientWidth:V,offsetWidth:$t}=o,C=R(o,"position")==="fixed",ft=Math.abs(C?V-$t:M-G),it=c&&C?ft:0,J=M-(c?0:ft)-1,Bt=e._observer.getEntry(s),{width:$,height:W,left:Rt,right:B,top:Ct}=Bt?.boundingClientRect||It(s,!0),{x:fe,y:Ft}=ai(s,i,{x:l,y:f});x(a,{top:"",left:"",right:"",bottom:""});let _t=0,Xt="",ut=0,Ie="",Wt="",ue="",Le="";const St=a.offsetWidth||0,gt=a.offsetHeight||0,Oe=St/2;let qt=Ct-y-gt<0,Ut=Ct+y+W+gt>=q,Yt=Rt-p-St=J;const ge=["left","right"],ke=["top","bottom"];qt=ge.includes(m)?Ct+W/2-y/2-gt<0:qt,Ut=ge.includes(m)?Ct+y/2+W/2+gt>=q:Ut,Yt=ke.includes(m)?Rt+$/2-p/2=J:Zt,m=ge.includes(m)&&Yt&&Zt?"top":m,m=m==="top"&&qt?"bottom":m,m=m==="bottom"&&Ut?"top":m,m=m==="left"&&Yt?"right":m,m=m==="right"&&Zt?"left":m,n.className.includes(m)||(n.className=n.className.replace(t,Po[m])),ge.includes(m)?(m==="left"?ut=fe-p-St:ut=fe+$+St,qt&&Ut?(_t=0,Xt=0,Wt=Ft+W/2-gt/2):qt?(_t=Ft,Xt="",Wt=W/2-St):Ut?(_t=Ft-y+W,Xt="",Wt=y-W/2-St):(_t=Ft-y/2+W/2,Wt=y/2-gt/2)):ke.includes(m)&&(m==="top"?_t=Ft-y-gt:_t=Ft+W+gt,Yt?(ut=0,ue=fe+$/2-Oe):Zt?(ut="auto",Ie=0,Le=$/2+J-B-Oe):(ut=fe-p/2+$/2,ue=p/2-Oe)),x(n,{top:`${_t}px`,bottom:Xt===""?"":`${Xt}px`,left:ut==="auto"?ut:`${ut}px`,right:Ie!==""?`${Ie}px`:""}),A(a)&&(Wt!==""&&(a.style.top=`${Wt}px`),ue!==""?a.style.left=`${ue}px`:Le!==""&&(a.style.right=`${Le}px`));const Fo=E(`updated.bs.${ee(e.name)}`);b(s,Fo)})},is={template:Ao(at),title:"",customClass:"",trigger:"hover focus",placement:"top",sanitizeFn:void 0,animation:!0,delay:200,container:document.body,content:"",dismissible:!1,btnClose:""},Ho="data-original-title",xt="Tooltip",mt=(e,t,s)=>{if(ce(t)&&t.length){let n=t.trim();Yn(s)&&(n=s(n));const i=new DOMParser().parseFromString(n,"text/html");e.append(...i.body.childNodes)}else A(t)?e.append(t):(li(t)||ci(t)&&t.every(P))&&e.append(...t)},wr=e=>{const t=e.name===xt,{id:s,element:n,options:o}=e,{title:i,placement:r,template:a,animation:c,customClass:l,sanitizeFn:f,dismissible:p,content:y,btnClose:M}=o,q=t?at:Ht,G={...Po};let m=[],V=[];Tt(n)&&(G.left="end",G.right="start");const $t=`bs-${q}-${G[r]}`;let yt;if(A(a))yt=a;else{const $=bt("div");mt($,a,f),yt=$.firstChild}if(!A(yt))return;e.tooltip=yt.cloneNode(!0);const{tooltip:C}=e;I(C,"id",s),I(C,"role",at);const ft=t?`${at}-inner`:`${Ht}-body`,it=t?null:_(`.${Ht}-header`,C),J=_(`.${ft}`,C);e.arrow=_(`.${q}-arrow`,C);const{arrow:Bt}=e;if(A(i))m=[i.cloneNode(!0)];else{const $=bt("div");mt($,i,f),m=[...$.childNodes]}if(A(y))V=[y.cloneNode(!0)];else{const $=bt("div");mt($,y,f),V=[...$.childNodes]}if(p)if(i)if(A(M))m=[...m,M.cloneNode(!0)];else{const $=bt("div");mt($,M,f),m=[...m,$.firstChild]}else if(it&&it.remove(),A(M))V=[...V,M.cloneNode(!0)];else{const $=bt("div");mt($,M,f),V=[...V,$.firstChild]}t?i&&J&&mt(J,i,f):(i&&it&&mt(it,m,f),y&&J&&mt(J,V,f),e.btn=_(".btn-close",C)||void 0),d(C,"position-absolute"),d(Bt,"position-absolute"),h(C,q)||d(C,q),c&&!h(C,k)&&d(C,k),l&&!h(C,l)&&d(C,l),h(C,$t)||d(C,$t)},Er=e=>{const t=["HTML","BODY"],s=[];let{parentNode:n}=e;for(;n&&!t.includes(n.nodeName);)n=oi(n),Kn(n)||ii(n)||s.push(n);return s.find((o,i)=>(R(o,"position")!=="relative"||R(o,"position")==="relative"&&o.offsetHeight!==o.scrollHeight)&&s.slice(i+1).every(r=>R(r,"position")==="static")?o:null)||w(e).body},Tr=`[${ot}="${at}"],[data-tip="${at}"]`,Do="title";let bn=e=>F(e,xt);const $r=e=>new De(e),yr=e=>{const{element:t,tooltip:s,container:n}=e;Dt(t,kn),go(s,n)},Qt=e=>{const{tooltip:t,container:s}=e;return t&&Cs(t,s)},Cr=(e,t)=>{const{element:s}=e;e._toggleEventListeners(),Jt(s,Ho)&&e.name===xt&&Lo(e),t&&t()},Io=(e,t)=>{const s=t?L:O,{element:n}=e;s(w(n),_e,e.handleTouch,te)},wn=e=>{const{element:t}=e,s=E(`shown.bs.${ee(e.name)}`);Io(e,!0),b(t,s),u.clear(t,"in")},En=e=>{const{element:t}=e,s=E(`hidden.bs.${ee(e.name)}`);Io(e),yr(e),b(t,s),u.clear(t,"out")},Tn=(e,t)=>{const s=t?L:O,{element:n,tooltip:o}=e,i=N(n,`.${X}`),r=N(n,`.${Z}`);t?[n,o].forEach(a=>e._observer.observe(a)):e._observer.disconnect(),i&&s(i,`hide.bs.${X}`,e.handleHide),r&&s(r,`hide.bs.${Z}`,e.handleHide)},Lo=(e,t)=>{const s=[Ho,Do],{element:n}=e;I(n,s[t?0:1],t||Y(n,s[0])||""),Dt(n,s[t?1:0])};class De extends st{static selector=Tr;static init=$r;static getInstance=bn;static styleTip=os;constructor(t,s){super(t,s);const{element:n}=this,o=this.name===xt,i=o?at:Ht,r=o?xt:Ps;bn=f=>F(f,r),this.enabled=!0,this.id=`${i}-${qn(n,i)}`;const{options:a}=this;if(!a.title&&o||!o&&!a.content)return;ct(is,{titleAttr:""}),Jt(n,Do)&&o&&typeof a.title=="string"&&Lo(this,a.title);const c=Er(n),l=["sticky","fixed","relative"].some(f=>R(c,"position")===f)?c:Vn(n);this.container=c,this.offsetParent=l,wr(this),this.tooltip&&(this._observer=new ws(()=>this.update()),this._toggleEventListeners(!0))}get name(){return xt}get defaults(){return is}handleFocus=()=>lt(this.element);handleShow=()=>this.show();show(){const{options:t,tooltip:s,element:n,container:o,id:i}=this,{animation:r}=t,a=u.get(n,"out");u.clear(n,"out"),s&&!a&&!Qt(this)&&u.set(n,()=>{const c=E(`show.bs.${ee(this.name)}`);b(n,c),c.defaultPrevented||(uo(s,o),I(n,kn,`#${i}`),this.update(),Tn(this,!0),h(s,g)||d(s,g),r?S(s,()=>wn(this)):wn(this))},17,"in")}handleHide=()=>this.hide();hide(){const{options:t,tooltip:s,element:n}=this,{animation:o,delay:i}=t;u.clear(n,"in"),s&&Qt(this)&&u.set(n,()=>{const r=E(`hide.bs.${ee(this.name)}`);b(n,r),r.defaultPrevented||(this.update(),v(s,g),Tn(this),o?S(s,()=>En(this)):En(this))},i+17,"out")}update=()=>{os(this)};toggle=()=>{const{tooltip:t}=this;t&&!Qt(this)?this.show():this.hide()};enable(){const{enabled:t}=this;t||(this._toggleEventListeners(!0),this.enabled=!t)}disable(){const{tooltip:t,enabled:s}=this;s&&(t&&Qt(this)&&this.hide(),this._toggleEventListeners(),this.enabled=!s)}toggleEnabled(){this.enabled?this.disable():this.enable()}handleTouch=({target:t})=>{const{tooltip:s,element:n}=this;s&&s.contains(t)||t===n||t&&n.contains(t)||this.hide()};_toggleEventListeners=t=>{const s=t?L:O,{element:n,options:o,btn:i}=this,{trigger:r}=o,c=!!(this.name!==xt&&o.dismissible);r.includes("manual")||(this.enabled=!!t,r.split(" ").forEach(f=>{f===jo?(s(n,Nn,this.handleShow),s(n,Ce,this.handleShow),c||(s(n,ds,this.handleHide),s(w(n),_e,this.handleTouch,te))):f===D?s(n,f,c?this.handleShow:this.toggle):f===cs&&(s(n,ls,this.handleShow),c||s(n,Mn,this.handleHide),Yo()&&s(n,D,this.handleFocus)),c&&i&&s(i,D,this.handleHide)}))};dispose(){const{tooltip:t,options:s}=this,n={...this,name:this.name},o=()=>setTimeout(()=>Cr(n,()=>super.dispose()),17);s.animation&&Qt(n)?(this.options.delay=0,this.hide(),S(t,o)):o()}}const _r=`[${ot}="${Ht}"],[data-tip="${Ht}"]`,Sr=ct({},is,{template:Ao(Ht),content:"",dismissible:!1,btnClose:''}),xr=e=>F(e,Ps),Ar=e=>new Hs(e);class Hs extends De{static selector=_r;static init=Ar;static getInstance=xr;static styleTip=os;constructor(t,s){super(t,s)}get name(){return Ps}get defaults(){return Sr}show=()=>{super.show();const{options:t,btn:s}=this;t.dismissible&&s&&setTimeout(()=>lt(s),17)}}const Pr="scrollspy",Oo="ScrollSpy",Hr='[data-bs-spy="scroll"]',Dr="[href]",Ir={offset:10,target:void 0},Lr=e=>F(e,Oo),Or=e=>new Ds(e),$n=E(`activate.bs.${Pr}`),kr=e=>{const{target:t,_itemsLength:s,_observables:n}=e,o=gs("A",t),i=w(t);!o.length||s===n.size||(n.clear(),Array.from(o).forEach(r=>{const a=Y(r,"href")?.slice(1),c=a?.length?i.getElementById(a):null;c&&!nt(r)&&e._observables.set(c,r)}),e._itemsLength=e._observables.size)},ko=e=>{Array.from(gs("A",e)).forEach(t=>{h(t,T)&&v(t,T)})},yn=(e,t)=>{const{target:s,element:n}=e;ko(s),e._activeItem=t,d(t,T);let o=t;for(;o!==s;)if(o=o.parentElement,["nav","dropdown-menu","list-group"].some(i=>h(o,i))){const i=o.previousElementSibling;i&&!h(i,T)&&d(i,T)}$n.relatedTarget=t,b(n,$n)},Ve=(e,t)=>{const{scrollTarget:s,element:n,options:o}=e;return(s!==n?It(t).top+s.scrollTop:t.offsetTop)-(o.offset||10)};class Ds extends st{static selector=Hr;static init=Or;static getInstance=Lr;constructor(t,s){super(t,s);const{element:n,options:o}=this,i=_(o.target,w(n));i&&(this.target=i,this.scrollTarget=n.clientHeight{requestAnimationFrame(()=>this.refresh())},{root:this.scrollTarget}),this._toggleEventListeners(!0))}get name(){return Oo}get defaults(){return Ir}refresh=()=>{const{target:t,scrollTarget:s}=this;if(!t||t.offsetHeight===0)return;kr(this);const{_itemsLength:n,_observables:o,_activeItem:i}=this;if(!n)return;const r=o.entries().toArray(),{scrollTop:a,scrollHeight:c,clientHeight:l}=s;if(a>=c-l){const p=r[n-1]?.[1];i!==p&&yn(this,p);return}const f=r[0]?.[0]?Ve(this,r[0][0]):null;if(f!==null&&a0){this._activeItem=null,ko(t);return}for(let p=0;p=q&&(m===null||a{const s=N(t.target,Dr),n=s&&Y(s,"href")?.slice(1),o=n&&di(n,this.target);o&&(this.scrollTarget.scrollTo({top:o.offsetTop,behavior:"smooth"}),t.preventDefault())};_toggleEventListeners=t=>{const{target:s,_observables:n,_observer:o,_scrollTo:i}=this;(t?L:O)(s,D,i),t?n?.forEach((a,c)=>o.observe(c)):o.disconnect()};dispose(){this._toggleEventListeners(),super.dispose()}}const he="tab",Mo="Tab",rs=`[${ot}="${he}"]`,No=e=>F(e,Mo),Mr=e=>new Is(e),Xe=E(`show.bs.${he}`),Cn=E(`shown.bs.${he}`),qe=E(`hide.bs.${he}`),_n=E(`hidden.bs.${he}`),ie=new Map,Sn=e=>{const{tabContent:t,nav:s}=e;t&&h(t,Lt)&&(t.style.height="",v(t,Lt)),s&&u.clear(s)},xn=e=>{const{element:t,tabContent:s,content:n,nav:o}=e,{tab:i}=A(o)&&ie.get(o)||{tab:null};if(s&&n&&h(n,k)){const{currentHeight:r,nextHeight:a}=ie.get(t)||{currentHeight:0,nextHeight:0};r!==a?setTimeout(()=>{s.style.height=`${a}px`,kt(s),S(s,()=>Sn(e))},50):Sn(e)}else o&&u.clear(o);Cn.relatedTarget=i,b(t,Cn)},An=e=>{const{element:t,content:s,tabContent:n,nav:o}=e,{tab:i,content:r}=o&&ie.get(o)||{tab:null,content:null};let a=0;if(n&&s&&h(s,k)&&([r,s].forEach(c=>{c&&d(c,"overflow-hidden")}),a=r?r.scrollHeight:0),Xe.relatedTarget=i,_n.relatedTarget=t,b(t,Xe),!Xe.defaultPrevented){if(s&&d(s,T),r&&v(r,T),n&&s&&h(s,k)){const c=s.scrollHeight;ie.set(t,{currentHeight:a,nextHeight:c,tab:null,content:null}),d(n,Lt),n.style.height=`${a}px`,kt(n),[r,s].forEach(l=>{l&&v(l,"overflow-hidden")})}s&&s&&h(s,k)?setTimeout(()=>{d(s,g),S(s,()=>{xn(e)})},1):(s&&d(s,g),xn(e)),i&&b(i,_n)}},Pn=e=>{const{nav:t}=e;if(!A(t))return{tab:null,content:null};const s=rt(T,t);let n=null;s.length===1&&!Ot.some(i=>h(s[0].parentElement,i))?[n]=s:s.length>1&&(n=s[s.length-1]);const o=A(n)?K(n):null;return{tab:n,content:o}},Hn=e=>{if(!A(e))return null;const t=N(e,`.${Ot.join(",.")}`);return t?_(`.${Ot[0]}-toggle`,t):null},Nr=e=>{const t=N(e.target,rs),s=t&&No(t);s&&(e.preventDefault(),s.show())};class Is extends st{static selector=rs;static init=Mr;static getInstance=No;constructor(t){super(t);const{element:s}=this,n=K(s);if(!n)return;const o=N(s,".nav"),i=N(n,".tab-content");this.nav=o,this.content=n,this.tabContent=i,this.dropdown=Hn(s);const{tab:r}=Pn(this);if(o&&!r){const a=_(rs,o),c=a&&K(a);c&&(d(a,T),d(c,g),d(c,T),I(s,Me,"true"))}this._toggleEventListeners(!0)}get name(){return Mo}show(){const{element:t,content:s,nav:n,dropdown:o}=this;if(n&&u.get(n)||h(t,T))return;const{tab:i,content:r}=Pn(this);if(n&&i&&ie.set(n,{tab:i,content:r,currentHeight:0,nextHeight:0}),qe.relatedTarget=t,!A(i)||(b(i,qe),qe.defaultPrevented))return;d(t,T),I(t,Me,"true");const a=A(i)&&Hn(i);if(a&&h(a,T)&&v(a,T),n){const c=()=>{i&&(v(i,T),I(i,Me,"false")),o&&!h(o,T)&&d(o,T)};r&&(h(r,k)||s&&h(s,k))?u.set(n,c,1):c()}r&&(v(r,g),h(r,k)?S(r,()=>An(this)):An(this))}_toggleEventListeners=t=>{(t?L:O)(this.element,D,Nr)};dispose(){this._toggleEventListeners(),super.dispose()}}const Q="toast",Bo="Toast",Br=`.${Q}`,Rr=`[${xe}="${Q}"]`,Fr=`[${ot}="${Q}"]`,Vt="showing",Ro="hide",Wr={animation:!0,autohide:!0,delay:5e3},Ls=e=>F(e,Bo),jr=e=>new Os(e),Dn=E(`show.bs.${Q}`),zr=E(`shown.bs.${Q}`),In=E(`hide.bs.${Q}`),Kr=E(`hidden.bs.${Q}`),Ln=e=>{const{element:t,options:s}=e;v(t,Vt),u.clear(t,Vt),b(t,zr),s.autohide&&u.set(t,()=>e.hide(),s.delay,Q)},On=e=>{const{element:t}=e;v(t,Vt),v(t,g),d(t,Ro),u.clear(t,Q),b(t,Kr)},Vr=e=>{const{element:t,options:s}=e;d(t,Vt),s.animation?(kt(t),S(t,()=>On(e))):On(e)},Xr=e=>{const{element:t,options:s}=e;u.set(t,()=>{v(t,Ro),kt(t),d(t,g),d(t,Vt),s.animation?S(t,()=>Ln(e)):Ln(e)},17,Vt)};function qr(e){const t=K(this),s=t&&Ls(t);nt(this)||s&&(this.tagName==="A"&&e.preventDefault(),s.relatedTarget=this,s.show())}const Ur=e=>{const t=e.target,s=Ls(t),{type:n,relatedTarget:o}=e;!s||t===o||t.contains(o)||([Ce,ls].includes(n)?u.clear(t,Q):u.set(t,()=>s.hide(),s.options.delay,Q))};class Os extends st{static selector=Br;static init=jr;static getInstance=Ls;constructor(t,s){super(t,s);const{element:n,options:o}=this;o.animation&&!h(n,k)?d(n,k):!o.animation&&h(n,k)&&v(n,k),this.dismiss=_(Rr,n),this.triggers=[...U(Fr,w(n))].filter(i=>K(i)===n),this._toggleEventListeners(!0)}get name(){return Bo}get defaults(){return Wr}get isShown(){return h(this.element,g)}show=()=>{const{element:t,isShown:s}=this;!t||s||(b(t,Dn),Dn.defaultPrevented||Xr(this))};hide=()=>{const{element:t,isShown:s}=this;!t||!s||(b(t,In),In.defaultPrevented||Vr(this))};_toggleEventListeners=t=>{const s=t?L:O,{element:n,triggers:o,dismiss:i,options:r,hide:a}=this;i&&s(i,D,a),r.autohide&&[ls,Mn,Ce,ds].forEach(c=>s(n,c,Ur)),o.length&&o.forEach(c=>{s(c,D,qr)})};dispose(){const{element:t,isShown:s}=this;this._toggleEventListeners(),u.clear(t,Q),s&&v(t,g),super.dispose()}}const ks=new Map;[ps,ms,vs,bs,Ts,xs,As,Hs,Ds,Is,Os,De].forEach(e=>ks.set(e.prototype.name,e));const Yr=(e,t)=>{[...t].forEach(s=>e(s))},Zr=(e,t)=>{const s=At.getAllFor(e);s&&[...s].forEach(([n,o])=>{t.contains(n)&&o.dispose()})},as=e=>{const t=e&&e.nodeName?e:document,s=[...gs("*",t)];ks.forEach(n=>{const{init:o,selector:i}=n;Yr(o,s.filter(r=>Xn(r,i)))})},Qr=e=>{const t=e&&e.nodeName?e:document;ks.forEach(s=>{Zr(s.prototype.name,t)})};document.body?as():L(document,"DOMContentLoaded",()=>as(),{once:!0});exports.Alert=ps;exports.Button=ms;exports.Carousel=vs;exports.Collapse=bs;exports.Dropdown=Ts;exports.Modal=xs;exports.Offcanvas=As;exports.Popover=Hs;exports.ScrollSpy=Ds;exports.Tab=Is;exports.Toast=Os;exports.Tooltip=De;exports.initCallback=as;exports.removeDataAPI=Qr; -//# sourceMappingURL=bootstrap-native.cjs.map +Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),(()=>{for(var e=new Uint8Array(128),t=0;t<64;t++)e[t<26?t+65:t<52?t+71:t<62?t-4:t*4-205]=t;return t=>{for(var n=t.length,r=new Uint8Array((n-(t[n-1]==`=`)-(t[n-2]==`=`))*3/4|0),i=0,a=0;i>4,r[a++]=s<<4|c>>2,r[a++]=c<<6|l}return r}})(),(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.")});var e=`aria-describedby`,t=`aria-expanded`,n=`aria-hidden`,r=`aria-modal`,i=`aria-pressed`,a=`aria-selected`,o=`focus`,s=`focusin`,c=`focusout`,l=`keydown`,u=`keyup`,d=`click`,f=`mousedown`,p=`mouseenter`,m=`mouseleave`,ee=`pointerdown`,h=`pointermove`,g=`pointerup`,te=`touchstart`,ne=`dragstart`;`onmouseleave`in document;var _=`a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]`,re=`ArrowLeft`,v=`ArrowRight`,y=`transitionDuration`,b=`transitionDelay`,ie=`transitionend`,ae=`transitionProperty`;navigator.userAgentData;var{userAgent:oe}=navigator,se=()=>{let e=/iPhone|iPad|iPod|Android/i;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},ce=()=>{let e=/(iPhone|iPod|iPad)/;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},le=()=>{},ue=(e,t,n,r)=>{let i=r||!1;e.addEventListener(t,n,i)},de=(e,t,n,r)=>{let i=r||!1;e.removeEventListener(t,n,i)},x=(e,t)=>e.getAttribute(t),S=(e,t)=>e.hasAttribute(t),C=(e,t,n)=>e.setAttribute(t,n),fe=(e,t)=>e.removeAttribute(t),w=(e,...t)=>{e.classList.add(...t)},T=(e,...t)=>{e.classList.remove(...t)},E=(e,t)=>e.classList.contains(t),{body:pe}=document,{documentElement:me}=document,{head:he}=document,ge=e=>typeof e==`object`&&!!e||!1,D=e=>ge(e)&&typeof e.nodeType==`number`&&[1,2,3,4,5,6,7,8,9,10,11].some(t=>e.nodeType===t)||!1,O=e=>D(e)&&e.nodeType===1||!1,_e=new Map,ve={data:_e,set:(e,t,n)=>{O(e)&&(_e.has(t)||_e.set(t,new Map),_e.get(t).set(e,n))},getAllFor:e=>_e.get(e)||null,get:(e,t)=>{if(!O(e)||!t)return null;let n=ve.getAllFor(t);return e&&n&&n.get(e)||null},remove:(e,t)=>{let n=ve.getAllFor(t);!n||!O(e)||(n.delete(e),n.size===0&&_e.delete(t))}},k=(e,t)=>ve.get(e,t),ye=e=>e?.trim().replace(/(?:^\w|[A-Z]|\b\w)/g,(e,t)=>t===0?e.toLowerCase():e.toUpperCase()).replace(/\s+/g,``),be=e=>typeof e==`string`||!1,xe=e=>ge(e)&&e.constructor.name===`Window`||!1,Se=e=>D(e)&&e.nodeType===9||!1,A=e=>Se(e)?e:D(e)?e.ownerDocument:xe(e)?e.document:globalThis.document,Ce=(e,...t)=>Object.assign(e,...t),we=e=>{if(!e)return;if(be(e))return A().createElement(e);let{tagName:t}=e,n=we(t);if(!n)return;let r={...e};return delete r.tagName,Ce(n,r)},Te=(e,t)=>{if(!e||!t)return;if(be(t))return A().createElementNS(e,t);let{tagName:n}=t,r=Te(e,n);if(!r)return;let i={...t};return delete i.tagName,Ce(r,i)},j=(e,t)=>e.dispatchEvent(t),M=(e,t,n)=>{let r=getComputedStyle(e,n),i=t.replace(`webkit`,`Webkit`).replace(/([A-Z])/g,`-$1`).toLowerCase();return r.getPropertyValue(i)},Ee=e=>{let t=M(e,ae),n=M(e,b),r=n.includes(`ms`)?1:1e3,i=t&&t!==`none`?parseFloat(n)*r:0;return Number.isNaN(i)?0:i},De=e=>{let t=M(e,ae),n=M(e,y),r=n.includes(`ms`)?1:1e3,i=t&&t!==`none`?parseFloat(n)*r:0;return Number.isNaN(i)?0:i},N=(e,t)=>{let n=0,r=new Event(ie),i=De(e),a=Ee(e);if(i){let o=r=>{r.target===e&&(t.apply(e,[r]),e.removeEventListener(`transitionend`,o),n=1)};e.addEventListener(ie,o),setTimeout(()=>{n||j(e,r)},i+a+17)}else t.apply(e,[r])},Oe=(e,t)=>e.focus(t),ke=e=>[`true`,!0].includes(e)?!0:[`false`,!1].includes(e)?!1:[`null`,``,null,void 0].includes(e)?null:e!==``&&!Number.isNaN(+e)?+e:e,Ae=e=>Object.entries(e),je=(e,t,n,r)=>{if(!O(e))return t;let i={...n},a={...e.dataset},o={...t},s={},c=`title`;return Ae(a).forEach(([e,t])=>{let n=r&&typeof e==`string`&&e.includes(r)?ye(e.replace(r,``)):ye(e);s[n]=ke(t)}),Ae(i).forEach(([e,t])=>{i[e]=ke(t)}),Ae(t).forEach(([t,n])=>{t in i?o[t]=i[t]:t in s?o[t]=s[t]:o[t]=t===c?x(e,c):n}),o},Me=e=>Object.keys(e),P=(e,t)=>{let n=new CustomEvent(e,{cancelable:!0,bubbles:!0});return ge(t)&&Ce(n,t),n},Ne={passive:!0},Pe=e=>e.offsetHeight,F=(e,t)=>{Ae(t).forEach(([t,n])=>{if(n&&be(t)&&t.includes(`--`))e.style.setProperty(t,n);else{let r={};r[t]=n,Ce(e.style,r)}})},Fe=e=>ge(e)&&e.constructor.name===`Map`||!1,Ie=e=>typeof e==`number`||!1,Le=new Map,I={set:(e,t,n,r)=>{O(e)&&(r&&r.length?(Le.has(e)||Le.set(e,new Map),Le.get(e).set(r,setTimeout(t,n))):Le.set(e,setTimeout(t,n)))},get:(e,t)=>{if(!O(e))return null;let n=Le.get(e);return t&&n&&Fe(n)?n.get(t)||null:Ie(n)?n:null},clear:(e,t)=>{if(!O(e))return;let n=Le.get(e);t&&t.length&&Fe(n)?(clearTimeout(n.get(t)),n.delete(t),n.size===0&&Le.delete(e)):(clearTimeout(n),Le.delete(e))}},Re=e=>e.toLowerCase(),L=(e,t)=>(D(t)?t:A()).querySelectorAll(e),ze=new Map;function Be(e){let{shiftKey:t,code:n}=e,r=A(this),i=[...L(_,this)].filter(e=>!S(e,`disabled`)&&!x(e,`aria-hidden`));if(!i.length)return;let a=i[0],o=i[i.length-1];n===`Tab`&&(t&&r.activeElement===a?(o.focus(),e.preventDefault()):!t&&r.activeElement===o&&(a.focus(),e.preventDefault()))}var Ve=e=>ze.has(e)===!0,He=e=>{Ve(e)||(ue(e,`keydown`,Be),ze.set(e,!0))},Ue=e=>{Ve(e)&&(de(e,`keydown`,Be),ze.delete(e))},We=e=>{Ve(e)?Ue(e):He(e)},R=e=>O(e)&&`offsetWidth`in e||!1,Ge=(e,t)=>{let{width:n,height:r,top:i,right:a,bottom:o,left:s}=e.getBoundingClientRect(),c=1,l=1;if(t&&R(e)){let{offsetWidth:t,offsetHeight:i}=e;c=t>0?Math.round(n)/t:1,l=i>0?Math.round(r)/i:1}return{width:n/c,height:r/l,top:i/l,right:a/c,bottom:o/l,left:s/c,x:s/c,y:i/l}},Ke=e=>A(e).body,qe=e=>A(e).documentElement,Je=e=>{let t=xe(e);return{x:t?e.scrollX:e.scrollLeft,y:t?e.scrollY:e.scrollTop}},Ye=e=>D(e)&&e.constructor.name===`ShadowRoot`||!1,Xe=e=>e.nodeName===`HTML`?e:O(e)&&e.assignedSlot||D(e)&&e.parentNode||Ye(e)&&e.host||qe(e),Ze=e=>e?Se(e)?e.defaultView:D(e)?e?.ownerDocument?.defaultView:e:window,Qe=e=>D(e)&&[`TABLE`,`TD`,`TH`].includes(e.nodeName)||!1,$e=(e,t)=>e.matches(t),et=e=>{if(!R(e))return!1;let{width:t,height:n}=Ge(e),{offsetWidth:r,offsetHeight:i}=e;return Math.round(t)!==r||Math.round(n)!==i},tt=(e,t,n)=>{let r=R(t),i=Ge(e,r&&et(t)),a={x:0,y:0};if(r){let e=Ge(t,!0);a.x=e.x+t.clientLeft,a.y=e.y+t.clientTop}return{x:i.left+n.x-a.x,y:i.top+n.y-a.y,width:i.width,height:i.height}},nt=0,rt=0,it=new Map,at=(e,t)=>{let n=t?nt:rt;if(t){let r=at(e),i=it.get(r)||new Map;it.has(r)||it.set(r,i),Fe(i)&&!i.has(t)?(i.set(t,n),nt+=1):n=i.get(t)}else{let t=e.id||e;it.has(t)?n=it.get(t):(it.set(t,n),rt+=1)}return n},ot=e=>Array.isArray(e)||!1,st=e=>{if(!D(e))return!1;let{top:t,bottom:n}=Ge(e),{clientHeight:r}=qe(e);return t<=r&&n>=0},ct=e=>typeof e==`function`||!1,lt=e=>ge(e)&&e.constructor.name===`NodeList`||!1,ut=e=>qe(e).dir===`rtl`,z=(e,t)=>!e||!t?null:e.closest(t)||z(e.getRootNode().host,t)||null,B=(e,t)=>O(e)?e:(O(t)?t:A()).querySelector(e),dt=(e,t)=>(D(t)?t:A()).getElementsByTagName(e),ft=(e,t)=>A(t).getElementById(e),pt=(e,t)=>(t&&D(t)?t:A()).getElementsByClassName(e),mt={},ht=e=>{let{type:t,currentTarget:n}=e;mt[t].forEach((r,i)=>{n===i&&r.forEach((n,r)=>{r.apply(i,[e]),typeof n==`object`&&n.once&&H(i,t,r,n)})})},V=(e,t,n,r)=>{mt[t]||(mt[t]=new Map);let i=mt[t];i.has(e)||i.set(e,new Map);let a=i.get(e),{size:o}=a;a.set(n,r),o||e.addEventListener(t,ht,r)},H=(e,t,n,r)=>{let i=mt[t],a=i&&i.get(e),o=a&&a.get(n),s=o===void 0?r:o;a&&a.has(n)&&a.delete(n),i&&(!a||!a.size)&&i.delete(e),(!i||!i.size)&&delete mt[t],(!a||!a.size)&&e.removeEventListener(t,ht,s)},gt=`fade`,U=`show`,_t=`data-bs-dismiss`,vt=`alert`,yt=`Alert`,bt=e=>E(e,`disabled`)||x(e,`disabled`)===`true`,xt=`5.1.6`,W=class{constructor(e,t){let n;try{if(O(e))n=e;else if(be(e)){if(n=B(e),!n)throw Error(`"${e}" is not a valid selector.`)}else throw Error(`your target is not an instance of HTMLElement.`)}catch(e){throw Error(`${this.name} Error: ${e.message}`)}let r=ve.get(n,this.name);r&&r._toggleEventListeners(),this.element=n,this.options=this.defaults&&Me(this.defaults).length?je(n,this.defaults,t||{},`bs`):{},ve.set(n,this.name,this)}get version(){return xt}get name(){return`BaseComponent`}get defaults(){return{}}_toggleEventListeners=()=>{};dispose(){ve.remove(this.element,this.name),Me(this).forEach(e=>{delete this[e]})}},St=`.${vt}`,Ct=`[${_t}="${vt}"]`,wt=e=>k(e,yt),Tt=e=>new kt(e),Et=P(`close.bs.${vt}`),Dt=P(`closed.bs.${vt}`),Ot=e=>{let{element:t}=e;j(t,Dt),e._toggleEventListeners(),e.dispose(),t.remove()},kt=class extends W{static selector=St;static init=Tt;static getInstance=wt;dismiss;constructor(e){super(e),this.dismiss=B(Ct,this.element),this._toggleEventListeners(!0)}get name(){return yt}close=e=>{let{element:t,dismiss:n}=this;!t||!E(t,`show`)||e&&n&&bt(n)||(j(t,Et),!Et.defaultPrevented&&(T(t,U),E(t,`fade`)?N(t,()=>Ot(this)):Ot(this)))};_toggleEventListeners=e=>{let t=e?V:H,{dismiss:n,close:r}=this;n&&t(n,d,r)};dispose(){this._toggleEventListeners(),super.dispose()}},G=`active`,At=`data-bs-toggle`,jt=`button`,Mt=`Button`,Nt=`[${At}="${jt}"]`,Pt=e=>k(e,Mt),Ft=e=>new It(e),It=class extends W{static selector=Nt;static init=Ft;static getInstance=Pt;constructor(e){super(e);let{element:t}=this;this.isActive=E(t,G),C(t,i,String(!!this.isActive)),this._toggleEventListeners(!0)}get name(){return Mt}toggle=e=>{e&&e.preventDefault();let{element:t,isActive:n}=this;bt(t)||((n?T:w)(t,G),C(t,i,n?`false`:`true`),this.isActive=E(t,G))};_toggleEventListeners=e=>{(e?V:H)(this.element,d,this.toggle)};dispose(){this._toggleEventListeners(),super.dispose()}},Lt=`data-bs-target`,Rt=`carousel`,zt=`Carousel`,Bt=`data-bs-parent`,Vt=`data-bs-container`,K=e=>{let t=[Lt,Bt,Vt,`href`],n=A(e);return t.map(t=>{let r=x(e,t);return r?t===`data-bs-parent`?z(e,r):B(r,n):null}).filter(e=>e)[0]},Ht=`[data-bs-ride="${Rt}"]`,q=`${Rt}-item`,Ut=`data-bs-slide-to`,Wt=`data-bs-slide`,Gt=`paused`,Kt=se()?te:ee;console.log({isMobile:se(),touchEvent:Kt});var qt={pause:`hover`,keyboard:!1,touch:!0,interval:5e3},Jt=e=>k(e,zt),Yt=e=>new hn(e),Xt=0,Zt=0,Qt=0,$t=P(`slide.bs.${Rt}`),en=P(`slid.bs.${Rt}`),tn=e=>{let{index:t,direction:n,element:r,slides:i,options:a}=e;if(e.isAnimating){let o=mn(e),s=n===`left`?`next`:`prev`,c=n===`left`?`start`:`end`;w(i[t],G),T(i[t],`${q}-${s}`),T(i[t],`${q}-${c}`),T(i[o],G),T(i[o],`${q}-${c}`),j(r,en),I.clear(r,Wt),e.cycle&&!A(r).hidden&&a.interval&&!e.isPaused&&e.cycle()}};function nn(){let e=Jt(this);e&&!e.isPaused&&!I.get(this,Gt)&&w(this,Gt)}function rn(){let e=Jt(this);e&&e.isPaused&&!I.get(this,Gt)&&e.cycle()}function an(e){e.preventDefault();let t=z(this,Ht)||K(this),n=t&&Jt(t);if(bt(this)||!n||n.isAnimating)return;let r=+(x(this,Ut)||0);this&&!E(this,`active`)&&!Number.isNaN(r)&&n.to(r)}function on(e){e.preventDefault();let t=z(this,Ht)||K(this),n=t&&Jt(t);if(bt(this)||!n||n.isAnimating)return;let r=x(this,Wt);r===`next`?n.next():r===`prev`&&n.prev()}var sn=({code:e,target:t})=>{let[n]=[...L(Ht,A(t))].filter(e=>st(e)),r=Jt(n);if(!r||r.isAnimating||/textarea|input|select/i.test(t.nodeName))return;let i=ut(n);e===(i?`ArrowRight`:`ArrowLeft`)?r.prev():e===(i?re:v)&&r.next()};function cn(e){let{target:t}=e,n=Jt(this);n&&n.isTouch&&!n.controls.includes(t)&&!n.controls.includes(t?.parentElement)&&(!n.indicator||!n.indicator.contains(t))&&e.preventDefault()}function ln(e){let{target:t}=e,n=Jt(this);if(!n||n.isAnimating||n.isTouch)return;let{controls:r,indicator:i}=n;![...r,i].every(e=>e&&(e===t||e.contains(t)))&&this.contains(t)&&(Xt=e.pageX,n.isTouch=!0,pn(n,!0))}var un=e=>{Zt=e.pageX},dn=e=>{let{target:t}=e,n=A(t),r=[...L(Ht,n)].map(e=>Jt(e)).find(e=>e.isTouch);if(!r)return;let{element:i,index:a}=r,o=ut(i);Qt=e.pageX,r.isTouch=!1,pn(r),!n.getSelection()?.toString().length&&i.contains(t)&&Math.abs(Xt-Qt)>120&&(ZtXt&&r.to(a+(o?1:-1))),Xt=0,Zt=0,Qt=0},fn=(e,t)=>{let{indicators:n}=e;[...n].forEach(e=>T(e,G)),e.indicators[t]&&w(n[t],G)},pn=(e,t)=>{let{element:n}=e,r=t?V:H;r(A(n),h,un,Ne),r(A(n),g,dn,Ne)},mn=e=>{let{slides:t,element:n}=e,r=B(`.${q}.${G}`,n);return r?[...t].indexOf(r):-1},hn=class extends W{static selector=Ht;static init=Yt;static getInstance=Jt;constructor(e,t){super(e,t);let{element:n}=this;this.direction=ut(n)?`right`:`left`,this.isTouch=!1,this.slides=pt(q,n);let{slides:r}=this;if(r.length<2)return;let i=mn(this),a=[...r].find(e=>$e(e,`.${q}-next`));this.index=i;let o=A(n);this.controls=[...L(`[${Wt}]`,n),...L(`[${Wt}][${Lt}="#${n.id}"]`,o)].filter((e,t,n)=>t===n.indexOf(e)),this.indicator=B(`.${Rt}-indicators`,n),this.indicators=[...this.indicator?L(`[${Ut}]`,this.indicator):[],...L(`[${Ut}][${Lt}="#${n.id}"]`,o)].filter((e,t,n)=>t===n.indexOf(e));let{options:s}=this;this.options.interval=s.interval===!0?qt.interval:s.interval,a?this.index=[...r].indexOf(a):i<0&&(this.index=0,w(r[0],G),this.indicators.length&&fn(this,0)),this.indicators.length&&fn(this,this.index),this._toggleEventListeners(!0),s.interval&&this.cycle()}get name(){return zt}get defaults(){return qt}get isPaused(){return E(this.element,Gt)}get isAnimating(){return B(`.${q}-next,.${q}-prev`,this.element)!==null}cycle(){let{element:e,options:t,isPaused:n,index:r}=this;I.clear(e,Rt),n&&(I.clear(e,Gt),T(e,Gt)),I.set(e,()=>{this.element&&!this.isPaused&&!this.isTouch&&st(e)&&this.to(r+1)},t.interval,Rt)}pause(){let{element:e,options:t}=this;this.isPaused||!t.interval||(w(e,Gt),I.set(e,()=>{},1,Gt))}next(){this.isAnimating||this.to(this.index+1)}prev(){this.isAnimating||this.to(this.index-1)}to(e){let{element:t,slides:n,options:r}=this,i=mn(this),a=ut(t),o=e;if(this.isAnimating||i===o||I.get(t,Wt))return;io||i===n.length-1&&o===0)&&(this.direction=a?`left`:`right`);let{direction:s}=this;o<0?o=n.length-1:o>=n.length&&(o=0);let c=s===`left`?`next`:`prev`,l=s===`left`?`start`:`end`,u={relatedTarget:n[o],from:i,to:o,direction:s};Ce($t,u),Ce(en,u),j(t,$t),!$t.defaultPrevented&&(this.index=o,fn(this,o),De(n[o])&&E(t,`slide`)?I.set(t,()=>{w(n[o],`${q}-${c}`),Pe(n[o]),w(n[o],`${q}-${l}`),w(n[i],`${q}-${l}`),N(n[o],()=>this.slides&&this.slides.length&&tn(this))},0,Wt):(w(n[o],G),T(n[i],G),I.set(t,()=>{I.clear(t,Wt),t&&r.interval&&!this.isPaused&&this.cycle(),j(t,en)},0,Wt)))}_toggleEventListeners=e=>{let{element:t,options:n,slides:r,controls:i,indicators:a}=this,{touch:o,pause:s,interval:c,keyboard:u}=n,f=e?V:H;s&&c&&(f(t,p,nn),f(t,m,rn)),o&&r.length>2&&(f(t,ee,ln,Ne),f(t,te,cn,{passive:!1}),f(t,ne,cn,{passive:!1})),i.length&&i.forEach(e=>{f(e,d,on)}),a.length&&a.forEach(e=>{f(e,d,an)}),u&&f(A(t),l,sn)};dispose(){let{isAnimating:e}=this,t={...this,isAnimating:e};this._toggleEventListeners(),super.dispose(),t.isAnimating&&N(t.slides[t.index],()=>{tn(t)})}},gn=`collapsing`,J=`collapse`,_n=`Collapse`,vn=`.${J}`,yn=`[${At}="${J}"]`,bn={parent:null},xn=e=>k(e,_n),Sn=e=>new An(e),Cn=P(`show.bs.${J}`),wn=P(`shown.bs.${J}`),Tn=P(`hide.bs.${J}`),En=P(`hidden.bs.${J}`),Dn=e=>{let{element:n,parent:r,triggers:i}=e;j(n,Cn),Cn.defaultPrevented||(I.set(n,le,17),r&&I.set(r,le,17),w(n,gn),T(n,J),F(n,{height:`${n.scrollHeight}px`}),N(n,()=>{I.clear(n),r&&I.clear(r),i.forEach(e=>C(e,t,`true`)),T(n,gn),w(n,J),w(n,U),F(n,{height:``}),j(n,wn)}))},On=e=>{let{element:n,parent:r,triggers:i}=e;j(n,Tn),Tn.defaultPrevented||(I.set(n,le,17),r&&I.set(r,le,17),F(n,{height:`${n.scrollHeight}px`}),T(n,J),T(n,U),w(n,gn),Pe(n),F(n,{height:`0px`}),N(n,()=>{I.clear(n),r&&I.clear(r),i.forEach(e=>C(e,t,`false`)),T(n,gn),w(n,J),F(n,{height:``}),j(n,En)}))},kn=e=>{let{target:t}=e,n=t&&z(t,yn),r=n&&K(n),i=r&&xn(r);n&&bt(n)||i&&(i.toggle(),n?.tagName===`A`&&e.preventDefault())},An=class extends W{static selector=vn;static init=Sn;static getInstance=xn;constructor(e,t){super(e,t);let{element:n,options:r}=this,i=A(n);this.triggers=[...L(yn,i)].filter(e=>K(e)===n),this.parent=R(r.parent)?r.parent:be(r.parent)?K(n)||B(r.parent,i):null,this._toggleEventListeners(!0)}get name(){return _n}get defaults(){return bn}hide(){let{triggers:e,element:t}=this;I.get(t)||(On(this),e.length&&e.forEach(e=>w(e,`${J}d`)))}show(){let{element:e,parent:t,triggers:n}=this,r,i;t&&(r=[...L(`.${J}.${U}`,t)].find(e=>xn(e)),i=r&&xn(r)),(!t||!I.get(t))&&!I.get(e)&&(i&&r!==e&&(On(i),i.triggers.forEach(e=>{w(e,`${J}d`)})),Dn(this),n.length&&n.forEach(e=>T(e,`${J}d`)))}toggle(){E(this.element,`show`)?this.hide():this.show()}_toggleEventListeners=e=>{let t=e?V:H,{triggers:n}=this;n.length&&n.forEach(e=>{t(e,d,kn)})};dispose(){this._toggleEventListeners(),super.dispose()}},jn=`1.1.0`,Mn=[`all`,`intersecting`,`update`],Nn=`PositionObserver Error`,Pn=class{entries;static version=jn;_t;_r;_cm;_w;_h;_rm;_th;_c;constructor(e,t){if(!ct(e))throw Error(`${Nn}: ${e} is not a function.`);this.entries=new Map,this._c=e,this._t=0;let n=O(t?.root)?t.root:document?.documentElement;this._r=n,this._rm=t?.rootMargin,this._th=t?.threshold,this._cm=Mn.indexOf(t?.callbackMode||`intersecting`),this._w=n.clientWidth,this._h=n.clientHeight}observe=e=>{if(!O(e))throw Error(`${Nn}: ${e} is not an instance of Element.`);this._r.contains(e)&&this._n(e).then(t=>{t.boundingClientRect&&!this.getEntry(e)&&this.entries.set(e,t),this._t||=requestAnimationFrame(this._rc)})};unobserve=e=>{this.entries.has(e)&&this.entries.delete(e)};_rc=()=>{if(!this.entries.size){this._t=0;return}let{clientWidth:e,clientHeight:t}=this._r,n=new Promise(n=>{let r=[];this.entries.forEach(({target:n,boundingClientRect:i,isIntersecting:a})=>{this._r.contains(n)&&this._n(n).then(o=>{if(!o.isIntersecting){if(this._cm===1)return;if(this._cm===2){a&&(this.entries.set(n,o),r.push(o));return}}let{left:s,top:c}=o.boundingClientRect;(i.top!==c||i.left!==s||this._w!==e||this._h!==t)&&(this.entries.set(n,o),r.push(o))})}),this._w=e,this._h=t,n(r)});this._t=requestAnimationFrame(async()=>{let e=await n;e.length&&this._c(e,this),this._rc()})};_n=e=>new Promise(t=>{new IntersectionObserver(([e],n)=>{n.disconnect(),t(e)},{threshold:this._th,rootMargin:this._rm}).observe(e)});getEntry=e=>this.entries.get(e);disconnect=()=>{cancelAnimationFrame(this._t),this.entries.clear(),this._t=0}},Fn=[`dropdown`,`dropup`,`dropstart`,`dropend`],In=`Dropdown`,Ln=`dropdown-menu`,Rn=e=>{let t=z(e,`A`);return e.tagName===`A`&&S(e,`href`)&&x(e,`href`)?.slice(-1)===`#`||t&&S(t,`href`)&&x(t,`href`)?.slice(-1)===`#`},[Y,zn,Bn,Vn]=Fn,Hn=`[${At}="${Y}"]`,Un=e=>k(e,In),Wn=e=>new lr(e),Gn=`${Ln}-end`,Kn=[Y,zn],qn=[Bn,Vn],Jn=[`A`,`BUTTON`],Yn={offset:5,display:`dynamic`},Xn=P(`show.bs.${Y}`),Zn=P(`shown.bs.${Y}`),Qn=P(`hide.bs.${Y}`),$n=P(`hidden.bs.${Y}`),er=P(`updated.bs.${Y}`),tr=e=>{let{element:t,menu:n,parentElement:r,options:i}=e,{offset:a}=i;if(M(n,`position`)===`static`)return;let o=ut(t),s=E(n,Gn);[`margin`,`top`,`bottom`,`left`,`right`].forEach(e=>{let t={};t[e]=``,F(n,t)});let c=Fn.find(e=>E(r,e))||Y,l={dropdown:[a,0,0],dropup:[0,0,a],dropstart:o?[-1,0,0,a]:[-1,a,0],dropend:o?[-1,a,0]:[-1,0,0,a]},u={dropdown:{top:`100%`},dropup:{top:`auto`,bottom:`100%`},dropstart:o?{left:`100%`,right:`auto`}:{left:`auto`,right:`100%`},dropend:o?{left:`auto`,right:`100%`}:{left:`100%`,right:`auto`},menuStart:o?{right:`0`,left:`auto`}:{right:`auto`,left:`0`},menuEnd:o?{right:`auto`,left:`0`}:{right:`0`,left:`auto`}},{offsetWidth:d,offsetHeight:f}=n,{clientWidth:p,clientHeight:m}=qe(t),{left:ee,top:h,width:g,height:te}=Ge(t),ne=ee-d-a<0,_=ee+d+g+a>=p,re=h+f+a>=m,v=h+f+te+a>=m,y=h-f-a<0,b=(!o&&s||o&&!s)&&ee+g-d<0,ie=(o&&s||!o&&!s)&&ee+d>=p;if(qn.includes(c)&&ne&&_&&(c=Y),c===Bn&&(o?_:ne)&&(c=Vn),c===Vn&&(o?ne:_)&&(c=Bn),c===zn&&y&&!v&&(c=Y),c===Y&&v&&!y&&(c=zn),qn.includes(c)&&re&&Ce(u[c],{top:`auto`,bottom:0}),Kn.includes(c)&&(b||ie)){let e={left:`auto`,right:`auto`};!b&&ie&&!o&&(e={left:`auto`,right:0}),b&&!ie&&o&&(e={left:0,right:`auto`}),e&&Ce(u[c],e)}let ae=l[c];F(n,{...u[c],margin:`${ae.map(e=>e&&`${e}px`).join(` `)}`}),Kn.includes(c)&&s&&s&&F(n,u[!o&&b||o&&ie?`menuStart`:`menuEnd`]),j(r,er)},nr=e=>Array.from(e.children).map(e=>{if(e&&Jn.includes(e.tagName))return e;let{firstElementChild:t}=e;return t&&Jn.includes(t.tagName)?t:null}).filter(e=>e),rr=e=>{let{element:t,options:n,menu:r}=e,i=e.open?V:H,a=A(t);i(a,d,ar),i(a,o,ar),i(a,l,sr),i(a,u,cr),n.display===`dynamic`&&(e.open?e._observer.observe(r):e._observer.disconnect())},ir=e=>{let t=[...Fn,`btn-group`,`input-group`].map(t=>pt(`${t} ${U}`,A(e))).find(e=>e.length);if(t&&t.length)return[...t[0].children].find(e=>Fn.some(t=>t===x(e,At)))},ar=e=>{let{target:t,type:n}=e;if(!R(t))return;let r=ir(t),i=r&&Un(r);if(!i)return;let{parentElement:a,menu:o}=i,s=a&&a.contains(t)&&(t.tagName===`form`||z(t,`form`)!==null);[`click`,`mousedown`].includes(n)&&Rn(t)&&e.preventDefault(),!s&&n!==`focus`&&t!==r&&t!==o&&i.hide()};function or(e){let t=Un(this);bt(this)||t&&(e.stopPropagation(),t.toggle(),Rn(this)&&e.preventDefault())}var sr=e=>{[`ArrowDown`,`ArrowUp`].includes(e.code)&&e.preventDefault()};function cr(e){let{code:t}=e,n=ir(this);if(!n)return;let r=Un(n),{activeElement:i}=A(n);if(!r||!i)return;let{menu:a,open:o}=r,s=nr(a);if(s&&s.length&&[`ArrowDown`,`ArrowUp`].includes(t)){let e=s.indexOf(i);i===n?e=0:t===`ArrowUp`?e=e>1?e-1:0:t===`ArrowDown`&&(e=etr(this)),this._toggleEventListeners(!0))}get name(){return In}get defaults(){return Yn}toggle(){this.open?this.hide():this.show()}show(){let{element:e,open:n,menu:r,parentElement:i}=this;if(n)return;let a=ir(e),o=a&&Un(a);o&&o.hide(),[Xn,Zn,er].forEach(t=>{t.relatedTarget=e}),j(i,Xn),!Xn.defaultPrevented&&(w(r,U),w(i,U),C(e,t,`true`),tr(this),this.open=!n,Oe(e),rr(this),j(i,Zn))}hide(){let{element:e,open:n,menu:r,parentElement:i}=this;n&&([Qn,$n].forEach(t=>{t.relatedTarget=e}),j(i,Qn),!Qn.defaultPrevented&&(T(r,U),T(i,U),C(e,t,`false`),this.open=!n,rr(this),j(i,$n)))}_toggleEventListeners=e=>{(e?V:H)(this.element,d,or)};dispose(){this.open&&this.hide(),this._toggleEventListeners(),super.dispose()}},X=`modal`,ur=`Modal`,dr=`Offcanvas`,fr=`fixed-top`,pr=`fixed-bottom`,mr=`sticky-top`,hr=`position-sticky`,gr=e=>[...pt(fr,e),...pt(pr,e),...pt(mr,e),...pt(hr,e),...pt(`is-fixed`,e)],_r=e=>{let t=Ke(e);F(t,{paddingRight:``,overflow:``});let n=gr(t);n.length&&n.forEach(e=>{F(e,{paddingRight:``,marginRight:``})})},vr=e=>{let{clientWidth:t}=qe(e),{innerWidth:n}=Ze(e);return Math.abs(n-t)},yr=(e,t)=>{let n=Ke(e),r=parseInt(M(n,`paddingRight`),10),i=M(n,`overflow`)===`hidden`&&r?0:vr(e),a=gr(n);t&&(F(n,{overflow:`hidden`,paddingRight:`${r+i}px`}),a.length&&a.forEach(e=>{let t=M(e,`paddingRight`);if(e.style.paddingRight=`${parseInt(t,10)+i}px`,[`sticky-top`,`position-sticky`].some(t=>E(e,t))){let t=M(e,`marginRight`);e.style.marginRight=`${parseInt(t,10)-i}px`}}))},Z=`offcanvas`,br=we({tagName:`div`,className:`popup-container`}),xr=(e,t)=>{let n=D(t)&&t.nodeName===`BODY`,r=D(t)&&!n?t:br,i=n?t:Ke(e);D(e)&&(r===br&&i.append(br),r.append(e))},Sr=(e,t)=>{let n=D(t)&&t.nodeName===`BODY`,r=D(t)&&!n?t:br;D(e)&&(e.remove(),r===br&&!br.children.length&&br.remove())},Cr=(e,t)=>{let n=D(t)&&t.nodeName!==`BODY`?t:br;return D(e)&&n.contains(e)},wr=`backdrop`,Tr=`${X}-${wr}`,Er=`${Z}-${wr}`,Dr=`.${X}.${U}`,Or=`.${Z}.${U}`,Q=we(`div`),kr=e=>B(`${Dr},${Or}`,A(e)),Ar=e=>{let t=e?Tr:Er;[Tr,Er].forEach(e=>{T(Q,e)}),w(Q,t)},jr=(e,t,n)=>{Ar(n),xr(Q,Ke(e)),t&&w(Q,gt)},Mr=()=>{E(Q,`show`)||(w(Q,U),Pe(Q))},Nr=()=>{T(Q,U)},Pr=e=>{kr(e)||(T(Q,gt),Sr(Q,Ke(e)),_r(e))},Fr=e=>R(e)&&M(e,`visibility`)!==`hidden`&&e.offsetParent!==null,Ir=`.${X}`,Lr=`[${At}="${X}"]`,Rr=`[${_t}="${X}"]`,zr=`${X}-static`,Br={backdrop:!0,keyboard:!0},Vr=e=>k(e,ur),Hr=e=>new ri(e),Ur=P(`show.bs.${X}`),Wr=P(`shown.bs.${X}`),Gr=P(`hide.bs.${X}`),Kr=P(`hidden.bs.${X}`),qr=e=>{let{element:t}=e,n=vr(t),{clientHeight:r,scrollHeight:i}=qe(t),{clientHeight:a,scrollHeight:o}=t,s=a!==o;!s&&n&&F(t,{[ut(t)?`paddingLeft`:`paddingRight`]:`${n}px`}),yr(t,s||r!==i)},Jr=(e,t)=>{let n=t?V:H,{element:r}=e;n(r,d,ti),n(A(r),l,ei),t?e._observer.observe(r):e._observer.disconnect()},Yr=e=>{let{triggers:t,element:n,relatedTarget:r}=e;Pr(n),F(n,{paddingRight:``,display:``}),Jr(e);let i=Ur.relatedTarget||t.find(Fr);i&&Oe(i),Kr.relatedTarget=r||void 0,j(n,Kr),We(n)},Xr=e=>{let{element:t,relatedTarget:n}=e;Oe(t),Jr(e,!0),Wr.relatedTarget=n||void 0,j(t,Wr),We(t)},Zr=e=>{let{element:t,hasFade:i}=e;F(t,{display:`block`}),qr(e),kr(t)||F(Ke(t),{overflow:`hidden`}),w(t,U),fe(t,n),C(t,r,`true`),i?N(t,()=>Xr(e)):Xr(e)},Qr=e=>{let{element:t,options:n,hasFade:r}=e;n.backdrop&&r&&E(Q,`show`)&&!kr(t)?(Nr(),N(Q,()=>Yr(e))):Yr(e)};function $r(e){let t=K(this),n=t&&Vr(t);bt(this)||n&&(this.tagName===`A`&&e.preventDefault(),n.relatedTarget=this,n.toggle())}var ei=({code:e,target:t})=>{let n=B(Dr,A(t)),r=n&&Vr(n);if(!r)return;let{options:i}=r;i.keyboard&&e===`Escape`&&E(n,`show`)&&(r.relatedTarget=null,r.hide())},ti=e=>{let{currentTarget:t}=e,n=t&&Vr(t);if(!n||!t||I.get(t))return;let{options:r,isStatic:i,modalDialog:a}=n,{backdrop:o}=r,{target:s}=e,c=A(t)?.getSelection()?.toString().length,l=a.contains(s),u=s&&z(s,Rr);i&&!l?I.set(t,()=>{w(t,zr),N(a,()=>ni(n))},17):(u||!c&&!i&&!l&&o)&&(n.relatedTarget=u||null,n.hide(),e.preventDefault())},ni=e=>{let{element:t,modalDialog:n}=e,r=(De(n)||0)+17;T(t,zr),I.set(t,()=>I.clear(t),r)},ri=class extends W{static selector=Ir;static init=Hr;static getInstance=Vr;constructor(e,t){super(e,t);let{element:n}=this,r=B(`.${X}-dialog`,n);r&&(this.modalDialog=r,this.triggers=[...L(Lr,A(n))].filter(e=>K(e)===n),this.isStatic=this.options.backdrop===`static`,this.hasFade=E(n,gt),this.relatedTarget=null,this._observer=new ResizeObserver(()=>this.update()),this._toggleEventListeners(!0))}get name(){return ur}get defaults(){return Br}toggle(){E(this.element,`show`)?this.hide():this.show()}show(){let{element:e,options:t,hasFade:n,relatedTarget:r}=this,{backdrop:i}=t,a=0;if(E(e,`show`)||(Ur.relatedTarget=r||void 0,j(e,Ur),Ur.defaultPrevented))return;let o=kr(e);if(o&&o!==e){let e=Vr(o)||k(o,`Offcanvas`);e&&e.hide()}i?(Cr(Q)?Ar(!0):jr(e,n,!0),a=De(Q),Mr(),setTimeout(()=>Zr(this),a)):(Zr(this),o&&E(Q,`show`)&&Nr())}hide(){let{element:e,hasFade:t,relatedTarget:i}=this;E(e,`show`)&&(Gr.relatedTarget=i||void 0,j(e,Gr),!Gr.defaultPrevented&&(T(e,U),C(e,n,`true`),fe(e,r),t?N(e,()=>Qr(this)):Qr(this)))}update=()=>{E(this.element,`show`)&&qr(this)};_toggleEventListeners=e=>{let t=e?V:H,{triggers:n}=this;n.length&&n.forEach(e=>{t(e,d,$r)})};dispose(){let{modalDialog:e,hasFade:t}={...this},n=()=>setTimeout(()=>super.dispose(),17);this.hide(),this._toggleEventListeners(),t?N(e,n):n()}},ii=`.${Z}`,ai=`[${At}="${Z}"]`,oi=`[${_t}="${Z}"]`,si=`${Z}-toggling`,ci={backdrop:!0,keyboard:!0,scroll:!1},li=e=>k(e,dr),ui=e=>new wi(e),di=P(`show.bs.${Z}`),fi=P(`shown.bs.${Z}`),pi=P(`hide.bs.${Z}`),mi=P(`hidden.bs.${Z}`),hi=e=>{let{element:t}=e,{clientHeight:n,scrollHeight:r}=qe(t);yr(t,n!==r)},gi=(e,t)=>{let n=t?V:H,r=A(e.element);n(r,l,xi),n(r,d,bi)},_i=e=>{let{element:t,options:n}=e;n.scroll||(hi(e),F(Ke(t),{overflow:`hidden`})),w(t,si),w(t,U),F(t,{visibility:`visible`}),N(t,()=>Si(e))},vi=e=>{let{element:t,options:n}=e,r=kr(t);t.blur(),!r&&n.backdrop&&E(Q,`show`)&&Nr(),N(t,()=>Ci(e))};function yi(e){let t=K(this),n=t&&li(t);bt(this)||n&&(n.relatedTarget=this,n.toggle(),this.tagName===`A`&&e.preventDefault())}var bi=e=>{let{target:t}=e,n=B(Or,A(t));if(!n)return;let r=B(oi,n),i=li(n);if(!i)return;let{options:a,triggers:o}=i,{backdrop:s}=a,c=z(t,ai),l=A(n).getSelection();Q.contains(t)&&s===`static`||(!(l&&l.toString().length)&&(!n.contains(t)&&s&&(!c||o.includes(t))||r&&r.contains(t))&&(i.relatedTarget=r&&r.contains(t)?r:void 0,i.hide()),c&&c.tagName===`A`&&e.preventDefault())},xi=({code:e,target:t})=>{let n=B(Or,A(t)),r=n&&li(n);r&&r.options.keyboard&&e===`Escape`&&(r.relatedTarget=void 0,r.hide())},Si=e=>{let{element:t}=e;T(t,si),fe(t,n),C(t,r,`true`),C(t,`role`,`dialog`),j(t,fi),gi(e,!0),Oe(t),We(t)},Ci=e=>{let{element:t,triggers:i}=e;C(t,n,`true`),fe(t,r),fe(t,`role`),F(t,{visibility:``});let a=di.relatedTarget||i.find(Fr);a&&Oe(a),Pr(t),j(t,mi),T(t,si),We(t),kr(t)||gi(e)},wi=class extends W{static selector=ii;static init=ui;static getInstance=li;constructor(e,t){super(e,t);let{element:n}=this;this.triggers=[...L(ai,A(n))].filter(e=>K(e)===n),this.relatedTarget=void 0,this._toggleEventListeners(!0)}get name(){return dr}get defaults(){return ci}toggle(){E(this.element,`show`)?this.hide():this.show()}show(){let{element:e,options:t,relatedTarget:n}=this,r=0;if(E(e,`show`)||(di.relatedTarget=n||void 0,fi.relatedTarget=n||void 0,j(e,di),di.defaultPrevented))return;let i=kr(e);if(i&&i!==e){let e=li(i)||k(i,`Modal`);e&&e.hide()}t.backdrop?(Cr(Q)?Ar():jr(e,!0),r=De(Q),Mr(),setTimeout(()=>_i(this),r)):(_i(this),i&&E(Q,`show`)&&Nr())}hide(){let{element:e,relatedTarget:t}=this;E(e,`show`)&&(pi.relatedTarget=t||void 0,mi.relatedTarget=t||void 0,j(e,pi),!pi.defaultPrevented&&(w(e,si),T(e,U),vi(this)))}_toggleEventListeners=e=>{let t=e?V:H;this.triggers.forEach(e=>{t(e,d,yi)})};dispose(){let{element:e}=this,t=E(e,U),n=()=>setTimeout(()=>super.dispose(),1);this.hide(),this._toggleEventListeners(),t?N(e,n):n()}},Ti=`popover`,Ei=`Popover`,Di=`tooltip`,Oi=e=>{let t=e===Di,n=t?`${e}-inner`:`${e}-body`,r=t?``:`

`,i=`
`,a=`
`;return`
${r+i+a}
`},ki={top:`top`,bottom:`bottom`,left:`start`,right:`end`},Ai=e=>{requestAnimationFrame(()=>{let t=/\b(top|bottom|start|end)+/,{element:n,tooltip:r,container:i,offsetParent:a,options:o,arrow:s}=e;if(!r)return;let c=ut(n),{x:l,y:u}=Je(a);F(r,{top:``,left:``,right:``,bottom:``});let{offsetWidth:d,offsetHeight:f}=r,{clientWidth:p,clientHeight:m,offsetWidth:ee}=qe(n),{placement:h}=o,{clientWidth:g,offsetWidth:te}=i,ne=M(i,`position`)===`fixed`,_=ne?Math.abs(g-te):Math.abs(p-ee),re=c&&ne?_:0,v=p-(c?0:_)-1,{width:y,height:b,left:ie,right:ae,top:oe}=e._observer.getEntry(n)?.boundingClientRect||Ge(n,!0),{x:se,y:ce}=tt(n,a,{x:l,y:u});F(s,{top:``,left:``,right:``,bottom:``});let le=0,ue=``,de=0,x=``,S=``,C=``,fe=``,w=s.offsetWidth||0,T=s.offsetHeight||0,E=w/2,pe=oe-f-T<0,me=oe+f+b+T>=m,he=ie-d-w=v,D=[`left`,`right`],O=[`top`,`bottom`];pe=D.includes(h)?oe+b/2-f/2-T<0:pe,me=D.includes(h)?oe+f/2+b/2+T>=m:me,he=O.includes(h)?ie+y/2-d/2=v:ge,h=D.includes(h)&&he&&ge?`top`:h,h=h===`top`&&pe?`bottom`:h,h=h===`bottom`&&me?`top`:h,h=h===`left`&&he?`right`:h,h=h===`right`&&ge?`left`:h,r.className.includes(h)||(r.className=r.className.replace(t,ki[h])),D.includes(h)?(de=h===`left`?se-d-w:se+y+w,pe&&me?(le=0,ue=0,S=ce+b/2-T/2):pe?(le=ce,ue=``,S=b/2-w):me?(le=ce-f+b,ue=``,S=f-b/2-w):(le=ce-f/2+b/2,S=f/2-T/2)):O.includes(h)&&(le=h===`top`?ce-f-T:ce+b+T,he?(de=0,C=se+y/2-E):ge?(de=`auto`,x=0,fe=y/2+v-ae-E):(de=se-d/2+y/2,C=d/2-E)),F(r,{top:`${le}px`,bottom:ue===``?``:`${ue}px`,left:de===`auto`?de:`${de}px`,right:x===``?``:`${x}px`}),R(s)&&(S!==``&&(s.style.top=`${S}px`),C===``?fe!==``&&(s.style.right=`${fe}px`):s.style.left=`${C}px`),j(n,P(`updated.bs.${Re(e.name)}`))})},ji={template:Oi(Di),title:``,customClass:``,trigger:`hover focus`,placement:`top`,sanitizeFn:void 0,animation:!0,delay:200,container:document.body,content:``,dismissible:!1,btnClose:``},Mi=`data-original-title`,Ni=`Tooltip`,Pi=(e,t,n)=>{if(be(t)&&t.length){let r=t.trim();ct(n)&&(r=n(r));let i=new DOMParser().parseFromString(r,`text/html`);e.append(...i.body.childNodes)}else R(t)?e.append(t):(lt(t)||ot(t)&&t.every(D))&&e.append(...t)},Fi=e=>{let t=e.name===Ni,{id:n,element:r,options:i}=e,{title:a,placement:o,template:s,animation:c,customClass:l,sanitizeFn:u,dismissible:d,content:f,btnClose:p}=i,m=t?Di:Ti,ee={...ki},h=[],g=[];ut(r)&&(ee.left=`end`,ee.right=`start`);let te=`bs-${m}-${ee[o]}`,ne;if(R(s))ne=s;else{let e=we(`div`);Pi(e,s,u),ne=e.firstChild}if(!R(ne))return;e.tooltip=ne.cloneNode(!0);let{tooltip:_}=e;C(_,`id`,n),C(_,`role`,Di);let re=t?`${Di}-inner`:`${Ti}-body`,v=t?null:B(`.${Ti}-header`,_),y=B(`.${re}`,_);e.arrow=B(`.${m}-arrow`,_);let{arrow:b}=e;if(R(a))h=[a.cloneNode(!0)];else{let e=we(`div`);Pi(e,a,u),h=[...[...e.childNodes]]}if(R(f))g=[f.cloneNode(!0)];else{let e=we(`div`);Pi(e,f,u),g=[...[...e.childNodes]]}if(d)if(a)if(R(p))h=[...h,p.cloneNode(!0)];else{let e=we(`div`);Pi(e,p,u),h=[...h,e.firstChild]}else if(v&&v.remove(),R(p))g=[...g,p.cloneNode(!0)];else{let e=we(`div`);Pi(e,p,u),g=[...g,e.firstChild]}t?a&&y&&Pi(y,a,u):(a&&v&&Pi(v,h,u),f&&y&&Pi(y,g,u),e.btn=B(`.btn-close`,_)||void 0),w(_,`position-absolute`),w(b,`position-absolute`),E(_,m)||w(_,m),c&&!E(_,`fade`)&&w(_,gt),l&&!E(_,l)&&w(_,l),E(_,te)||w(_,te)},Ii=e=>{let t=[`HTML`,`BODY`],n=[],{parentNode:r}=e;for(;r&&!t.includes(r.nodeName);)r=Xe(r),Ye(r)||Qe(r)||n.push(r);return n.find((e,t)=>(M(e,`position`)!==`relative`||M(e,`position`)===`relative`&&e.offsetHeight!==e.scrollHeight)&&n.slice(t+1).every(e=>M(e,`position`)===`static`)?e:null)||A(e).body},Li=`[${At}="${Di}"],[data-tip="${Di}"]`,Ri=`title`,zi=e=>k(e,Ni),Bi=e=>new Yi(e),Vi=t=>{let{element:n,tooltip:r,container:i}=t;fe(n,e),Sr(r,i)},Hi=e=>{let{tooltip:t,container:n}=e;return t&&Cr(t,n)},Ui=(e,t)=>{let{element:n}=e;e._toggleEventListeners(),S(n,`data-original-title`)&&e.name===`Tooltip`&&Ji(e),t&&t()},Wi=(e,t)=>{let n=t?V:H,{element:r}=e;n(A(r),te,e.handleTouch,Ne)},Gi=e=>{let{element:t}=e,n=P(`shown.bs.${Re(e.name)}`);Wi(e,!0),j(t,n),I.clear(t,`in`)},Ki=e=>{let{element:t}=e,n=P(`hidden.bs.${Re(e.name)}`);Wi(e),Vi(e),j(t,n),I.clear(t,`out`)},qi=(e,t)=>{let n=t?V:H,{element:r,tooltip:i}=e,a=z(r,`.${X}`),o=z(r,`.${Z}`);t?[r,i].forEach(t=>e._observer.observe(t)):e._observer.disconnect(),a&&n(a,`hide.bs.${X}`,e.handleHide),o&&n(o,`hide.bs.${Z}`,e.handleHide)},Ji=(e,t)=>{let n=[Mi,Ri],{element:r}=e;C(r,n[t?0:1],t||x(r,n[0])||``),fe(r,n[t?1:0])},Yi=class extends W{static selector=Li;static init=Bi;static getInstance=zi;static styleTip=Ai;constructor(e,t){super(e,t);let{element:n}=this,r=this.name===Ni,i=r?Di:Ti,a=r?Ni:Ei;zi=e=>k(e,a),this.enabled=!0,this.id=`${i}-${at(n,i)}`;let{options:o}=this;if(!o.title&&r||!r&&!o.content)return;Ce(ji,{titleAttr:``}),S(n,Ri)&&r&&typeof o.title==`string`&&Ji(this,o.title);let s=Ii(n),c=[`sticky`,`fixed`,`relative`].some(e=>M(s,`position`)===e)?s:Ze(n);this.container=s,this.offsetParent=c,Fi(this),this.tooltip&&(this._observer=new Pn(()=>this.update()),this._toggleEventListeners(!0))}get name(){return Ni}get defaults(){return ji}handleFocus=()=>Oe(this.element);handleShow=()=>this.show();show(){let{options:t,tooltip:n,element:r,container:i,id:a}=this,{animation:o}=t,s=I.get(r,`out`);I.clear(r,`out`),n&&!s&&!Hi(this)&&I.set(r,()=>{let t=P(`show.bs.${Re(this.name)}`);j(r,t),t.defaultPrevented||(xr(n,i),C(r,e,`#${a}`),this.update(),qi(this,!0),E(n,`show`)||w(n,U),o?N(n,()=>Gi(this)):Gi(this))},17,`in`)}handleHide=()=>this.hide();hide(){let{options:e,tooltip:t,element:n}=this,{animation:r,delay:i}=e;I.clear(n,`in`),t&&Hi(this)&&I.set(n,()=>{let e=P(`hide.bs.${Re(this.name)}`);j(n,e),e.defaultPrevented||(this.update(),T(t,U),qi(this),r?N(t,()=>Ki(this)):Ki(this))},i+17,`out`)}update=()=>{Ai(this)};toggle=()=>{let{tooltip:e}=this;e&&!Hi(this)?this.show():this.hide()};enable(){let{enabled:e}=this;e||(this._toggleEventListeners(!0),this.enabled=!e)}disable(){let{tooltip:e,enabled:t}=this;t&&(e&&Hi(this)&&this.hide(),this._toggleEventListeners(),this.enabled=!t)}toggleEnabled(){this.enabled?this.disable():this.enable()}handleTouch=({target:e})=>{let{tooltip:t,element:n}=this;t&&t.contains(e)||e===n||e&&n.contains(e)||this.hide()};_toggleEventListeners=e=>{let t=e?V:H,{element:n,options:r,btn:i}=this,{trigger:a}=r,o=!!(this.name!==`Tooltip`&&r.dismissible);a.includes(`manual`)||(this.enabled=!!e,a.split(` `).forEach(e=>{e===`hover`?(t(n,f,this.handleShow),t(n,p,this.handleShow),o||(t(n,m,this.handleHide),t(A(n),te,this.handleTouch,Ne))):e===`click`?t(n,e,o?this.handleShow:this.toggle):e===`focus`&&(t(n,s,this.handleShow),o||t(n,c,this.handleHide),ce()&&t(n,d,this.handleFocus)),o&&i&&t(i,d,this.handleHide)}))};dispose(){let{tooltip:e,options:t}=this,n={...this,name:this.name},r=()=>setTimeout(()=>Ui(n,()=>super.dispose()),17);t.animation&&Hi(n)?(this.options.delay=0,this.hide(),N(e,r)):r()}},Xi=`[${At}="${Ti}"],[data-tip="${Ti}"]`,Zi=Ce({},ji,{template:Oi(Ti),content:``,dismissible:!1,btnClose:``}),Qi=e=>k(e,Ei),$i=e=>new ea(e),ea=class extends Yi{static selector=Xi;static init=$i;static getInstance=Qi;static styleTip=Ai;constructor(e,t){super(e,t)}get name(){return Ei}get defaults(){return Zi}show=()=>{super.show();let{options:e,btn:t}=this;e.dismissible&&t&&setTimeout(()=>Oe(t),17)}},ta=`scrollspy`,na=`ScrollSpy`,ra=`[data-bs-spy="scroll"]`,ia=`[href]`,aa={offset:10,target:void 0},oa=e=>k(e,na),sa=e=>new pa(e),ca=P(`activate.bs.${ta}`),la=e=>{let{target:t,_itemsLength:n,_observables:r}=e,i=dt(`A`,t),a=A(t);!i.length||n===r.size||(r.clear(),Array.from(i).forEach(t=>{let n=x(t,`href`)?.slice(1),r=n?.length?a.getElementById(n):null;r&&!bt(t)&&e._observables.set(r,t)}),e._itemsLength=e._observables.size)},ua=e=>{Array.from(dt(`A`,e)).forEach(e=>{E(e,`active`)&&T(e,G)})},da=(e,t)=>{let{target:n,element:r}=e;ua(n),e._activeItem=t,w(t,G);let i=t;for(;i!==n;)if(i=i.parentElement,[`nav`,`dropdown-menu`,`list-group`].some(e=>E(i,e))){let e=i.previousElementSibling;e&&!E(e,`active`)&&w(e,G)}ca.relatedTarget=t,j(r,ca)},fa=(e,t)=>{let{scrollTarget:n,element:r,options:i}=e;return(n===r?t.offsetTop:Ge(t).top+n.scrollTop)-(i.offset||10)},pa=class extends W{static selector=ra;static init=sa;static getInstance=oa;constructor(e,t){super(e,t);let{element:n,options:r}=this,i=B(r.target,A(n));i&&(this.target=i,this.scrollTarget=n.clientHeight{requestAnimationFrame(()=>this.refresh())},{root:this.scrollTarget}),this._toggleEventListeners(!0))}get name(){return na}get defaults(){return aa}refresh=()=>{let{target:e,scrollTarget:t}=this;if(!e||e.offsetHeight===0)return;la(this);let{_itemsLength:n,_observables:r,_activeItem:i}=this;if(!n)return;let a=r.entries().toArray(),{scrollTop:o,scrollHeight:s,clientHeight:c}=t;if(o>=s-c){let e=a[n-1]?.[1];i!==e&&da(this,e);return}let l=a[0]?.[0]?fa(this,a[0][0]):null;if(l!==null&&o0){this._activeItem=null,ua(e);return}for(let e=0;e=r&&(c===null||o{let t=z(e.target,ia),n=t&&x(t,`href`)?.slice(1),r=n&&ft(n,this.target);r&&(this.scrollTarget.scrollTo({top:r.offsetTop,behavior:`smooth`}),e.preventDefault())};_toggleEventListeners=e=>{let{target:t,_observables:n,_observer:r,_scrollTo:i}=this;(e?V:H)(t,d,i),e?n?.forEach((e,t)=>r.observe(t)):r.disconnect()};dispose(){this._toggleEventListeners(),super.dispose()}},ma=`[${At}="tab"]`,ha=e=>k(e,`Tab`),ga=e=>new Oa(e),_a=P(`show.bs.tab`),va=P(`shown.bs.tab`),ya=P(`hide.bs.tab`),ba=P(`hidden.bs.tab`),xa=new Map,Sa=e=>{let{tabContent:t,nav:n}=e;t&&E(t,`collapsing`)&&(t.style.height=``,T(t,gn)),n&&I.clear(n)},Ca=e=>{let{element:t,tabContent:n,content:r,nav:i}=e,{tab:a}=R(i)&&xa.get(i)||{tab:null};if(n&&r&&E(r,`fade`)){let{currentHeight:r,nextHeight:i}=xa.get(t)||{currentHeight:0,nextHeight:0};r===i?Sa(e):setTimeout(()=>{n.style.height=`${i}px`,Pe(n),N(n,()=>Sa(e))},50)}else i&&I.clear(i);va.relatedTarget=a,j(t,va)},wa=e=>{let{element:t,content:n,tabContent:r,nav:i}=e,{tab:a,content:o}=i&&xa.get(i)||{tab:null,content:null},s=0;if(r&&n&&E(n,`fade`)&&([o,n].forEach(e=>{e&&w(e,`overflow-hidden`)}),s=o?o.scrollHeight:0),_a.relatedTarget=a,ba.relatedTarget=t,j(t,_a),!_a.defaultPrevented){if(n&&w(n,G),o&&T(o,G),r&&n&&E(n,`fade`)){let e=n.scrollHeight;xa.set(t,{currentHeight:s,nextHeight:e,tab:null,content:null}),w(r,gn),r.style.height=`${s}px`,Pe(r),[o,n].forEach(e=>{e&&T(e,`overflow-hidden`)})}n&&n&&E(n,`fade`)?setTimeout(()=>{w(n,U),N(n,()=>{Ca(e)})},1):(n&&w(n,U),Ca(e)),a&&j(a,ba)}},Ta=e=>{let{nav:t}=e;if(!R(t))return{tab:null,content:null};let n=pt(G,t),r=null;n.length===1&&!Fn.some(e=>E(n[0].parentElement,e))?[r]=n:n.length>1&&(r=n[n.length-1]);let i=R(r)?K(r):null;return{tab:r,content:i}},Ea=e=>{if(!R(e))return null;let t=z(e,`.${Fn.join(`,.`)}`);return t?B(`.${Fn[0]}-toggle`,t):null},Da=e=>{let t=z(e.target,ma),n=t&&ha(t);n&&(e.preventDefault(),n.show())},Oa=class extends W{static selector=ma;static init=ga;static getInstance=ha;constructor(e){super(e);let{element:t}=this,n=K(t);if(!n)return;let r=z(t,`.nav`),i=z(n,`.tab-content`);this.nav=r,this.content=n,this.tabContent=i,this.dropdown=Ea(t);let{tab:o}=Ta(this);if(r&&!o){let e=B(ma,r),n=e&&K(e);n&&(w(e,G),w(n,U),w(n,G),C(t,a,`true`))}this._toggleEventListeners(!0)}get name(){return`Tab`}show(){let{element:e,content:t,nav:n,dropdown:r}=this;if(n&&I.get(n)||E(e,`active`))return;let{tab:i,content:o}=Ta(this);if(n&&i&&xa.set(n,{tab:i,content:o,currentHeight:0,nextHeight:0}),ya.relatedTarget=e,!R(i)||(j(i,ya),ya.defaultPrevented))return;w(e,G),C(e,a,`true`);let s=R(i)&&Ea(i);if(s&&E(s,`active`)&&T(s,G),n){let e=()=>{i&&(T(i,G),C(i,a,`false`)),r&&!E(r,`active`)&&w(r,G)};o&&(E(o,`fade`)||t&&E(t,`fade`))?I.set(n,e,1):e()}o&&(T(o,U),E(o,`fade`)?N(o,()=>wa(this)):wa(this))}_toggleEventListeners=e=>{(e?V:H)(this.element,d,Da)};dispose(){this._toggleEventListeners(),super.dispose()}},$=`toast`,ka=`Toast`,Aa=`.${$}`,ja=`[${_t}="${$}"]`,Ma=`[${At}="${$}"]`,Na=`showing`,Pa=`hide`,Fa={animation:!0,autohide:!0,delay:5e3},Ia=e=>k(e,ka),La=e=>new Ja(e),Ra=P(`show.bs.${$}`),za=P(`shown.bs.${$}`),Ba=P(`hide.bs.${$}`),Va=P(`hidden.bs.${$}`),Ha=e=>{let{element:t,options:n}=e;T(t,Na),I.clear(t,Na),j(t,za),n.autohide&&I.set(t,()=>e.hide(),n.delay,$)},Ua=e=>{let{element:t}=e;T(t,Na),T(t,U),w(t,Pa),I.clear(t,$),j(t,Va)},Wa=e=>{let{element:t,options:n}=e;w(t,Na),n.animation?(Pe(t),N(t,()=>Ua(e))):Ua(e)},Ga=e=>{let{element:t,options:n}=e;I.set(t,()=>{T(t,Pa),Pe(t),w(t,U),w(t,Na),n.animation?N(t,()=>Ha(e)):Ha(e)},17,Na)};function Ka(e){let t=K(this),n=t&&Ia(t);bt(this)||n&&(this.tagName===`A`&&e.preventDefault(),n.relatedTarget=this,n.show())}var qa=e=>{let t=e.target,n=Ia(t),{type:r,relatedTarget:i}=e;!n||t===i||t.contains(i)||([`mouseenter`,`focusin`].includes(r)?I.clear(t,$):I.set(t,()=>n.hide(),n.options.delay,$))},Ja=class extends W{static selector=Aa;static init=La;static getInstance=Ia;constructor(e,t){super(e,t);let{element:n,options:r}=this;r.animation&&!E(n,`fade`)?w(n,gt):!r.animation&&E(n,`fade`)&&T(n,gt),this.dismiss=B(ja,n),this.triggers=[...L(Ma,A(n))].filter(e=>K(e)===n),this._toggleEventListeners(!0)}get name(){return ka}get defaults(){return Fa}get isShown(){return E(this.element,U)}show=()=>{let{element:e,isShown:t}=this;!e||t||(j(e,Ra),Ra.defaultPrevented||Ga(this))};hide=()=>{let{element:e,isShown:t}=this;!e||!t||(j(e,Ba),Ba.defaultPrevented||Wa(this))};_toggleEventListeners=e=>{let t=e?V:H,{element:n,triggers:r,dismiss:i,options:a,hide:o}=this;i&&t(i,d,o),a.autohide&&[s,c,p,m].forEach(e=>t(n,e,qa)),r.length&&r.forEach(e=>{t(e,d,Ka)})};dispose(){let{element:e,isShown:t}=this;this._toggleEventListeners(),I.clear(e,$),t&&T(e,U),super.dispose()}},Ya=new Map;[kt,It,hn,An,lr,ri,wi,ea,pa,Oa,Ja,Yi].forEach(e=>Ya.set(e.prototype.name,e));var Xa=(e,t)=>{[...t].forEach(t=>e(t))},Za=(e,t)=>{let n=ve.getAllFor(e);n&&[...n].forEach(([e,n])=>{t.contains(e)&&n.dispose()})},Qa=e=>{let t=[...dt(`*`,e&&e.nodeName?e:document)];Ya.forEach(e=>{let{init:n,selector:r}=e;Xa(n,t.filter(e=>$e(e,r)))})},$a=e=>{let t=e&&e.nodeName?e:document;Ya.forEach(e=>{Za(e.prototype.name,t)})};document.body?Qa():V(document,`DOMContentLoaded`,()=>Qa(),{once:!0}),exports.Alert=kt,exports.Button=It,exports.Carousel=hn,exports.Collapse=An,exports.Dropdown=lr,exports.Modal=ri,exports.Offcanvas=wi,exports.Popover=ea,exports.ScrollSpy=pa,exports.Tab=Oa,exports.Toast=Ja,exports.Tooltip=Yi,exports.initCallback=Qa,exports.removeDataAPI=$a; +//# sourceMappingURL=bootstrap-native.cjs.map \ No newline at end of file diff --git a/dist/bootstrap-native.cjs.map b/dist/bootstrap-native.cjs.map index 2a5e9c87..c6e5e449 100644 --- a/dist/bootstrap-native.cjs.map +++ b/dist/bootstrap-native.cjs.map @@ -1 +1 @@ -{"version":3,"file":"bootstrap-native.cjs","sources":["../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../node_modules/.pnpm/@thednp+event-listener@2.0.10/node_modules/@thednp/event-listener/dist/event-listener.mjs","../src/strings/fadeClass.ts","../src/strings/showClass.ts","../src/strings/dataBsDismiss.ts","../src/strings/alertString.ts","../src/strings/alertComponent.ts","../src/util/isDisabled.ts","../src/version.ts","../src/components/base-component.ts","../src/components/alert.ts","../src/strings/activeClass.ts","../src/strings/dataBsToggle.ts","../src/strings/buttonString.ts","../src/strings/buttonComponent.ts","../src/components/button.ts","../src/strings/dataBsTarget.ts","../src/strings/carouselString.ts","../src/strings/carouselComponent.ts","../src/strings/dataBsParent.ts","../src/strings/dataBsContainer.ts","../src/util/getTargetElement.ts","../src/components/carousel.ts","../src/strings/collapsingClass.ts","../src/strings/collapseString.ts","../src/strings/collapseComponent.ts","../src/components/collapse.ts","../node_modules/.pnpm/@thednp+position-observer@1.1.0/node_modules/@thednp/position-observer/dist/index.mjs","../src/strings/dropdownClasses.ts","../src/strings/dropdownComponent.ts","../src/strings/dropdownMenuClass.ts","../src/util/isEmptyAnchor.ts","../src/components/dropdown.ts","../src/strings/modalString.ts","../src/strings/modalComponent.ts","../src/strings/offcanvasComponent.ts","../src/strings/fixedTopClass.ts","../src/strings/fixedBottomClass.ts","../src/strings/stickyTopClass.ts","../src/strings/positionStickyClass.ts","../src/util/scrollbar.ts","../src/strings/offcanvasString.ts","../src/util/popupContainer.ts","../src/util/backdrop.ts","../src/util/isVisible.ts","../src/components/modal.ts","../src/components/offcanvas.ts","../src/strings/popoverString.ts","../src/strings/popoverComponent.ts","../src/strings/tooltipString.ts","../src/util/getTipTemplate.ts","../src/util/tipClassPositions.ts","../src/util/styleTip.ts","../src/util/tooltipDefaults.ts","../src/strings/dataOriginalTitle.ts","../src/strings/tooltipComponent.ts","../src/util/setHtml.ts","../src/util/createTip.ts","../src/util/getElementContainer.ts","../src/components/tooltip.ts","../src/components/popover.ts","../src/strings/scrollspyString.ts","../src/strings/scrollspyComponent.ts","../src/components/scrollspy.ts","../src/strings/tabString.ts","../src/strings/tabComponent.ts","../src/components/tab.ts","../src/strings/toastString.ts","../src/strings/toastComponent.ts","../src/components/toast.ts","../src/util/init.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","const g = \"2.0.10\", e = {}, f = (t) => {\n const { type: n, currentTarget: c } = t;\n e[n].forEach((a, s) => {\n c === s && a.forEach((o, i) => {\n i.apply(s, [t]), typeof o == \"object\" && o.once && r(s, n, i, o);\n });\n });\n}, E = (t, n, c, a) => {\n e[n] || (e[n] = /* @__PURE__ */ new Map());\n const s = e[n];\n s.has(t) || s.set(t, /* @__PURE__ */ new Map());\n const o = s.get(\n t\n ), { size: i } = o;\n o.set(c, a), i || t.addEventListener(\n n,\n f,\n a\n );\n}, r = (t, n, c, a) => {\n const s = e[n], o = s && s.get(t), i = o && o.get(c), d = i !== void 0 ? i : a;\n o && o.has(c) && o.delete(c), s && (!o || !o.size) && s.delete(t), (!s || !s.size) && delete e[n], (!o || !o.size) && t.removeEventListener(\n n,\n f,\n d\n );\n}, M = E, p = r;\nexport {\n E as addListener,\n f as globalListener,\n p as off,\n M as on,\n e as registry,\n r as removeListener,\n g as version\n};\n//# sourceMappingURL=event-listener.mjs.map\n","/**\n * Global namespace for most components `fade` class.\n */\nconst fadeClass = \"fade\";\nexport default fadeClass;\n","/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n","/**\n * Global namespace for most components `dismiss` option.\n */\nconst dataBsDismiss = \"data-bs-dismiss\";\nexport default dataBsDismiss;\n","/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","import { getAttribute, hasClass } from \"@thednp/shorty\";\n\n/**\n * Check if interactive element is disabled.\n * @param target either a `',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n","/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst tabString = \"tab\";\nexport default tabString;\n","/** @type {string} */\nconst tabComponent = \"Tab\";\nexport default tabComponent;\n","/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n","import { Data, getElementsByTagName, matches } from \"@thednp/shorty\";\n\nimport { addListener } from \"@thednp/event-listener\";\n\nimport Alert from \"../components/alert\";\nimport Button from \"../components/button\";\nimport Carousel from \"../components/carousel\";\nimport Collapse from \"../components/collapse\";\nimport Dropdown from \"../components/dropdown\";\nimport Modal from \"../components/modal\";\nimport Offcanvas from \"../components/offcanvas\";\nimport Popover from \"../components/popover\";\nimport ScrollSpy from \"../components/scrollspy\";\nimport Tab from \"../components/tab\";\nimport Toast from \"../components/toast\";\nimport Tooltip from \"../components/tooltip\";\n\nconst componentsList = new Map<\n string,\n | typeof Alert\n | typeof Button\n | typeof Carousel\n | typeof Collapse\n | typeof Dropdown\n | typeof Modal\n | typeof Offcanvas\n | typeof Popover\n | typeof ScrollSpy\n | typeof Tab\n | typeof Toast\n | typeof Tooltip\n>();\n\ntype Component =\n | Alert\n | Button\n | Carousel\n | Collapse\n | Dropdown\n | Modal\n | Offcanvas\n | Popover\n | ScrollSpy\n | Tab\n | Toast\n | Tooltip;\n\n[\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n].forEach((c) => componentsList.set(c.prototype.name, c));\n\n/**\n * Initialize all matched `Element`s for one component.\n *\n * @param callback\n * @param collection\n */\nconst initComponentDataAPI = (\n callback: (el: Element) => Component,\n collection: HTMLCollectionOf | Element[],\n) => {\n [...collection].forEach((x) => callback(x));\n};\n\n/**\n * Remove one component from a target container element or all in the page.\n *\n * @param component the component name\n * @param context parent `Node`\n */\nconst removeComponentDataAPI = (component: string, context: ParentNode) => {\n const compData = Data.getAllFor(component) as Map;\n\n if (compData) {\n [...compData].forEach(([element, instance]) => {\n if (context.contains(element)) {\n (instance as T & { dispose: () => void }).dispose();\n }\n });\n }\n};\n\n/**\n * Initialize all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const initCallback = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n const elemCollection = [...getElementsByTagName(\"*\", lookUp)];\n\n componentsList.forEach((cs) => {\n const { init, selector } = cs;\n initComponentDataAPI(\n init,\n elemCollection.filter((item) => matches(item, selector)),\n );\n });\n};\n\n/**\n * Remove all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const removeDataAPI = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n\n componentsList.forEach((comp) => {\n removeComponentDataAPI(comp.prototype.name, lookUp);\n });\n};\n\n// Bulk initialize all components\nif (document.body) initCallback();\nelse {\n addListener(document, \"DOMContentLoaded\", () => initCallback(), {\n once: true,\n });\n}\n"],"names":["Le","Oe","X","Pe","Fe","Be","ct","at","it","ft","gt","vt","Et","yt","wt","At","Ot","zt","It","Qt","je","Zt","on","sn","rn","cn","gn","Jt","Xt","M","R","xn","t","e","zn","ee","Q","n","o","j","K","oe","Qn","Kn","Gn","Zn","_n","v","u","i","E","L","to","P","N","q","G","d","T","se","Z","f","s","ie","ue","so","r","a","l","ao","F","S","uo","p","c","g","A","fo","mo","vo","bo","Eo","O","le","m","ho","yo","de","z","_","I","fe","pe","Ao","b","y","So","w","No","me","k","ve","be","Ee","we","Co","V","H","h","Ae","Se","Do","xo","Vo","Ho","Ne","Wo","Te","Qo","jo","fadeClass","showClass","dataBsDismiss","alertString","alertComponent","isDisabled","target","hasClass","getAttribute","Version","version","BaseComponent","config","element","isElement","isString","querySelector","prevInstance","Data","ObjectKeys","normalizeOptions","prop","alertSelector","alertDismissSelector","getAlertInstance","getInstance","alertInitCallback","Alert","closeAlertEvent","createCustomEvent","closedAlertEvent","alertTransitionEnd","self","dispatchEvent","dismiss","removeClass","emulateTransitionEnd","add","action","addListener","removeListener","close","mouseclickEvent","activeClass","dataBsToggle","buttonString","buttonComponent","buttonSelector","getButtonInstance","buttonInitCallback","Button","setAttribute","ariaPressed","isActive","addClass","dataBsTarget","carouselString","carouselComponent","dataBsParent","dataBsContainer","getTargetElement","targetAttr","doc","getDocument","att","attValue","closest","x","carouselSelector","carouselItem","dataBsSlideTo","dataBsSlide","pausedClass","touchEvent","isMobile","touchstartEvent","pointerdownEvent","carouselDefaults","getCarouselInstance","carouselInitCallback","Carousel","startX","currentX","endX","carouselSlideEvent","carouselSlidEvent","carouselTransitionEndHandler","index","direction","slides","options","activeItem","getActiveIndex","orientation","directionClass","Timer","carouselPauseHandler","carouselResumeHandler","carouselIndicatorHandler","newIndex","carouselControlsHandler","carouselKeyHandler","code","querySelectorAll","isElementInScrollRange","RTL","isRTL","keyArrowRight","keyArrowLeft","carouselDragHandler","carouselPointerDownHandler","controls","indicator","el","toggleCarouselTouchHandlers","carouselPointerMoveHandler","carouselPointerUpHandler","activateCarouselIndicator","indicators","pointermoveEvent","passiveHandler","pointerupEvent","getElementsByClassName","activeIndex","transitionItem","matches","ar","isPaused","idx","next","eventProperties","ObjectAssign","getElementTransitionDuration","reflow","touch","pause","interval","keyboard","mouseenterEvent","mouseleaveEvent","dragstartEvent","arrow","keydownEvent","isAnimating","clone","collapsingClass","collapseString","collapseComponent","collapseSelector","collapseToggleSelector","collapseDefaults","getCollapseInstance","collapseInitCallback","Collapse","showCollapseEvent","shownCollapseEvent","hideCollapseEvent","hiddenCollapseEvent","expandCollapse","parent","triggers","noop","setElementStyle","btn","ariaExpanded","collapseContent","collapseClickHandler","trigger","isHTMLElement","activeCollapse","activeCollapseInstance","callbackModes","errorString","PositionObserver","callback","isFunction","root","ioEntry","clientWidth","clientHeight","queue","resolve","updates","oldBoundingBox","oldIsIntersecting","left","top","ob","dropdownMenuClasses","dropdownComponent","dropdownMenuClass","isEmptyAnchor","parentAnchor","hasAttribute","dropdownString","dropupString","dropstartString","dropendString","dropdownClasses","dropdownSelector","getDropdownInstance","dropdownInitCallback","Dropdown","dropdownMenuEndClass","verticalClass","horizontalClass","menuFocusTags","dropdownDefaults","showDropdownEvent","shownDropdownEvent","hideDropdownEvent","hiddenDropdownEvent","updatedDropdownEvent","styleDropdown","menu","parentElement","offset","getElementStyle","menuEnd","style","positionClass","dropdownMargin","dropdownPosition","menuWidth","menuHeight","getDocumentElement","targetLeft","targetTop","targetWidth","targetHeight","getBoundingClientRect","leftFullExceed","rightFullExceed","bottomExceed","bottomFullExceed","topExceed","leftExceed","rightExceed","posAjust","margins","getMenuItems","firstElementChild","toggleDropdownDismiss","dropdownDismissHandler","focusEvent","dropdownPreventScroll","keyupEvent","dropdownKeyHandler","getCurrentOpenDropdown","currentParent","type","isForm","mousedownEvent","dropdownClickHandler","keyArrowDown","keyArrowUp","activeElement","open","menuItems","focus","keyEscape","currentElement","currentInstance","modalString","modalComponent","offcanvasComponent","fixedTopClass","fixedBottomClass","stickyTopClass","positionStickyClass","getFixedItems","resetScrollbar","bd","getDocumentBody","fixedItems","fixed","measureScrollbar","innerWidth","getWindow","setScrollbar","overflow","bodyPad","sbWidth","itemPadValue","itemMValue","offcanvasString","popupContainer","createElement","appendPopup","customContainer","containerIsBody","isNode","lookup","BODY","removePopup","hasPopup","backdropString","modalBackdropClass","offcanvasBackdropClass","modalActiveSelector","offcanvasActiveSelector","overlay","getCurrentOpen","toggleOverlayType","isModal","targetClass","appendOverlay","hasFade","showOverlay","hideOverlay","removeOverlay","isVisible","modalSelector","modalToggleSelector","modalDismissSelector","modalStaticClass","modalDefaults","getModalInstance","modalInitCallback","Modal","showModalEvent","shownModalEvent","hideModalEvent","hiddenModalEvent","setModalScrollbar","scrollbarWidth","scrollHeight","modalHeight","modalScrollHeight","modalOverflow","padStyle","toggleModalDismiss","modalDismissHandler","modalKeyHandler","afterModalHide","relatedTarget","focusElement","toggleFocusTrap","afterModalShow","beforeModalShow","removeAttribute","ariaHidden","ariaModal","beforeModalHide","modalClickHandler","currentTarget","isStatic","modalDialog","backdrop","selectedText","targetInsideDialog","staticTransitionEnd","duration","overlayDelay","currentOpen","that","offcanvasSelector","offcanvasToggleSelector","offcanvasDismissSelector","offcanvasTogglingClass","offcanvasDefaults","getOffcanvasInstance","offcanvasInitCallback","Offcanvas","showOffcanvasEvent","shownOffcanvasEvent","hideOffcanvasEvent","hiddenOffcanvasEvent","setOffCanvasScrollbar","toggleOffCanvasDismiss","offcanvasKeyDismissHandler","offcanvasDismissHandler","beforeOffcanvasShow","showOffcanvasComplete","beforeOffcanvasHide","hideOffcanvasComplete","offcanvasTriggerHandler","offCanvasDismiss","selection","visibleTrigger","isOpen","popoverString","popoverComponent","tooltipString","getTipTemplate","tipType","isTooltip","bodyClass","header","body","tipClassPositions","styleTip","tipClasses","tooltip","container","offsetParent","scrollLeft","scrollTop","getNodeScroll","tipWidth","tipHeight","htmlcw","htmlch","htmlow","placement","parentCWidth","parentOWidth","fixedParent","leftBoundry","rightBoundry","observerEntry","elemWidth","elemHeight","elemRectLeft","elemRectRight","elemRectTop","elemOffsetLeft","elemOffsetTop","getRectRelativeToOffsetParent","topPosition","bottomPosition","leftPosition","rightPosition","arrowTop","arrowLeft","arrowRight","arrowWidth","arrowHeight","arrowAdjust","horizontals","verticals","updatedTooltipEvent","toLowerCase","tooltipDefaults","dataOriginalTitle","tooltipComponent","setHtml","content","sanitizeFn","dirty","tempDocument","isNodeList","isArray","createTip","id","title","template","animation","customClass","dismissible","btnClose","tipString","tipPositions","titleParts","contentParts","placementClass","tooltipTemplate","htmlMarkup","tooltipHeader","tooltipBody","tempTitle","tempContent","tempBtn","getElementContainer","majorBlockTags","containers","parentNode","getParentNode","isShadowRoot","isTableElement","tooltipSelector","titleAttr","getTooltipInstance","tooltipInitCallback","Tooltip","removeTooltip","ariaDescribedBy","hasTip","disposeTooltipComplete","toggleTooltipTitle","toggleTooltipAction","tooltipShownAction","shownTooltipEvent","tooltipHiddenAction","hiddenTooltipEvent","toggleTooltipOpenHandlers","parentModal","parentOffcanvas","titleAtt","tipComponent","elem","getUID","position","outTimer","showTooltipEvent","delay","hideTooltipEvent","enabled","tr","mousehoverEvent","focusinEvent","focusoutEvent","isApple","popoverSelector","popoverDefaults","getPopoverInstance","popoverInitCallback","Popover","scrollspyString","scrollspyComponent","scrollspySelector","scrollSpyAnchorSelector","scrollspyDefaults","getScrollSpyInstance","scrollspyInitCallback","ScrollSpy","activateScrollSpy","updateSpyTargets","_itemsLength","_observables","links","getElementsByTagName","link","hash","targetItem","clear","item","activate","parentItem","parentLink","getOffset","scrollTarget","spyTarget","_activeItem","entries","newActiveItem","firstOffset","offsetTop","nextTarget","nextOffsetTop","getElementById","_observer","_scrollTo","tabString","tabComponent","tabSelector","getTabInstance","tabInitCallback","Tab","showTabEvent","shownTabEvent","hideTabEvent","hiddenTabEvent","tabPrivate","triggerTabEnd","tabContent","nav","triggerTabShow","nextContent","tab","currentHeight","nextHeight","triggerTabHide","getActiveTab","activeTabs","getParentDropdown","dropdown","tabClickHandler","firstTab","firstTabContent","ariaSelected","activeDropdown","toggleTab","toastString","toastComponent","toastSelector","toastDismissSelector","toastToggleSelector","showingClass","hideClass","toastDefaults","getToastInstance","toastInitCallback","Toast","showToastEvent","shownToastEvent","hideToastEvent","hiddenToastEvent","showToastComplete","hideToastComplete","hideToast","showToast","toastClickHandler","interactiveToastHandler","isShown","hide","componentsList","initComponentDataAPI","collection","removeComponentDataAPI","component","context","compData","instance","initCallback","lookUp","elemCollection","cs","init","selector","removeDataAPI","comp"],"mappings":"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","x_google_ignoreList":[0,1,27]} \ No newline at end of file +{"version":3,"file":"bootstrap-native.cjs","names":["isFunction","isElement"],"sources":["../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../node_modules/.pnpm/@thednp+event-listener@2.0.12/node_modules/@thednp/event-listener/dist/index.mjs","../src/strings/fadeClass.ts","../src/strings/showClass.ts","../src/strings/dataBsDismiss.ts","../src/strings/alertString.ts","../src/strings/alertComponent.ts","../src/util/isDisabled.ts","../package.json","../src/version.ts","../src/components/base-component.ts","../src/components/alert.ts","../src/strings/activeClass.ts","../src/strings/dataBsToggle.ts","../src/strings/buttonString.ts","../src/strings/buttonComponent.ts","../src/components/button.ts","../src/strings/dataBsTarget.ts","../src/strings/carouselString.ts","../src/strings/carouselComponent.ts","../src/strings/dataBsParent.ts","../src/strings/dataBsContainer.ts","../src/util/getTargetElement.ts","../src/components/carousel.ts","../src/strings/collapsingClass.ts","../src/strings/collapseString.ts","../src/strings/collapseComponent.ts","../src/components/collapse.ts","../node_modules/.pnpm/@thednp+position-observer@1.1.0/node_modules/@thednp/position-observer/dist/index.mjs","../src/strings/dropdownClasses.ts","../src/strings/dropdownComponent.ts","../src/strings/dropdownMenuClass.ts","../src/util/isEmptyAnchor.ts","../src/components/dropdown.ts","../src/strings/modalString.ts","../src/strings/modalComponent.ts","../src/strings/offcanvasComponent.ts","../src/strings/fixedTopClass.ts","../src/strings/fixedBottomClass.ts","../src/strings/stickyTopClass.ts","../src/strings/positionStickyClass.ts","../src/util/scrollbar.ts","../src/strings/offcanvasString.ts","../src/util/popupContainer.ts","../src/util/backdrop.ts","../src/util/isVisible.ts","../src/components/modal.ts","../src/components/offcanvas.ts","../src/strings/popoverString.ts","../src/strings/popoverComponent.ts","../src/strings/tooltipString.ts","../src/util/getTipTemplate.ts","../src/util/tipClassPositions.ts","../src/util/styleTip.ts","../src/util/tooltipDefaults.ts","../src/strings/dataOriginalTitle.ts","../src/strings/tooltipComponent.ts","../src/util/setHtml.ts","../src/util/createTip.ts","../src/util/getElementContainer.ts","../src/components/tooltip.ts","../src/components/popover.ts","../src/strings/scrollspyString.ts","../src/strings/scrollspyComponent.ts","../src/components/scrollspy.ts","../src/components/tab.ts","../src/strings/toastString.ts","../src/strings/toastComponent.ts","../src/components/toast.ts","../src/util/init.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","//#region package.json\nvar version = \"2.0.12\";\n\n//#endregion\n//#region src/index.ts\nconst registry = {};\nconst globalListener = (e) => {\n\tconst { type, currentTarget } = e;\n\tregistry[type].forEach((listenersMap, element) => {\n\t\tif (currentTarget === element) listenersMap.forEach((options, listener) => {\n\t\t\tlistener.apply(element, [e]);\n\t\t\tif (typeof options === \"object\" && options.once) removeListener(element, type, listener, options);\n\t\t});\n\t});\n};\nconst addListener = (element, eventType, listener, options) => {\n\tif (!registry[eventType]) registry[eventType] = /* @__PURE__ */ new Map();\n\tconst oneEventMap = registry[eventType];\n\tif (!oneEventMap.has(element)) oneEventMap.set(element, /* @__PURE__ */ new Map());\n\tconst oneElementMap = oneEventMap.get(element);\n\tconst { size } = oneElementMap;\n\toneElementMap.set(listener, options);\n\tif (!size) element.addEventListener(eventType, globalListener, options);\n};\nconst removeListener = (element, eventType, listener, options) => {\n\tconst oneEventMap = registry[eventType];\n\tconst oneElementMap = oneEventMap && oneEventMap.get(element);\n\tconst savedOptions = oneElementMap && oneElementMap.get(listener);\n\tconst eventOptions = savedOptions !== void 0 ? savedOptions : options;\n\tif (oneElementMap && oneElementMap.has(listener)) oneElementMap.delete(listener);\n\tif (oneEventMap && (!oneElementMap || !oneElementMap.size)) oneEventMap.delete(element);\n\tif (!oneEventMap || !oneEventMap.size) delete registry[eventType];\n\tif (!oneElementMap || !oneElementMap.size) element.removeEventListener(eventType, globalListener, eventOptions);\n};\nconst on = addListener;\nconst off = removeListener;\n\n//#endregion\nexport { addListener, globalListener, off, on, registry, removeListener, version };\n//# sourceMappingURL=index.mjs.map","/**\n * Global namespace for most components `fade` class.\n */\nconst fadeClass = \"fade\";\nexport default fadeClass;\n","/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n","/**\n * Global namespace for most components `dismiss` option.\n */\nconst dataBsDismiss = \"data-bs-dismiss\";\nexport default dataBsDismiss;\n","/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","import { getAttribute, hasClass } from \"@thednp/shorty\";\n\n/**\n * Check if interactive element is disabled.\n * @param target either a `',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n","/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n","import { Data, getElementsByTagName, matches } from \"@thednp/shorty\";\n\nimport { addListener } from \"@thednp/event-listener\";\n\nimport Alert from \"../components/alert\";\nimport Button from \"../components/button\";\nimport Carousel from \"../components/carousel\";\nimport Collapse from \"../components/collapse\";\nimport Dropdown from \"../components/dropdown\";\nimport Modal from \"../components/modal\";\nimport Offcanvas from \"../components/offcanvas\";\nimport Popover from \"../components/popover\";\nimport ScrollSpy from \"../components/scrollspy\";\nimport Tab from \"../components/tab\";\nimport Toast from \"../components/toast\";\nimport Tooltip from \"../components/tooltip\";\n\nconst componentsList = new Map<\n string,\n | typeof Alert\n | typeof Button\n | typeof Carousel\n | typeof Collapse\n | typeof Dropdown\n | typeof Modal\n | typeof Offcanvas\n | typeof Popover\n | typeof ScrollSpy\n | typeof Tab\n | typeof Toast\n | typeof Tooltip\n>();\n\ntype Component =\n | Alert\n | Button\n | Carousel\n | Collapse\n | Dropdown\n | Modal\n | Offcanvas\n | Popover\n | ScrollSpy\n | Tab\n | Toast\n | Tooltip;\n\n[\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n].forEach((c) => componentsList.set(c.prototype.name, c));\n\n/**\n * Initialize all matched `Element`s for one component.\n *\n * @param callback\n * @param collection\n */\nconst initComponentDataAPI = (\n callback: (el: Element) => Component,\n collection: HTMLCollectionOf | Element[],\n) => {\n [...collection].forEach((x) => callback(x));\n};\n\n/**\n * Remove one component from a target container element or all in the page.\n *\n * @param component the component name\n * @param context parent `Node`\n */\nconst removeComponentDataAPI = (component: string, context: ParentNode) => {\n const compData = Data.getAllFor(component) as Map;\n\n if (compData) {\n [...compData].forEach(([element, instance]) => {\n if (context.contains(element)) {\n (instance as T & { dispose: () => void }).dispose();\n }\n });\n }\n};\n\n/**\n * Initialize all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const initCallback = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n const elemCollection = [...getElementsByTagName(\"*\", lookUp)];\n\n componentsList.forEach((cs) => {\n const { init, selector } = cs;\n initComponentDataAPI(\n init,\n elemCollection.filter((item) => matches(item, selector)),\n );\n });\n};\n\n/**\n * Remove all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const removeDataAPI = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n\n componentsList.forEach((comp) => {\n removeComponentDataAPI(comp.prototype.name, lookUp);\n });\n};\n\n// Bulk initialize all components\nif (document.body) initCallback();\nelse {\n addListener(document, \"DOMContentLoaded\", () => initCallback(), {\n once: true,\n });\n}\n"],"x_google_ignoreList":[0,1,28],"mappings":"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"} \ No newline at end of file diff --git a/dist/bootstrap-native.js b/dist/bootstrap-native.js index ac797c06..83d0aed7 100644 --- a/dist/bootstrap-native.js +++ b/dist/bootstrap-native.js @@ -1,2 +1,2 @@ -var BSN=(function(N){"use strict";const Ms="aria-describedby",ue="aria-expanded",qt="aria-hidden",ge="aria-modal",Bs="aria-pressed",Le="aria-selected",Oe="focus",ke="focusin",Rs="focusout",pe="keydown",Wo="keyup",D="click",Fs="mousedown",jo="hover",me="mouseenter",Ne="mouseleave",Ws="pointerdown",zo="pointermove",Ko="pointerup",ve="touchstart",Vo="dragstart",Xo='a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]',Me="ArrowDown",Be="ArrowUp",js="ArrowLeft",zs="ArrowRight",Re="Escape",qo="transitionDuration",Uo="transitionDelay",Fe="transitionend",Ks="transitionProperty",Vs=()=>{const e=/iPhone|iPad|iPod|Android/i;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},Yo=()=>{const e=/(iPhone|iPod|iPad)/;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},be=()=>{},Zo=(e,t,s,n)=>{e.addEventListener(t,s,!1)},Qo=(e,t,s,n)=>{e.removeEventListener(t,s,!1)},U=(e,t)=>e.getAttribute(t),Ut=(e,t)=>e.hasAttribute(t),I=(e,t,s)=>e.setAttribute(t,s),yt=(e,t)=>e.removeAttribute(t),d=(e,...t)=>{e.classList.add(...t)},v=(e,...t)=>{e.classList.remove(...t)},h=(e,t)=>e.classList.contains(t),Yt=e=>e!=null&&typeof e=="object"||!1,P=e=>Yt(e)&&typeof e.nodeType=="number"&&[1,2,3,4,5,6,7,8,9,10,11].some(t=>e.nodeType===t)||!1,j=e=>P(e)&&e.nodeType===1||!1,Rt=new Map,Ct={data:Rt,set:(e,t,s)=>{j(e)&&(Rt.has(t)||Rt.set(t,new Map),Rt.get(t).set(e,s))},getAllFor:e=>Rt.get(e)||null,get:(e,t)=>{if(!j(e)||!t)return null;const s=Ct.getAllFor(t);return e&&s&&s.get(e)||null},remove:(e,t)=>{const s=Ct.getAllFor(t);!s||!j(e)||(s.delete(e),s.size===0&&Rt.delete(t))}},R=(e,t)=>Ct.get(e,t),Xs=e=>e?.trim().replace(/(?:^\w|[A-Z]|\b\w)/g,(t,s)=>s===0?t.toLowerCase():t.toUpperCase()).replace(/\s+/g,""),Zt=e=>typeof e=="string"||!1,qs=e=>Yt(e)&&e.constructor.name==="Window"||!1,Us=e=>P(e)&&e.nodeType===9||!1,b=e=>Us(e)?e:P(e)?e.ownerDocument:qs(e)?e.document:globalThis.document,rt=(e,...t)=>Object.assign(e,...t),ut=e=>{if(!e)return;if(Zt(e))return b().createElement(e);const{tagName:t}=e,s=ut(t);if(!s)return;const n={...e};return delete n.tagName,rt(s,n)},w=(e,t)=>e.dispatchEvent(t),F=(e,t,s)=>{const n=getComputedStyle(e,s),o=t.replace("webkit","Webkit").replace(/([A-Z])/g,"-$1").toLowerCase();return n.getPropertyValue(o)},Go=e=>{const t=F(e,Ks),s=F(e,Uo),n=s.includes("ms")?1:1e3,o=t&&t!=="none"?parseFloat(s)*n:0;return Number.isNaN(o)?0:o},Qt=e=>{const t=F(e,Ks),s=F(e,qo),n=s.includes("ms")?1:1e3,o=t&&t!=="none"?parseFloat(s)*n:0;return Number.isNaN(o)?0:o},_=(e,t)=>{let s=0;const n=new Event(Fe),o=Qt(e),i=Go(e);if(o){const r=a=>{a.target===e&&(t.apply(e,[a]),e.removeEventListener(Fe,r),s=1)};e.addEventListener(Fe,r),setTimeout(()=>{s||w(e,n)},o+i+17)}else t.apply(e,[n])},at=(e,t)=>e.focus(t),Ys=e=>["true",!0].includes(e)?!0:["false",!1].includes(e)?!1:["null","",null,void 0].includes(e)?null:e!==""&&!Number.isNaN(+e)?+e:e,we=e=>Object.entries(e),Jo=(e,t,s,n)=>{if(!j(e))return t;const o={...s},i={...e.dataset},r={...t},a={},c="title";return we(i).forEach(([l,f])=>{const p=typeof l=="string"&&l.includes(n)?Xs(l.replace(n,"")):Xs(l);a[p]=Ys(f)}),we(o).forEach(([l,f])=>{o[l]=Ys(f)}),we(t).forEach(([l,f])=>{l in o?r[l]=o[l]:l in a?r[l]=a[l]:r[l]=l===c?U(e,c):f}),r},Zs=e=>Object.keys(e),E=(e,t)=>{const s=new CustomEvent(e,{cancelable:!0,bubbles:!0});return Yt(t)&&rt(s,t),s},Gt={passive:!0},_t=e=>e.offsetHeight,S=(e,t)=>{we(t).forEach(([s,n])=>{if(n&&Zt(s)&&s.includes("--"))e.style.setProperty(s,n);else{const o={};o[s]=n,rt(e.style,o)}})},We=e=>Yt(e)&&e.constructor.name==="Map"||!1,ti=e=>typeof e=="number"||!1,gt=new Map,u={set:(e,t,s,n)=>{j(e)&&(n&&n.length?(gt.has(e)||gt.set(e,new Map),gt.get(e).set(n,setTimeout(t,s))):gt.set(e,setTimeout(t,s)))},get:(e,t)=>{if(!j(e))return null;const s=gt.get(e);return t&&s&&We(s)?s.get(t)||null:ti(s)?s:null},clear:(e,t)=>{if(!j(e))return;const s=gt.get(e);t&&t.length&&We(s)?(clearTimeout(s.get(t)),s.delete(t),s.size===0&>.delete(e)):(clearTimeout(s),gt.delete(e))}},Jt=e=>e.toLowerCase(),Y=(e,t)=>(P(t)?t:b()).querySelectorAll(e),je=new Map;function Qs(e){const{shiftKey:t,code:s}=e,n=b(this),o=[...Y(Xo,this)].filter(a=>!Ut(a,"disabled")&&!U(a,qt));if(!o.length)return;const i=o[0],r=o[o.length-1];s==="Tab"&&(t&&n.activeElement===i?(r.focus(),e.preventDefault()):!t&&n.activeElement===r&&(i.focus(),e.preventDefault()))}const ze=e=>je.has(e)===!0,ei=e=>{ze(e)||(Zo(e,"keydown",Qs),je.set(e,!0))},si=e=>{ze(e)&&(Qo(e,"keydown",Qs),je.delete(e))},Ee=e=>{ze(e)?si(e):ei(e)},H=e=>j(e)&&"offsetWidth"in e||!1,St=(e,t)=>{const{width:s,height:n,top:o,right:i,bottom:r,left:a}=e.getBoundingClientRect();let c=1,l=1;if(t&&H(e)){const{offsetWidth:f,offsetHeight:p}=e;c=f>0?Math.round(s)/f:1,l=p>0?Math.round(n)/p:1}return{width:s/c,height:n/l,top:o/l,right:i/c,bottom:r/l,left:a/c,x:a/c,y:o/l}},At=e=>b(e).body,ct=e=>b(e).documentElement,ni=e=>{const t=qs(e),s=t?e.scrollX:e.scrollLeft,n=t?e.scrollY:e.scrollTop;return{x:s,y:n}},Gs=e=>P(e)&&e.constructor.name==="ShadowRoot"||!1,oi=e=>e.nodeName==="HTML"?e:j(e)&&e.assignedSlot||P(e)&&e.parentNode||Gs(e)&&e.host||ct(e),Js=e=>e?Us(e)?e.defaultView:P(e)?e?.ownerDocument?.defaultView:e:window,ii=e=>P(e)&&["TABLE","TD","TH"].includes(e.nodeName)||!1,tn=(e,t)=>e.matches(t),ri=e=>{if(!H(e))return!1;const{width:t,height:s}=St(e),{offsetWidth:n,offsetHeight:o}=e;return Math.round(t)!==n||Math.round(s)!==o},ai=(e,t,s)=>{const n=H(t),o=St(e,n&&ri(t)),i={x:0,y:0};if(n){const r=St(t,!0);i.x=r.x+t.clientLeft,i.y=r.y+t.clientTop}return{x:o.left+s.x-i.x,y:o.top+s.y-i.y,width:o.width,height:o.height}};let en=0,sn=0;const Ft=new Map,nn=(e,t)=>{let s=t?en:sn;if(t){const n=nn(e),o=Ft.get(n)||new Map;Ft.has(n)||Ft.set(n,o),We(o)&&!o.has(t)?(o.set(t,s),en+=1):s=o.get(t)}else{const n=e.id||e;Ft.has(n)?s=Ft.get(n):(Ft.set(n,s),sn+=1)}return s},ci=e=>Array.isArray(e)||!1,on=e=>{if(!P(e))return!1;const{top:t,bottom:s}=St(e),{clientHeight:n}=ct(e);return t<=n&&s>=0},rn=e=>typeof e=="function"||!1,li=e=>Yt(e)&&e.constructor.name==="NodeList"||!1,pt=e=>ct(e).dir==="rtl",M=(e,t)=>!e||!t?null:e.closest(t)||M(e.getRootNode().host,t)||null,A=(e,t)=>j(e)?e:(j(t)?t:b()).querySelector(e),Ke=(e,t)=>(P(t)?t:b()).getElementsByTagName(e),di=(e,t)=>b(t).getElementById(e),lt=(e,t)=>(t&&P(t)?t:b()).getElementsByClassName(e),Wt={},an=e=>{const{type:t,currentTarget:s}=e;Wt[t].forEach((n,o)=>{s===o&&n.forEach((i,r)=>{r.apply(o,[e]),typeof i=="object"&&i.once&&O(o,t,r,i)})})},L=(e,t,s,n)=>{Wt[t]||(Wt[t]=new Map);const o=Wt[t];o.has(e)||o.set(e,new Map);const i=o.get(e),{size:r}=i;i.set(s,n),r||e.addEventListener(t,an,n)},O=(e,t,s,n)=>{const o=Wt[t],i=o&&o.get(e),r=i&&i.get(s),a=r!==void 0?r:n;i&&i.has(s)&&i.delete(s),o&&(!i||!i.size)&&o.delete(e),(!o||!o.size)&&delete Wt[t],(!i||!i.size)&&e.removeEventListener(t,an,a)},k="fade",g="show",Te="data-bs-dismiss",$e="alert",cn="Alert",ot=e=>h(e,"disabled")||U(e,"disabled")==="true",hi="5.1.6";class J{constructor(t,s){let n;try{if(j(t))n=t;else if(Zt(t)){if(n=A(t),!n)throw Error(`"${t}" is not a valid selector.`)}else throw Error("your target is not an instance of HTMLElement.")}catch(i){throw Error(`${this.name} Error: ${i.message}`)}const o=Ct.get(n,this.name);o&&o._toggleEventListeners(),this.element=n,this.options=this.defaults&&Zs(this.defaults).length?Jo(n,this.defaults,s||{},"bs"):{},Ct.set(n,this.name,this)}get version(){return hi}get name(){return"BaseComponent"}get defaults(){return{}}_toggleEventListeners=()=>{};dispose(){Ct.remove(this.element,this.name),Zs(this).forEach(t=>{delete this[t]})}}const fi=`.${$e}`,ui=`[${Te}="${$e}"]`,gi=e=>R(e,cn),pi=e=>new Ve(e),ln=E(`close.bs.${$e}`),mi=E(`closed.bs.${$e}`),dn=e=>{const{element:t}=e;w(t,mi),e._toggleEventListeners(),e.dispose(),t.remove()};class Ve extends J{static selector=fi;static init=pi;static getInstance=gi;dismiss;constructor(t){super(t),this.dismiss=A(ui,this.element),this._toggleEventListeners(!0)}get name(){return cn}close=t=>{const{element:s,dismiss:n}=this;!s||!h(s,g)||t&&n&&ot(n)||(w(s,ln),!ln.defaultPrevented&&(v(s,g),h(s,k)?_(s,()=>dn(this)):dn(this)))};_toggleEventListeners=t=>{const s=t?L:O,{dismiss:n,close:o}=this;n&&s(n,D,o)};dispose(){this._toggleEventListeners(),super.dispose()}}const T="active",it="data-bs-toggle",vi="button",hn="Button",bi=`[${it}="${vi}"]`,wi=e=>R(e,hn),Ei=e=>new Xe(e);class Xe extends J{static selector=bi;static init=Ei;static getInstance=wi;constructor(t){super(t);const{element:s}=this;this.isActive=h(s,T),I(s,Bs,String(!!this.isActive)),this._toggleEventListeners(!0)}get name(){return hn}toggle=t=>{t&&t.preventDefault();const{element:s,isActive:n}=this;if(ot(s))return;(n?v:d)(s,T),I(s,Bs,n?"false":"true"),this.isActive=h(s,T)};_toggleEventListeners=t=>{(t?L:O)(this.element,D,this.toggle)};dispose(){this._toggleEventListeners(),super.dispose()}}const qe="data-bs-target",Pt="carousel",fn="Carousel",un="data-bs-parent",Ti="data-bs-container",z=e=>{const t=[qe,un,Ti,"href"],s=b(e);return t.map(n=>{const o=U(e,n);return o?n===un?M(e,o):A(o,s):null}).filter(n=>n)[0]},te=`[data-bs-ride="${Pt}"]`,tt=`${Pt}-item`,Ue="data-bs-slide-to",mt="data-bs-slide",vt="paused",$i=Vs()?ve:Ws;console.log({isMobile:Vs(),touchEvent:$i});const gn={pause:"hover",keyboard:!1,touch:!0,interval:5e3},dt=e=>R(e,fn),yi=e=>new ts(e);let ee=0,ye=0,Ye=0;const Ze=E(`slide.bs.${Pt}`),Qe=E(`slid.bs.${Pt}`),pn=e=>{const{index:t,direction:s,element:n,slides:o,options:i}=e;if(e.isAnimating){const r=Je(e),a=s==="left"?"next":"prev",c=s==="left"?"start":"end";d(o[t],T),v(o[t],`${tt}-${a}`),v(o[t],`${tt}-${c}`),v(o[r],T),v(o[r],`${tt}-${c}`),w(n,Qe),u.clear(n,mt),e.cycle&&!b(n).hidden&&i.interval&&!e.isPaused&&e.cycle()}};function Ci(){const e=dt(this);e&&!e.isPaused&&!u.get(this,vt)&&d(this,vt)}function _i(){const e=dt(this);e&&e.isPaused&&!u.get(this,vt)&&e.cycle()}function Si(e){e.preventDefault();const t=M(this,te)||z(this),s=t&&dt(t);if(ot(this)||!s||s.isAnimating)return;const n=+(U(this,Ue)||0);this&&!h(this,T)&&!Number.isNaN(n)&&s.to(n)}function Ai(e){e.preventDefault();const t=M(this,te)||z(this),s=t&&dt(t);if(ot(this)||!s||s.isAnimating)return;const n=U(this,mt);n==="next"?s.next():n==="prev"&&s.prev()}const Pi=({code:e,target:t})=>{const s=b(t),[n]=[...Y(te,s)].filter(c=>on(c)),o=dt(n);if(!o||o.isAnimating||/textarea|input|select/i.test(t.nodeName))return;const i=pt(n);e===(i?zs:js)?o.prev():e===(i?js:zs)&&o.next()};function mn(e){const{target:t}=e,s=dt(this);s&&s.isTouch&&!s.controls.includes(t)&&!s.controls.includes(t?.parentElement)&&(!s.indicator||!s.indicator.contains(t))&&e.preventDefault()}function Hi(e){const{target:t}=e,s=dt(this);if(!s||s.isAnimating||s.isTouch)return;const{controls:n,indicator:o}=s;![...n,o].every(i=>i&&(i===t||i.contains(t)))&&this.contains(t)&&(ee=e.pageX,s.isTouch=!0,vn(s,!0))}const xi=e=>{ye=e.pageX},Di=e=>{const{target:t}=e,s=b(t),n=[...Y(te,s)].map(a=>dt(a)).find(a=>a.isTouch);if(!n)return;const{element:o,index:i}=n,r=pt(o);Ye=e.pageX,n.isTouch=!1,vn(n),!s.getSelection()?.toString().length&&o.contains(t)&&Math.abs(ee-Ye)>120&&(yeee&&n.to(i+(r?1:-1))),ee=0,ye=0,Ye=0},Ge=(e,t)=>{const{indicators:s}=e;[...s].forEach(n=>v(n,T)),e.indicators[t]&&d(s[t],T)},vn=(e,t)=>{const{element:s}=e,n=t?L:O;n(b(s),zo,xi,Gt),n(b(s),Ko,Di,Gt)},Je=e=>{const{slides:t,element:s}=e,n=A(`.${tt}.${T}`,s);return n?[...t].indexOf(n):-1};class ts extends J{static selector=te;static init=yi;static getInstance=dt;constructor(t,s){super(t,s);const{element:n}=this;this.direction=pt(n)?"right":"left",this.isTouch=!1,this.slides=lt(tt,n);const{slides:o}=this;if(o.length<2)return;const i=Je(this),r=[...o].find(l=>tn(l,`.${tt}-next`));this.index=i;const a=b(n);this.controls=[...Y(`[${mt}]`,n),...Y(`[${mt}][${qe}="#${n.id}"]`,a)].filter((l,f,p)=>f===p.indexOf(l)),this.indicator=A(`.${Pt}-indicators`,n),this.indicators=[...this.indicator?Y(`[${Ue}]`,this.indicator):[],...Y(`[${Ue}][${qe}="#${n.id}"]`,a)].filter((l,f,p)=>f===p.indexOf(l));const{options:c}=this;this.options.interval=c.interval===!0?gn.interval:c.interval,r?this.index=[...o].indexOf(r):i<0&&(this.index=0,d(o[0],T),this.indicators.length&&Ge(this,0)),this.indicators.length&&Ge(this,this.index),this._toggleEventListeners(!0),c.interval&&this.cycle()}get name(){return fn}get defaults(){return gn}get isPaused(){return h(this.element,vt)}get isAnimating(){return A(`.${tt}-next,.${tt}-prev`,this.element)!==null}cycle(){const{element:t,options:s,isPaused:n,index:o}=this;u.clear(t,Pt),n&&(u.clear(t,vt),v(t,vt)),u.set(t,()=>{this.element&&!this.isPaused&&!this.isTouch&&on(t)&&this.to(o+1)},s.interval,Pt)}pause(){const{element:t,options:s}=this;this.isPaused||!s.interval||(d(t,vt),u.set(t,()=>{},1,vt))}next(){this.isAnimating||this.to(this.index+1)}prev(){this.isAnimating||this.to(this.index-1)}to(t){const{element:s,slides:n,options:o}=this,i=Je(this),r=pt(s);let a=t;if(this.isAnimating||i===a||u.get(s,mt))return;ia||i===n.length-1&&a===0)&&(this.direction=r?"left":"right");const{direction:c}=this;a<0?a=n.length-1:a>=n.length&&(a=0);const l=c==="left"?"next":"prev",f=c==="left"?"start":"end",p={relatedTarget:n[a],from:i,to:a,direction:c};rt(Ze,p),rt(Qe,p),w(s,Ze),!Ze.defaultPrevented&&(this.index=a,Ge(this,a),Qt(n[a])&&h(s,"slide")?u.set(s,()=>{d(n[a],`${tt}-${l}`),_t(n[a]),d(n[a],`${tt}-${f}`),d(n[i],`${tt}-${f}`),_(n[a],()=>this.slides&&this.slides.length&&pn(this))},0,mt):(d(n[a],T),v(n[i],T),u.set(s,()=>{u.clear(s,mt),s&&o.interval&&!this.isPaused&&this.cycle(),w(s,Qe)},0,mt)))}_toggleEventListeners=t=>{const{element:s,options:n,slides:o,controls:i,indicators:r}=this,{touch:a,pause:c,interval:l,keyboard:f}=n,p=t?L:O;c&&l&&(p(s,me,Ci),p(s,Ne,_i)),a&&o.length>2&&(p(s,Ws,Hi,Gt),p(s,ve,mn,{passive:!1}),p(s,Vo,mn,{passive:!1})),i.length&&i.forEach(y=>{p(y,D,Ai)}),r.length&&r.forEach(y=>{p(y,D,Si)}),f&&p(b(s),pe,Pi)};dispose(){const{isAnimating:t}=this,s={...this,isAnimating:t};this._toggleEventListeners(),super.dispose(),s.isAnimating&&_(s.slides[s.index],()=>{pn(s)})}}const Ht="collapsing",K="collapse",bn="Collapse",Ii=`.${K}`,wn=`[${it}="${K}"]`,Li={parent:null},Ce=e=>R(e,bn),Oi=e=>new es(e),En=E(`show.bs.${K}`),ki=E(`shown.bs.${K}`),Tn=E(`hide.bs.${K}`),Ni=E(`hidden.bs.${K}`),Mi=e=>{const{element:t,parent:s,triggers:n}=e;w(t,En),En.defaultPrevented||(u.set(t,be,17),s&&u.set(s,be,17),d(t,Ht),v(t,K),S(t,{height:`${t.scrollHeight}px`}),_(t,()=>{u.clear(t),s&&u.clear(s),n.forEach(o=>I(o,ue,"true")),v(t,Ht),d(t,K),d(t,g),S(t,{height:""}),w(t,ki)}))},$n=e=>{const{element:t,parent:s,triggers:n}=e;w(t,Tn),Tn.defaultPrevented||(u.set(t,be,17),s&&u.set(s,be,17),S(t,{height:`${t.scrollHeight}px`}),v(t,K),v(t,g),d(t,Ht),_t(t),S(t,{height:"0px"}),_(t,()=>{u.clear(t),s&&u.clear(s),n.forEach(o=>I(o,ue,"false")),v(t,Ht),d(t,K),S(t,{height:""}),w(t,Ni)}))},Bi=e=>{const{target:t}=e,s=t&&M(t,wn),n=s&&z(s),o=n&&Ce(n);s&&ot(s)||o&&(o.toggle(),s?.tagName==="A"&&e.preventDefault())};class es extends J{static selector=Ii;static init=Oi;static getInstance=Ce;constructor(t,s){super(t,s);const{element:n,options:o}=this,i=b(n);this.triggers=[...Y(wn,i)].filter(r=>z(r)===n),this.parent=H(o.parent)?o.parent:Zt(o.parent)?z(n)||A(o.parent,i):null,this._toggleEventListeners(!0)}get name(){return bn}get defaults(){return Li}hide(){const{triggers:t,element:s}=this;u.get(s)||($n(this),t.length&&t.forEach(n=>d(n,`${K}d`)))}show(){const{element:t,parent:s,triggers:n}=this;let o,i;s&&(o=[...Y(`.${K}.${g}`,s)].find(r=>Ce(r)),i=o&&Ce(o)),(!s||!u.get(s))&&!u.get(t)&&(i&&o!==t&&($n(i),i.triggers.forEach(r=>{d(r,`${K}d`)})),Mi(this),n.length&&n.forEach(r=>v(r,`${K}d`)))}toggle(){h(this.element,g)?this.hide():this.show()}_toggleEventListeners=t=>{const s=t?L:O,{triggers:n}=this;n.length&&n.forEach(o=>{s(o,D,Bi)})};dispose(){this._toggleEventListeners(),super.dispose()}}var Ri="1.1.0";const Fi=["all","intersecting","update"],yn="PositionObserver Error";var ss=class{entries;static version=Ri;_t;_r;_cm;_w;_h;_rm;_th;_c;constructor(e,t){if(!rn(e))throw new Error(`${yn}: ${e} is not a function.`);this.entries=new Map,this._c=e,this._t=0;const s=j(t?.root)?t.root:document?.documentElement;this._r=s,this._rm=t?.rootMargin,this._th=t?.threshold;this._cm=Fi.indexOf(t?.callbackMode||"intersecting"),this._w=s.clientWidth,this._h=s.clientHeight}observe=e=>{if(!j(e))throw new Error(`${yn}: ${e} is not an instance of Element.`);this._r.contains(e)&&this._n(e).then(t=>{t.boundingClientRect&&!this.getEntry(e)&&this.entries.set(e,t);this._t||(this._t=requestAnimationFrame(this._rc))})};unobserve=e=>{this.entries.has(e)&&this.entries.delete(e)};_rc=()=>{if(!this.entries.size){this._t=0;return}const{clientWidth:e,clientHeight:t}=this._r,s=new Promise(n=>{const o=[];this.entries.forEach(({target:i,boundingClientRect:r,isIntersecting:a})=>{this._r.contains(i)&&this._n(i).then(c=>{if(!c.isIntersecting){if(this._cm===1)return;if(this._cm===2){a&&(this.entries.set(i,c),o.push(c));return}}const{left:l,top:f}=c.boundingClientRect;(r.top!==f||r.left!==l||this._w!==e||this._h!==t)&&(this.entries.set(i,c),o.push(c))})}),this._w=e,this._h=t,n(o)});this._t=requestAnimationFrame(async()=>{const n=await s;n.length&&this._c(n,this),this._rc()})};_n=e=>new Promise(t=>{new IntersectionObserver(([n],o)=>{o.disconnect(),t(n)},{threshold:this._th,rootMargin:this._rm}).observe(e)});getEntry=e=>this.entries.get(e);disconnect=()=>{cancelAnimationFrame(this._t),this.entries.clear(),this._t=0}};const xt=["dropdown","dropup","dropstart","dropend"],Cn="Dropdown",_n="dropdown-menu",Sn=e=>{const t=M(e,"A");return e.tagName==="A"&&Ut(e,"href")&&U(e,"href")?.slice(-1)==="#"||t&&Ut(t,"href")&&U(t,"href")?.slice(-1)==="#"},[et,ns,os,is]=xt,Wi=`[${it}="${et}"]`,se=e=>R(e,Cn),ji=e=>new ls(e),zi=`${_n}-end`,An=[et,ns],Pn=[os,is],Hn=["A","BUTTON"],Ki={offset:5,display:"dynamic"},rs=E(`show.bs.${et}`),xn=E(`shown.bs.${et}`),as=E(`hide.bs.${et}`),Dn=E(`hidden.bs.${et}`),In=E(`updated.bs.${et}`),Ln=e=>{const{element:t,menu:s,parentElement:n,options:o}=e,{offset:i}=o;if(F(s,"position")==="static")return;const r=pt(t),a=h(s,zi);["margin","top","bottom","left","right"].forEach(W=>{const Nt={};Nt[W]="",S(s,Nt)});let l=xt.find(W=>h(n,W))||et;const f={dropdown:[i,0,0],dropup:[0,0,i],dropstart:r?[-1,0,0,i]:[-1,i,0],dropend:r?[-1,i,0]:[-1,0,0,i]},p={dropdown:{top:"100%"},dropup:{top:"auto",bottom:"100%"},dropstart:r?{left:"100%",right:"auto"}:{left:"auto",right:"100%"},dropend:r?{left:"auto",right:"100%"}:{left:"100%",right:"auto"},menuStart:r?{right:"0",left:"auto"}:{right:"auto",left:"0"},menuEnd:r?{right:"auto",left:"0"}:{right:"0",left:"auto"}},{offsetWidth:y,offsetHeight:B}=s,{clientWidth:G,clientHeight:st}=ct(t),{left:m,top:q,width:Ot,height:kt}=St(t),C=m-y-i<0,Et=m+y+Ot+i>=G,ft=q+B+i>=st,nt=q+B+kt+i>=st,zt=q-B-i<0,$=(!r&&a||r&&!a)&&m+Ot-y<0,V=(r&&a||!r&&!a)&&m+y>=G;if(Pn.includes(l)&&C&&Et&&(l=et),l===os&&(r?Et:C)&&(l=is),l===is&&(r?C:Et)&&(l=os),l===ns&&zt&&!nt&&(l=et),l===et&&nt&&!zt&&(l=ns),Pn.includes(l)&&ft&&rt(p[l],{top:"auto",bottom:0}),An.includes(l)&&($||V)){let W={left:"auto",right:"auto"};!$&&V&&!r&&(W={left:"auto",right:0}),$&&!V&&r&&(W={left:0,right:"auto"}),W&&rt(p[l],W)}const Kt=f[l];S(s,{...p[l],margin:`${Kt.map(W=>W&&`${W}px`).join(" ")}`}),An.includes(l)&&a&&a&&S(s,p[!r&&$||r&&V?"menuStart":"menuEnd"]),w(n,In)},Vi=e=>Array.from(e.children).map(t=>{if(t&&Hn.includes(t.tagName))return t;const{firstElementChild:s}=t;return s&&Hn.includes(s.tagName)?s:null}).filter(t=>t),On=e=>{const{element:t,options:s,menu:n}=e,o=e.open?L:O,i=b(t);o(i,D,kn),o(i,Oe,kn),o(i,pe,qi),o(i,Wo,Ui),s.display==="dynamic"&&(e.open?e._observer.observe(n):e._observer.disconnect())},cs=e=>{const t=[...xt,"btn-group","input-group"].map(s=>lt(`${s} ${g}`,b(e))).find(s=>s.length);if(t&&t.length)return[...t[0].children].find(s=>xt.some(n=>n===U(s,it)))},kn=e=>{const{target:t,type:s}=e;if(!H(t))return;const n=cs(t),o=n&&se(n);if(!o)return;const{parentElement:i,menu:r}=o,a=i&&i.contains(t)&&(t.tagName==="form"||M(t,"form")!==null);[D,Fs].includes(s)&&Sn(t)&&e.preventDefault(),!a&&s!==Oe&&t!==n&&t!==r&&o.hide()};function Xi(e){const t=se(this);ot(this)||t&&(e.stopPropagation(),t.toggle(),Sn(this)&&e.preventDefault())}const qi=e=>{[Me,Be].includes(e.code)&&e.preventDefault()};function Ui(e){const{code:t}=e,s=cs(this);if(!s)return;const n=se(s),{activeElement:o}=b(s);if(!n||!o)return;const{menu:i,open:r}=n,a=Vi(i);if(a&&a.length&&[Me,Be].includes(t)){let c=a.indexOf(o);o===s?c=0:t===Be?c=c>1?c-1:0:t===Me&&(c=cLn(this)),this._toggleEventListeners(!0))}get name(){return Cn}get defaults(){return Ki}toggle(){this.open?this.hide():this.show()}show(){const{element:t,open:s,menu:n,parentElement:o}=this;if(s)return;const i=cs(t),r=i&&se(i);r&&r.hide(),[rs,xn,In].forEach(a=>{a.relatedTarget=t}),w(o,rs),!rs.defaultPrevented&&(d(n,g),d(o,g),I(t,ue,"true"),Ln(this),this.open=!s,at(t),On(this),w(o,xn))}hide(){const{element:t,open:s,menu:n,parentElement:o}=this;s&&([as,Dn].forEach(i=>{i.relatedTarget=t}),w(o,as),!as.defaultPrevented&&(v(n,g),v(o,g),I(t,ue,"false"),this.open=!s,On(this),w(o,Dn)))}_toggleEventListeners=t=>{(t?L:O)(this.element,D,Xi)};dispose(){this.open&&this.hide(),this._toggleEventListeners(),super.dispose()}}const X="modal",ds="Modal",hs="Offcanvas",Yi="fixed-top",Zi="fixed-bottom",Nn="sticky-top",Mn="position-sticky",Bn=e=>[...lt(Yi,e),...lt(Zi,e),...lt(Nn,e),...lt(Mn,e),...lt("is-fixed",e)],Qi=e=>{const t=At(e);S(t,{paddingRight:"",overflow:""});const s=Bn(t);s.length&&s.forEach(n=>{S(n,{paddingRight:"",marginRight:""})})},Rn=e=>{const{clientWidth:t}=ct(e),{innerWidth:s}=Js(e);return Math.abs(s-t)},Fn=(e,t)=>{const s=At(e),n=parseInt(F(s,"paddingRight"),10),i=F(s,"overflow")==="hidden"&&n?0:Rn(e),r=Bn(s);t&&(S(s,{overflow:"hidden",paddingRight:`${n+i}px`}),r.length&&r.forEach(a=>{const c=F(a,"paddingRight");if(a.style.paddingRight=`${parseInt(c,10)+i}px`,[Nn,Mn].some(l=>h(a,l))){const l=F(a,"marginRight");a.style.marginRight=`${parseInt(l,10)-i}px`}}))},Z="offcanvas",bt=ut({tagName:"div",className:"popup-container"}),Wn=(e,t)=>{const s=P(t)&&t.nodeName==="BODY",n=P(t)&&!s?t:bt,o=s?t:At(e);P(e)&&(n===bt&&o.append(bt),n.append(e))},jn=(e,t)=>{const s=P(t)&&t.nodeName==="BODY",n=P(t)&&!s?t:bt;P(e)&&(e.remove(),n===bt&&!bt.children.length&&bt.remove())},fs=(e,t)=>{const s=P(t)&&t.nodeName!=="BODY"?t:bt;return P(e)&&s.contains(e)},zn="backdrop",Kn=`${X}-${zn}`,Vn=`${Z}-${zn}`,Xn=`.${X}.${g}`,us=`.${Z}.${g}`,x=ut("div"),Dt=e=>A(`${Xn},${us}`,b(e)),gs=e=>{const t=e?Kn:Vn;[Kn,Vn].forEach(s=>{v(x,s)}),d(x,t)},qn=(e,t,s)=>{gs(s),Wn(x,At(e)),t&&d(x,k)},Un=()=>{h(x,g)||(d(x,g),_t(x))},_e=()=>{v(x,g)},Yn=e=>{Dt(e)||(v(x,k),jn(x,At(e)),Qi(e))},Zn=e=>H(e)&&F(e,"visibility")!=="hidden"&&e.offsetParent!==null,Gi=`.${X}`,Ji=`[${it}="${X}"]`,tr=`[${Te}="${X}"]`,Qn=`${X}-static`,er={backdrop:!0,keyboard:!0},ne=e=>R(e,ds),sr=e=>new ms(e),Se=E(`show.bs.${X}`),Gn=E(`shown.bs.${X}`),ps=E(`hide.bs.${X}`),Jn=E(`hidden.bs.${X}`),to=e=>{const{element:t}=e,s=Rn(t),{clientHeight:n,scrollHeight:o}=ct(t),{clientHeight:i,scrollHeight:r}=t,a=i!==r;if(!a&&s){const l={[pt(t)?"paddingLeft":"paddingRight"]:`${s}px`};S(t,l)}Fn(t,a||n!==o)},eo=(e,t)=>{const s=t?L:O,{element:n}=e;s(n,D,ir),s(b(n),pe,or),t?e._observer.observe(n):e._observer.disconnect()},so=e=>{const{triggers:t,element:s,relatedTarget:n}=e;Yn(s),S(s,{paddingRight:"",display:""}),eo(e);const o=Se.relatedTarget||t.find(Zn);o&&at(o),Jn.relatedTarget=n||void 0,w(s,Jn),Ee(s)},no=e=>{const{element:t,relatedTarget:s}=e;at(t),eo(e,!0),Gn.relatedTarget=s||void 0,w(t,Gn),Ee(t)},oo=e=>{const{element:t,hasFade:s}=e;S(t,{display:"block"}),to(e),Dt(t)||S(At(t),{overflow:"hidden"}),d(t,g),yt(t,qt),I(t,ge,"true"),s?_(t,()=>no(e)):no(e)},io=e=>{const{element:t,options:s,hasFade:n}=e;s.backdrop&&n&&h(x,g)&&!Dt(t)?(_e(),_(x,()=>so(e))):so(e)};function nr(e){const t=z(this),s=t&&ne(t);ot(this)||s&&(this.tagName==="A"&&e.preventDefault(),s.relatedTarget=this,s.toggle())}const or=({code:e,target:t})=>{const s=A(Xn,b(t)),n=s&&ne(s);if(!n)return;const{options:o}=n;o.keyboard&&e===Re&&h(s,g)&&(n.relatedTarget=null,n.hide())},ir=e=>{const{currentTarget:t}=e,s=t&&ne(t);if(!s||!t||u.get(t))return;const{options:n,isStatic:o,modalDialog:i}=s,{backdrop:r}=n,{target:a}=e,c=b(t)?.getSelection()?.toString().length,l=i.contains(a),f=a&&M(a,tr);o&&!l?u.set(t,()=>{d(t,Qn),_(i,()=>rr(s))},17):(f||!c&&!o&&!l&&r)&&(s.relatedTarget=f||null,s.hide(),e.preventDefault())},rr=e=>{const{element:t,modalDialog:s}=e,n=(Qt(s)||0)+17;v(t,Qn),u.set(t,()=>u.clear(t),n)};class ms extends J{static selector=Gi;static init=sr;static getInstance=ne;constructor(t,s){super(t,s);const{element:n}=this,o=A(`.${X}-dialog`,n);o&&(this.modalDialog=o,this.triggers=[...Y(Ji,b(n))].filter(i=>z(i)===n),this.isStatic=this.options.backdrop==="static",this.hasFade=h(n,k),this.relatedTarget=null,this._observer=new ResizeObserver(()=>this.update()),this._toggleEventListeners(!0))}get name(){return ds}get defaults(){return er}toggle(){h(this.element,g)?this.hide():this.show()}show(){const{element:t,options:s,hasFade:n,relatedTarget:o}=this,{backdrop:i}=s;let r=0;if(h(t,g)||(Se.relatedTarget=o||void 0,w(t,Se),Se.defaultPrevented))return;const a=Dt(t);if(a&&a!==t){const c=ne(a)||R(a,hs);c&&c.hide()}i?(fs(x)?gs(!0):qn(t,n,!0),r=Qt(x),Un(),setTimeout(()=>oo(this),r)):(oo(this),a&&h(x,g)&&_e())}hide(){const{element:t,hasFade:s,relatedTarget:n}=this;h(t,g)&&(ps.relatedTarget=n||void 0,w(t,ps),!ps.defaultPrevented&&(v(t,g),I(t,qt,"true"),yt(t,ge),s?_(t,()=>io(this)):io(this)))}update=()=>{h(this.element,g)&&to(this)};_toggleEventListeners=t=>{const s=t?L:O,{triggers:n}=this;n.length&&n.forEach(o=>{s(o,D,nr)})};dispose(){const t={...this},{modalDialog:s,hasFade:n}=t,o=()=>setTimeout(()=>super.dispose(),17);this.hide(),this._toggleEventListeners(),n?_(s,o):o()}}const ar=`.${Z}`,ro=`[${it}="${Z}"]`,cr=`[${Te}="${Z}"]`,Ae=`${Z}-toggling`,lr={backdrop:!0,keyboard:!0,scroll:!1},oe=e=>R(e,hs),dr=e=>new bs(e),Pe=E(`show.bs.${Z}`),ao=E(`shown.bs.${Z}`),vs=E(`hide.bs.${Z}`),co=E(`hidden.bs.${Z}`),hr=e=>{const{element:t}=e,{clientHeight:s,scrollHeight:n}=ct(t);Fn(t,s!==n)},lo=(e,t)=>{const s=t?L:O,n=b(e.element);s(n,pe,pr),s(n,D,gr)},ho=e=>{const{element:t,options:s}=e;s.scroll||(hr(e),S(At(t),{overflow:"hidden"})),d(t,Ae),d(t,g),S(t,{visibility:"visible"}),_(t,()=>mr(e))},fr=e=>{const{element:t,options:s}=e,n=Dt(t);t.blur(),!n&&s.backdrop&&h(x,g)&&_e(),_(t,()=>vr(e))};function ur(e){const t=z(this),s=t&&oe(t);ot(this)||s&&(s.relatedTarget=this,s.toggle(),this.tagName==="A"&&e.preventDefault())}const gr=e=>{const{target:t}=e,s=A(us,b(t));if(!s)return;const n=A(cr,s),o=oe(s);if(!o)return;const{options:i,triggers:r}=o,{backdrop:a}=i,c=M(t,ro),l=b(s).getSelection();x.contains(t)&&a==="static"||(!(l&&l.toString().length)&&(!s.contains(t)&&a&&(!c||r.includes(t))||n&&n.contains(t))&&(o.relatedTarget=n&&n.contains(t)?n:void 0,o.hide()),c&&c.tagName==="A"&&e.preventDefault())},pr=({code:e,target:t})=>{const s=A(us,b(t)),n=s&&oe(s);n&&n.options.keyboard&&e===Re&&(n.relatedTarget=void 0,n.hide())},mr=e=>{const{element:t}=e;v(t,Ae),yt(t,qt),I(t,ge,"true"),I(t,"role","dialog"),w(t,ao),lo(e,!0),at(t),Ee(t)},vr=e=>{const{element:t,triggers:s}=e;I(t,qt,"true"),yt(t,ge),yt(t,"role"),S(t,{visibility:""});const n=Pe.relatedTarget||s.find(Zn);n&&at(n),Yn(t),w(t,co),v(t,Ae),Ee(t),Dt(t)||lo(e)};class bs extends J{static selector=ar;static init=dr;static getInstance=oe;constructor(t,s){super(t,s);const{element:n}=this;this.triggers=[...Y(ro,b(n))].filter(o=>z(o)===n),this.relatedTarget=void 0,this._toggleEventListeners(!0)}get name(){return hs}get defaults(){return lr}toggle(){h(this.element,g)?this.hide():this.show()}show(){const{element:t,options:s,relatedTarget:n}=this;let o=0;if(h(t,g)||(Pe.relatedTarget=n||void 0,ao.relatedTarget=n||void 0,w(t,Pe),Pe.defaultPrevented))return;const i=Dt(t);if(i&&i!==t){const r=oe(i)||R(i,ds);r&&r.hide()}s.backdrop?(fs(x)?gs():qn(t,!0),o=Qt(x),Un(),setTimeout(()=>ho(this),o)):(ho(this),i&&h(x,g)&&_e())}hide(){const{element:t,relatedTarget:s}=this;h(t,g)&&(vs.relatedTarget=s||void 0,co.relatedTarget=s||void 0,w(t,vs),!vs.defaultPrevented&&(d(t,Ae),v(t,g),fr(this)))}_toggleEventListeners=t=>{const s=t?L:O;this.triggers.forEach(n=>{s(n,D,ur)})};dispose(){const{element:t}=this,s=h(t,g),n=()=>setTimeout(()=>super.dispose(),1);this.hide(),this._toggleEventListeners(),s?_(t,n):n()}}const It="popover",ws="Popover",ht="tooltip",fo=e=>{const t=e===ht,s=t?`${e}-inner`:`${e}-body`,n=t?"":`

`,o=`
`,i=`
`;return`
${n+o+i}
`},uo={top:"top",bottom:"bottom",left:"start",right:"end"},Es=e=>{requestAnimationFrame(()=>{const t=/\b(top|bottom|start|end)+/,{element:s,tooltip:n,container:o,offsetParent:i,options:r,arrow:a}=e;if(!n)return;const c=pt(s),{x:l,y:f}=ni(i);S(n,{top:"",left:"",right:"",bottom:""});const{offsetWidth:p,offsetHeight:y}=n,{clientWidth:B,clientHeight:G,offsetWidth:st}=ct(s);let{placement:m}=r;const{clientWidth:q,offsetWidth:Ot}=o,C=F(o,"position")==="fixed",Et=Math.abs(C?q-Ot:B-st),ft=c&&C?Et:0,nt=B-(c?0:Et)-1,zt=e._observer.getEntry(s),{width:$,height:V,left:Kt,right:W,top:Nt}=zt?.boundingClientRect||St(s,!0),{x:xe,y:Vt}=ai(s,i,{x:l,y:f});S(a,{top:"",left:"",right:"",bottom:""});let Mt=0,ce="",Tt=0,Ls="",Xt="",De="",Os="";const Bt=a.offsetWidth||0,$t=a.offsetHeight||0,ks=Bt/2;let le=Nt-y-$t<0,de=Nt+y+V+$t>=G,he=Kt-p-Bt=nt;const Ie=["left","right"],Ns=["top","bottom"];le=Ie.includes(m)?Nt+V/2-y/2-$t<0:le,de=Ie.includes(m)?Nt+y/2+V/2+$t>=G:de,he=Ns.includes(m)?Kt+$/2-p/2=nt:fe,m=Ie.includes(m)&&he&&fe?"top":m,m=m==="top"&&le?"bottom":m,m=m==="bottom"&&de?"top":m,m=m==="left"&&he?"right":m,m=m==="right"&&fe?"left":m,n.className.includes(m)||(n.className=n.className.replace(t,uo[m])),Ie.includes(m)?(m==="left"?Tt=xe-p-Bt:Tt=xe+$+Bt,le&&de?(Mt=0,ce=0,Xt=Vt+V/2-$t/2):le?(Mt=Vt,ce="",Xt=V/2-Bt):de?(Mt=Vt-y+V,ce="",Xt=y-V/2-Bt):(Mt=Vt-y/2+V/2,Xt=y/2-$t/2)):Ns.includes(m)&&(m==="top"?Mt=Vt-y-$t:Mt=Vt+V+$t,he?(Tt=0,De=xe+$/2-ks):fe?(Tt="auto",Ls=0,Os=$/2+nt-W-ks):(Tt=xe-p/2+$/2,De=p/2-ks)),S(n,{top:`${Mt}px`,bottom:ce===""?"":`${ce}px`,left:Tt==="auto"?Tt:`${Tt}px`,right:Ls!==""?`${Ls}px`:""}),H(a)&&(Xt!==""&&(a.style.top=`${Xt}px`),De!==""?a.style.left=`${De}px`:Os!==""&&(a.style.right=`${Os}px`));const Qr=E(`updated.bs.${Jt(e.name)}`);w(s,Qr)})},Ts={template:fo(ht),title:"",customClass:"",trigger:"hover focus",placement:"top",sanitizeFn:void 0,animation:!0,delay:200,container:document.body,content:"",dismissible:!1,btnClose:""},go="data-original-title",Lt="Tooltip",wt=(e,t,s)=>{if(Zt(t)&&t.length){let n=t.trim();rn(s)&&(n=s(n));const i=new DOMParser().parseFromString(n,"text/html");e.append(...i.body.childNodes)}else H(t)?e.append(t):(li(t)||ci(t)&&t.every(P))&&e.append(...t)},br=e=>{const t=e.name===Lt,{id:s,element:n,options:o}=e,{title:i,placement:r,template:a,animation:c,customClass:l,sanitizeFn:f,dismissible:p,content:y,btnClose:B}=o,G=t?ht:It,st={...uo};let m=[],q=[];pt(n)&&(st.left="end",st.right="start");const Ot=`bs-${G}-${st[r]}`;let kt;if(H(a))kt=a;else{const $=ut("div");wt($,a,f),kt=$.firstChild}if(!H(kt))return;e.tooltip=kt.cloneNode(!0);const{tooltip:C}=e;I(C,"id",s),I(C,"role",ht);const Et=t?`${ht}-inner`:`${It}-body`,ft=t?null:A(`.${It}-header`,C),nt=A(`.${Et}`,C);e.arrow=A(`.${G}-arrow`,C);const{arrow:zt}=e;if(H(i))m=[i.cloneNode(!0)];else{const $=ut("div");wt($,i,f),m=[...$.childNodes]}if(H(y))q=[y.cloneNode(!0)];else{const $=ut("div");wt($,y,f),q=[...$.childNodes]}if(p)if(i)if(H(B))m=[...m,B.cloneNode(!0)];else{const $=ut("div");wt($,B,f),m=[...m,$.firstChild]}else if(ft&&ft.remove(),H(B))q=[...q,B.cloneNode(!0)];else{const $=ut("div");wt($,B,f),q=[...q,$.firstChild]}t?i&&nt&&wt(nt,i,f):(i&&ft&&wt(ft,m,f),y&&nt&&wt(nt,q,f),e.btn=A(".btn-close",C)||void 0),d(C,"position-absolute"),d(zt,"position-absolute"),h(C,G)||d(C,G),c&&!h(C,k)&&d(C,k),l&&!h(C,l)&&d(C,l),h(C,Ot)||d(C,Ot)},wr=e=>{const t=["HTML","BODY"],s=[];let{parentNode:n}=e;for(;n&&!t.includes(n.nodeName);)n=oi(n),Gs(n)||ii(n)||s.push(n);return s.find((o,i)=>(F(o,"position")!=="relative"||F(o,"position")==="relative"&&o.offsetHeight!==o.scrollHeight)&&s.slice(i+1).every(r=>F(r,"position")==="static")?o:null)||b(e).body},Er=`[${it}="${ht}"],[data-tip="${ht}"]`,po="title";let mo=e=>R(e,Lt);const Tr=e=>new He(e),$r=e=>{const{element:t,tooltip:s,container:n}=e;yt(t,Ms),jn(s,n)},ie=e=>{const{tooltip:t,container:s}=e;return t&&fs(t,s)},yr=(e,t)=>{const{element:s}=e;e._toggleEventListeners(),Ut(s,go)&&e.name===Lt&&To(e),t&&t()},vo=(e,t)=>{const s=t?L:O,{element:n}=e;s(b(n),ve,e.handleTouch,Gt)},bo=e=>{const{element:t}=e,s=E(`shown.bs.${Jt(e.name)}`);vo(e,!0),w(t,s),u.clear(t,"in")},wo=e=>{const{element:t}=e,s=E(`hidden.bs.${Jt(e.name)}`);vo(e),$r(e),w(t,s),u.clear(t,"out")},Eo=(e,t)=>{const s=t?L:O,{element:n,tooltip:o}=e,i=M(n,`.${X}`),r=M(n,`.${Z}`);t?[n,o].forEach(a=>e._observer.observe(a)):e._observer.disconnect(),i&&s(i,`hide.bs.${X}`,e.handleHide),r&&s(r,`hide.bs.${Z}`,e.handleHide)},To=(e,t)=>{const s=[go,po],{element:n}=e;I(n,s[t?0:1],t||U(n,s[0])||""),yt(n,s[t?1:0])};class He extends J{static selector=Er;static init=Tr;static getInstance=mo;static styleTip=Es;constructor(t,s){super(t,s);const{element:n}=this,o=this.name===Lt,i=o?ht:It,r=o?Lt:ws;mo=f=>R(f,r),this.enabled=!0,this.id=`${i}-${nn(n,i)}`;const{options:a}=this;if(!a.title&&o||!o&&!a.content)return;rt(Ts,{titleAttr:""}),Ut(n,po)&&o&&typeof a.title=="string"&&To(this,a.title);const c=wr(n),l=["sticky","fixed","relative"].some(f=>F(c,"position")===f)?c:Js(n);this.container=c,this.offsetParent=l,br(this),this.tooltip&&(this._observer=new ss(()=>this.update()),this._toggleEventListeners(!0))}get name(){return Lt}get defaults(){return Ts}handleFocus=()=>at(this.element);handleShow=()=>this.show();show(){const{options:t,tooltip:s,element:n,container:o,id:i}=this,{animation:r}=t,a=u.get(n,"out");u.clear(n,"out"),s&&!a&&!ie(this)&&u.set(n,()=>{const c=E(`show.bs.${Jt(this.name)}`);w(n,c),c.defaultPrevented||(Wn(s,o),I(n,Ms,`#${i}`),this.update(),Eo(this,!0),h(s,g)||d(s,g),r?_(s,()=>bo(this)):bo(this))},17,"in")}handleHide=()=>this.hide();hide(){const{options:t,tooltip:s,element:n}=this,{animation:o,delay:i}=t;u.clear(n,"in"),s&&ie(this)&&u.set(n,()=>{const r=E(`hide.bs.${Jt(this.name)}`);w(n,r),r.defaultPrevented||(this.update(),v(s,g),Eo(this),o?_(s,()=>wo(this)):wo(this))},i+17,"out")}update=()=>{Es(this)};toggle=()=>{const{tooltip:t}=this;t&&!ie(this)?this.show():this.hide()};enable(){const{enabled:t}=this;t||(this._toggleEventListeners(!0),this.enabled=!t)}disable(){const{tooltip:t,enabled:s}=this;s&&(t&&ie(this)&&this.hide(),this._toggleEventListeners(),this.enabled=!s)}toggleEnabled(){this.enabled?this.disable():this.enable()}handleTouch=({target:t})=>{const{tooltip:s,element:n}=this;s&&s.contains(t)||t===n||t&&n.contains(t)||this.hide()};_toggleEventListeners=t=>{const s=t?L:O,{element:n,options:o,btn:i}=this,{trigger:r}=o,c=!!(this.name!==Lt&&o.dismissible);r.includes("manual")||(this.enabled=!!t,r.split(" ").forEach(f=>{f===jo?(s(n,Fs,this.handleShow),s(n,me,this.handleShow),c||(s(n,Ne,this.handleHide),s(b(n),ve,this.handleTouch,Gt))):f===D?s(n,f,c?this.handleShow:this.toggle):f===Oe&&(s(n,ke,this.handleShow),c||s(n,Rs,this.handleHide),Yo()&&s(n,D,this.handleFocus)),c&&i&&s(i,D,this.handleHide)}))};dispose(){const{tooltip:t,options:s}=this,n={...this,name:this.name},o=()=>setTimeout(()=>yr(n,()=>super.dispose()),17);s.animation&&ie(n)?(this.options.delay=0,this.hide(),_(t,o)):o()}}const Cr=`[${it}="${It}"],[data-tip="${It}"]`,_r=rt({},Ts,{template:fo(It),content:"",dismissible:!1,btnClose:''}),Sr=e=>R(e,ws),Ar=e=>new $s(e);class $s extends He{static selector=Cr;static init=Ar;static getInstance=Sr;static styleTip=Es;constructor(t,s){super(t,s)}get name(){return ws}get defaults(){return _r}show=()=>{super.show();const{options:t,btn:s}=this;t.dismissible&&s&&setTimeout(()=>at(s),17)}}const Pr="scrollspy",$o="ScrollSpy",Hr='[data-bs-spy="scroll"]',xr="[href]",Dr={offset:10,target:void 0},Ir=e=>R(e,$o),Lr=e=>new Cs(e),yo=E(`activate.bs.${Pr}`),Or=e=>{const{target:t,_itemsLength:s,_observables:n}=e,o=Ke("A",t),i=b(t);!o.length||s===n.size||(n.clear(),Array.from(o).forEach(r=>{const a=U(r,"href")?.slice(1),c=a?.length?i.getElementById(a):null;c&&!ot(r)&&e._observables.set(c,r)}),e._itemsLength=e._observables.size)},Co=e=>{Array.from(Ke("A",e)).forEach(t=>{h(t,T)&&v(t,T)})},_o=(e,t)=>{const{target:s,element:n}=e;Co(s),e._activeItem=t,d(t,T);let o=t;for(;o!==s;)if(o=o.parentElement,["nav","dropdown-menu","list-group"].some(i=>h(o,i))){const i=o.previousElementSibling;i&&!h(i,T)&&d(i,T)}yo.relatedTarget=t,w(n,yo)},ys=(e,t)=>{const{scrollTarget:s,element:n,options:o}=e;return(s!==n?St(t).top+s.scrollTop:t.offsetTop)-(o.offset||10)};class Cs extends J{static selector=Hr;static init=Lr;static getInstance=Ir;constructor(t,s){super(t,s);const{element:n,options:o}=this,i=A(o.target,b(n));i&&(this.target=i,this.scrollTarget=n.clientHeight{requestAnimationFrame(()=>this.refresh())},{root:this.scrollTarget}),this._toggleEventListeners(!0))}get name(){return $o}get defaults(){return Dr}refresh=()=>{const{target:t,scrollTarget:s}=this;if(!t||t.offsetHeight===0)return;Or(this);const{_itemsLength:n,_observables:o,_activeItem:i}=this;if(!n)return;const r=o.entries().toArray(),{scrollTop:a,scrollHeight:c,clientHeight:l}=s;if(a>=c-l){const p=r[n-1]?.[1];i!==p&&_o(this,p);return}const f=r[0]?.[0]?ys(this,r[0][0]):null;if(f!==null&&a0){this._activeItem=null,Co(t);return}for(let p=0;p=G&&(m===null||a{const s=M(t.target,xr),n=s&&U(s,"href")?.slice(1),o=n&&di(n,this.target);o&&(this.scrollTarget.scrollTo({top:o.offsetTop,behavior:"smooth"}),t.preventDefault())};_toggleEventListeners=t=>{const{target:s,_observables:n,_observer:o,_scrollTo:i}=this;(t?L:O)(s,D,i),t?n?.forEach((a,c)=>o.observe(c)):o.disconnect()};dispose(){this._toggleEventListeners(),super.dispose()}}const re="tab",So="Tab",_s=`[${it}="${re}"]`,Ao=e=>R(e,So),kr=e=>new Ps(e),Ss=E(`show.bs.${re}`),Po=E(`shown.bs.${re}`),As=E(`hide.bs.${re}`),Ho=E(`hidden.bs.${re}`),ae=new Map,xo=e=>{const{tabContent:t,nav:s}=e;t&&h(t,Ht)&&(t.style.height="",v(t,Ht)),s&&u.clear(s)},Do=e=>{const{element:t,tabContent:s,content:n,nav:o}=e,{tab:i}=H(o)&&ae.get(o)||{tab:null};if(s&&n&&h(n,k)){const{currentHeight:r,nextHeight:a}=ae.get(t)||{currentHeight:0,nextHeight:0};r!==a?setTimeout(()=>{s.style.height=`${a}px`,_t(s),_(s,()=>xo(e))},50):xo(e)}else o&&u.clear(o);Po.relatedTarget=i,w(t,Po)},Io=e=>{const{element:t,content:s,tabContent:n,nav:o}=e,{tab:i,content:r}=o&&ae.get(o)||{tab:null,content:null};let a=0;if(n&&s&&h(s,k)&&([r,s].forEach(c=>{c&&d(c,"overflow-hidden")}),a=r?r.scrollHeight:0),Ss.relatedTarget=i,Ho.relatedTarget=t,w(t,Ss),!Ss.defaultPrevented){if(s&&d(s,T),r&&v(r,T),n&&s&&h(s,k)){const c=s.scrollHeight;ae.set(t,{currentHeight:a,nextHeight:c,tab:null,content:null}),d(n,Ht),n.style.height=`${a}px`,_t(n),[r,s].forEach(l=>{l&&v(l,"overflow-hidden")})}s&&s&&h(s,k)?setTimeout(()=>{d(s,g),_(s,()=>{Do(e)})},1):(s&&d(s,g),Do(e)),i&&w(i,Ho)}},Lo=e=>{const{nav:t}=e;if(!H(t))return{tab:null,content:null};const s=lt(T,t);let n=null;s.length===1&&!xt.some(i=>h(s[0].parentElement,i))?[n]=s:s.length>1&&(n=s[s.length-1]);const o=H(n)?z(n):null;return{tab:n,content:o}},Oo=e=>{if(!H(e))return null;const t=M(e,`.${xt.join(",.")}`);return t?A(`.${xt[0]}-toggle`,t):null},Nr=e=>{const t=M(e.target,_s),s=t&&Ao(t);s&&(e.preventDefault(),s.show())};class Ps extends J{static selector=_s;static init=kr;static getInstance=Ao;constructor(t){super(t);const{element:s}=this,n=z(s);if(!n)return;const o=M(s,".nav"),i=M(n,".tab-content");this.nav=o,this.content=n,this.tabContent=i,this.dropdown=Oo(s);const{tab:r}=Lo(this);if(o&&!r){const a=A(_s,o),c=a&&z(a);c&&(d(a,T),d(c,g),d(c,T),I(s,Le,"true"))}this._toggleEventListeners(!0)}get name(){return So}show(){const{element:t,content:s,nav:n,dropdown:o}=this;if(n&&u.get(n)||h(t,T))return;const{tab:i,content:r}=Lo(this);if(n&&i&&ae.set(n,{tab:i,content:r,currentHeight:0,nextHeight:0}),As.relatedTarget=t,!H(i)||(w(i,As),As.defaultPrevented))return;d(t,T),I(t,Le,"true");const a=H(i)&&Oo(i);if(a&&h(a,T)&&v(a,T),n){const c=()=>{i&&(v(i,T),I(i,Le,"false")),o&&!h(o,T)&&d(o,T)};r&&(h(r,k)||s&&h(s,k))?u.set(n,c,1):c()}r&&(v(r,g),h(r,k)?_(r,()=>Io(this)):Io(this))}_toggleEventListeners=t=>{(t?L:O)(this.element,D,Nr)};dispose(){this._toggleEventListeners(),super.dispose()}}const Q="toast",ko="Toast",Mr=`.${Q}`,Br=`[${Te}="${Q}"]`,Rr=`[${it}="${Q}"]`,jt="showing",No="hide",Fr={animation:!0,autohide:!0,delay:5e3},Hs=e=>R(e,ko),Wr=e=>new xs(e),Mo=E(`show.bs.${Q}`),jr=E(`shown.bs.${Q}`),Bo=E(`hide.bs.${Q}`),zr=E(`hidden.bs.${Q}`),Ro=e=>{const{element:t,options:s}=e;v(t,jt),u.clear(t,jt),w(t,jr),s.autohide&&u.set(t,()=>e.hide(),s.delay,Q)},Fo=e=>{const{element:t}=e;v(t,jt),v(t,g),d(t,No),u.clear(t,Q),w(t,zr)},Kr=e=>{const{element:t,options:s}=e;d(t,jt),s.animation?(_t(t),_(t,()=>Fo(e))):Fo(e)},Vr=e=>{const{element:t,options:s}=e;u.set(t,()=>{v(t,No),_t(t),d(t,g),d(t,jt),s.animation?_(t,()=>Ro(e)):Ro(e)},17,jt)};function Xr(e){const t=z(this),s=t&&Hs(t);ot(this)||s&&(this.tagName==="A"&&e.preventDefault(),s.relatedTarget=this,s.show())}const qr=e=>{const t=e.target,s=Hs(t),{type:n,relatedTarget:o}=e;!s||t===o||t.contains(o)||([me,ke].includes(n)?u.clear(t,Q):u.set(t,()=>s.hide(),s.options.delay,Q))};class xs extends J{static selector=Mr;static init=Wr;static getInstance=Hs;constructor(t,s){super(t,s);const{element:n,options:o}=this;o.animation&&!h(n,k)?d(n,k):!o.animation&&h(n,k)&&v(n,k),this.dismiss=A(Br,n),this.triggers=[...Y(Rr,b(n))].filter(i=>z(i)===n),this._toggleEventListeners(!0)}get name(){return ko}get defaults(){return Fr}get isShown(){return h(this.element,g)}show=()=>{const{element:t,isShown:s}=this;!t||s||(w(t,Mo),Mo.defaultPrevented||Vr(this))};hide=()=>{const{element:t,isShown:s}=this;!t||!s||(w(t,Bo),Bo.defaultPrevented||Kr(this))};_toggleEventListeners=t=>{const s=t?L:O,{element:n,triggers:o,dismiss:i,options:r,hide:a}=this;i&&s(i,D,a),r.autohide&&[ke,Rs,me,Ne].forEach(c=>s(n,c,qr)),o.length&&o.forEach(c=>{s(c,D,Xr)})};dispose(){const{element:t,isShown:s}=this;this._toggleEventListeners(),u.clear(t,Q),s&&v(t,g),super.dispose()}}const Ds=new Map;[Ve,Xe,ts,es,ls,ms,bs,$s,Cs,Ps,xs,He].forEach(e=>Ds.set(e.prototype.name,e));const Ur=(e,t)=>{[...t].forEach(s=>e(s))},Yr=(e,t)=>{const s=Ct.getAllFor(e);s&&[...s].forEach(([n,o])=>{t.contains(n)&&o.dispose()})},Is=e=>{const t=e&&e.nodeName?e:document,s=[...Ke("*",t)];Ds.forEach(n=>{const{init:o,selector:i}=n;Ur(o,s.filter(r=>tn(r,i)))})},Zr=e=>{const t=e&&e.nodeName?e:document;Ds.forEach(s=>{Yr(s.prototype.name,t)})};return document.body?Is():L(document,"DOMContentLoaded",()=>Is(),{once:!0}),N.Alert=Ve,N.Button=Xe,N.Carousel=ts,N.Collapse=es,N.Dropdown=ls,N.Modal=ms,N.Offcanvas=bs,N.Popover=$s,N.ScrollSpy=Cs,N.Tab=Ps,N.Toast=xs,N.Tooltip=He,N.initCallback=Is,N.removeDataAPI=Zr,Object.defineProperty(N,Symbol.toStringTag,{value:"Module"}),N})({}); -//# sourceMappingURL=bootstrap-native.js.map +var BSN=(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`}),(()=>{for(var e=new Uint8Array(128),t=0;t<64;t++)e[t<26?t+65:t<52?t+71:t<62?t-4:t*4-205]=t;return t=>{for(var n=t.length,r=new Uint8Array((n-(t[n-1]==`=`)-(t[n-2]==`=`))*3/4|0),i=0,a=0;i>4,r[a++]=s<<4|c>>2,r[a++]=c<<6|l}return r}})(),(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.")});var t=`aria-describedby`,n=`aria-expanded`,r=`aria-hidden`,i=`aria-modal`,a=`aria-pressed`,o=`aria-selected`,s=`focus`,c=`focusin`,l=`focusout`,u=`keydown`,d=`keyup`,f=`click`,p=`mousedown`,ee=`mouseenter`,m=`mouseleave`,h=`pointerdown`,g=`pointermove`,te=`pointerup`,_=`touchstart`,v=`dragstart`;`onmouseleave`in document;var ne=`a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]`,re=`ArrowLeft`,y=`ArrowRight`,b=`transitionDuration`,ie=`transitionDelay`,ae=`transitionend`,oe=`transitionProperty`;navigator.userAgentData;var{userAgent:se}=navigator,ce=()=>{let e=/iPhone|iPad|iPod|Android/i;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},le=()=>{let e=/(iPhone|iPod|iPad)/;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},ue=()=>{},de=(e,t,n,r)=>{let i=r||!1;e.addEventListener(t,n,i)},fe=(e,t,n,r)=>{let i=r||!1;e.removeEventListener(t,n,i)},x=(e,t)=>e.getAttribute(t),pe=(e,t)=>e.hasAttribute(t),S=(e,t,n)=>e.setAttribute(t,n),C=(e,t)=>e.removeAttribute(t),w=(e,...t)=>{e.classList.add(...t)},T=(e,...t)=>{e.classList.remove(...t)},E=(e,t)=>e.classList.contains(t),{body:me}=document,{documentElement:he}=document,{head:ge}=document,_e=e=>typeof e==`object`&&!!e||!1,D=e=>_e(e)&&typeof e.nodeType==`number`&&[1,2,3,4,5,6,7,8,9,10,11].some(t=>e.nodeType===t)||!1,O=e=>D(e)&&e.nodeType===1||!1,ve=new Map,ye={data:ve,set:(e,t,n)=>{O(e)&&(ve.has(t)||ve.set(t,new Map),ve.get(t).set(e,n))},getAllFor:e=>ve.get(e)||null,get:(e,t)=>{if(!O(e)||!t)return null;let n=ye.getAllFor(t);return e&&n&&n.get(e)||null},remove:(e,t)=>{let n=ye.getAllFor(t);!n||!O(e)||(n.delete(e),n.size===0&&ve.delete(t))}},k=(e,t)=>ye.get(e,t),be=e=>e?.trim().replace(/(?:^\w|[A-Z]|\b\w)/g,(e,t)=>t===0?e.toLowerCase():e.toUpperCase()).replace(/\s+/g,``),xe=e=>typeof e==`string`||!1,Se=e=>_e(e)&&e.constructor.name===`Window`||!1,Ce=e=>D(e)&&e.nodeType===9||!1,A=e=>Ce(e)?e:D(e)?e.ownerDocument:Se(e)?e.document:globalThis.document,we=(e,...t)=>Object.assign(e,...t),Te=e=>{if(!e)return;if(xe(e))return A().createElement(e);let{tagName:t}=e,n=Te(t);if(!n)return;let r={...e};return delete r.tagName,we(n,r)},Ee=(e,t)=>{if(!e||!t)return;if(xe(t))return A().createElementNS(e,t);let{tagName:n}=t,r=Ee(e,n);if(!r)return;let i={...t};return delete i.tagName,we(r,i)},j=(e,t)=>e.dispatchEvent(t),M=(e,t,n)=>{let r=getComputedStyle(e,n),i=t.replace(`webkit`,`Webkit`).replace(/([A-Z])/g,`-$1`).toLowerCase();return r.getPropertyValue(i)},De=e=>{let t=M(e,oe),n=M(e,ie),r=n.includes(`ms`)?1:1e3,i=t&&t!==`none`?parseFloat(n)*r:0;return Number.isNaN(i)?0:i},Oe=e=>{let t=M(e,oe),n=M(e,b),r=n.includes(`ms`)?1:1e3,i=t&&t!==`none`?parseFloat(n)*r:0;return Number.isNaN(i)?0:i},N=(e,t)=>{let n=0,r=new Event(ae),i=Oe(e),a=De(e);if(i){let o=r=>{r.target===e&&(t.apply(e,[r]),e.removeEventListener(`transitionend`,o),n=1)};e.addEventListener(ae,o),setTimeout(()=>{n||j(e,r)},i+a+17)}else t.apply(e,[r])},ke=(e,t)=>e.focus(t),Ae=e=>[`true`,!0].includes(e)?!0:[`false`,!1].includes(e)?!1:[`null`,``,null,void 0].includes(e)?null:e!==``&&!Number.isNaN(+e)?+e:e,je=e=>Object.entries(e),Me=(e,t,n,r)=>{if(!O(e))return t;let i={...n},a={...e.dataset},o={...t},s={},c=`title`;return je(a).forEach(([e,t])=>{let n=r&&typeof e==`string`&&e.includes(r)?be(e.replace(r,``)):be(e);s[n]=Ae(t)}),je(i).forEach(([e,t])=>{i[e]=Ae(t)}),je(t).forEach(([t,n])=>{t in i?o[t]=i[t]:t in s?o[t]=s[t]:o[t]=t===c?x(e,c):n}),o},Ne=e=>Object.keys(e),P=(e,t)=>{let n=new CustomEvent(e,{cancelable:!0,bubbles:!0});return _e(t)&&we(n,t),n},Pe={passive:!0},Fe=e=>e.offsetHeight,F=(e,t)=>{je(t).forEach(([t,n])=>{if(n&&xe(t)&&t.includes(`--`))e.style.setProperty(t,n);else{let r={};r[t]=n,we(e.style,r)}})},Ie=e=>_e(e)&&e.constructor.name===`Map`||!1,Le=e=>typeof e==`number`||!1,Re=new Map,I={set:(e,t,n,r)=>{O(e)&&(r&&r.length?(Re.has(e)||Re.set(e,new Map),Re.get(e).set(r,setTimeout(t,n))):Re.set(e,setTimeout(t,n)))},get:(e,t)=>{if(!O(e))return null;let n=Re.get(e);return t&&n&&Ie(n)?n.get(t)||null:Le(n)?n:null},clear:(e,t)=>{if(!O(e))return;let n=Re.get(e);t&&t.length&&Ie(n)?(clearTimeout(n.get(t)),n.delete(t),n.size===0&&Re.delete(e)):(clearTimeout(n),Re.delete(e))}},ze=e=>e.toLowerCase(),L=(e,t)=>(D(t)?t:A()).querySelectorAll(e),Be=new Map;function Ve(e){let{shiftKey:t,code:n}=e,r=A(this),i=[...L(ne,this)].filter(e=>!pe(e,`disabled`)&&!x(e,`aria-hidden`));if(!i.length)return;let a=i[0],o=i[i.length-1];n===`Tab`&&(t&&r.activeElement===a?(o.focus(),e.preventDefault()):!t&&r.activeElement===o&&(a.focus(),e.preventDefault()))}var He=e=>Be.has(e)===!0,Ue=e=>{He(e)||(de(e,`keydown`,Ve),Be.set(e,!0))},We=e=>{He(e)&&(fe(e,`keydown`,Ve),Be.delete(e))},Ge=e=>{He(e)?We(e):Ue(e)},R=e=>O(e)&&`offsetWidth`in e||!1,Ke=(e,t)=>{let{width:n,height:r,top:i,right:a,bottom:o,left:s}=e.getBoundingClientRect(),c=1,l=1;if(t&&R(e)){let{offsetWidth:t,offsetHeight:i}=e;c=t>0?Math.round(n)/t:1,l=i>0?Math.round(r)/i:1}return{width:n/c,height:r/l,top:i/l,right:a/c,bottom:o/l,left:s/c,x:s/c,y:i/l}},qe=e=>A(e).body,Je=e=>A(e).documentElement,Ye=e=>{let t=Se(e);return{x:t?e.scrollX:e.scrollLeft,y:t?e.scrollY:e.scrollTop}},Xe=e=>D(e)&&e.constructor.name===`ShadowRoot`||!1,Ze=e=>e.nodeName===`HTML`?e:O(e)&&e.assignedSlot||D(e)&&e.parentNode||Xe(e)&&e.host||Je(e),Qe=e=>e?Ce(e)?e.defaultView:D(e)?e?.ownerDocument?.defaultView:e:window,$e=e=>D(e)&&[`TABLE`,`TD`,`TH`].includes(e.nodeName)||!1,et=(e,t)=>e.matches(t),tt=e=>{if(!R(e))return!1;let{width:t,height:n}=Ke(e),{offsetWidth:r,offsetHeight:i}=e;return Math.round(t)!==r||Math.round(n)!==i},nt=(e,t,n)=>{let r=R(t),i=Ke(e,r&&tt(t)),a={x:0,y:0};if(r){let e=Ke(t,!0);a.x=e.x+t.clientLeft,a.y=e.y+t.clientTop}return{x:i.left+n.x-a.x,y:i.top+n.y-a.y,width:i.width,height:i.height}},rt=0,it=0,at=new Map,ot=(e,t)=>{let n=t?rt:it;if(t){let r=ot(e),i=at.get(r)||new Map;at.has(r)||at.set(r,i),Ie(i)&&!i.has(t)?(i.set(t,n),rt+=1):n=i.get(t)}else{let t=e.id||e;at.has(t)?n=at.get(t):(at.set(t,n),it+=1)}return n},st=e=>Array.isArray(e)||!1,ct=e=>{if(!D(e))return!1;let{top:t,bottom:n}=Ke(e),{clientHeight:r}=Je(e);return t<=r&&n>=0},lt=e=>typeof e==`function`||!1,ut=e=>_e(e)&&e.constructor.name===`NodeList`||!1,dt=e=>Je(e).dir===`rtl`,z=(e,t)=>!e||!t?null:e.closest(t)||z(e.getRootNode().host,t)||null,B=(e,t)=>O(e)?e:(O(t)?t:A()).querySelector(e),ft=(e,t)=>(D(t)?t:A()).getElementsByTagName(e),pt=(e,t)=>A(t).getElementById(e),mt=(e,t)=>(t&&D(t)?t:A()).getElementsByClassName(e),ht={},gt=e=>{let{type:t,currentTarget:n}=e;ht[t].forEach((r,i)=>{n===i&&r.forEach((n,r)=>{r.apply(i,[e]),typeof n==`object`&&n.once&&H(i,t,r,n)})})},V=(e,t,n,r)=>{ht[t]||(ht[t]=new Map);let i=ht[t];i.has(e)||i.set(e,new Map);let a=i.get(e),{size:o}=a;a.set(n,r),o||e.addEventListener(t,gt,r)},H=(e,t,n,r)=>{let i=ht[t],a=i&&i.get(e),o=a&&a.get(n),s=o===void 0?r:o;a&&a.has(n)&&a.delete(n),i&&(!a||!a.size)&&i.delete(e),(!i||!i.size)&&delete ht[t],(!a||!a.size)&&e.removeEventListener(t,gt,s)},_t=`fade`,U=`show`,vt=`data-bs-dismiss`,yt=`alert`,bt=`Alert`,xt=e=>E(e,`disabled`)||x(e,`disabled`)===`true`,St=`5.1.6`,W=class{constructor(e,t){let n;try{if(O(e))n=e;else if(xe(e)){if(n=B(e),!n)throw Error(`"${e}" is not a valid selector.`)}else throw Error(`your target is not an instance of HTMLElement.`)}catch(e){throw Error(`${this.name} Error: ${e.message}`)}let r=ye.get(n,this.name);r&&r._toggleEventListeners(),this.element=n,this.options=this.defaults&&Ne(this.defaults).length?Me(n,this.defaults,t||{},`bs`):{},ye.set(n,this.name,this)}get version(){return St}get name(){return`BaseComponent`}get defaults(){return{}}_toggleEventListeners=()=>{};dispose(){ye.remove(this.element,this.name),Ne(this).forEach(e=>{delete this[e]})}},Ct=`.${yt}`,wt=`[${vt}="${yt}"]`,Tt=e=>k(e,bt),Et=e=>new At(e),Dt=P(`close.bs.${yt}`),Ot=P(`closed.bs.${yt}`),kt=e=>{let{element:t}=e;j(t,Ot),e._toggleEventListeners(),e.dispose(),t.remove()},At=class extends W{static selector=Ct;static init=Et;static getInstance=Tt;dismiss;constructor(e){super(e),this.dismiss=B(wt,this.element),this._toggleEventListeners(!0)}get name(){return bt}close=e=>{let{element:t,dismiss:n}=this;!t||!E(t,`show`)||e&&n&&xt(n)||(j(t,Dt),!Dt.defaultPrevented&&(T(t,U),E(t,`fade`)?N(t,()=>kt(this)):kt(this)))};_toggleEventListeners=e=>{let t=e?V:H,{dismiss:n,close:r}=this;n&&t(n,f,r)};dispose(){this._toggleEventListeners(),super.dispose()}},G=`active`,jt=`data-bs-toggle`,Mt=`button`,Nt=`Button`,Pt=`[${jt}="${Mt}"]`,Ft=e=>k(e,Nt),It=e=>new Lt(e),Lt=class extends W{static selector=Pt;static init=It;static getInstance=Ft;constructor(e){super(e);let{element:t}=this;this.isActive=E(t,G),S(t,a,String(!!this.isActive)),this._toggleEventListeners(!0)}get name(){return Nt}toggle=e=>{e&&e.preventDefault();let{element:t,isActive:n}=this;xt(t)||((n?T:w)(t,G),S(t,a,n?`false`:`true`),this.isActive=E(t,G))};_toggleEventListeners=e=>{(e?V:H)(this.element,f,this.toggle)};dispose(){this._toggleEventListeners(),super.dispose()}},Rt=`data-bs-target`,zt=`carousel`,Bt=`Carousel`,Vt=`data-bs-parent`,Ht=`data-bs-container`,K=e=>{let t=[Rt,Vt,Ht,`href`],n=A(e);return t.map(t=>{let r=x(e,t);return r?t===`data-bs-parent`?z(e,r):B(r,n):null}).filter(e=>e)[0]},Ut=`[data-bs-ride="${zt}"]`,q=`${zt}-item`,Wt=`data-bs-slide-to`,Gt=`data-bs-slide`,Kt=`paused`,qt=ce()?_:h;console.log({isMobile:ce(),touchEvent:qt});var Jt={pause:`hover`,keyboard:!1,touch:!0,interval:5e3},Yt=e=>k(e,Bt),Xt=e=>new gn(e),Zt=0,Qt=0,$t=0,en=P(`slide.bs.${zt}`),tn=P(`slid.bs.${zt}`),nn=e=>{let{index:t,direction:n,element:r,slides:i,options:a}=e;if(e.isAnimating){let o=hn(e),s=n===`left`?`next`:`prev`,c=n===`left`?`start`:`end`;w(i[t],G),T(i[t],`${q}-${s}`),T(i[t],`${q}-${c}`),T(i[o],G),T(i[o],`${q}-${c}`),j(r,tn),I.clear(r,Gt),e.cycle&&!A(r).hidden&&a.interval&&!e.isPaused&&e.cycle()}};function rn(){let e=Yt(this);e&&!e.isPaused&&!I.get(this,Kt)&&w(this,Kt)}function an(){let e=Yt(this);e&&e.isPaused&&!I.get(this,Kt)&&e.cycle()}function on(e){e.preventDefault();let t=z(this,Ut)||K(this),n=t&&Yt(t);if(xt(this)||!n||n.isAnimating)return;let r=+(x(this,Wt)||0);this&&!E(this,`active`)&&!Number.isNaN(r)&&n.to(r)}function sn(e){e.preventDefault();let t=z(this,Ut)||K(this),n=t&&Yt(t);if(xt(this)||!n||n.isAnimating)return;let r=x(this,Gt);r===`next`?n.next():r===`prev`&&n.prev()}var cn=({code:e,target:t})=>{let[n]=[...L(Ut,A(t))].filter(e=>ct(e)),r=Yt(n);if(!r||r.isAnimating||/textarea|input|select/i.test(t.nodeName))return;let i=dt(n);e===(i?`ArrowRight`:`ArrowLeft`)?r.prev():e===(i?re:y)&&r.next()};function ln(e){let{target:t}=e,n=Yt(this);n&&n.isTouch&&!n.controls.includes(t)&&!n.controls.includes(t?.parentElement)&&(!n.indicator||!n.indicator.contains(t))&&e.preventDefault()}function un(e){let{target:t}=e,n=Yt(this);if(!n||n.isAnimating||n.isTouch)return;let{controls:r,indicator:i}=n;![...r,i].every(e=>e&&(e===t||e.contains(t)))&&this.contains(t)&&(Zt=e.pageX,n.isTouch=!0,mn(n,!0))}var dn=e=>{Qt=e.pageX},fn=e=>{let{target:t}=e,n=A(t),r=[...L(Ut,n)].map(e=>Yt(e)).find(e=>e.isTouch);if(!r)return;let{element:i,index:a}=r,o=dt(i);$t=e.pageX,r.isTouch=!1,mn(r),!n.getSelection()?.toString().length&&i.contains(t)&&Math.abs(Zt-$t)>120&&(QtZt&&r.to(a+(o?1:-1))),Zt=0,Qt=0,$t=0},pn=(e,t)=>{let{indicators:n}=e;[...n].forEach(e=>T(e,G)),e.indicators[t]&&w(n[t],G)},mn=(e,t)=>{let{element:n}=e,r=t?V:H;r(A(n),g,dn,Pe),r(A(n),te,fn,Pe)},hn=e=>{let{slides:t,element:n}=e,r=B(`.${q}.${G}`,n);return r?[...t].indexOf(r):-1},gn=class extends W{static selector=Ut;static init=Xt;static getInstance=Yt;constructor(e,t){super(e,t);let{element:n}=this;this.direction=dt(n)?`right`:`left`,this.isTouch=!1,this.slides=mt(q,n);let{slides:r}=this;if(r.length<2)return;let i=hn(this),a=[...r].find(e=>et(e,`.${q}-next`));this.index=i;let o=A(n);this.controls=[...L(`[${Gt}]`,n),...L(`[${Gt}][${Rt}="#${n.id}"]`,o)].filter((e,t,n)=>t===n.indexOf(e)),this.indicator=B(`.${zt}-indicators`,n),this.indicators=[...this.indicator?L(`[${Wt}]`,this.indicator):[],...L(`[${Wt}][${Rt}="#${n.id}"]`,o)].filter((e,t,n)=>t===n.indexOf(e));let{options:s}=this;this.options.interval=s.interval===!0?Jt.interval:s.interval,a?this.index=[...r].indexOf(a):i<0&&(this.index=0,w(r[0],G),this.indicators.length&&pn(this,0)),this.indicators.length&&pn(this,this.index),this._toggleEventListeners(!0),s.interval&&this.cycle()}get name(){return Bt}get defaults(){return Jt}get isPaused(){return E(this.element,Kt)}get isAnimating(){return B(`.${q}-next,.${q}-prev`,this.element)!==null}cycle(){let{element:e,options:t,isPaused:n,index:r}=this;I.clear(e,zt),n&&(I.clear(e,Kt),T(e,Kt)),I.set(e,()=>{this.element&&!this.isPaused&&!this.isTouch&&ct(e)&&this.to(r+1)},t.interval,zt)}pause(){let{element:e,options:t}=this;this.isPaused||!t.interval||(w(e,Kt),I.set(e,()=>{},1,Kt))}next(){this.isAnimating||this.to(this.index+1)}prev(){this.isAnimating||this.to(this.index-1)}to(e){let{element:t,slides:n,options:r}=this,i=hn(this),a=dt(t),o=e;if(this.isAnimating||i===o||I.get(t,Gt))return;io||i===n.length-1&&o===0)&&(this.direction=a?`left`:`right`);let{direction:s}=this;o<0?o=n.length-1:o>=n.length&&(o=0);let c=s===`left`?`next`:`prev`,l=s===`left`?`start`:`end`,u={relatedTarget:n[o],from:i,to:o,direction:s};we(en,u),we(tn,u),j(t,en),!en.defaultPrevented&&(this.index=o,pn(this,o),Oe(n[o])&&E(t,`slide`)?I.set(t,()=>{w(n[o],`${q}-${c}`),Fe(n[o]),w(n[o],`${q}-${l}`),w(n[i],`${q}-${l}`),N(n[o],()=>this.slides&&this.slides.length&&nn(this))},0,Gt):(w(n[o],G),T(n[i],G),I.set(t,()=>{I.clear(t,Gt),t&&r.interval&&!this.isPaused&&this.cycle(),j(t,tn)},0,Gt)))}_toggleEventListeners=e=>{let{element:t,options:n,slides:r,controls:i,indicators:a}=this,{touch:o,pause:s,interval:c,keyboard:l}=n,d=e?V:H;s&&c&&(d(t,ee,rn),d(t,m,an)),o&&r.length>2&&(d(t,h,un,Pe),d(t,_,ln,{passive:!1}),d(t,v,ln,{passive:!1})),i.length&&i.forEach(e=>{d(e,f,sn)}),a.length&&a.forEach(e=>{d(e,f,on)}),l&&d(A(t),u,cn)};dispose(){let{isAnimating:e}=this,t={...this,isAnimating:e};this._toggleEventListeners(),super.dispose(),t.isAnimating&&N(t.slides[t.index],()=>{nn(t)})}},_n=`collapsing`,J=`collapse`,vn=`Collapse`,yn=`.${J}`,bn=`[${jt}="${J}"]`,xn={parent:null},Sn=e=>k(e,vn),Cn=e=>new jn(e),wn=P(`show.bs.${J}`),Tn=P(`shown.bs.${J}`),En=P(`hide.bs.${J}`),Dn=P(`hidden.bs.${J}`),On=e=>{let{element:t,parent:r,triggers:i}=e;j(t,wn),wn.defaultPrevented||(I.set(t,ue,17),r&&I.set(r,ue,17),w(t,_n),T(t,J),F(t,{height:`${t.scrollHeight}px`}),N(t,()=>{I.clear(t),r&&I.clear(r),i.forEach(e=>S(e,n,`true`)),T(t,_n),w(t,J),w(t,U),F(t,{height:``}),j(t,Tn)}))},kn=e=>{let{element:t,parent:r,triggers:i}=e;j(t,En),En.defaultPrevented||(I.set(t,ue,17),r&&I.set(r,ue,17),F(t,{height:`${t.scrollHeight}px`}),T(t,J),T(t,U),w(t,_n),Fe(t),F(t,{height:`0px`}),N(t,()=>{I.clear(t),r&&I.clear(r),i.forEach(e=>S(e,n,`false`)),T(t,_n),w(t,J),F(t,{height:``}),j(t,Dn)}))},An=e=>{let{target:t}=e,n=t&&z(t,bn),r=n&&K(n),i=r&&Sn(r);n&&xt(n)||i&&(i.toggle(),n?.tagName===`A`&&e.preventDefault())},jn=class extends W{static selector=yn;static init=Cn;static getInstance=Sn;constructor(e,t){super(e,t);let{element:n,options:r}=this,i=A(n);this.triggers=[...L(bn,i)].filter(e=>K(e)===n),this.parent=R(r.parent)?r.parent:xe(r.parent)?K(n)||B(r.parent,i):null,this._toggleEventListeners(!0)}get name(){return vn}get defaults(){return xn}hide(){let{triggers:e,element:t}=this;I.get(t)||(kn(this),e.length&&e.forEach(e=>w(e,`${J}d`)))}show(){let{element:e,parent:t,triggers:n}=this,r,i;t&&(r=[...L(`.${J}.${U}`,t)].find(e=>Sn(e)),i=r&&Sn(r)),(!t||!I.get(t))&&!I.get(e)&&(i&&r!==e&&(kn(i),i.triggers.forEach(e=>{w(e,`${J}d`)})),On(this),n.length&&n.forEach(e=>T(e,`${J}d`)))}toggle(){E(this.element,`show`)?this.hide():this.show()}_toggleEventListeners=e=>{let t=e?V:H,{triggers:n}=this;n.length&&n.forEach(e=>{t(e,f,An)})};dispose(){this._toggleEventListeners(),super.dispose()}},Mn=`1.1.0`,Nn=[`all`,`intersecting`,`update`],Pn=`PositionObserver Error`,Fn=class{entries;static version=Mn;_t;_r;_cm;_w;_h;_rm;_th;_c;constructor(e,t){if(!lt(e))throw Error(`${Pn}: ${e} is not a function.`);this.entries=new Map,this._c=e,this._t=0;let n=O(t?.root)?t.root:document?.documentElement;this._r=n,this._rm=t?.rootMargin,this._th=t?.threshold,this._cm=Nn.indexOf(t?.callbackMode||`intersecting`),this._w=n.clientWidth,this._h=n.clientHeight}observe=e=>{if(!O(e))throw Error(`${Pn}: ${e} is not an instance of Element.`);this._r.contains(e)&&this._n(e).then(t=>{t.boundingClientRect&&!this.getEntry(e)&&this.entries.set(e,t),this._t||=requestAnimationFrame(this._rc)})};unobserve=e=>{this.entries.has(e)&&this.entries.delete(e)};_rc=()=>{if(!this.entries.size){this._t=0;return}let{clientWidth:e,clientHeight:t}=this._r,n=new Promise(n=>{let r=[];this.entries.forEach(({target:n,boundingClientRect:i,isIntersecting:a})=>{this._r.contains(n)&&this._n(n).then(o=>{if(!o.isIntersecting){if(this._cm===1)return;if(this._cm===2){a&&(this.entries.set(n,o),r.push(o));return}}let{left:s,top:c}=o.boundingClientRect;(i.top!==c||i.left!==s||this._w!==e||this._h!==t)&&(this.entries.set(n,o),r.push(o))})}),this._w=e,this._h=t,n(r)});this._t=requestAnimationFrame(async()=>{let e=await n;e.length&&this._c(e,this),this._rc()})};_n=e=>new Promise(t=>{new IntersectionObserver(([e],n)=>{n.disconnect(),t(e)},{threshold:this._th,rootMargin:this._rm}).observe(e)});getEntry=e=>this.entries.get(e);disconnect=()=>{cancelAnimationFrame(this._t),this.entries.clear(),this._t=0}},In=[`dropdown`,`dropup`,`dropstart`,`dropend`],Ln=`Dropdown`,Rn=`dropdown-menu`,zn=e=>{let t=z(e,`A`);return e.tagName===`A`&&pe(e,`href`)&&x(e,`href`)?.slice(-1)===`#`||t&&pe(t,`href`)&&x(t,`href`)?.slice(-1)===`#`},[Y,Bn,Vn,Hn]=In,Un=`[${jt}="${Y}"]`,Wn=e=>k(e,Ln),Gn=e=>new ur(e),Kn=`${Rn}-end`,qn=[Y,Bn],Jn=[Vn,Hn],Yn=[`A`,`BUTTON`],Xn={offset:5,display:`dynamic`},Zn=P(`show.bs.${Y}`),Qn=P(`shown.bs.${Y}`),$n=P(`hide.bs.${Y}`),er=P(`hidden.bs.${Y}`),tr=P(`updated.bs.${Y}`),nr=e=>{let{element:t,menu:n,parentElement:r,options:i}=e,{offset:a}=i;if(M(n,`position`)===`static`)return;let o=dt(t),s=E(n,Kn);[`margin`,`top`,`bottom`,`left`,`right`].forEach(e=>{let t={};t[e]=``,F(n,t)});let c=In.find(e=>E(r,e))||Y,l={dropdown:[a,0,0],dropup:[0,0,a],dropstart:o?[-1,0,0,a]:[-1,a,0],dropend:o?[-1,a,0]:[-1,0,0,a]},u={dropdown:{top:`100%`},dropup:{top:`auto`,bottom:`100%`},dropstart:o?{left:`100%`,right:`auto`}:{left:`auto`,right:`100%`},dropend:o?{left:`auto`,right:`100%`}:{left:`100%`,right:`auto`},menuStart:o?{right:`0`,left:`auto`}:{right:`auto`,left:`0`},menuEnd:o?{right:`auto`,left:`0`}:{right:`0`,left:`auto`}},{offsetWidth:d,offsetHeight:f}=n,{clientWidth:p,clientHeight:ee}=Je(t),{left:m,top:h,width:g,height:te}=Ke(t),_=m-d-a<0,v=m+d+g+a>=p,ne=h+f+a>=ee,re=h+f+te+a>=ee,y=h-f-a<0,b=(!o&&s||o&&!s)&&m+g-d<0,ie=(o&&s||!o&&!s)&&m+d>=p;if(Jn.includes(c)&&_&&v&&(c=Y),c===Vn&&(o?v:_)&&(c=Hn),c===Hn&&(o?_:v)&&(c=Vn),c===Bn&&y&&!re&&(c=Y),c===Y&&re&&!y&&(c=Bn),Jn.includes(c)&&ne&&we(u[c],{top:`auto`,bottom:0}),qn.includes(c)&&(b||ie)){let e={left:`auto`,right:`auto`};!b&&ie&&!o&&(e={left:`auto`,right:0}),b&&!ie&&o&&(e={left:0,right:`auto`}),e&&we(u[c],e)}let ae=l[c];F(n,{...u[c],margin:`${ae.map(e=>e&&`${e}px`).join(` `)}`}),qn.includes(c)&&s&&s&&F(n,u[!o&&b||o&&ie?`menuStart`:`menuEnd`]),j(r,tr)},rr=e=>Array.from(e.children).map(e=>{if(e&&Yn.includes(e.tagName))return e;let{firstElementChild:t}=e;return t&&Yn.includes(t.tagName)?t:null}).filter(e=>e),ir=e=>{let{element:t,options:n,menu:r}=e,i=e.open?V:H,a=A(t);i(a,f,or),i(a,s,or),i(a,u,cr),i(a,d,lr),n.display===`dynamic`&&(e.open?e._observer.observe(r):e._observer.disconnect())},ar=e=>{let t=[...In,`btn-group`,`input-group`].map(t=>mt(`${t} ${U}`,A(e))).find(e=>e.length);if(t&&t.length)return[...t[0].children].find(e=>In.some(t=>t===x(e,jt)))},or=e=>{let{target:t,type:n}=e;if(!R(t))return;let r=ar(t),i=r&&Wn(r);if(!i)return;let{parentElement:a,menu:o}=i,s=a&&a.contains(t)&&(t.tagName===`form`||z(t,`form`)!==null);[`click`,`mousedown`].includes(n)&&zn(t)&&e.preventDefault(),!s&&n!==`focus`&&t!==r&&t!==o&&i.hide()};function sr(e){let t=Wn(this);xt(this)||t&&(e.stopPropagation(),t.toggle(),zn(this)&&e.preventDefault())}var cr=e=>{[`ArrowDown`,`ArrowUp`].includes(e.code)&&e.preventDefault()};function lr(e){let{code:t}=e,n=ar(this);if(!n)return;let r=Wn(n),{activeElement:i}=A(n);if(!r||!i)return;let{menu:a,open:o}=r,s=rr(a);if(s&&s.length&&[`ArrowDown`,`ArrowUp`].includes(t)){let e=s.indexOf(i);i===n?e=0:t===`ArrowUp`?e=e>1?e-1:0:t===`ArrowDown`&&(e=enr(this)),this._toggleEventListeners(!0))}get name(){return Ln}get defaults(){return Xn}toggle(){this.open?this.hide():this.show()}show(){let{element:e,open:t,menu:r,parentElement:i}=this;if(t)return;let a=ar(e),o=a&&Wn(a);o&&o.hide(),[Zn,Qn,tr].forEach(t=>{t.relatedTarget=e}),j(i,Zn),!Zn.defaultPrevented&&(w(r,U),w(i,U),S(e,n,`true`),nr(this),this.open=!t,ke(e),ir(this),j(i,Qn))}hide(){let{element:e,open:t,menu:r,parentElement:i}=this;t&&([$n,er].forEach(t=>{t.relatedTarget=e}),j(i,$n),!$n.defaultPrevented&&(T(r,U),T(i,U),S(e,n,`false`),this.open=!t,ir(this),j(i,er)))}_toggleEventListeners=e=>{(e?V:H)(this.element,f,sr)};dispose(){this.open&&this.hide(),this._toggleEventListeners(),super.dispose()}},X=`modal`,dr=`Modal`,fr=`Offcanvas`,pr=`fixed-top`,mr=`fixed-bottom`,hr=`sticky-top`,gr=`position-sticky`,_r=e=>[...mt(pr,e),...mt(mr,e),...mt(hr,e),...mt(gr,e),...mt(`is-fixed`,e)],vr=e=>{let t=qe(e);F(t,{paddingRight:``,overflow:``});let n=_r(t);n.length&&n.forEach(e=>{F(e,{paddingRight:``,marginRight:``})})},yr=e=>{let{clientWidth:t}=Je(e),{innerWidth:n}=Qe(e);return Math.abs(n-t)},br=(e,t)=>{let n=qe(e),r=parseInt(M(n,`paddingRight`),10),i=M(n,`overflow`)===`hidden`&&r?0:yr(e),a=_r(n);t&&(F(n,{overflow:`hidden`,paddingRight:`${r+i}px`}),a.length&&a.forEach(e=>{let t=M(e,`paddingRight`);if(e.style.paddingRight=`${parseInt(t,10)+i}px`,[`sticky-top`,`position-sticky`].some(t=>E(e,t))){let t=M(e,`marginRight`);e.style.marginRight=`${parseInt(t,10)-i}px`}}))},Z=`offcanvas`,xr=Te({tagName:`div`,className:`popup-container`}),Sr=(e,t)=>{let n=D(t)&&t.nodeName===`BODY`,r=D(t)&&!n?t:xr,i=n?t:qe(e);D(e)&&(r===xr&&i.append(xr),r.append(e))},Cr=(e,t)=>{let n=D(t)&&t.nodeName===`BODY`,r=D(t)&&!n?t:xr;D(e)&&(e.remove(),r===xr&&!xr.children.length&&xr.remove())},wr=(e,t)=>{let n=D(t)&&t.nodeName!==`BODY`?t:xr;return D(e)&&n.contains(e)},Tr=`backdrop`,Er=`${X}-${Tr}`,Dr=`${Z}-${Tr}`,Or=`.${X}.${U}`,kr=`.${Z}.${U}`,Q=Te(`div`),Ar=e=>B(`${Or},${kr}`,A(e)),jr=e=>{let t=e?Er:Dr;[Er,Dr].forEach(e=>{T(Q,e)}),w(Q,t)},Mr=(e,t,n)=>{jr(n),Sr(Q,qe(e)),t&&w(Q,_t)},Nr=()=>{E(Q,`show`)||(w(Q,U),Fe(Q))},Pr=()=>{T(Q,U)},Fr=e=>{Ar(e)||(T(Q,_t),Cr(Q,qe(e)),vr(e))},Ir=e=>R(e)&&M(e,`visibility`)!==`hidden`&&e.offsetParent!==null,Lr=`.${X}`,Rr=`[${jt}="${X}"]`,zr=`[${vt}="${X}"]`,Br=`${X}-static`,Vr={backdrop:!0,keyboard:!0},Hr=e=>k(e,dr),Ur=e=>new ii(e),Wr=P(`show.bs.${X}`),Gr=P(`shown.bs.${X}`),Kr=P(`hide.bs.${X}`),qr=P(`hidden.bs.${X}`),Jr=e=>{let{element:t}=e,n=yr(t),{clientHeight:r,scrollHeight:i}=Je(t),{clientHeight:a,scrollHeight:o}=t,s=a!==o;!s&&n&&F(t,{[dt(t)?`paddingLeft`:`paddingRight`]:`${n}px`}),br(t,s||r!==i)},Yr=(e,t)=>{let n=t?V:H,{element:r}=e;n(r,f,ni),n(A(r),u,ti),t?e._observer.observe(r):e._observer.disconnect()},Xr=e=>{let{triggers:t,element:n,relatedTarget:r}=e;Fr(n),F(n,{paddingRight:``,display:``}),Yr(e);let i=Wr.relatedTarget||t.find(Ir);i&&ke(i),qr.relatedTarget=r||void 0,j(n,qr),Ge(n)},Zr=e=>{let{element:t,relatedTarget:n}=e;ke(t),Yr(e,!0),Gr.relatedTarget=n||void 0,j(t,Gr),Ge(t)},Qr=e=>{let{element:t,hasFade:n}=e;F(t,{display:`block`}),Jr(e),Ar(t)||F(qe(t),{overflow:`hidden`}),w(t,U),C(t,r),S(t,i,`true`),n?N(t,()=>Zr(e)):Zr(e)},$r=e=>{let{element:t,options:n,hasFade:r}=e;n.backdrop&&r&&E(Q,`show`)&&!Ar(t)?(Pr(),N(Q,()=>Xr(e))):Xr(e)};function ei(e){let t=K(this),n=t&&Hr(t);xt(this)||n&&(this.tagName===`A`&&e.preventDefault(),n.relatedTarget=this,n.toggle())}var ti=({code:e,target:t})=>{let n=B(Or,A(t)),r=n&&Hr(n);if(!r)return;let{options:i}=r;i.keyboard&&e===`Escape`&&E(n,`show`)&&(r.relatedTarget=null,r.hide())},ni=e=>{let{currentTarget:t}=e,n=t&&Hr(t);if(!n||!t||I.get(t))return;let{options:r,isStatic:i,modalDialog:a}=n,{backdrop:o}=r,{target:s}=e,c=A(t)?.getSelection()?.toString().length,l=a.contains(s),u=s&&z(s,zr);i&&!l?I.set(t,()=>{w(t,Br),N(a,()=>ri(n))},17):(u||!c&&!i&&!l&&o)&&(n.relatedTarget=u||null,n.hide(),e.preventDefault())},ri=e=>{let{element:t,modalDialog:n}=e,r=(Oe(n)||0)+17;T(t,Br),I.set(t,()=>I.clear(t),r)},ii=class extends W{static selector=Lr;static init=Ur;static getInstance=Hr;constructor(e,t){super(e,t);let{element:n}=this,r=B(`.${X}-dialog`,n);r&&(this.modalDialog=r,this.triggers=[...L(Rr,A(n))].filter(e=>K(e)===n),this.isStatic=this.options.backdrop===`static`,this.hasFade=E(n,_t),this.relatedTarget=null,this._observer=new ResizeObserver(()=>this.update()),this._toggleEventListeners(!0))}get name(){return dr}get defaults(){return Vr}toggle(){E(this.element,`show`)?this.hide():this.show()}show(){let{element:e,options:t,hasFade:n,relatedTarget:r}=this,{backdrop:i}=t,a=0;if(E(e,`show`)||(Wr.relatedTarget=r||void 0,j(e,Wr),Wr.defaultPrevented))return;let o=Ar(e);if(o&&o!==e){let e=Hr(o)||k(o,`Offcanvas`);e&&e.hide()}i?(wr(Q)?jr(!0):Mr(e,n,!0),a=Oe(Q),Nr(),setTimeout(()=>Qr(this),a)):(Qr(this),o&&E(Q,`show`)&&Pr())}hide(){let{element:e,hasFade:t,relatedTarget:n}=this;E(e,`show`)&&(Kr.relatedTarget=n||void 0,j(e,Kr),!Kr.defaultPrevented&&(T(e,U),S(e,r,`true`),C(e,i),t?N(e,()=>$r(this)):$r(this)))}update=()=>{E(this.element,`show`)&&Jr(this)};_toggleEventListeners=e=>{let t=e?V:H,{triggers:n}=this;n.length&&n.forEach(e=>{t(e,f,ei)})};dispose(){let{modalDialog:e,hasFade:t}={...this},n=()=>setTimeout(()=>super.dispose(),17);this.hide(),this._toggleEventListeners(),t?N(e,n):n()}},ai=`.${Z}`,oi=`[${jt}="${Z}"]`,si=`[${vt}="${Z}"]`,ci=`${Z}-toggling`,li={backdrop:!0,keyboard:!0,scroll:!1},ui=e=>k(e,fr),di=e=>new Ti(e),fi=P(`show.bs.${Z}`),pi=P(`shown.bs.${Z}`),mi=P(`hide.bs.${Z}`),hi=P(`hidden.bs.${Z}`),gi=e=>{let{element:t}=e,{clientHeight:n,scrollHeight:r}=Je(t);br(t,n!==r)},_i=(e,t)=>{let n=t?V:H,r=A(e.element);n(r,u,Si),n(r,f,xi)},vi=e=>{let{element:t,options:n}=e;n.scroll||(gi(e),F(qe(t),{overflow:`hidden`})),w(t,ci),w(t,U),F(t,{visibility:`visible`}),N(t,()=>Ci(e))},yi=e=>{let{element:t,options:n}=e,r=Ar(t);t.blur(),!r&&n.backdrop&&E(Q,`show`)&&Pr(),N(t,()=>wi(e))};function bi(e){let t=K(this),n=t&&ui(t);xt(this)||n&&(n.relatedTarget=this,n.toggle(),this.tagName===`A`&&e.preventDefault())}var xi=e=>{let{target:t}=e,n=B(kr,A(t));if(!n)return;let r=B(si,n),i=ui(n);if(!i)return;let{options:a,triggers:o}=i,{backdrop:s}=a,c=z(t,oi),l=A(n).getSelection();Q.contains(t)&&s===`static`||(!(l&&l.toString().length)&&(!n.contains(t)&&s&&(!c||o.includes(t))||r&&r.contains(t))&&(i.relatedTarget=r&&r.contains(t)?r:void 0,i.hide()),c&&c.tagName===`A`&&e.preventDefault())},Si=({code:e,target:t})=>{let n=B(kr,A(t)),r=n&&ui(n);r&&r.options.keyboard&&e===`Escape`&&(r.relatedTarget=void 0,r.hide())},Ci=e=>{let{element:t}=e;T(t,ci),C(t,r),S(t,i,`true`),S(t,`role`,`dialog`),j(t,pi),_i(e,!0),ke(t),Ge(t)},wi=e=>{let{element:t,triggers:n}=e;S(t,r,`true`),C(t,i),C(t,`role`),F(t,{visibility:``});let a=fi.relatedTarget||n.find(Ir);a&&ke(a),Fr(t),j(t,hi),T(t,ci),Ge(t),Ar(t)||_i(e)},Ti=class extends W{static selector=ai;static init=di;static getInstance=ui;constructor(e,t){super(e,t);let{element:n}=this;this.triggers=[...L(oi,A(n))].filter(e=>K(e)===n),this.relatedTarget=void 0,this._toggleEventListeners(!0)}get name(){return fr}get defaults(){return li}toggle(){E(this.element,`show`)?this.hide():this.show()}show(){let{element:e,options:t,relatedTarget:n}=this,r=0;if(E(e,`show`)||(fi.relatedTarget=n||void 0,pi.relatedTarget=n||void 0,j(e,fi),fi.defaultPrevented))return;let i=Ar(e);if(i&&i!==e){let e=ui(i)||k(i,`Modal`);e&&e.hide()}t.backdrop?(wr(Q)?jr():Mr(e,!0),r=Oe(Q),Nr(),setTimeout(()=>vi(this),r)):(vi(this),i&&E(Q,`show`)&&Pr())}hide(){let{element:e,relatedTarget:t}=this;E(e,`show`)&&(mi.relatedTarget=t||void 0,hi.relatedTarget=t||void 0,j(e,mi),!mi.defaultPrevented&&(w(e,ci),T(e,U),yi(this)))}_toggleEventListeners=e=>{let t=e?V:H;this.triggers.forEach(e=>{t(e,f,bi)})};dispose(){let{element:e}=this,t=E(e,U),n=()=>setTimeout(()=>super.dispose(),1);this.hide(),this._toggleEventListeners(),t?N(e,n):n()}},Ei=`popover`,Di=`Popover`,Oi=`tooltip`,ki=e=>{let t=e===Oi,n=t?`${e}-inner`:`${e}-body`,r=t?``:`

`,i=`
`,a=`
`;return`
${r+i+a}
`},Ai={top:`top`,bottom:`bottom`,left:`start`,right:`end`},ji=e=>{requestAnimationFrame(()=>{let t=/\b(top|bottom|start|end)+/,{element:n,tooltip:r,container:i,offsetParent:a,options:o,arrow:s}=e;if(!r)return;let c=dt(n),{x:l,y:u}=Ye(a);F(r,{top:``,left:``,right:``,bottom:``});let{offsetWidth:d,offsetHeight:f}=r,{clientWidth:p,clientHeight:ee,offsetWidth:m}=Je(n),{placement:h}=o,{clientWidth:g,offsetWidth:te}=i,_=M(i,`position`)===`fixed`,v=_?Math.abs(g-te):Math.abs(p-m),ne=c&&_?v:0,re=p-(c?0:v)-1,{width:y,height:b,left:ie,right:ae,top:oe}=e._observer.getEntry(n)?.boundingClientRect||Ke(n,!0),{x:se,y:ce}=nt(n,a,{x:l,y:u});F(s,{top:``,left:``,right:``,bottom:``});let le=0,ue=``,de=0,fe=``,x=``,pe=``,S=``,C=s.offsetWidth||0,w=s.offsetHeight||0,T=C/2,E=oe-f-w<0,me=oe+f+b+w>=ee,he=ie-d-C=re,_e=[`left`,`right`],D=[`top`,`bottom`];E=_e.includes(h)?oe+b/2-f/2-w<0:E,me=_e.includes(h)?oe+f/2+b/2+w>=ee:me,he=D.includes(h)?ie+y/2-d/2=re:ge,h=_e.includes(h)&&he&&ge?`top`:h,h=h===`top`&&E?`bottom`:h,h=h===`bottom`&&me?`top`:h,h=h===`left`&&he?`right`:h,h=h===`right`&&ge?`left`:h,r.className.includes(h)||(r.className=r.className.replace(t,Ai[h])),_e.includes(h)?(de=h===`left`?se-d-C:se+y+C,E&&me?(le=0,ue=0,x=ce+b/2-w/2):E?(le=ce,ue=``,x=b/2-C):me?(le=ce-f+b,ue=``,x=f-b/2-C):(le=ce-f/2+b/2,x=f/2-w/2)):D.includes(h)&&(le=h===`top`?ce-f-w:ce+b+w,he?(de=0,pe=se+y/2-T):ge?(de=`auto`,fe=0,S=y/2+re-ae-T):(de=se-d/2+y/2,pe=d/2-T)),F(r,{top:`${le}px`,bottom:ue===``?``:`${ue}px`,left:de===`auto`?de:`${de}px`,right:fe===``?``:`${fe}px`}),R(s)&&(x!==``&&(s.style.top=`${x}px`),pe===``?S!==``&&(s.style.right=`${S}px`):s.style.left=`${pe}px`),j(n,P(`updated.bs.${ze(e.name)}`))})},Mi={template:ki(Oi),title:``,customClass:``,trigger:`hover focus`,placement:`top`,sanitizeFn:void 0,animation:!0,delay:200,container:document.body,content:``,dismissible:!1,btnClose:``},Ni=`data-original-title`,Pi=`Tooltip`,Fi=(e,t,n)=>{if(xe(t)&&t.length){let r=t.trim();lt(n)&&(r=n(r));let i=new DOMParser().parseFromString(r,`text/html`);e.append(...i.body.childNodes)}else R(t)?e.append(t):(ut(t)||st(t)&&t.every(D))&&e.append(...t)},Ii=e=>{let t=e.name===Pi,{id:n,element:r,options:i}=e,{title:a,placement:o,template:s,animation:c,customClass:l,sanitizeFn:u,dismissible:d,content:f,btnClose:p}=i,ee=t?Oi:Ei,m={...Ai},h=[],g=[];dt(r)&&(m.left=`end`,m.right=`start`);let te=`bs-${ee}-${m[o]}`,_;if(R(s))_=s;else{let e=Te(`div`);Fi(e,s,u),_=e.firstChild}if(!R(_))return;e.tooltip=_.cloneNode(!0);let{tooltip:v}=e;S(v,`id`,n),S(v,`role`,Oi);let ne=t?`${Oi}-inner`:`${Ei}-body`,re=t?null:B(`.${Ei}-header`,v),y=B(`.${ne}`,v);e.arrow=B(`.${ee}-arrow`,v);let{arrow:b}=e;if(R(a))h=[a.cloneNode(!0)];else{let e=Te(`div`);Fi(e,a,u),h=[...[...e.childNodes]]}if(R(f))g=[f.cloneNode(!0)];else{let e=Te(`div`);Fi(e,f,u),g=[...[...e.childNodes]]}if(d)if(a)if(R(p))h=[...h,p.cloneNode(!0)];else{let e=Te(`div`);Fi(e,p,u),h=[...h,e.firstChild]}else if(re&&re.remove(),R(p))g=[...g,p.cloneNode(!0)];else{let e=Te(`div`);Fi(e,p,u),g=[...g,e.firstChild]}t?a&&y&&Fi(y,a,u):(a&&re&&Fi(re,h,u),f&&y&&Fi(y,g,u),e.btn=B(`.btn-close`,v)||void 0),w(v,`position-absolute`),w(b,`position-absolute`),E(v,ee)||w(v,ee),c&&!E(v,`fade`)&&w(v,_t),l&&!E(v,l)&&w(v,l),E(v,te)||w(v,te)},Li=e=>{let t=[`HTML`,`BODY`],n=[],{parentNode:r}=e;for(;r&&!t.includes(r.nodeName);)r=Ze(r),Xe(r)||$e(r)||n.push(r);return n.find((e,t)=>(M(e,`position`)!==`relative`||M(e,`position`)===`relative`&&e.offsetHeight!==e.scrollHeight)&&n.slice(t+1).every(e=>M(e,`position`)===`static`)?e:null)||A(e).body},Ri=`[${jt}="${Oi}"],[data-tip="${Oi}"]`,zi=`title`,Bi=e=>k(e,Pi),Vi=e=>new Xi(e),Hi=e=>{let{element:n,tooltip:r,container:i}=e;C(n,t),Cr(r,i)},Ui=e=>{let{tooltip:t,container:n}=e;return t&&wr(t,n)},Wi=(e,t)=>{let{element:n}=e;e._toggleEventListeners(),pe(n,`data-original-title`)&&e.name===`Tooltip`&&Yi(e),t&&t()},Gi=(e,t)=>{let n=t?V:H,{element:r}=e;n(A(r),_,e.handleTouch,Pe)},Ki=e=>{let{element:t}=e,n=P(`shown.bs.${ze(e.name)}`);Gi(e,!0),j(t,n),I.clear(t,`in`)},qi=e=>{let{element:t}=e,n=P(`hidden.bs.${ze(e.name)}`);Gi(e),Hi(e),j(t,n),I.clear(t,`out`)},Ji=(e,t)=>{let n=t?V:H,{element:r,tooltip:i}=e,a=z(r,`.${X}`),o=z(r,`.${Z}`);t?[r,i].forEach(t=>e._observer.observe(t)):e._observer.disconnect(),a&&n(a,`hide.bs.${X}`,e.handleHide),o&&n(o,`hide.bs.${Z}`,e.handleHide)},Yi=(e,t)=>{let n=[Ni,zi],{element:r}=e;S(r,n[t?0:1],t||x(r,n[0])||``),C(r,n[t?1:0])},Xi=class extends W{static selector=Ri;static init=Vi;static getInstance=Bi;static styleTip=ji;constructor(e,t){super(e,t);let{element:n}=this,r=this.name===Pi,i=r?Oi:Ei,a=r?Pi:Di;Bi=e=>k(e,a),this.enabled=!0,this.id=`${i}-${ot(n,i)}`;let{options:o}=this;if(!o.title&&r||!r&&!o.content)return;we(Mi,{titleAttr:``}),pe(n,zi)&&r&&typeof o.title==`string`&&Yi(this,o.title);let s=Li(n),c=[`sticky`,`fixed`,`relative`].some(e=>M(s,`position`)===e)?s:Qe(n);this.container=s,this.offsetParent=c,Ii(this),this.tooltip&&(this._observer=new Fn(()=>this.update()),this._toggleEventListeners(!0))}get name(){return Pi}get defaults(){return Mi}handleFocus=()=>ke(this.element);handleShow=()=>this.show();show(){let{options:e,tooltip:n,element:r,container:i,id:a}=this,{animation:o}=e,s=I.get(r,`out`);I.clear(r,`out`),n&&!s&&!Ui(this)&&I.set(r,()=>{let e=P(`show.bs.${ze(this.name)}`);j(r,e),e.defaultPrevented||(Sr(n,i),S(r,t,`#${a}`),this.update(),Ji(this,!0),E(n,`show`)||w(n,U),o?N(n,()=>Ki(this)):Ki(this))},17,`in`)}handleHide=()=>this.hide();hide(){let{options:e,tooltip:t,element:n}=this,{animation:r,delay:i}=e;I.clear(n,`in`),t&&Ui(this)&&I.set(n,()=>{let e=P(`hide.bs.${ze(this.name)}`);j(n,e),e.defaultPrevented||(this.update(),T(t,U),Ji(this),r?N(t,()=>qi(this)):qi(this))},i+17,`out`)}update=()=>{ji(this)};toggle=()=>{let{tooltip:e}=this;e&&!Ui(this)?this.show():this.hide()};enable(){let{enabled:e}=this;e||(this._toggleEventListeners(!0),this.enabled=!e)}disable(){let{tooltip:e,enabled:t}=this;t&&(e&&Ui(this)&&this.hide(),this._toggleEventListeners(),this.enabled=!t)}toggleEnabled(){this.enabled?this.disable():this.enable()}handleTouch=({target:e})=>{let{tooltip:t,element:n}=this;t&&t.contains(e)||e===n||e&&n.contains(e)||this.hide()};_toggleEventListeners=e=>{let t=e?V:H,{element:n,options:r,btn:i}=this,{trigger:a}=r,o=!!(this.name!==`Tooltip`&&r.dismissible);a.includes(`manual`)||(this.enabled=!!e,a.split(` `).forEach(e=>{e===`hover`?(t(n,p,this.handleShow),t(n,ee,this.handleShow),o||(t(n,m,this.handleHide),t(A(n),_,this.handleTouch,Pe))):e===`click`?t(n,e,o?this.handleShow:this.toggle):e===`focus`&&(t(n,c,this.handleShow),o||t(n,l,this.handleHide),le()&&t(n,f,this.handleFocus)),o&&i&&t(i,f,this.handleHide)}))};dispose(){let{tooltip:e,options:t}=this,n={...this,name:this.name},r=()=>setTimeout(()=>Wi(n,()=>super.dispose()),17);t.animation&&Ui(n)?(this.options.delay=0,this.hide(),N(e,r)):r()}},Zi=`[${jt}="${Ei}"],[data-tip="${Ei}"]`,Qi=we({},Mi,{template:ki(Ei),content:``,dismissible:!1,btnClose:``}),$i=e=>k(e,Di),ea=e=>new ta(e),ta=class extends Xi{static selector=Zi;static init=ea;static getInstance=$i;static styleTip=ji;constructor(e,t){super(e,t)}get name(){return Di}get defaults(){return Qi}show=()=>{super.show();let{options:e,btn:t}=this;e.dismissible&&t&&setTimeout(()=>ke(t),17)}},na=`scrollspy`,ra=`ScrollSpy`,ia=`[data-bs-spy="scroll"]`,aa=`[href]`,oa={offset:10,target:void 0},sa=e=>k(e,ra),ca=e=>new ma(e),la=P(`activate.bs.${na}`),ua=e=>{let{target:t,_itemsLength:n,_observables:r}=e,i=ft(`A`,t),a=A(t);!i.length||n===r.size||(r.clear(),Array.from(i).forEach(t=>{let n=x(t,`href`)?.slice(1),r=n?.length?a.getElementById(n):null;r&&!xt(t)&&e._observables.set(r,t)}),e._itemsLength=e._observables.size)},da=e=>{Array.from(ft(`A`,e)).forEach(e=>{E(e,`active`)&&T(e,G)})},fa=(e,t)=>{let{target:n,element:r}=e;da(n),e._activeItem=t,w(t,G);let i=t;for(;i!==n;)if(i=i.parentElement,[`nav`,`dropdown-menu`,`list-group`].some(e=>E(i,e))){let e=i.previousElementSibling;e&&!E(e,`active`)&&w(e,G)}la.relatedTarget=t,j(r,la)},pa=(e,t)=>{let{scrollTarget:n,element:r,options:i}=e;return(n===r?t.offsetTop:Ke(t).top+n.scrollTop)-(i.offset||10)},ma=class extends W{static selector=ia;static init=ca;static getInstance=sa;constructor(e,t){super(e,t);let{element:n,options:r}=this,i=B(r.target,A(n));i&&(this.target=i,this.scrollTarget=n.clientHeight{requestAnimationFrame(()=>this.refresh())},{root:this.scrollTarget}),this._toggleEventListeners(!0))}get name(){return ra}get defaults(){return oa}refresh=()=>{let{target:e,scrollTarget:t}=this;if(!e||e.offsetHeight===0)return;ua(this);let{_itemsLength:n,_observables:r,_activeItem:i}=this;if(!n)return;let a=r.entries().toArray(),{scrollTop:o,scrollHeight:s,clientHeight:c}=t;if(o>=s-c){let e=a[n-1]?.[1];i!==e&&fa(this,e);return}let l=a[0]?.[0]?pa(this,a[0][0]):null;if(l!==null&&o0){this._activeItem=null,da(e);return}for(let e=0;e=r&&(c===null||o{let t=z(e.target,aa),n=t&&x(t,`href`)?.slice(1),r=n&&pt(n,this.target);r&&(this.scrollTarget.scrollTo({top:r.offsetTop,behavior:`smooth`}),e.preventDefault())};_toggleEventListeners=e=>{let{target:t,_observables:n,_observer:r,_scrollTo:i}=this;(e?V:H)(t,f,i),e?n?.forEach((e,t)=>r.observe(t)):r.disconnect()};dispose(){this._toggleEventListeners(),super.dispose()}},ha=`[${jt}="tab"]`,ga=e=>k(e,`Tab`),_a=e=>new ka(e),va=P(`show.bs.tab`),ya=P(`shown.bs.tab`),ba=P(`hide.bs.tab`),xa=P(`hidden.bs.tab`),Sa=new Map,Ca=e=>{let{tabContent:t,nav:n}=e;t&&E(t,`collapsing`)&&(t.style.height=``,T(t,_n)),n&&I.clear(n)},wa=e=>{let{element:t,tabContent:n,content:r,nav:i}=e,{tab:a}=R(i)&&Sa.get(i)||{tab:null};if(n&&r&&E(r,`fade`)){let{currentHeight:r,nextHeight:i}=Sa.get(t)||{currentHeight:0,nextHeight:0};r===i?Ca(e):setTimeout(()=>{n.style.height=`${i}px`,Fe(n),N(n,()=>Ca(e))},50)}else i&&I.clear(i);ya.relatedTarget=a,j(t,ya)},Ta=e=>{let{element:t,content:n,tabContent:r,nav:i}=e,{tab:a,content:o}=i&&Sa.get(i)||{tab:null,content:null},s=0;if(r&&n&&E(n,`fade`)&&([o,n].forEach(e=>{e&&w(e,`overflow-hidden`)}),s=o?o.scrollHeight:0),va.relatedTarget=a,xa.relatedTarget=t,j(t,va),!va.defaultPrevented){if(n&&w(n,G),o&&T(o,G),r&&n&&E(n,`fade`)){let e=n.scrollHeight;Sa.set(t,{currentHeight:s,nextHeight:e,tab:null,content:null}),w(r,_n),r.style.height=`${s}px`,Fe(r),[o,n].forEach(e=>{e&&T(e,`overflow-hidden`)})}n&&n&&E(n,`fade`)?setTimeout(()=>{w(n,U),N(n,()=>{wa(e)})},1):(n&&w(n,U),wa(e)),a&&j(a,xa)}},Ea=e=>{let{nav:t}=e;if(!R(t))return{tab:null,content:null};let n=mt(G,t),r=null;n.length===1&&!In.some(e=>E(n[0].parentElement,e))?[r]=n:n.length>1&&(r=n[n.length-1]);let i=R(r)?K(r):null;return{tab:r,content:i}},Da=e=>{if(!R(e))return null;let t=z(e,`.${In.join(`,.`)}`);return t?B(`.${In[0]}-toggle`,t):null},Oa=e=>{let t=z(e.target,ha),n=t&&ga(t);n&&(e.preventDefault(),n.show())},ka=class extends W{static selector=ha;static init=_a;static getInstance=ga;constructor(e){super(e);let{element:t}=this,n=K(t);if(!n)return;let r=z(t,`.nav`),i=z(n,`.tab-content`);this.nav=r,this.content=n,this.tabContent=i,this.dropdown=Da(t);let{tab:a}=Ea(this);if(r&&!a){let e=B(ha,r),n=e&&K(e);n&&(w(e,G),w(n,U),w(n,G),S(t,o,`true`))}this._toggleEventListeners(!0)}get name(){return`Tab`}show(){let{element:e,content:t,nav:n,dropdown:r}=this;if(n&&I.get(n)||E(e,`active`))return;let{tab:i,content:a}=Ea(this);if(n&&i&&Sa.set(n,{tab:i,content:a,currentHeight:0,nextHeight:0}),ba.relatedTarget=e,!R(i)||(j(i,ba),ba.defaultPrevented))return;w(e,G),S(e,o,`true`);let s=R(i)&&Da(i);if(s&&E(s,`active`)&&T(s,G),n){let e=()=>{i&&(T(i,G),S(i,o,`false`)),r&&!E(r,`active`)&&w(r,G)};a&&(E(a,`fade`)||t&&E(t,`fade`))?I.set(n,e,1):e()}a&&(T(a,U),E(a,`fade`)?N(a,()=>Ta(this)):Ta(this))}_toggleEventListeners=e=>{(e?V:H)(this.element,f,Oa)};dispose(){this._toggleEventListeners(),super.dispose()}},$=`toast`,Aa=`Toast`,ja=`.${$}`,Ma=`[${vt}="${$}"]`,Na=`[${jt}="${$}"]`,Pa=`showing`,Fa=`hide`,Ia={animation:!0,autohide:!0,delay:5e3},La=e=>k(e,Aa),Ra=e=>new Ya(e),za=P(`show.bs.${$}`),Ba=P(`shown.bs.${$}`),Va=P(`hide.bs.${$}`),Ha=P(`hidden.bs.${$}`),Ua=e=>{let{element:t,options:n}=e;T(t,Pa),I.clear(t,Pa),j(t,Ba),n.autohide&&I.set(t,()=>e.hide(),n.delay,$)},Wa=e=>{let{element:t}=e;T(t,Pa),T(t,U),w(t,Fa),I.clear(t,$),j(t,Ha)},Ga=e=>{let{element:t,options:n}=e;w(t,Pa),n.animation?(Fe(t),N(t,()=>Wa(e))):Wa(e)},Ka=e=>{let{element:t,options:n}=e;I.set(t,()=>{T(t,Fa),Fe(t),w(t,U),w(t,Pa),n.animation?N(t,()=>Ua(e)):Ua(e)},17,Pa)};function qa(e){let t=K(this),n=t&&La(t);xt(this)||n&&(this.tagName===`A`&&e.preventDefault(),n.relatedTarget=this,n.show())}var Ja=e=>{let t=e.target,n=La(t),{type:r,relatedTarget:i}=e;!n||t===i||t.contains(i)||([`mouseenter`,`focusin`].includes(r)?I.clear(t,$):I.set(t,()=>n.hide(),n.options.delay,$))},Ya=class extends W{static selector=ja;static init=Ra;static getInstance=La;constructor(e,t){super(e,t);let{element:n,options:r}=this;r.animation&&!E(n,`fade`)?w(n,_t):!r.animation&&E(n,`fade`)&&T(n,_t),this.dismiss=B(Ma,n),this.triggers=[...L(Na,A(n))].filter(e=>K(e)===n),this._toggleEventListeners(!0)}get name(){return Aa}get defaults(){return Ia}get isShown(){return E(this.element,U)}show=()=>{let{element:e,isShown:t}=this;!e||t||(j(e,za),za.defaultPrevented||Ka(this))};hide=()=>{let{element:e,isShown:t}=this;!e||!t||(j(e,Va),Va.defaultPrevented||Ga(this))};_toggleEventListeners=e=>{let t=e?V:H,{element:n,triggers:r,dismiss:i,options:a,hide:o}=this;i&&t(i,f,o),a.autohide&&[c,l,ee,m].forEach(e=>t(n,e,Ja)),r.length&&r.forEach(e=>{t(e,f,qa)})};dispose(){let{element:e,isShown:t}=this;this._toggleEventListeners(),I.clear(e,$),t&&T(e,U),super.dispose()}},Xa=new Map;[At,Lt,gn,jn,ur,ii,Ti,ta,ma,ka,Ya,Xi].forEach(e=>Xa.set(e.prototype.name,e));var Za=(e,t)=>{[...t].forEach(t=>e(t))},Qa=(e,t)=>{let n=ye.getAllFor(e);n&&[...n].forEach(([e,n])=>{t.contains(e)&&n.dispose()})},$a=e=>{let t=[...ft(`*`,e&&e.nodeName?e:document)];Xa.forEach(e=>{let{init:n,selector:r}=e;Za(n,t.filter(e=>et(e,r)))})};return document.body?$a():V(document,`DOMContentLoaded`,()=>$a(),{once:!0}),e.Alert=At,e.Button=Lt,e.Carousel=gn,e.Collapse=jn,e.Dropdown=ur,e.Modal=ii,e.Offcanvas=Ti,e.Popover=ta,e.ScrollSpy=ma,e.Tab=ka,e.Toast=Ya,e.Tooltip=Xi,e.initCallback=$a,e.removeDataAPI=e=>{let t=e&&e.nodeName?e:document;Xa.forEach(e=>{Qa(e.prototype.name,t)})},e})({}); +//# sourceMappingURL=bootstrap-native.js.map \ No newline at end of file diff --git a/dist/bootstrap-native.js.map b/dist/bootstrap-native.js.map index 6a7a1e0f..ddaefee5 100644 --- a/dist/bootstrap-native.js.map +++ b/dist/bootstrap-native.js.map @@ -1 +1 @@ -{"version":3,"file":"bootstrap-native.js","sources":["../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../node_modules/.pnpm/@thednp+event-listener@2.0.10/node_modules/@thednp/event-listener/dist/event-listener.mjs","../src/strings/fadeClass.ts","../src/strings/showClass.ts","../src/strings/dataBsDismiss.ts","../src/strings/alertString.ts","../src/strings/alertComponent.ts","../src/util/isDisabled.ts","../src/version.ts","../src/components/base-component.ts","../src/components/alert.ts","../src/strings/activeClass.ts","../src/strings/dataBsToggle.ts","../src/strings/buttonString.ts","../src/strings/buttonComponent.ts","../src/components/button.ts","../src/strings/dataBsTarget.ts","../src/strings/carouselString.ts","../src/strings/carouselComponent.ts","../src/strings/dataBsParent.ts","../src/strings/dataBsContainer.ts","../src/util/getTargetElement.ts","../src/components/carousel.ts","../src/strings/collapsingClass.ts","../src/strings/collapseString.ts","../src/strings/collapseComponent.ts","../src/components/collapse.ts","../node_modules/.pnpm/@thednp+position-observer@1.1.0/node_modules/@thednp/position-observer/dist/index.mjs","../src/strings/dropdownClasses.ts","../src/strings/dropdownComponent.ts","../src/strings/dropdownMenuClass.ts","../src/util/isEmptyAnchor.ts","../src/components/dropdown.ts","../src/strings/modalString.ts","../src/strings/modalComponent.ts","../src/strings/offcanvasComponent.ts","../src/strings/fixedTopClass.ts","../src/strings/fixedBottomClass.ts","../src/strings/stickyTopClass.ts","../src/strings/positionStickyClass.ts","../src/util/scrollbar.ts","../src/strings/offcanvasString.ts","../src/util/popupContainer.ts","../src/util/backdrop.ts","../src/util/isVisible.ts","../src/components/modal.ts","../src/components/offcanvas.ts","../src/strings/popoverString.ts","../src/strings/popoverComponent.ts","../src/strings/tooltipString.ts","../src/util/getTipTemplate.ts","../src/util/tipClassPositions.ts","../src/util/styleTip.ts","../src/util/tooltipDefaults.ts","../src/strings/dataOriginalTitle.ts","../src/strings/tooltipComponent.ts","../src/util/setHtml.ts","../src/util/createTip.ts","../src/util/getElementContainer.ts","../src/components/tooltip.ts","../src/components/popover.ts","../src/strings/scrollspyString.ts","../src/strings/scrollspyComponent.ts","../src/components/scrollspy.ts","../src/strings/tabString.ts","../src/strings/tabComponent.ts","../src/components/tab.ts","../src/strings/toastString.ts","../src/strings/toastComponent.ts","../src/components/toast.ts","../src/util/init.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","const g = \"2.0.10\", e = {}, f = (t) => {\n const { type: n, currentTarget: c } = t;\n e[n].forEach((a, s) => {\n c === s && a.forEach((o, i) => {\n i.apply(s, [t]), typeof o == \"object\" && o.once && r(s, n, i, o);\n });\n });\n}, E = (t, n, c, a) => {\n e[n] || (e[n] = /* @__PURE__ */ new Map());\n const s = e[n];\n s.has(t) || s.set(t, /* @__PURE__ */ new Map());\n const o = s.get(\n t\n ), { size: i } = o;\n o.set(c, a), i || t.addEventListener(\n n,\n f,\n a\n );\n}, r = (t, n, c, a) => {\n const s = e[n], o = s && s.get(t), i = o && o.get(c), d = i !== void 0 ? i : a;\n o && o.has(c) && o.delete(c), s && (!o || !o.size) && s.delete(t), (!s || !s.size) && delete e[n], (!o || !o.size) && t.removeEventListener(\n n,\n f,\n d\n );\n}, M = E, p = r;\nexport {\n E as addListener,\n f as globalListener,\n p as off,\n M as on,\n e as registry,\n r as removeListener,\n g as version\n};\n//# sourceMappingURL=event-listener.mjs.map\n","/**\n * Global namespace for most components `fade` class.\n */\nconst fadeClass = \"fade\";\nexport default fadeClass;\n","/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n","/**\n * Global namespace for most components `dismiss` option.\n */\nconst dataBsDismiss = \"data-bs-dismiss\";\nexport default dataBsDismiss;\n","/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","import { getAttribute, hasClass } from \"@thednp/shorty\";\n\n/**\n * Check if interactive element is disabled.\n * @param target either a `
',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n","/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst tabString = \"tab\";\nexport default tabString;\n","/** @type {string} */\nconst tabComponent = \"Tab\";\nexport default tabComponent;\n","/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n","import { Data, getElementsByTagName, matches } from \"@thednp/shorty\";\n\nimport { addListener } from \"@thednp/event-listener\";\n\nimport Alert from \"../components/alert\";\nimport Button from \"../components/button\";\nimport Carousel from \"../components/carousel\";\nimport Collapse from \"../components/collapse\";\nimport Dropdown from \"../components/dropdown\";\nimport Modal from \"../components/modal\";\nimport Offcanvas from \"../components/offcanvas\";\nimport Popover from \"../components/popover\";\nimport ScrollSpy from \"../components/scrollspy\";\nimport Tab from \"../components/tab\";\nimport Toast from \"../components/toast\";\nimport Tooltip from \"../components/tooltip\";\n\nconst componentsList = new Map<\n string,\n | typeof Alert\n | typeof Button\n | typeof Carousel\n | typeof Collapse\n | typeof Dropdown\n | typeof Modal\n | typeof Offcanvas\n | typeof Popover\n | typeof ScrollSpy\n | typeof Tab\n | typeof Toast\n | typeof Tooltip\n>();\n\ntype Component =\n | Alert\n | Button\n | Carousel\n | Collapse\n | Dropdown\n | Modal\n | Offcanvas\n | Popover\n | ScrollSpy\n | Tab\n | Toast\n | Tooltip;\n\n[\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n].forEach((c) => componentsList.set(c.prototype.name, c));\n\n/**\n * Initialize all matched `Element`s for one component.\n *\n * @param callback\n * @param collection\n */\nconst initComponentDataAPI = (\n callback: (el: Element) => Component,\n collection: HTMLCollectionOf | Element[],\n) => {\n [...collection].forEach((x) => callback(x));\n};\n\n/**\n * Remove one component from a target container element or all in the page.\n *\n * @param component the component name\n * @param context parent `Node`\n */\nconst removeComponentDataAPI = (component: string, context: ParentNode) => {\n const compData = Data.getAllFor(component) as Map;\n\n if (compData) {\n [...compData].forEach(([element, instance]) => {\n if (context.contains(element)) {\n (instance as T & { dispose: () => void }).dispose();\n }\n });\n }\n};\n\n/**\n * Initialize all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const initCallback = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n const elemCollection = [...getElementsByTagName(\"*\", lookUp)];\n\n componentsList.forEach((cs) => {\n const { init, selector } = cs;\n initComponentDataAPI(\n init,\n elemCollection.filter((item) => matches(item, selector)),\n );\n });\n};\n\n/**\n * Remove all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const removeDataAPI = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n\n componentsList.forEach((comp) => {\n removeComponentDataAPI(comp.prototype.name, lookUp);\n });\n};\n\n// Bulk initialize all components\nif (document.body) initCallback();\nelse {\n addListener(document, \"DOMContentLoaded\", () => initCallback(), {\n once: true,\n });\n}\n"],"names":["Le","Oe","X","Pe","Fe","Be","ct","at","it","ft","gt","vt","Et","yt","wt","At","Ot","zt","It","Qt","je","Zt","on","sn","rn","cn","gn","Jt","Xt","M","R","xn","t","e","zn","ee","Q","n","o","j","K","oe","Qn","Kn","Gn","Zn","_n","v","u","i","E","L","to","P","N","q","G","d","T","se","Z","f","s","ie","ue","so","r","a","l","ao","F","S","uo","p","c","g","A","fo","mo","vo","bo","Eo","O","le","m","ho","yo","de","z","_","I","fe","pe","Ao","b","y","So","w","No","me","k","ve","be","Ee","we","Co","V","H","h","Ae","Se","Do","xo","Vo","Ho","Ne","Wo","Te","Qo","jo","fadeClass","showClass","dataBsDismiss","alertString","alertComponent","isDisabled","target","hasClass","getAttribute","Version","BaseComponent","config","element","isElement","isString","querySelector","prevInstance","Data","ObjectKeys","normalizeOptions","prop","alertSelector","alertDismissSelector","getAlertInstance","getInstance","alertInitCallback","Alert","closeAlertEvent","createCustomEvent","closedAlertEvent","alertTransitionEnd","self","dispatchEvent","dismiss","removeClass","emulateTransitionEnd","add","action","addListener","removeListener","close","mouseclickEvent","activeClass","dataBsToggle","buttonString","buttonComponent","buttonSelector","getButtonInstance","buttonInitCallback","Button","setAttribute","ariaPressed","isActive","addClass","dataBsTarget","carouselString","carouselComponent","dataBsParent","dataBsContainer","getTargetElement","targetAttr","doc","getDocument","att","attValue","closest","x","carouselSelector","carouselItem","dataBsSlideTo","dataBsSlide","pausedClass","touchEvent","isMobile","touchstartEvent","pointerdownEvent","carouselDefaults","getCarouselInstance","carouselInitCallback","Carousel","startX","currentX","endX","carouselSlideEvent","carouselSlidEvent","carouselTransitionEndHandler","index","direction","slides","options","activeItem","getActiveIndex","orientation","directionClass","Timer","carouselPauseHandler","carouselResumeHandler","carouselIndicatorHandler","newIndex","carouselControlsHandler","carouselKeyHandler","code","querySelectorAll","isElementInScrollRange","RTL","isRTL","keyArrowRight","keyArrowLeft","carouselDragHandler","carouselPointerDownHandler","controls","indicator","el","toggleCarouselTouchHandlers","carouselPointerMoveHandler","carouselPointerUpHandler","activateCarouselIndicator","indicators","pointermoveEvent","passiveHandler","pointerupEvent","getElementsByClassName","activeIndex","transitionItem","matches","ar","isPaused","idx","next","eventProperties","ObjectAssign","getElementTransitionDuration","reflow","touch","pause","interval","keyboard","mouseenterEvent","mouseleaveEvent","dragstartEvent","arrow","keydownEvent","isAnimating","clone","collapsingClass","collapseString","collapseComponent","collapseSelector","collapseToggleSelector","collapseDefaults","getCollapseInstance","collapseInitCallback","Collapse","showCollapseEvent","shownCollapseEvent","hideCollapseEvent","hiddenCollapseEvent","expandCollapse","parent","triggers","noop","setElementStyle","btn","ariaExpanded","collapseContent","collapseClickHandler","trigger","isHTMLElement","activeCollapse","activeCollapseInstance","version","callbackModes","errorString","PositionObserver","callback","isFunction","root","ioEntry","clientWidth","clientHeight","queue","resolve","updates","oldBoundingBox","oldIsIntersecting","left","top","ob","dropdownMenuClasses","dropdownComponent","dropdownMenuClass","isEmptyAnchor","parentAnchor","hasAttribute","dropdownString","dropupString","dropstartString","dropendString","dropdownClasses","dropdownSelector","getDropdownInstance","dropdownInitCallback","Dropdown","dropdownMenuEndClass","verticalClass","horizontalClass","menuFocusTags","dropdownDefaults","showDropdownEvent","shownDropdownEvent","hideDropdownEvent","hiddenDropdownEvent","updatedDropdownEvent","styleDropdown","menu","parentElement","offset","getElementStyle","menuEnd","style","positionClass","dropdownMargin","dropdownPosition","menuWidth","menuHeight","getDocumentElement","targetLeft","targetTop","targetWidth","targetHeight","getBoundingClientRect","leftFullExceed","rightFullExceed","bottomExceed","bottomFullExceed","topExceed","leftExceed","rightExceed","posAjust","margins","getMenuItems","firstElementChild","toggleDropdownDismiss","dropdownDismissHandler","focusEvent","dropdownPreventScroll","keyupEvent","dropdownKeyHandler","getCurrentOpenDropdown","currentParent","type","isForm","mousedownEvent","dropdownClickHandler","keyArrowDown","keyArrowUp","activeElement","open","menuItems","focus","keyEscape","currentElement","currentInstance","modalString","modalComponent","offcanvasComponent","fixedTopClass","fixedBottomClass","stickyTopClass","positionStickyClass","getFixedItems","resetScrollbar","bd","getDocumentBody","fixedItems","fixed","measureScrollbar","innerWidth","getWindow","setScrollbar","overflow","bodyPad","sbWidth","itemPadValue","itemMValue","offcanvasString","popupContainer","createElement","appendPopup","customContainer","containerIsBody","isNode","lookup","BODY","removePopup","hasPopup","backdropString","modalBackdropClass","offcanvasBackdropClass","modalActiveSelector","offcanvasActiveSelector","overlay","getCurrentOpen","toggleOverlayType","isModal","targetClass","appendOverlay","hasFade","showOverlay","hideOverlay","removeOverlay","isVisible","modalSelector","modalToggleSelector","modalDismissSelector","modalStaticClass","modalDefaults","getModalInstance","modalInitCallback","Modal","showModalEvent","shownModalEvent","hideModalEvent","hiddenModalEvent","setModalScrollbar","scrollbarWidth","scrollHeight","modalHeight","modalScrollHeight","modalOverflow","padStyle","toggleModalDismiss","modalDismissHandler","modalKeyHandler","afterModalHide","relatedTarget","focusElement","toggleFocusTrap","afterModalShow","beforeModalShow","removeAttribute","ariaHidden","ariaModal","beforeModalHide","modalClickHandler","currentTarget","isStatic","modalDialog","backdrop","selectedText","targetInsideDialog","staticTransitionEnd","duration","overlayDelay","currentOpen","that","offcanvasSelector","offcanvasToggleSelector","offcanvasDismissSelector","offcanvasTogglingClass","offcanvasDefaults","getOffcanvasInstance","offcanvasInitCallback","Offcanvas","showOffcanvasEvent","shownOffcanvasEvent","hideOffcanvasEvent","hiddenOffcanvasEvent","setOffCanvasScrollbar","toggleOffCanvasDismiss","offcanvasKeyDismissHandler","offcanvasDismissHandler","beforeOffcanvasShow","showOffcanvasComplete","beforeOffcanvasHide","hideOffcanvasComplete","offcanvasTriggerHandler","offCanvasDismiss","selection","visibleTrigger","isOpen","popoverString","popoverComponent","tooltipString","getTipTemplate","tipType","isTooltip","bodyClass","header","body","tipClassPositions","styleTip","tipClasses","tooltip","container","offsetParent","scrollLeft","scrollTop","getNodeScroll","tipWidth","tipHeight","htmlcw","htmlch","htmlow","placement","parentCWidth","parentOWidth","fixedParent","leftBoundry","rightBoundry","observerEntry","elemWidth","elemHeight","elemRectLeft","elemRectRight","elemRectTop","elemOffsetLeft","elemOffsetTop","getRectRelativeToOffsetParent","topPosition","bottomPosition","leftPosition","rightPosition","arrowTop","arrowLeft","arrowRight","arrowWidth","arrowHeight","arrowAdjust","horizontals","verticals","updatedTooltipEvent","toLowerCase","tooltipDefaults","dataOriginalTitle","tooltipComponent","setHtml","content","sanitizeFn","dirty","tempDocument","isNodeList","isArray","createTip","id","title","template","animation","customClass","dismissible","btnClose","tipString","tipPositions","titleParts","contentParts","placementClass","tooltipTemplate","htmlMarkup","tooltipHeader","tooltipBody","tempTitle","tempContent","tempBtn","getElementContainer","majorBlockTags","containers","parentNode","getParentNode","isShadowRoot","isTableElement","tooltipSelector","titleAttr","getTooltipInstance","tooltipInitCallback","Tooltip","removeTooltip","ariaDescribedBy","hasTip","disposeTooltipComplete","toggleTooltipTitle","toggleTooltipAction","tooltipShownAction","shownTooltipEvent","tooltipHiddenAction","hiddenTooltipEvent","toggleTooltipOpenHandlers","parentModal","parentOffcanvas","titleAtt","tipComponent","elem","getUID","position","outTimer","showTooltipEvent","delay","hideTooltipEvent","enabled","tr","mousehoverEvent","focusinEvent","focusoutEvent","isApple","popoverSelector","popoverDefaults","getPopoverInstance","popoverInitCallback","Popover","scrollspyString","scrollspyComponent","scrollspySelector","scrollSpyAnchorSelector","scrollspyDefaults","getScrollSpyInstance","scrollspyInitCallback","ScrollSpy","activateScrollSpy","updateSpyTargets","_itemsLength","_observables","links","getElementsByTagName","link","hash","targetItem","clear","item","activate","parentItem","parentLink","getOffset","scrollTarget","spyTarget","_activeItem","entries","newActiveItem","firstOffset","offsetTop","nextTarget","nextOffsetTop","getElementById","_observer","_scrollTo","tabString","tabComponent","tabSelector","getTabInstance","tabInitCallback","Tab","showTabEvent","shownTabEvent","hideTabEvent","hiddenTabEvent","tabPrivate","triggerTabEnd","tabContent","nav","triggerTabShow","nextContent","tab","currentHeight","nextHeight","triggerTabHide","getActiveTab","activeTabs","getParentDropdown","dropdown","tabClickHandler","firstTab","firstTabContent","ariaSelected","activeDropdown","toggleTab","toastString","toastComponent","toastSelector","toastDismissSelector","toastToggleSelector","showingClass","hideClass","toastDefaults","getToastInstance","toastInitCallback","Toast","showToastEvent","shownToastEvent","hideToastEvent","hiddenToastEvent","showToastComplete","hideToastComplete","hideToast","showToast","toastClickHandler","interactiveToastHandler","isShown","hide","componentsList","initComponentDataAPI","collection","removeComponentDataAPI","component","context","compData","instance","initCallback","lookUp","elemCollection","cs","init","selector","removeDataAPI","comp"],"mappings":"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","x_google_ignoreList":[0,1,27]} \ No newline at end of file +{"version":3,"file":"bootstrap-native.js","names":["isFunction","isElement"],"sources":["../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../node_modules/.pnpm/@thednp+event-listener@2.0.12/node_modules/@thednp/event-listener/dist/index.mjs","../src/strings/fadeClass.ts","../src/strings/showClass.ts","../src/strings/dataBsDismiss.ts","../src/strings/alertString.ts","../src/strings/alertComponent.ts","../src/util/isDisabled.ts","../package.json","../src/version.ts","../src/components/base-component.ts","../src/components/alert.ts","../src/strings/activeClass.ts","../src/strings/dataBsToggle.ts","../src/strings/buttonString.ts","../src/strings/buttonComponent.ts","../src/components/button.ts","../src/strings/dataBsTarget.ts","../src/strings/carouselString.ts","../src/strings/carouselComponent.ts","../src/strings/dataBsParent.ts","../src/strings/dataBsContainer.ts","../src/util/getTargetElement.ts","../src/components/carousel.ts","../src/strings/collapsingClass.ts","../src/strings/collapseString.ts","../src/strings/collapseComponent.ts","../src/components/collapse.ts","../node_modules/.pnpm/@thednp+position-observer@1.1.0/node_modules/@thednp/position-observer/dist/index.mjs","../src/strings/dropdownClasses.ts","../src/strings/dropdownComponent.ts","../src/strings/dropdownMenuClass.ts","../src/util/isEmptyAnchor.ts","../src/components/dropdown.ts","../src/strings/modalString.ts","../src/strings/modalComponent.ts","../src/strings/offcanvasComponent.ts","../src/strings/fixedTopClass.ts","../src/strings/fixedBottomClass.ts","../src/strings/stickyTopClass.ts","../src/strings/positionStickyClass.ts","../src/util/scrollbar.ts","../src/strings/offcanvasString.ts","../src/util/popupContainer.ts","../src/util/backdrop.ts","../src/util/isVisible.ts","../src/components/modal.ts","../src/components/offcanvas.ts","../src/strings/popoverString.ts","../src/strings/popoverComponent.ts","../src/strings/tooltipString.ts","../src/util/getTipTemplate.ts","../src/util/tipClassPositions.ts","../src/util/styleTip.ts","../src/util/tooltipDefaults.ts","../src/strings/dataOriginalTitle.ts","../src/strings/tooltipComponent.ts","../src/util/setHtml.ts","../src/util/createTip.ts","../src/util/getElementContainer.ts","../src/components/tooltip.ts","../src/components/popover.ts","../src/strings/scrollspyString.ts","../src/strings/scrollspyComponent.ts","../src/components/scrollspy.ts","../src/components/tab.ts","../src/strings/toastString.ts","../src/strings/toastComponent.ts","../src/components/toast.ts","../src/util/init.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","//#region package.json\nvar version = \"2.0.12\";\n\n//#endregion\n//#region src/index.ts\nconst registry = {};\nconst globalListener = (e) => {\n\tconst { type, currentTarget } = e;\n\tregistry[type].forEach((listenersMap, element) => {\n\t\tif (currentTarget === element) listenersMap.forEach((options, listener) => {\n\t\t\tlistener.apply(element, [e]);\n\t\t\tif (typeof options === \"object\" && options.once) removeListener(element, type, listener, options);\n\t\t});\n\t});\n};\nconst addListener = (element, eventType, listener, options) => {\n\tif (!registry[eventType]) registry[eventType] = /* @__PURE__ */ new Map();\n\tconst oneEventMap = registry[eventType];\n\tif (!oneEventMap.has(element)) oneEventMap.set(element, /* @__PURE__ */ new Map());\n\tconst oneElementMap = oneEventMap.get(element);\n\tconst { size } = oneElementMap;\n\toneElementMap.set(listener, options);\n\tif (!size) element.addEventListener(eventType, globalListener, options);\n};\nconst removeListener = (element, eventType, listener, options) => {\n\tconst oneEventMap = registry[eventType];\n\tconst oneElementMap = oneEventMap && oneEventMap.get(element);\n\tconst savedOptions = oneElementMap && oneElementMap.get(listener);\n\tconst eventOptions = savedOptions !== void 0 ? savedOptions : options;\n\tif (oneElementMap && oneElementMap.has(listener)) oneElementMap.delete(listener);\n\tif (oneEventMap && (!oneElementMap || !oneElementMap.size)) oneEventMap.delete(element);\n\tif (!oneEventMap || !oneEventMap.size) delete registry[eventType];\n\tif (!oneElementMap || !oneElementMap.size) element.removeEventListener(eventType, globalListener, eventOptions);\n};\nconst on = addListener;\nconst off = removeListener;\n\n//#endregion\nexport { addListener, globalListener, off, on, registry, removeListener, version };\n//# sourceMappingURL=index.mjs.map","/**\n * Global namespace for most components `fade` class.\n */\nconst fadeClass = \"fade\";\nexport default fadeClass;\n","/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n","/**\n * Global namespace for most components `dismiss` option.\n */\nconst dataBsDismiss = \"data-bs-dismiss\";\nexport default dataBsDismiss;\n","/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","import { getAttribute, hasClass } from \"@thednp/shorty\";\n\n/**\n * Check if interactive element is disabled.\n * @param target either a `',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n","/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n","import { Data, getElementsByTagName, matches } from \"@thednp/shorty\";\n\nimport { addListener } from \"@thednp/event-listener\";\n\nimport Alert from \"../components/alert\";\nimport Button from \"../components/button\";\nimport Carousel from \"../components/carousel\";\nimport Collapse from \"../components/collapse\";\nimport Dropdown from \"../components/dropdown\";\nimport Modal from \"../components/modal\";\nimport Offcanvas from \"../components/offcanvas\";\nimport Popover from \"../components/popover\";\nimport ScrollSpy from \"../components/scrollspy\";\nimport Tab from \"../components/tab\";\nimport Toast from \"../components/toast\";\nimport Tooltip from \"../components/tooltip\";\n\nconst componentsList = new Map<\n string,\n | typeof Alert\n | typeof Button\n | typeof Carousel\n | typeof Collapse\n | typeof Dropdown\n | typeof Modal\n | typeof Offcanvas\n | typeof Popover\n | typeof ScrollSpy\n | typeof Tab\n | typeof Toast\n | typeof Tooltip\n>();\n\ntype Component =\n | Alert\n | Button\n | Carousel\n | Collapse\n | Dropdown\n | Modal\n | Offcanvas\n | Popover\n | ScrollSpy\n | Tab\n | Toast\n | Tooltip;\n\n[\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n].forEach((c) => componentsList.set(c.prototype.name, c));\n\n/**\n * Initialize all matched `Element`s for one component.\n *\n * @param callback\n * @param collection\n */\nconst initComponentDataAPI = (\n callback: (el: Element) => Component,\n collection: HTMLCollectionOf | Element[],\n) => {\n [...collection].forEach((x) => callback(x));\n};\n\n/**\n * Remove one component from a target container element or all in the page.\n *\n * @param component the component name\n * @param context parent `Node`\n */\nconst removeComponentDataAPI = (component: string, context: ParentNode) => {\n const compData = Data.getAllFor(component) as Map;\n\n if (compData) {\n [...compData].forEach(([element, instance]) => {\n if (context.contains(element)) {\n (instance as T & { dispose: () => void }).dispose();\n }\n });\n }\n};\n\n/**\n * Initialize all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const initCallback = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n const elemCollection = [...getElementsByTagName(\"*\", lookUp)];\n\n componentsList.forEach((cs) => {\n const { init, selector } = cs;\n initComponentDataAPI(\n init,\n elemCollection.filter((item) => matches(item, selector)),\n );\n });\n};\n\n/**\n * Remove all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const removeDataAPI = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n\n componentsList.forEach((comp) => {\n removeComponentDataAPI(comp.prototype.name, lookUp);\n });\n};\n\n// Bulk initialize all components\nif (document.body) initCallback();\nelse {\n addListener(document, \"DOMContentLoaded\", () => initCallback(), {\n once: true,\n });\n}\n"],"x_google_ignoreList":[0,1,28],"mappings":"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"} \ No newline at end of file diff --git a/dist/bootstrap-native.mjs b/dist/bootstrap-native.mjs index a09be8d8..12e2349d 100644 --- a/dist/bootstrap-native.mjs +++ b/dist/bootstrap-native.mjs @@ -1,1803 +1,1535 @@ -const Cn = "aria-describedby", Ee = "aria-expanded", re = "aria-hidden", $e = "aria-modal", Cs = "aria-pressed", ke = "aria-selected", rs = "focus", cs = "focusin", _n = "focusout", ye = "keydown", Wo = "keyup", D = "click", xn = "mousedown", zo = "hover", Ce = "mouseenter", as = "mouseleave", Sn = "pointerdown", jo = "pointermove", Ko = "pointerup", _e = "touchstart", Vo = "dragstart", Xo = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]', qe = "ArrowDown", Ue = "ArrowUp", _s = "ArrowLeft", xs = "ArrowRight", ls = "Escape", qo = "transitionDuration", Uo = "transitionDelay", Ne = "transitionend", An = "transitionProperty", Hn = () => { - const e = /iPhone|iPad|iPod|Android/i; - return navigator?.userAgentData?.brands.some( - (t) => e.test(t.brand) - ) || e.test(navigator?.userAgent) || !1; -}, Yo = () => { - const e = /(iPhone|iPod|iPad)/; - return navigator?.userAgentData?.brands.some( - (t) => e.test(t.brand) - ) || e.test( - navigator?.userAgent - ) || !1; -}, Te = () => { -}, Zo = (e, t, s, n) => { - e.addEventListener( - t, - s, - !1 - ); -}, Qo = (e, t, s, n) => { - e.removeEventListener( - t, - s, - !1 - ); -}, Y = (e, t) => e.getAttribute(t), Jt = (e, t) => e.hasAttribute(t), I = (e, t, s) => e.setAttribute(t, s), Dt = (e, t) => e.removeAttribute(t), d = (e, ...t) => { - e.classList.add(...t); -}, v = (e, ...t) => { - e.classList.remove(...t); -}, h = (e, t) => e.classList.contains(t), ce = (e) => e != null && typeof e == "object" || !1, H = (e) => ce(e) && typeof e.nodeType == "number" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some( - (t) => e.nodeType === t -) || !1, j = (e) => H(e) && e.nodeType === 1 || !1, zt = /* @__PURE__ */ new Map(), At = { - data: zt, - set: (e, t, s) => { - j(e) && (zt.has(t) || zt.set(t, /* @__PURE__ */ new Map()), zt.get(t).set(e, s)); - }, - getAllFor: (e) => zt.get(e) || null, - get: (e, t) => { - if (!j(e) || !t) return null; - const s = At.getAllFor(t); - return e && s && s.get(e) || null; - }, - remove: (e, t) => { - const s = At.getAllFor(t); - !s || !j(e) || (s.delete(e), s.size === 0 && zt.delete(t)); - } -}, F = (e, t) => At.get(e, t), Ss = (e) => e?.trim().replace( - /(?:^\w|[A-Z]|\b\w)/g, - (t, s) => s === 0 ? t.toLowerCase() : t.toUpperCase() -).replace(/\s+/g, ""), ae = (e) => typeof e == "string" || !1, Pn = (e) => ce(e) && e.constructor.name === "Window" || !1, Dn = (e) => H(e) && e.nodeType === 9 || !1, w = (e) => Dn(e) ? e : H(e) ? e.ownerDocument : Pn(e) ? e.document : globalThis.document, at = (e, ...t) => Object.assign(e, ...t), bt = (e) => { - if (!e) return; - if (ae(e)) - return w().createElement(e); - const { tagName: t } = e, s = bt(t); - if (!s) return; - const n = { ...e }; - return delete n.tagName, at(s, n); -}, b = (e, t) => e.dispatchEvent(t), R = (e, t, s) => { - const n = getComputedStyle(e, s), o = t.replace("webkit", "Webkit").replace(/([A-Z])/g, "-$1").toLowerCase(); - return n.getPropertyValue(o); -}, Go = (e) => { - const t = R(e, An), s = R(e, Uo), n = s.includes("ms") ? 1 : 1e3, o = t && t !== "none" ? parseFloat(s) * n : 0; - return Number.isNaN(o) ? 0 : o; -}, le = (e) => { - const t = R(e, An), s = R(e, qo), n = s.includes("ms") ? 1 : 1e3, o = t && t !== "none" ? parseFloat(s) * n : 0; - return Number.isNaN(o) ? 0 : o; -}, x = (e, t) => { - let s = 0; - const n = new Event(Ne), o = le(e), i = Go(e); - if (o) { - const r = (c) => { - c.target === e && (t.apply(e, [c]), e.removeEventListener(Ne, r), s = 1); - }; - e.addEventListener(Ne, r), setTimeout(() => { - s || b(e, n); - }, o + i + 17); - } else - t.apply(e, [n]); -}, lt = (e, t) => e.focus(t), As = (e) => ["true", !0].includes(e) ? !0 : ["false", !1].includes(e) ? !1 : ["null", "", null, void 0].includes(e) ? null : e !== "" && !Number.isNaN(+e) ? +e : e, pe = (e) => Object.entries(e), Jo = (e, t, s, n) => { - if (!j(e)) return t; - const o = { ...s }, i = { ...e.dataset }, r = { ...t }, c = {}, a = "title"; - return pe(i).forEach(([l, f]) => { - const p = typeof l == "string" && l.includes(n) ? Ss(l.replace(n, "")) : Ss(l); - c[p] = As(f); - }), pe(o).forEach(([l, f]) => { - o[l] = As(f); - }), pe(t).forEach(([l, f]) => { - l in o ? r[l] = o[l] : l in c ? r[l] = c[l] : r[l] = l === a ? Y(e, a) : f; - }), r; -}, Hs = (e) => Object.keys(e), E = (e, t) => { - const s = new CustomEvent(e, { - cancelable: !0, - bubbles: !0 - }); - return ce(t) && at(s, t), s; -}, te = { passive: !0 }, kt = (e) => e.offsetHeight, S = (e, t) => { - pe(t).forEach(([s, n]) => { - if (n && ae(s) && s.includes("--")) - e.style.setProperty(s, n); - else { - const o = {}; - o[s] = n, at(e.style, o); - } - }); -}, Ye = (e) => ce(e) && e.constructor.name === "Map" || !1, ti = (e) => typeof e == "number" || !1, pt = /* @__PURE__ */ new Map(), u = { - set: (e, t, s, n) => { - j(e) && (n && n.length ? (pt.has(e) || pt.set(e, /* @__PURE__ */ new Map()), pt.get(e).set(n, setTimeout(t, s))) : pt.set(e, setTimeout(t, s))); - }, - get: (e, t) => { - if (!j(e)) return null; - const s = pt.get(e); - return t && s && Ye(s) ? s.get(t) || null : ti(s) ? s : null; - }, - clear: (e, t) => { - if (!j(e)) return; - const s = pt.get(e); - t && t.length && Ye(s) ? (clearTimeout(s.get(t)), s.delete(t), s.size === 0 && pt.delete(e)) : (clearTimeout(s), pt.delete(e)); - } -}, ee = (e) => e.toLowerCase(), U = (e, t) => (H(t) ? t : w()).querySelectorAll(e), ds = /* @__PURE__ */ new Map(); -function In(e) { - const { shiftKey: t, code: s } = e, n = w(this), o = [ - ...U(Xo, this) - ].filter( - (c) => !Jt(c, "disabled") && !Y(c, re) - ); - if (!o.length) return; - const i = o[0], r = o[o.length - 1]; - s === "Tab" && (t && n.activeElement === i ? (r.focus(), e.preventDefault()) : !t && n.activeElement === r && (i.focus(), e.preventDefault())); -} -const hs = (e) => ds.has(e) === !0, ei = (e) => { - hs(e) || (Zo(e, "keydown", In), ds.set(e, !0)); -}, si = (e) => { - hs(e) && (Qo(e, "keydown", In), ds.delete(e)); -}, xe = (e) => { - hs(e) ? si(e) : ei(e); -}, A = (e) => j(e) && "offsetWidth" in e || !1, It = (e, t) => { - const { width: s, height: n, top: o, right: i, bottom: r, left: c } = e.getBoundingClientRect(); - let a = 1, l = 1; - if (t && A(e)) { - const { offsetWidth: f, offsetHeight: p } = e; - a = f > 0 ? Math.round(s) / f : 1, l = p > 0 ? Math.round(n) / p : 1; - } - return { - width: s / a, - height: n / l, - top: o / l, - right: i / a, - bottom: r / l, - left: c / a, - x: c / a, - y: o / l - }; -}, Nt = (e) => w(e).body, dt = (e) => w(e).documentElement, ni = (e) => { - const t = Pn(e), s = t ? e.scrollX : e.scrollLeft, n = t ? e.scrollY : e.scrollTop; - return { x: s, y: n }; -}, Ln = (e) => H(e) && e.constructor.name === "ShadowRoot" || !1, oi = (e) => e.nodeName === "HTML" ? e : j(e) && e.assignedSlot || H(e) && e.parentNode || Ln(e) && e.host || dt(e), On = (e) => e ? Dn(e) ? e.defaultView : H(e) ? e?.ownerDocument?.defaultView : e : window, ii = (e) => H(e) && ["TABLE", "TD", "TH"].includes(e.nodeName) || !1, kn = (e, t) => e.matches(t), ri = (e) => { - if (!A(e)) return !1; - const { width: t, height: s } = It(e), { offsetWidth: n, offsetHeight: o } = e; - return Math.round(t) !== n || Math.round(s) !== o; -}, ci = (e, t, s) => { - const n = A(t), o = It( - e, - n && ri(t) - ), i = { x: 0, y: 0 }; - if (n) { - const r = It(t, !0); - i.x = r.x + t.clientLeft, i.y = r.y + t.clientTop; - } - return { - x: o.left + s.x - i.x, - y: o.top + s.y - i.y, - width: o.width, - height: o.height - }; -}; -let Ps = 0, Ds = 0; -const jt = /* @__PURE__ */ new Map(), Nn = (e, t) => { - let s = t ? Ps : Ds; - if (t) { - const n = Nn(e), o = jt.get(n) || /* @__PURE__ */ new Map(); - jt.has(n) || jt.set(n, o), Ye(o) && !o.has(t) ? (o.set(t, s), Ps += 1) : s = o.get(t); - } else { - const n = e.id || e; - jt.has(n) ? s = jt.get(n) : (jt.set(n, s), Ds += 1); - } - return s; -}, ai = (e) => Array.isArray(e) || !1, Mn = (e) => { - if (!H(e)) return !1; - const { top: t, bottom: s } = It(e), { clientHeight: n } = dt(e); - return t <= n && s >= 0; -}, Bn = (e) => typeof e == "function" || !1, li = (e) => ce(e) && e.constructor.name === "NodeList" || !1, Tt = (e) => dt(e).dir === "rtl", M = (e, t) => !e || !t ? null : e.closest(t) || M(e.getRootNode().host, t) || null, _ = (e, t) => j(e) ? e : (j(t) ? t : w()).querySelector(e), fs = (e, t) => (H(t) ? t : w()).getElementsByTagName( - e -), di = (e, t) => w(t).getElementById(e), rt = (e, t) => (t && H(t) ? t : w()).getElementsByClassName( - e -), Kt = {}, Rn = (e) => { - const { type: t, currentTarget: s } = e; - Kt[t].forEach((n, o) => { - s === o && n.forEach((i, r) => { - r.apply(o, [e]), typeof i == "object" && i.once && O(o, t, r, i); - }); - }); -}, L = (e, t, s, n) => { - Kt[t] || (Kt[t] = /* @__PURE__ */ new Map()); - const o = Kt[t]; - o.has(e) || o.set(e, /* @__PURE__ */ new Map()); - const i = o.get( - e - ), { size: r } = i; - i.set(s, n), r || e.addEventListener( - t, - Rn, - n - ); -}, O = (e, t, s, n) => { - const o = Kt[t], i = o && o.get(e), r = i && i.get(s), c = r !== void 0 ? r : n; - i && i.has(s) && i.delete(s), o && (!i || !i.size) && o.delete(e), (!o || !o.size) && delete Kt[t], (!i || !i.size) && e.removeEventListener( - t, - Rn, - c - ); -}, k = "fade", g = "show", Se = "data-bs-dismiss", Ae = "alert", Fn = "Alert", nt = (e) => h(e, "disabled") || Y(e, "disabled") === "true", hi = "5.1.6", fi = hi; -class st { - constructor(t, s) { - let n; - try { - if (j(t)) - n = t; - else if (ae(t)) { - if (n = _(t), !n) throw Error(`"${t}" is not a valid selector.`); - } else - throw Error("your target is not an instance of HTMLElement."); - } catch (i) { - throw Error(`${this.name} Error: ${i.message}`); - } - const o = At.get(n, this.name); - o && o._toggleEventListeners(), this.element = n, this.options = this.defaults && Hs(this.defaults).length ? Jo(n, this.defaults, s || {}, "bs") : {}, At.set(n, this.name, this); - } - get version() { - return fi; - } - get name() { - return "BaseComponent"; - } - get defaults() { - return {}; - } - _toggleEventListeners = () => { - }; - dispose() { - At.remove(this.element, this.name), Hs(this).forEach((t) => { - delete this[t]; - }); - } -} -const ui = `.${Ae}`, gi = `[${Se}="${Ae}"]`, pi = (e) => F(e, Fn), mi = (e) => new Wn(e), Is = E( - `close.bs.${Ae}` -), vi = E( - `closed.bs.${Ae}` -), Ls = (e) => { - const { element: t } = e; - b(t, vi), e._toggleEventListeners(), e.dispose(), t.remove(); -}; -class Wn extends st { - static selector = ui; - static init = mi; - static getInstance = pi; - dismiss; - constructor(t) { - super(t), this.dismiss = _( - gi, - this.element - ), this._toggleEventListeners(!0); - } - get name() { - return Fn; - } - close = (t) => { - const { element: s, dismiss: n } = this; - !s || !h(s, g) || t && n && nt(n) || (b(s, Is), !Is.defaultPrevented && (v(s, g), h(s, k) ? x(s, () => Ls(this)) : Ls(this))); - }; - _toggleEventListeners = (t) => { - const s = t ? L : O, { dismiss: n, close: o } = this; - n && s(n, D, o); - }; - dispose() { - this._toggleEventListeners(), super.dispose(); - } -} -const T = "active", ot = "data-bs-toggle", bi = "button", zn = "Button", wi = `[${ot}="${bi}"]`, Ei = (e) => F(e, zn), Ti = (e) => new jn(e); -class jn extends st { - static selector = wi; - static init = Ti; - static getInstance = Ei; - constructor(t) { - super(t); - const { element: s } = this; - this.isActive = h(s, T), I(s, Cs, String(!!this.isActive)), this._toggleEventListeners(!0); - } - get name() { - return zn; - } - toggle = (t) => { - t && t.preventDefault(); - const { element: s, isActive: n } = this; - if (nt(s)) return; - (n ? v : d)(s, T), I(s, Cs, n ? "false" : "true"), this.isActive = h(s, T); - }; - _toggleEventListeners = (t) => { - (t ? L : O)(this.element, D, this.toggle); - }; - dispose() { - this._toggleEventListeners(), super.dispose(); - } -} -const Ze = "data-bs-target", Ht = "carousel", Kn = "Carousel", Os = "data-bs-parent", $i = "data-bs-container", K = (e) => { - const t = [Ze, Os, $i, "href"], s = w(e); - return t.map((n) => { - const o = Y(e, n); - return o ? n === Os ? M(e, o) : _(o, s) : null; - }).filter((n) => n)[0]; -}, de = `[data-bs-ride="${Ht}"]`, tt = `${Ht}-item`, Qe = "data-bs-slide-to", vt = "data-bs-slide", wt = "paused", yi = Hn() ? _e : Sn; -console.log({ isMobile: Hn(), touchEvent: yi }); -const ks = { - pause: "hover", - keyboard: !1, - touch: !0, - interval: 5e3 -}, ht = (e) => F(e, Kn), Ci = (e) => new Xn(e); -let Gt = 0, me = 0, Me = 0; -const Be = E(`slide.bs.${Ht}`), Ge = E(`slid.bs.${Ht}`), Ns = (e) => { - const { index: t, direction: s, element: n, slides: o, options: i } = e; - if (e.isAnimating) { - const r = Je(e), c = s === "left" ? "next" : "prev", a = s === "left" ? "start" : "end"; - d(o[t], T), v(o[t], `${tt}-${c}`), v(o[t], `${tt}-${a}`), v(o[r], T), v(o[r], `${tt}-${a}`), b(n, Ge), u.clear(n, vt), e.cycle && !w(n).hidden && i.interval && !e.isPaused && e.cycle(); - } -}; -function _i() { - const e = ht(this); - e && !e.isPaused && !u.get(this, wt) && d(this, wt); -} -function xi() { - const e = ht(this); - e && e.isPaused && !u.get(this, wt) && e.cycle(); -} -function Si(e) { - e.preventDefault(); - const t = M(this, de) || K(this), s = t && ht(t); - if (nt(this) || !s || s.isAnimating) return; - const n = +(Y(this, Qe) || 0); - this && !h(this, T) && !Number.isNaN(n) && s.to(n); -} -function Ai(e) { - e.preventDefault(); - const t = M(this, de) || K(this), s = t && ht(t); - if (nt(this) || !s || s.isAnimating) return; - const n = Y(this, vt); - n === "next" ? s.next() : n === "prev" && s.prev(); +(() => { + for (var e = new Uint8Array(128), t = 0; t < 64; t++) e[t < 26 ? t + 65 : t < 52 ? t + 71 : t < 62 ? t - 4 : t * 4 - 205] = t; + return (t) => { + for (var n = t.length, r = new Uint8Array((n - (t[n - 1] == "=") - (t[n - 2] == "=")) * 3 / 4 | 0), i = 0, a = 0; i < n;) { + var o = e[t.charCodeAt(i++)], s = e[t.charCodeAt(i++)], c = e[t.charCodeAt(i++)], l = e[t.charCodeAt(i++)]; + r[a++] = o << 2 | s >> 4, r[a++] = s << 4 | c >> 2, r[a++] = c << 6 | l; + } + return r; + }; +})(), ((e) => typeof require < "u" ? require : typeof Proxy < "u" ? new Proxy(e, { get: (e, t) => (typeof require < "u" ? require : e)[t] }) : e)(function(e) { + if (typeof require < "u") return require.apply(this, arguments); + throw Error("Calling `require` for \"" + e + "\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details."); +}); +//#endregion +//#region node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs +var e = "aria-describedby", t = "aria-expanded", n = "aria-hidden", r = "aria-modal", i = "aria-pressed", a = "aria-selected", o = "focus", s = "focusin", c = "focusout", l = "keydown", u = "keyup", d = "click", f = "mousedown", p = "mouseenter", m = "mouseleave", ee = "pointerdown", h = "pointermove", g = "pointerup", te = "touchstart", ne = "dragstart"; +"onmouseleave" in document; +var _ = "a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]", re = "ArrowLeft", v = "ArrowRight", y = "transitionDuration", b = "transitionDelay", ie = "transitionend", ae = "transitionProperty"; +navigator.userAgentData; +var { userAgent: oe } = navigator, se = () => { + let e = /iPhone|iPad|iPod|Android/i; + return navigator?.userAgentData?.brands.some((t) => e.test(t.brand)) || e.test(navigator?.userAgent) || !1; +}, ce = () => { + let e = /(iPhone|iPod|iPad)/; + return navigator?.userAgentData?.brands.some((t) => e.test(t.brand)) || e.test(navigator?.userAgent) || !1; +}, le = () => {}, ue = (e, t, n, r) => { + let i = r || !1; + e.addEventListener(t, n, i); +}, de = (e, t, n, r) => { + let i = r || !1; + e.removeEventListener(t, n, i); +}, x = (e, t) => e.getAttribute(t), S = (e, t) => e.hasAttribute(t), C = (e, t, n) => e.setAttribute(t, n), fe = (e, t) => e.removeAttribute(t), w = (e, ...t) => { + e.classList.add(...t); +}, T = (e, ...t) => { + e.classList.remove(...t); +}, E = (e, t) => e.classList.contains(t), { body: pe } = document, { documentElement: me } = document, { head: he } = document, ge = (e) => typeof e == "object" && !!e || !1, D = (e) => ge(e) && typeof e.nodeType == "number" && [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 +].some((t) => e.nodeType === t) || !1, O = (e) => D(e) && e.nodeType === 1 || !1, _e = /* @__PURE__ */ new Map(), ve = { + data: _e, + set: (e, t, n) => { + O(e) && (_e.has(t) || _e.set(t, /* @__PURE__ */ new Map()), _e.get(t).set(e, n)); + }, + getAllFor: (e) => _e.get(e) || null, + get: (e, t) => { + if (!O(e) || !t) return null; + let n = ve.getAllFor(t); + return e && n && n.get(e) || null; + }, + remove: (e, t) => { + let n = ve.getAllFor(t); + !n || !O(e) || (n.delete(e), n.size === 0 && _e.delete(t)); + } +}, k = (e, t) => ve.get(e, t), ye = (e) => e?.trim().replace(/(?:^\w|[A-Z]|\b\w)/g, (e, t) => t === 0 ? e.toLowerCase() : e.toUpperCase()).replace(/\s+/g, ""), be = (e) => typeof e == "string" || !1, xe = (e) => ge(e) && e.constructor.name === "Window" || !1, Se = (e) => D(e) && e.nodeType === 9 || !1, A = (e) => Se(e) ? e : D(e) ? e.ownerDocument : xe(e) ? e.document : globalThis.document, Ce = (e, ...t) => Object.assign(e, ...t), we = (e) => { + if (!e) return; + if (be(e)) return A().createElement(e); + let { tagName: t } = e, n = we(t); + if (!n) return; + let r = { ...e }; + return delete r.tagName, Ce(n, r); +}, Te = (e, t) => { + if (!e || !t) return; + if (be(t)) return A().createElementNS(e, t); + let { tagName: n } = t, r = Te(e, n); + if (!r) return; + let i = { ...t }; + return delete i.tagName, Ce(r, i); +}, j = (e, t) => e.dispatchEvent(t), M = (e, t, n) => { + let r = getComputedStyle(e, n), i = t.replace("webkit", "Webkit").replace(/([A-Z])/g, "-$1").toLowerCase(); + return r.getPropertyValue(i); +}, Ee = (e) => { + let t = M(e, ae), n = M(e, b), r = n.includes("ms") ? 1 : 1e3, i = t && t !== "none" ? parseFloat(n) * r : 0; + return Number.isNaN(i) ? 0 : i; +}, De = (e) => { + let t = M(e, ae), n = M(e, y), r = n.includes("ms") ? 1 : 1e3, i = t && t !== "none" ? parseFloat(n) * r : 0; + return Number.isNaN(i) ? 0 : i; +}, N = (e, t) => { + let n = 0, r = new Event(ie), i = De(e), a = Ee(e); + if (i) { + let o = (r) => { + r.target === e && (t.apply(e, [r]), e.removeEventListener("transitionend", o), n = 1); + }; + e.addEventListener(ie, o), setTimeout(() => { + n || j(e, r); + }, i + a + 17); + } else t.apply(e, [r]); +}, Oe = (e, t) => e.focus(t), ke = (e) => ["true", !0].includes(e) ? !0 : ["false", !1].includes(e) ? !1 : [ + "null", + "", + null, + void 0 +].includes(e) ? null : e !== "" && !Number.isNaN(+e) ? +e : e, Ae = (e) => Object.entries(e), je = (e, t, n, r) => { + if (!O(e)) return t; + let i = { ...n }, a = { ...e.dataset }, o = { ...t }, s = {}, c = "title"; + return Ae(a).forEach(([e, t]) => { + let n = r && typeof e == "string" && e.includes(r) ? ye(e.replace(r, "")) : ye(e); + s[n] = ke(t); + }), Ae(i).forEach(([e, t]) => { + i[e] = ke(t); + }), Ae(t).forEach(([t, n]) => { + t in i ? o[t] = i[t] : t in s ? o[t] = s[t] : o[t] = t === c ? x(e, c) : n; + }), o; +}, Me = (e) => Object.keys(e), P = (e, t) => { + let n = new CustomEvent(e, { + cancelable: !0, + bubbles: !0 + }); + return ge(t) && Ce(n, t), n; +}, Ne = { passive: !0 }, Pe = (e) => e.offsetHeight, F = (e, t) => { + Ae(t).forEach(([t, n]) => { + if (n && be(t) && t.includes("--")) e.style.setProperty(t, n); + else { + let r = {}; + r[t] = n, Ce(e.style, r); + } + }); +}, Fe = (e) => ge(e) && e.constructor.name === "Map" || !1, Ie = (e) => typeof e == "number" || !1, Le = /* @__PURE__ */ new Map(), I = { + set: (e, t, n, r) => { + O(e) && (r && r.length ? (Le.has(e) || Le.set(e, /* @__PURE__ */ new Map()), Le.get(e).set(r, setTimeout(t, n))) : Le.set(e, setTimeout(t, n))); + }, + get: (e, t) => { + if (!O(e)) return null; + let n = Le.get(e); + return t && n && Fe(n) ? n.get(t) || null : Ie(n) ? n : null; + }, + clear: (e, t) => { + if (!O(e)) return; + let n = Le.get(e); + t && t.length && Fe(n) ? (clearTimeout(n.get(t)), n.delete(t), n.size === 0 && Le.delete(e)) : (clearTimeout(n), Le.delete(e)); + } +}, Re = (e) => e.toLowerCase(), L = (e, t) => (D(t) ? t : A()).querySelectorAll(e), ze = /* @__PURE__ */ new Map(); +function Be(e) { + let { shiftKey: t, code: n } = e, r = A(this), i = [...L(_, this)].filter((e) => !S(e, "disabled") && !x(e, "aria-hidden")); + if (!i.length) return; + let a = i[0], o = i[i.length - 1]; + n === "Tab" && (t && r.activeElement === a ? (o.focus(), e.preventDefault()) : !t && r.activeElement === o && (a.focus(), e.preventDefault())); } -const Hi = ({ code: e, target: t }) => { - const s = w(t), [n] = [...U(de, s)].filter((a) => Mn(a)), o = ht(n); - if (!o || o.isAnimating || /textarea|input|select/i.test(t.nodeName)) return; - const i = Tt(n); - e === (i ? xs : _s) ? o.prev() : e === (i ? _s : xs) && o.next(); +var Ve = (e) => ze.has(e) === !0, He = (e) => { + Ve(e) || (ue(e, "keydown", Be), ze.set(e, !0)); +}, Ue = (e) => { + Ve(e) && (de(e, "keydown", Be), ze.delete(e)); +}, We = (e) => { + Ve(e) ? Ue(e) : He(e); +}, R = (e) => O(e) && "offsetWidth" in e || !1, Ge = (e, t) => { + let { width: n, height: r, top: i, right: a, bottom: o, left: s } = e.getBoundingClientRect(), c = 1, l = 1; + if (t && R(e)) { + let { offsetWidth: t, offsetHeight: i } = e; + c = t > 0 ? Math.round(n) / t : 1, l = i > 0 ? Math.round(r) / i : 1; + } + return { + width: n / c, + height: r / l, + top: i / l, + right: a / c, + bottom: o / l, + left: s / c, + x: s / c, + y: i / l + }; +}, Ke = (e) => A(e).body, qe = (e) => A(e).documentElement, Je = (e) => { + let t = xe(e); + return { + x: t ? e.scrollX : e.scrollLeft, + y: t ? e.scrollY : e.scrollTop + }; +}, Ye = (e) => D(e) && e.constructor.name === "ShadowRoot" || !1, Xe = (e) => e.nodeName === "HTML" ? e : O(e) && e.assignedSlot || D(e) && e.parentNode || Ye(e) && e.host || qe(e), Ze = (e) => e ? Se(e) ? e.defaultView : D(e) ? e?.ownerDocument?.defaultView : e : window, Qe = (e) => D(e) && [ + "TABLE", + "TD", + "TH" +].includes(e.nodeName) || !1, $e = (e, t) => e.matches(t), et = (e) => { + if (!R(e)) return !1; + let { width: t, height: n } = Ge(e), { offsetWidth: r, offsetHeight: i } = e; + return Math.round(t) !== r || Math.round(n) !== i; +}, tt = (e, t, n) => { + let r = R(t), i = Ge(e, r && et(t)), a = { + x: 0, + y: 0 + }; + if (r) { + let e = Ge(t, !0); + a.x = e.x + t.clientLeft, a.y = e.y + t.clientTop; + } + return { + x: i.left + n.x - a.x, + y: i.top + n.y - a.y, + width: i.width, + height: i.height + }; +}, nt = 0, rt = 0, it = /* @__PURE__ */ new Map(), at = (e, t) => { + let n = t ? nt : rt; + if (t) { + let r = at(e), i = it.get(r) || /* @__PURE__ */ new Map(); + it.has(r) || it.set(r, i), Fe(i) && !i.has(t) ? (i.set(t, n), nt += 1) : n = i.get(t); + } else { + let t = e.id || e; + it.has(t) ? n = it.get(t) : (it.set(t, n), rt += 1); + } + return n; +}, ot = (e) => Array.isArray(e) || !1, st = (e) => { + if (!D(e)) return !1; + let { top: t, bottom: n } = Ge(e), { clientHeight: r } = qe(e); + return t <= r && n >= 0; +}, ct = (e) => typeof e == "function" || !1, lt = (e) => ge(e) && e.constructor.name === "NodeList" || !1, ut = (e) => qe(e).dir === "rtl", z = (e, t) => !e || !t ? null : e.closest(t) || z(e.getRootNode().host, t) || null, B = (e, t) => O(e) ? e : (O(t) ? t : A()).querySelector(e), dt = (e, t) => (D(t) ? t : A()).getElementsByTagName(e), ft = (e, t) => A(t).getElementById(e), pt = (e, t) => (t && D(t) ? t : A()).getElementsByClassName(e), mt = {}, ht = (e) => { + let { type: t, currentTarget: n } = e; + mt[t].forEach((r, i) => { + n === i && r.forEach((n, r) => { + r.apply(i, [e]), typeof n == "object" && n.once && H(i, t, r, n); + }); + }); +}, V = (e, t, n, r) => { + mt[t] || (mt[t] = /* @__PURE__ */ new Map()); + let i = mt[t]; + i.has(e) || i.set(e, /* @__PURE__ */ new Map()); + let a = i.get(e), { size: o } = a; + a.set(n, r), o || e.addEventListener(t, ht, r); +}, H = (e, t, n, r) => { + let i = mt[t], a = i && i.get(e), o = a && a.get(n), s = o === void 0 ? r : o; + a && a.has(n) && a.delete(n), i && (!a || !a.size) && i.delete(e), (!i || !i.size) && delete mt[t], (!a || !a.size) && e.removeEventListener(t, ht, s); +}, gt = "fade", U = "show", _t = "data-bs-dismiss", vt = "alert", yt = "Alert", bt = (e) => E(e, "disabled") || x(e, "disabled") === "true", xt = "5.1.6", W = class { + constructor(e, t) { + let n; + try { + if (O(e)) n = e; + else if (be(e)) { + if (n = B(e), !n) throw Error(`"${e}" is not a valid selector.`); + } else throw Error("your target is not an instance of HTMLElement."); + } catch (e) { + throw Error(`${this.name} Error: ${e.message}`); + } + let r = ve.get(n, this.name); + r && r._toggleEventListeners(), this.element = n, this.options = this.defaults && Me(this.defaults).length ? je(n, this.defaults, t || {}, "bs") : {}, ve.set(n, this.name, this); + } + get version() { + return xt; + } + get name() { + return "BaseComponent"; + } + get defaults() { + return {}; + } + _toggleEventListeners = () => {}; + dispose() { + ve.remove(this.element, this.name), Me(this).forEach((e) => { + delete this[e]; + }); + } +}, St = `.${vt}`, Ct = `[${_t}="${vt}"]`, wt = (e) => k(e, yt), Tt = (e) => new kt(e), Et = P(`close.bs.${vt}`), Dt = P(`closed.bs.${vt}`), Ot = (e) => { + let { element: t } = e; + j(t, Dt), e._toggleEventListeners(), e.dispose(), t.remove(); +}, kt = class extends W { + static selector = St; + static init = Tt; + static getInstance = wt; + dismiss; + constructor(e) { + super(e), this.dismiss = B(Ct, this.element), this._toggleEventListeners(!0); + } + get name() { + return yt; + } + close = (e) => { + let { element: t, dismiss: n } = this; + !t || !E(t, "show") || e && n && bt(n) || (j(t, Et), !Et.defaultPrevented && (T(t, U), E(t, "fade") ? N(t, () => Ot(this)) : Ot(this))); + }; + _toggleEventListeners = (e) => { + let t = e ? V : H, { dismiss: n, close: r } = this; + n && t(n, d, r); + }; + dispose() { + this._toggleEventListeners(), super.dispose(); + } +}, G = "active", At = "data-bs-toggle", jt = "button", Mt = "Button", Nt = `[${At}="${jt}"]`, Pt = (e) => k(e, Mt), Ft = (e) => new It(e), It = class extends W { + static selector = Nt; + static init = Ft; + static getInstance = Pt; + constructor(e) { + super(e); + let { element: t } = this; + this.isActive = E(t, G), C(t, i, String(!!this.isActive)), this._toggleEventListeners(!0); + } + get name() { + return Mt; + } + toggle = (e) => { + e && e.preventDefault(); + let { element: t, isActive: n } = this; + bt(t) || ((n ? T : w)(t, G), C(t, i, n ? "false" : "true"), this.isActive = E(t, G)); + }; + _toggleEventListeners = (e) => { + (e ? V : H)(this.element, d, this.toggle); + }; + dispose() { + this._toggleEventListeners(), super.dispose(); + } +}, Lt = "data-bs-target", Rt = "carousel", zt = "Carousel", Bt = "data-bs-parent", Vt = "data-bs-container", K = (e) => { + let t = [ + Lt, + Bt, + Vt, + "href" + ], n = A(e); + return t.map((t) => { + let r = x(e, t); + return r ? t === "data-bs-parent" ? z(e, r) : B(r, n) : null; + }).filter((e) => e)[0]; +}, Ht = `[data-bs-ride="${Rt}"]`, q = `${Rt}-item`, Ut = "data-bs-slide-to", Wt = "data-bs-slide", Gt = "paused", Kt = se() ? te : ee; +console.log({ + isMobile: se(), + touchEvent: Kt +}); +var qt = { + pause: "hover", + keyboard: !1, + touch: !0, + interval: 5e3 +}, Jt = (e) => k(e, zt), Yt = (e) => new hn(e), Xt = 0, Zt = 0, Qt = 0, $t = P(`slide.bs.${Rt}`), en = P(`slid.bs.${Rt}`), tn = (e) => { + let { index: t, direction: n, element: r, slides: i, options: a } = e; + if (e.isAnimating) { + let o = mn(e), s = n === "left" ? "next" : "prev", c = n === "left" ? "start" : "end"; + w(i[t], G), T(i[t], `${q}-${s}`), T(i[t], `${q}-${c}`), T(i[o], G), T(i[o], `${q}-${c}`), j(r, en), I.clear(r, Wt), e.cycle && !A(r).hidden && a.interval && !e.isPaused && e.cycle(); + } }; -function Ms(e) { - const { target: t } = e, s = ht(this); - s && s.isTouch && !s.controls.includes(t) && !s.controls.includes(t?.parentElement) && (!s.indicator || !s.indicator.contains(t)) && e.preventDefault(); +function nn() { + let e = Jt(this); + e && !e.isPaused && !I.get(this, Gt) && w(this, Gt); } -function Pi(e) { - const { target: t } = e, s = ht(this); - if (!s || s.isAnimating || s.isTouch) return; - const { controls: n, indicator: o } = s; - ![...n, o].every( - (i) => i && (i === t || i.contains(t)) - ) && this.contains(t) && (Gt = e.pageX, s.isTouch = !0, Vn(s, !0)); +function rn() { + let e = Jt(this); + e && e.isPaused && !I.get(this, Gt) && e.cycle(); } -const Di = (e) => { - me = e.pageX; -}, Ii = (e) => { - const { target: t } = e, s = w(t), n = [...U(de, s)].map((c) => ht(c)).find((c) => c.isTouch); - if (!n) return; - const { element: o, index: i } = n, r = Tt(o); - Me = e.pageX, n.isTouch = !1, Vn(n), !s.getSelection()?.toString().length && o.contains(t) && Math.abs(Gt - Me) > 120 && (me < Gt ? n.to(i + (r ? -1 : 1)) : me > Gt && n.to(i + (r ? 1 : -1))), Gt = 0, me = 0, Me = 0; -}, Re = (e, t) => { - const { indicators: s } = e; - [...s].forEach((n) => v(n, T)), e.indicators[t] && d(s[t], T); -}, Vn = (e, t) => { - const { element: s } = e, n = t ? L : O; - n( - w(s), - jo, - Di, - te - ), n( - w(s), - Ko, - Ii, - te - ); -}, Je = (e) => { - const { slides: t, element: s } = e, n = _( - `.${tt}.${T}`, - s - ); - return n ? [...t].indexOf(n) : -1; -}; -class Xn extends st { - static selector = de; - static init = Ci; - static getInstance = ht; - constructor(t, s) { - super(t, s); - const { element: n } = this; - this.direction = Tt(n) ? "right" : "left", this.isTouch = !1, this.slides = rt(tt, n); - const { slides: o } = this; - if (o.length < 2) return; - const i = Je(this), r = [...o].find( - (l) => kn(l, `.${tt}-next`) - ); - this.index = i; - const c = w(n); - this.controls = [ - ...U(`[${vt}]`, n), - ...U( - `[${vt}][${Ze}="#${n.id}"]`, - c - ) - ].filter((l, f, p) => f === p.indexOf(l)), this.indicator = _( - `.${Ht}-indicators`, - n - ), this.indicators = [ - ...this.indicator ? U(`[${Qe}]`, this.indicator) : [], - ...U( - `[${Qe}][${Ze}="#${n.id}"]`, - c - ) - ].filter((l, f, p) => f === p.indexOf(l)); - const { options: a } = this; - this.options.interval = a.interval === !0 ? ks.interval : a.interval, r ? this.index = [...o].indexOf(r) : i < 0 && (this.index = 0, d(o[0], T), this.indicators.length && Re(this, 0)), this.indicators.length && Re(this, this.index), this._toggleEventListeners(!0), a.interval && this.cycle(); - } - get name() { - return Kn; - } - get defaults() { - return ks; - } - get isPaused() { - return h(this.element, wt); - } - get isAnimating() { - return _( - `.${tt}-next,.${tt}-prev`, - this.element - ) !== null; - } - cycle() { - const { element: t, options: s, isPaused: n, index: o } = this; - u.clear(t, Ht), n && (u.clear(t, wt), v(t, wt)), u.set( - t, - () => { - this.element && !this.isPaused && !this.isTouch && Mn(t) && this.to(o + 1); - }, - s.interval, - Ht - ); - } - pause() { - const { element: t, options: s } = this; - this.isPaused || !s.interval || (d(t, wt), u.set( - t, - () => { - }, - 1, - wt - )); - } - next() { - this.isAnimating || this.to(this.index + 1); - } - prev() { - this.isAnimating || this.to(this.index - 1); - } - to(t) { - const { element: s, slides: n, options: o } = this, i = Je(this), r = Tt(s); - let c = t; - if (this.isAnimating || i === c || u.get(s, vt)) return; - i < c || i === 0 && c === n.length - 1 ? this.direction = r ? "right" : "left" : (i > c || i === n.length - 1 && c === 0) && (this.direction = r ? "left" : "right"); - const { direction: a } = this; - c < 0 ? c = n.length - 1 : c >= n.length && (c = 0); - const l = a === "left" ? "next" : "prev", f = a === "left" ? "start" : "end", p = { - relatedTarget: n[c], - from: i, - to: c, - direction: a - }; - at(Be, p), at(Ge, p), b(s, Be), !Be.defaultPrevented && (this.index = c, Re(this, c), le(n[c]) && h(s, "slide") ? u.set( - s, - () => { - d(n[c], `${tt}-${l}`), kt(n[c]), d(n[c], `${tt}-${f}`), d(n[i], `${tt}-${f}`), x( - n[c], - () => this.slides && this.slides.length && Ns(this) - ); - }, - 0, - vt - ) : (d(n[c], T), v(n[i], T), u.set( - s, - () => { - u.clear(s, vt), s && o.interval && !this.isPaused && this.cycle(), b(s, Ge); - }, - 0, - vt - ))); - } - _toggleEventListeners = (t) => { - const { element: s, options: n, slides: o, controls: i, indicators: r } = this, { touch: c, pause: a, interval: l, keyboard: f } = n, p = t ? L : O; - a && l && (p(s, Ce, _i), p(s, as, xi)), c && o.length > 2 && (p( - s, - Sn, - Pi, - te - ), p(s, _e, Ms, { passive: !1 }), p(s, Vo, Ms, { passive: !1 })), i.length && i.forEach((y) => { - p(y, D, Ai); - }), r.length && r.forEach((y) => { - p(y, D, Si); - }), f && p(w(s), ye, Hi); - }; - dispose() { - const { isAnimating: t } = this, s = { - ...this, - isAnimating: t - }; - this._toggleEventListeners(), super.dispose(), s.isAnimating && x(s.slides[s.index], () => { - Ns(s); - }); - } +function an(e) { + e.preventDefault(); + let t = z(this, Ht) || K(this), n = t && Jt(t); + if (bt(this) || !n || n.isAnimating) return; + let r = +(x(this, Ut) || 0); + this && !E(this, "active") && !Number.isNaN(r) && n.to(r); } -const Lt = "collapsing", z = "collapse", qn = "Collapse", Li = `.${z}`, Un = `[${ot}="${z}"]`, Oi = { parent: null }, ve = (e) => F(e, qn), ki = (e) => new Yn(e), Bs = E(`show.bs.${z}`), Ni = E(`shown.bs.${z}`), Rs = E(`hide.bs.${z}`), Mi = E(`hidden.bs.${z}`), Bi = (e) => { - const { element: t, parent: s, triggers: n } = e; - b(t, Bs), Bs.defaultPrevented || (u.set(t, Te, 17), s && u.set(s, Te, 17), d(t, Lt), v(t, z), S(t, { height: `${t.scrollHeight}px` }), x(t, () => { - u.clear(t), s && u.clear(s), n.forEach((o) => I(o, Ee, "true")), v(t, Lt), d(t, z), d(t, g), S(t, { height: "" }), b(t, Ni); - })); -}, Fs = (e) => { - const { element: t, parent: s, triggers: n } = e; - b(t, Rs), Rs.defaultPrevented || (u.set(t, Te, 17), s && u.set(s, Te, 17), S(t, { height: `${t.scrollHeight}px` }), v(t, z), v(t, g), d(t, Lt), kt(t), S(t, { height: "0px" }), x(t, () => { - u.clear(t), s && u.clear(s), n.forEach((o) => I(o, Ee, "false")), v(t, Lt), d(t, z), S(t, { height: "" }), b(t, Mi); - })); -}, Ri = (e) => { - const { target: t } = e, s = t && M(t, Un), n = s && K(s), o = n && ve(n); - s && nt(s) || o && (o.toggle(), s?.tagName === "A" && e.preventDefault()); -}; -class Yn extends st { - static selector = Li; - static init = ki; - static getInstance = ve; - constructor(t, s) { - super(t, s); - const { element: n, options: o } = this, i = w(n); - this.triggers = [...U(Un, i)].filter( - (r) => K(r) === n - ), this.parent = A(o.parent) ? o.parent : ae(o.parent) ? K(n) || _(o.parent, i) : null, this._toggleEventListeners(!0); - } - get name() { - return qn; - } - get defaults() { - return Oi; - } - hide() { - const { triggers: t, element: s } = this; - u.get(s) || (Fs(this), t.length && t.forEach((n) => d(n, `${z}d`))); - } - show() { - const { element: t, parent: s, triggers: n } = this; - let o, i; - s && (o = [ - ...U(`.${z}.${g}`, s) - ].find((r) => ve(r)), i = o && ve(o)), (!s || !u.get(s)) && !u.get(t) && (i && o !== t && (Fs(i), i.triggers.forEach((r) => { - d(r, `${z}d`); - })), Bi(this), n.length && n.forEach((r) => v(r, `${z}d`))); - } - toggle() { - h(this.element, g) ? this.hide() : this.show(); - } - _toggleEventListeners = (t) => { - const s = t ? L : O, { triggers: n } = this; - n.length && n.forEach((o) => { - s(o, D, Ri); - }); - }; - dispose() { - this._toggleEventListeners(), super.dispose(); - } -} -var Fi = "1.1.0"; -const Wi = [ - "all", - "intersecting", - "update" -], Ws = "PositionObserver Error"; -var us = class { - entries; - static version = Fi; - /** `PositionObserver.tick` */ - _t; - /** `PositionObserver.root` */ - _r; - /** `PositionObserver.callbackMode` */ - _cm; - /** `PositionObserver.root.clientWidth` */ - _w; - /** `PositionObserver.root.clientHeight` */ - _h; - /** `IntersectionObserver.options.rootMargin` */ - _rm; - /** `IntersectionObserver.options.threshold` */ - _th; - /** `PositionObserver.callback` */ - _c; - /** - * The constructor takes two arguments, a `callback`, which is called - * whenever the position of an observed element changes and an `options` object. - * The callback function takes an array of `PositionObserverEntry` objects - * as its first argument and the PositionObserver instance as its second argument. - * - * @param callback the callback that applies to all targets of this observer - * @param options the options of this observer - */ - constructor(e, t) { - if (!Bn(e)) throw new Error(`${Ws}: ${e} is not a function.`); - this.entries = /* @__PURE__ */ new Map(), this._c = e, this._t = 0; - const s = j(t?.root) ? t.root : document?.documentElement; - this._r = s, this._rm = t?.rootMargin, this._th = t?.threshold; - this._cm = Wi.indexOf(t?.callbackMode || "intersecting"), this._w = s.clientWidth, this._h = s.clientHeight; - } - /** - * Start observing the position of the specified element. - * If the element is not currently attached to the DOM, - * it will NOT be added to the entries. - * - * @param target an `Element` target - */ - observe = (e) => { - if (!j(e)) throw new Error(`${Ws}: ${e} is not an instance of Element.`); - this._r.contains(e) && this._n(e).then((t) => { - t.boundingClientRect && !this.getEntry(e) && this.entries.set(e, t); - this._t || (this._t = requestAnimationFrame(this._rc)); - }); - }; - /** - * Stop observing the position of the specified element. - * - * @param target an `Element` target - */ - unobserve = (e) => { - this.entries.has(e) && this.entries.delete(e); - }; - /** - * Private method responsible for all the heavy duty, - * the observer's runtime. - * `PositionObserver.runCallback` - */ - _rc = () => { - if (!this.entries.size) { - this._t = 0; - return; - } - const { clientWidth: e, clientHeight: t } = this._r, s = new Promise((n) => { - const o = []; - this.entries.forEach(({ target: i, boundingClientRect: r, isIntersecting: c }) => { - this._r.contains(i) && this._n(i).then((a) => { - if (!a.isIntersecting) { - if (this._cm === 1) return; - if (this._cm === 2) { - c && (this.entries.set(i, a), o.push(a)); - return; - } - } - const { left: l, top: f } = a.boundingClientRect; - (r.top !== f || r.left !== l || this._w !== e || this._h !== t) && (this.entries.set(i, a), o.push(a)); - }); - }), this._w = e, this._h = t, n(o); - }); - this._t = requestAnimationFrame(async () => { - const n = await s; - n.length && this._c(n, this), this._rc(); - }); - }; - /** - * Check intersection status and resolve it - * right away. - * - * `PositionObserver.newEntryForTarget` - * - * @param target an `Element` target - */ - _n = (e) => new Promise((t) => { - new IntersectionObserver(([n], o) => { - o.disconnect(), t(n); - }, { - threshold: this._th, - rootMargin: this._rm - }).observe(e); - }); - /** - * Find the entry for a given target. - * - * @param target an `HTMLElement` target - */ - getEntry = (e) => this.entries.get(e); - /** - * Immediately stop observing all elements. - */ - disconnect = () => { - cancelAnimationFrame(this._t), this.entries.clear(), this._t = 0; - }; -}; -const Ot = ["dropdown", "dropup", "dropstart", "dropend"], Zn = "Dropdown", Qn = "dropdown-menu", Gn = (e) => { - const t = M(e, "A"); - return e.tagName === "A" && Jt(e, "href") && Y(e, "href")?.slice(-1) === "#" || t && Jt(t, "href") && Y(t, "href")?.slice(-1) === "#"; -}, [et, ts, es, ss] = Ot, zi = `[${ot}="${et}"]`, se = (e) => F(e, Zn), ji = (e) => new to(e), Ki = `${Qn}-end`, zs = [et, ts], js = [es, ss], Ks = ["A", "BUTTON"], Vi = { - offset: 5, - display: "dynamic" -}, Fe = E( - `show.bs.${et}` -), Vs = E( - `shown.bs.${et}` -), We = E( - `hide.bs.${et}` -), Xs = E(`hidden.bs.${et}`), Jn = E(`updated.bs.${et}`), qs = (e) => { - const { element: t, menu: s, parentElement: n, options: o } = e, { offset: i } = o; - if (R(s, "position") === "static") return; - const r = Tt(t), c = h(s, Ki); - ["margin", "top", "bottom", "left", "right"].forEach((B) => { - const Ct = {}; - Ct[B] = "", S(s, Ct); - }); - let l = Ot.find((B) => h(n, B)) || et; - const f = { - dropdown: [i, 0, 0], - dropup: [0, 0, i], - dropstart: r ? [-1, 0, 0, i] : [-1, i, 0], - dropend: r ? [-1, i, 0] : [-1, 0, 0, i] - }, p = { - dropdown: { top: "100%" }, - dropup: { top: "auto", bottom: "100%" }, - dropstart: r ? { left: "100%", right: "auto" } : { left: "auto", right: "100%" }, - dropend: r ? { left: "auto", right: "100%" } : { left: "100%", right: "auto" }, - menuStart: r ? { right: "0", left: "auto" } : { right: "auto", left: "0" }, - menuEnd: r ? { right: "auto", left: "0" } : { right: "0", left: "auto" } - }, { offsetWidth: y, offsetHeight: N } = s, { clientWidth: q, clientHeight: G } = dt(t), { - left: m, - top: V, - width: $t, - height: yt - } = It(t), C = m - y - i < 0, ft = m + y + $t + i >= q, it = V + N + i >= G, J = V + N + yt + i >= G, Bt = V - N - i < 0, $ = (!r && c || r && !c) && m + $t - y < 0, W = (r && c || !r && !c) && m + y >= q; - if (js.includes(l) && C && ft && (l = et), l === es && (r ? ft : C) && (l = ss), l === ss && (r ? C : ft) && (l = es), l === ts && Bt && !J && (l = et), l === et && J && !Bt && (l = ts), js.includes(l) && it && at(p[l], { - top: "auto", - bottom: 0 - }), zs.includes(l) && ($ || W)) { - let B = { left: "auto", right: "auto" }; - !$ && W && !r && (B = { left: "auto", right: 0 }), $ && !W && r && (B = { left: 0, right: "auto" }), B && at(p[l], B); - } - const Rt = f[l]; - S(s, { - ...p[l], - margin: `${Rt.map((B) => B && `${B}px`).join(" ")}` - }), zs.includes(l) && c && c && S(s, p[!r && $ || r && W ? "menuStart" : "menuEnd"]), b(n, Jn); -}, Xi = (e) => Array.from(e.children).map((t) => { - if (t && Ks.includes(t.tagName)) return t; - const { firstElementChild: s } = t; - return s && Ks.includes(s.tagName) ? s : null; -}).filter((t) => t), Us = (e) => { - const { element: t, options: s, menu: n } = e, o = e.open ? L : O, i = w(t); - o(i, D, Ys), o(i, rs, Ys), o(i, ye, Ui), o(i, Wo, Yi), s.display === "dynamic" && (e.open ? e._observer.observe(n) : e._observer.disconnect()); -}, gs = (e) => { - const t = [...Ot, "btn-group", "input-group"].map( - (s) => rt(`${s} ${g}`, w(e)) - ).find((s) => s.length); - if (t && t.length) - return [...t[0].children].find( - (s) => Ot.some((n) => n === Y(s, ot)) - ); -}, Ys = (e) => { - const { target: t, type: s } = e; - if (!A(t)) return; - const n = gs(t), o = n && se(n); - if (!o) return; - const { parentElement: i, menu: r } = o, c = i && i.contains(t) && (t.tagName === "form" || M(t, "form") !== null); - [D, xn].includes(s) && Gn(t) && e.preventDefault(), !c && s !== rs && t !== n && t !== r && o.hide(); -}; -function qi(e) { - const t = se(this); - nt(this) || t && (e.stopPropagation(), t.toggle(), Gn(this) && e.preventDefault()); +function on(e) { + e.preventDefault(); + let t = z(this, Ht) || K(this), n = t && Jt(t); + if (bt(this) || !n || n.isAnimating) return; + let r = x(this, Wt); + r === "next" ? n.next() : r === "prev" && n.prev(); } -const Ui = (e) => { - [qe, Ue].includes(e.code) && e.preventDefault(); +var sn = ({ code: e, target: t }) => { + let [n] = [...L(Ht, A(t))].filter((e) => st(e)), r = Jt(n); + if (!r || r.isAnimating || /textarea|input|select/i.test(t.nodeName)) return; + let i = ut(n); + e === (i ? "ArrowRight" : "ArrowLeft") ? r.prev() : e === (i ? re : v) && r.next(); }; -function Yi(e) { - const { code: t } = e, s = gs(this); - if (!s) return; - const n = se(s), { activeElement: o } = w(s); - if (!n || !o) return; - const { menu: i, open: r } = n, c = Xi(i); - if (c && c.length && [qe, Ue].includes(t)) { - let a = c.indexOf(o); - o === s ? a = 0 : t === Ue ? a = a > 1 ? a - 1 : 0 : t === qe && (a = a < c.length - 1 ? a + 1 : a), c[a] && lt(c[a]); - } - ls === t && r && (n.toggle(), lt(s)); +function cn(e) { + let { target: t } = e, n = Jt(this); + n && n.isTouch && !n.controls.includes(t) && !n.controls.includes(t?.parentElement) && (!n.indicator || !n.indicator.contains(t)) && e.preventDefault(); } -class to extends st { - static selector = zi; - static init = ji; - static getInstance = se; - constructor(t, s) { - super(t, s); - const { parentElement: n } = this.element, [o] = rt( - Qn, - n - ); - o && (this.parentElement = n, this.menu = o, this._observer = new us( - () => qs(this) - ), this._toggleEventListeners(!0)); - } - get name() { - return Zn; - } - get defaults() { - return Vi; - } - toggle() { - this.open ? this.hide() : this.show(); - } - show() { - const { element: t, open: s, menu: n, parentElement: o } = this; - if (s) return; - const i = gs(t), r = i && se(i); - r && r.hide(), [Fe, Vs, Jn].forEach( - (c) => { - c.relatedTarget = t; - } - ), b(o, Fe), !Fe.defaultPrevented && (d(n, g), d(o, g), I(t, Ee, "true"), qs(this), this.open = !s, lt(t), Us(this), b(o, Vs)); - } - hide() { - const { element: t, open: s, menu: n, parentElement: o } = this; - s && ([We, Xs].forEach((i) => { - i.relatedTarget = t; - }), b(o, We), !We.defaultPrevented && (v(n, g), v(o, g), I(t, Ee, "false"), this.open = !s, Us(this), b(o, Xs))); - } - _toggleEventListeners = (t) => { - (t ? L : O)(this.element, D, qi); - }; - dispose() { - this.open && this.hide(), this._toggleEventListeners(), super.dispose(); - } +function ln(e) { + let { target: t } = e, n = Jt(this); + if (!n || n.isAnimating || n.isTouch) return; + let { controls: r, indicator: i } = n; + ![...r, i].every((e) => e && (e === t || e.contains(t))) && this.contains(t) && (Xt = e.pageX, n.isTouch = !0, pn(n, !0)); } -const X = "modal", ps = "Modal", ms = "Offcanvas", Zi = "fixed-top", Qi = "fixed-bottom", eo = "sticky-top", so = "position-sticky", no = (e) => [ - ...rt(Zi, e), - ...rt(Qi, e), - ...rt(eo, e), - ...rt(so, e), - ...rt("is-fixed", e) -], Gi = (e) => { - const t = Nt(e); - S(t, { - paddingRight: "", - overflow: "" - }); - const s = no(t); - s.length && s.forEach((n) => { - S(n, { - paddingRight: "", - marginRight: "" - }); - }); -}, oo = (e) => { - const { clientWidth: t } = dt(e), { innerWidth: s } = On(e); - return Math.abs(s - t); -}, io = (e, t) => { - const s = Nt(e), n = parseInt(R(s, "paddingRight"), 10), i = R(s, "overflow") === "hidden" && n ? 0 : oo(e), r = no(s); - t && (S(s, { - overflow: "hidden", - paddingRight: `${n + i}px` - }), r.length && r.forEach((c) => { - const a = R(c, "paddingRight"); - if (c.style.paddingRight = `${parseInt(a, 10) + i}px`, [eo, so].some((l) => h(c, l))) { - const l = R(c, "marginRight"); - c.style.marginRight = `${parseInt(l, 10) - i}px`; - } - })); -}, Z = "offcanvas", Et = bt({ - tagName: "div", - className: "popup-container" -}), ro = (e, t) => { - const s = H(t) && t.nodeName === "BODY", n = H(t) && !s ? t : Et, o = s ? t : Nt(e); - H(e) && (n === Et && o.append(Et), n.append(e)); -}, co = (e, t) => { - const s = H(t) && t.nodeName === "BODY", n = H(t) && !s ? t : Et; - H(e) && (e.remove(), n === Et && !Et.children.length && Et.remove()); -}, vs = (e, t) => { - const s = H(t) && t.nodeName !== "BODY" ? t : Et; - return H(e) && s.contains(e); -}, ao = "backdrop", Zs = `${X}-${ao}`, Qs = `${Z}-${ao}`, lo = `.${X}.${g}`, bs = `.${Z}.${g}`, P = bt("div"), Mt = (e) => _( - `${lo},${bs}`, - w(e) -), ws = (e) => { - const t = e ? Zs : Qs; - [Zs, Qs].forEach((s) => { - v(P, s); - }), d(P, t); -}, ho = (e, t, s) => { - ws(s), ro(P, Nt(e)), t && d(P, k); -}, fo = () => { - h(P, g) || (d(P, g), kt(P)); -}, He = () => { - v(P, g); -}, uo = (e) => { - Mt(e) || (v(P, k), co(P, Nt(e)), Gi(e)); -}, go = (e) => A(e) && R(e, "visibility") !== "hidden" && e.offsetParent !== null, Ji = `.${X}`, tr = `[${ot}="${X}"]`, er = `[${Se}="${X}"]`, po = `${X}-static`, sr = { - backdrop: !0, - keyboard: !0 -}, ne = (e) => F(e, ps), nr = (e) => new bo(e), be = E( - `show.bs.${X}` -), Gs = E( - `shown.bs.${X}` -), ze = E( - `hide.bs.${X}` -), Js = E( - `hidden.bs.${X}` -), mo = (e) => { - const { element: t } = e, s = oo(t), { clientHeight: n, scrollHeight: o } = dt(t), { clientHeight: i, scrollHeight: r } = t, c = i !== r; - if (!c && s) { - const l = { [Tt(t) ? "paddingLeft" : "paddingRight"]: `${s}px` }; - S(t, l); - } - io(t, c || n !== o); -}, vo = (e, t) => { - const s = t ? L : O, { element: n } = e; - s(n, D, rr), s(w(n), ye, ir), t ? e._observer.observe(n) : e._observer.disconnect(); -}, tn = (e) => { - const { triggers: t, element: s, relatedTarget: n } = e; - uo(s), S(s, { paddingRight: "", display: "" }), vo(e); - const o = be.relatedTarget || t.find(go); - o && lt(o), Js.relatedTarget = n || void 0, b(s, Js), xe(s); -}, en = (e) => { - const { element: t, relatedTarget: s } = e; - lt(t), vo(e, !0), Gs.relatedTarget = s || void 0, b(t, Gs), xe(t); -}, sn = (e) => { - const { element: t, hasFade: s } = e; - S(t, { display: "block" }), mo(e), Mt(t) || S(Nt(t), { overflow: "hidden" }), d(t, g), Dt(t, re), I(t, $e, "true"), s ? x(t, () => en(e)) : en(e); -}, nn = (e) => { - const { element: t, options: s, hasFade: n } = e; - s.backdrop && n && h(P, g) && !Mt(t) ? (He(), x(P, () => tn(e))) : tn(e); +var un = (e) => { + Zt = e.pageX; +}, dn = (e) => { + let { target: t } = e, n = A(t), r = [...L(Ht, n)].map((e) => Jt(e)).find((e) => e.isTouch); + if (!r) return; + let { element: i, index: a } = r, o = ut(i); + Qt = e.pageX, r.isTouch = !1, pn(r), !n.getSelection()?.toString().length && i.contains(t) && Math.abs(Xt - Qt) > 120 && (Zt < Xt ? r.to(a + (o ? -1 : 1)) : Zt > Xt && r.to(a + (o ? 1 : -1))), Xt = 0, Zt = 0, Qt = 0; +}, fn = (e, t) => { + let { indicators: n } = e; + [...n].forEach((e) => T(e, G)), e.indicators[t] && w(n[t], G); +}, pn = (e, t) => { + let { element: n } = e, r = t ? V : H; + r(A(n), h, un, Ne), r(A(n), g, dn, Ne); +}, mn = (e) => { + let { slides: t, element: n } = e, r = B(`.${q}.${G}`, n); + return r ? [...t].indexOf(r) : -1; +}, hn = class extends W { + static selector = Ht; + static init = Yt; + static getInstance = Jt; + constructor(e, t) { + super(e, t); + let { element: n } = this; + this.direction = ut(n) ? "right" : "left", this.isTouch = !1, this.slides = pt(q, n); + let { slides: r } = this; + if (r.length < 2) return; + let i = mn(this), a = [...r].find((e) => $e(e, `.${q}-next`)); + this.index = i; + let o = A(n); + this.controls = [...L(`[${Wt}]`, n), ...L(`[${Wt}][${Lt}="#${n.id}"]`, o)].filter((e, t, n) => t === n.indexOf(e)), this.indicator = B(`.${Rt}-indicators`, n), this.indicators = [...this.indicator ? L(`[${Ut}]`, this.indicator) : [], ...L(`[${Ut}][${Lt}="#${n.id}"]`, o)].filter((e, t, n) => t === n.indexOf(e)); + let { options: s } = this; + this.options.interval = s.interval === !0 ? qt.interval : s.interval, a ? this.index = [...r].indexOf(a) : i < 0 && (this.index = 0, w(r[0], G), this.indicators.length && fn(this, 0)), this.indicators.length && fn(this, this.index), this._toggleEventListeners(!0), s.interval && this.cycle(); + } + get name() { + return zt; + } + get defaults() { + return qt; + } + get isPaused() { + return E(this.element, Gt); + } + get isAnimating() { + return B(`.${q}-next,.${q}-prev`, this.element) !== null; + } + cycle() { + let { element: e, options: t, isPaused: n, index: r } = this; + I.clear(e, Rt), n && (I.clear(e, Gt), T(e, Gt)), I.set(e, () => { + this.element && !this.isPaused && !this.isTouch && st(e) && this.to(r + 1); + }, t.interval, Rt); + } + pause() { + let { element: e, options: t } = this; + this.isPaused || !t.interval || (w(e, Gt), I.set(e, () => {}, 1, Gt)); + } + next() { + this.isAnimating || this.to(this.index + 1); + } + prev() { + this.isAnimating || this.to(this.index - 1); + } + to(e) { + let { element: t, slides: n, options: r } = this, i = mn(this), a = ut(t), o = e; + if (this.isAnimating || i === o || I.get(t, Wt)) return; + i < o || i === 0 && o === n.length - 1 ? this.direction = a ? "right" : "left" : (i > o || i === n.length - 1 && o === 0) && (this.direction = a ? "left" : "right"); + let { direction: s } = this; + o < 0 ? o = n.length - 1 : o >= n.length && (o = 0); + let c = s === "left" ? "next" : "prev", l = s === "left" ? "start" : "end", u = { + relatedTarget: n[o], + from: i, + to: o, + direction: s + }; + Ce($t, u), Ce(en, u), j(t, $t), !$t.defaultPrevented && (this.index = o, fn(this, o), De(n[o]) && E(t, "slide") ? I.set(t, () => { + w(n[o], `${q}-${c}`), Pe(n[o]), w(n[o], `${q}-${l}`), w(n[i], `${q}-${l}`), N(n[o], () => this.slides && this.slides.length && tn(this)); + }, 0, Wt) : (w(n[o], G), T(n[i], G), I.set(t, () => { + I.clear(t, Wt), t && r.interval && !this.isPaused && this.cycle(), j(t, en); + }, 0, Wt))); + } + _toggleEventListeners = (e) => { + let { element: t, options: n, slides: r, controls: i, indicators: a } = this, { touch: o, pause: s, interval: c, keyboard: u } = n, f = e ? V : H; + s && c && (f(t, p, nn), f(t, m, rn)), o && r.length > 2 && (f(t, ee, ln, Ne), f(t, te, cn, { passive: !1 }), f(t, ne, cn, { passive: !1 })), i.length && i.forEach((e) => { + f(e, d, on); + }), a.length && a.forEach((e) => { + f(e, d, an); + }), u && f(A(t), l, sn); + }; + dispose() { + let { isAnimating: e } = this, t = { + ...this, + isAnimating: e + }; + this._toggleEventListeners(), super.dispose(), t.isAnimating && N(t.slides[t.index], () => { + tn(t); + }); + } +}, gn = "collapsing", J = "collapse", _n = "Collapse", vn = `.${J}`, yn = `[${At}="${J}"]`, bn = { parent: null }, xn = (e) => k(e, _n), Sn = (e) => new An(e), Cn = P(`show.bs.${J}`), wn = P(`shown.bs.${J}`), Tn = P(`hide.bs.${J}`), En = P(`hidden.bs.${J}`), Dn = (e) => { + let { element: n, parent: r, triggers: i } = e; + j(n, Cn), Cn.defaultPrevented || (I.set(n, le, 17), r && I.set(r, le, 17), w(n, gn), T(n, J), F(n, { height: `${n.scrollHeight}px` }), N(n, () => { + I.clear(n), r && I.clear(r), i.forEach((e) => C(e, t, "true")), T(n, gn), w(n, J), w(n, U), F(n, { height: "" }), j(n, wn); + })); +}, On = (e) => { + let { element: n, parent: r, triggers: i } = e; + j(n, Tn), Tn.defaultPrevented || (I.set(n, le, 17), r && I.set(r, le, 17), F(n, { height: `${n.scrollHeight}px` }), T(n, J), T(n, U), w(n, gn), Pe(n), F(n, { height: "0px" }), N(n, () => { + I.clear(n), r && I.clear(r), i.forEach((e) => C(e, t, "false")), T(n, gn), w(n, J), F(n, { height: "" }), j(n, En); + })); +}, kn = (e) => { + let { target: t } = e, n = t && z(t, yn), r = n && K(n), i = r && xn(r); + n && bt(n) || i && (i.toggle(), n?.tagName === "A" && e.preventDefault()); +}, An = class extends W { + static selector = vn; + static init = Sn; + static getInstance = xn; + constructor(e, t) { + super(e, t); + let { element: n, options: r } = this, i = A(n); + this.triggers = [...L(yn, i)].filter((e) => K(e) === n), this.parent = R(r.parent) ? r.parent : be(r.parent) ? K(n) || B(r.parent, i) : null, this._toggleEventListeners(!0); + } + get name() { + return _n; + } + get defaults() { + return bn; + } + hide() { + let { triggers: e, element: t } = this; + I.get(t) || (On(this), e.length && e.forEach((e) => w(e, `${J}d`))); + } + show() { + let { element: e, parent: t, triggers: n } = this, r, i; + t && (r = [...L(`.${J}.${U}`, t)].find((e) => xn(e)), i = r && xn(r)), (!t || !I.get(t)) && !I.get(e) && (i && r !== e && (On(i), i.triggers.forEach((e) => { + w(e, `${J}d`); + })), Dn(this), n.length && n.forEach((e) => T(e, `${J}d`))); + } + toggle() { + E(this.element, "show") ? this.hide() : this.show(); + } + _toggleEventListeners = (e) => { + let t = e ? V : H, { triggers: n } = this; + n.length && n.forEach((e) => { + t(e, d, kn); + }); + }; + dispose() { + this._toggleEventListeners(), super.dispose(); + } +}, jn = "1.1.0", Mn = [ + "all", + "intersecting", + "update" +], Nn = "PositionObserver Error", Pn = class { + entries; + static version = jn; + _t; + _r; + _cm; + _w; + _h; + _rm; + _th; + _c; + constructor(e, t) { + if (!ct(e)) throw Error(`${Nn}: ${e} is not a function.`); + this.entries = /* @__PURE__ */ new Map(), this._c = e, this._t = 0; + let n = O(t?.root) ? t.root : document?.documentElement; + this._r = n, this._rm = t?.rootMargin, this._th = t?.threshold, this._cm = Mn.indexOf(t?.callbackMode || "intersecting"), this._w = n.clientWidth, this._h = n.clientHeight; + } + observe = (e) => { + if (!O(e)) throw Error(`${Nn}: ${e} is not an instance of Element.`); + this._r.contains(e) && this._n(e).then((t) => { + /* istanbul ignore else @preserve */ + t.boundingClientRect && !this.getEntry(e) && this.entries.set(e, t), this._t ||= requestAnimationFrame(this._rc); + }); + }; + unobserve = (e) => { + /* istanbul ignore else @preserve */ + this.entries.has(e) && this.entries.delete(e); + }; + _rc = () => { + /* istanbul ignore if @preserve - a guard must be set */ + if (!this.entries.size) { + this._t = 0; + return; + } + let { clientWidth: e, clientHeight: t } = this._r, n = new Promise((n) => { + let r = []; + this.entries.forEach(({ target: n, boundingClientRect: i, isIntersecting: a }) => { + this._r.contains(n) && this._n(n).then((o) => { + /* istanbul ignore if @preserve - make sure to only count visible entries */ + if (!o.isIntersecting) { + if (this._cm === 1) return; + if (this._cm === 2) { + a && (this.entries.set(n, o), r.push(o)); + return; + } + } + let { left: s, top: c } = o.boundingClientRect; + /* istanbul ignore else @preserve - only schedule entries that changed position */ + (i.top !== c || i.left !== s || this._w !== e || this._h !== t) && (this.entries.set(n, o), r.push(o)); + }); + }), this._w = e, this._h = t, n(r); + }); + this._t = requestAnimationFrame(async () => { + let e = await n; + e.length && this._c(e, this), this._rc(); + }); + }; + _n = (e) => new Promise((t) => { + new IntersectionObserver(([e], n) => { + n.disconnect(), t(e); + }, { + threshold: this._th, + rootMargin: this._rm + }).observe(e); + }); + getEntry = (e) => this.entries.get(e); + disconnect = () => { + cancelAnimationFrame(this._t), this.entries.clear(), this._t = 0; + }; +}, Fn = [ + "dropdown", + "dropup", + "dropstart", + "dropend" +], In = "Dropdown", Ln = "dropdown-menu", Rn = (e) => { + let t = z(e, "A"); + return e.tagName === "A" && S(e, "href") && x(e, "href")?.slice(-1) === "#" || t && S(t, "href") && x(t, "href")?.slice(-1) === "#"; +}, [Y, zn, Bn, Vn] = Fn, Hn = `[${At}="${Y}"]`, Un = (e) => k(e, In), Wn = (e) => new lr(e), Gn = `${Ln}-end`, Kn = [Y, zn], qn = [Bn, Vn], Jn = ["A", "BUTTON"], Yn = { + offset: 5, + display: "dynamic" +}, Xn = P(`show.bs.${Y}`), Zn = P(`shown.bs.${Y}`), Qn = P(`hide.bs.${Y}`), $n = P(`hidden.bs.${Y}`), er = P(`updated.bs.${Y}`), tr = (e) => { + let { element: t, menu: n, parentElement: r, options: i } = e, { offset: a } = i; + if (M(n, "position") === "static") return; + let o = ut(t), s = E(n, Gn); + [ + "margin", + "top", + "bottom", + "left", + "right" + ].forEach((e) => { + let t = {}; + t[e] = "", F(n, t); + }); + let c = Fn.find((e) => E(r, e)) || Y, l = { + dropdown: [ + a, + 0, + 0 + ], + dropup: [ + 0, + 0, + a + ], + dropstart: o ? [ + -1, + 0, + 0, + a + ] : [ + -1, + a, + 0 + ], + dropend: o ? [ + -1, + a, + 0 + ] : [ + -1, + 0, + 0, + a + ] + }, u = { + dropdown: { top: "100%" }, + dropup: { + top: "auto", + bottom: "100%" + }, + dropstart: o ? { + left: "100%", + right: "auto" + } : { + left: "auto", + right: "100%" + }, + dropend: o ? { + left: "auto", + right: "100%" + } : { + left: "100%", + right: "auto" + }, + menuStart: o ? { + right: "0", + left: "auto" + } : { + right: "auto", + left: "0" + }, + menuEnd: o ? { + right: "auto", + left: "0" + } : { + right: "0", + left: "auto" + } + }, { offsetWidth: d, offsetHeight: f } = n, { clientWidth: p, clientHeight: m } = qe(t), { left: ee, top: h, width: g, height: te } = Ge(t), ne = ee - d - a < 0, _ = ee + d + g + a >= p, re = h + f + a >= m, v = h + f + te + a >= m, y = h - f - a < 0, b = (!o && s || o && !s) && ee + g - d < 0, ie = (o && s || !o && !s) && ee + d >= p; + if (qn.includes(c) && ne && _ && (c = Y), c === Bn && (o ? _ : ne) && (c = Vn), c === Vn && (o ? ne : _) && (c = Bn), c === zn && y && !v && (c = Y), c === Y && v && !y && (c = zn), qn.includes(c) && re && Ce(u[c], { + top: "auto", + bottom: 0 + }), Kn.includes(c) && (b || ie)) { + let e = { + left: "auto", + right: "auto" + }; + !b && ie && !o && (e = { + left: "auto", + right: 0 + }), b && !ie && o && (e = { + left: 0, + right: "auto" + }), e && Ce(u[c], e); + } + let ae = l[c]; + F(n, { + ...u[c], + margin: `${ae.map((e) => e && `${e}px`).join(" ")}` + }), Kn.includes(c) && s && s && F(n, u[!o && b || o && ie ? "menuStart" : "menuEnd"]), j(r, er); +}, nr = (e) => Array.from(e.children).map((e) => { + if (e && Jn.includes(e.tagName)) return e; + let { firstElementChild: t } = e; + return t && Jn.includes(t.tagName) ? t : null; +}).filter((e) => e), rr = (e) => { + let { element: t, options: n, menu: r } = e, i = e.open ? V : H, a = A(t); + i(a, d, ar), i(a, o, ar), i(a, l, sr), i(a, u, cr), n.display === "dynamic" && (e.open ? e._observer.observe(r) : e._observer.disconnect()); +}, ir = (e) => { + let t = [ + ...Fn, + "btn-group", + "input-group" + ].map((t) => pt(`${t} ${U}`, A(e))).find((e) => e.length); + if (t && t.length) return [...t[0].children].find((e) => Fn.some((t) => t === x(e, At))); +}, ar = (e) => { + let { target: t, type: n } = e; + if (!R(t)) return; + let r = ir(t), i = r && Un(r); + if (!i) return; + let { parentElement: a, menu: o } = i, s = a && a.contains(t) && (t.tagName === "form" || z(t, "form") !== null); + ["click", "mousedown"].includes(n) && Rn(t) && e.preventDefault(), !s && n !== "focus" && t !== r && t !== o && i.hide(); }; function or(e) { - const t = K(this), s = t && ne(t); - nt(this) || s && (this.tagName === "A" && e.preventDefault(), s.relatedTarget = this, s.toggle()); -} -const ir = ({ code: e, target: t }) => { - const s = _(lo, w(t)), n = s && ne(s); - if (!n) return; - const { options: o } = n; - o.keyboard && e === ls && h(s, g) && (n.relatedTarget = null, n.hide()); -}, rr = (e) => { - const { currentTarget: t } = e, s = t && ne(t); - if (!s || !t || u.get(t)) return; - const { options: n, isStatic: o, modalDialog: i } = s, { backdrop: r } = n, { target: c } = e, a = w(t)?.getSelection()?.toString().length, l = i.contains(c), f = c && M(c, er); - o && !l ? u.set( - t, - () => { - d(t, po), x(i, () => cr(s)); - }, - 17 - ) : (f || !a && !o && !l && r) && (s.relatedTarget = f || null, s.hide(), e.preventDefault()); -}, cr = (e) => { - const { element: t, modalDialog: s } = e, n = (le(s) || 0) + 17; - v(t, po), u.set(t, () => u.clear(t), n); -}; -class bo extends st { - static selector = Ji; - static init = nr; - static getInstance = ne; - constructor(t, s) { - super(t, s); - const { element: n } = this, o = _( - `.${X}-dialog`, - n - ); - o && (this.modalDialog = o, this.triggers = [ - ...U( - tr, - w(n) - ) - ].filter( - (i) => K(i) === n - ), this.isStatic = this.options.backdrop === "static", this.hasFade = h(n, k), this.relatedTarget = null, this._observer = new ResizeObserver(() => this.update()), this._toggleEventListeners(!0)); - } - get name() { - return ps; - } - get defaults() { - return sr; - } - toggle() { - h(this.element, g) ? this.hide() : this.show(); - } - show() { - const { element: t, options: s, hasFade: n, relatedTarget: o } = this, { backdrop: i } = s; - let r = 0; - if (h(t, g) || (be.relatedTarget = o || void 0, b(t, be), be.defaultPrevented)) return; - const c = Mt(t); - if (c && c !== t) { - const a = ne(c) || F( - c, - ms - ); - a && a.hide(); - } - i ? (vs(P) ? ws(!0) : ho(t, n, !0), r = le(P), fo(), setTimeout(() => sn(this), r)) : (sn(this), c && h(P, g) && He()); - } - hide() { - const { element: t, hasFade: s, relatedTarget: n } = this; - h(t, g) && (ze.relatedTarget = n || void 0, b(t, ze), !ze.defaultPrevented && (v(t, g), I(t, re, "true"), Dt(t, $e), s ? x(t, () => nn(this)) : nn(this))); - } - update = () => { - h(this.element, g) && mo(this); - }; - _toggleEventListeners = (t) => { - const s = t ? L : O, { triggers: n } = this; - n.length && n.forEach((o) => { - s(o, D, or); - }); - }; - dispose() { - const t = { ...this }, { modalDialog: s, hasFade: n } = t, o = () => setTimeout(() => super.dispose(), 17); - this.hide(), this._toggleEventListeners(), n ? x(s, o) : o(); - } + let t = Un(this); + bt(this) || t && (e.stopPropagation(), t.toggle(), Rn(this) && e.preventDefault()); } -const ar = `.${Z}`, wo = `[${ot}="${Z}"]`, lr = `[${Se}="${Z}"]`, Pe = `${Z}-toggling`, dr = { - backdrop: !0, - keyboard: !0, - scroll: !1 -}, oe = (e) => F(e, ms), hr = (e) => new yo(e), we = E(`show.bs.${Z}`), Eo = E(`shown.bs.${Z}`), je = E(`hide.bs.${Z}`), To = E(`hidden.bs.${Z}`), fr = (e) => { - const { element: t } = e, { clientHeight: s, scrollHeight: n } = dt(t); - io(t, s !== n); -}, $o = (e, t) => { - const s = t ? L : O, n = w(e.element); - s(n, ye, mr), s(n, D, pr); -}, on = (e) => { - const { element: t, options: s } = e; - s.scroll || (fr(e), S(Nt(t), { overflow: "hidden" })), d(t, Pe), d(t, g), S(t, { visibility: "visible" }), x(t, () => vr(e)); -}, ur = (e) => { - const { element: t, options: s } = e, n = Mt(t); - t.blur(), !n && s.backdrop && h(P, g) && He(), x(t, () => br(e)); +var sr = (e) => { + ["ArrowDown", "ArrowUp"].includes(e.code) && e.preventDefault(); }; -function gr(e) { - const t = K(this), s = t && oe(t); - nt(this) || s && (s.relatedTarget = this, s.toggle(), this.tagName === "A" && e.preventDefault()); +function cr(e) { + let { code: t } = e, n = ir(this); + if (!n) return; + let r = Un(n), { activeElement: i } = A(n); + if (!r || !i) return; + let { menu: a, open: o } = r, s = nr(a); + if (s && s.length && ["ArrowDown", "ArrowUp"].includes(t)) { + let e = s.indexOf(i); + i === n ? e = 0 : t === "ArrowUp" ? e = e > 1 ? e - 1 : 0 : t === "ArrowDown" && (e = e < s.length - 1 ? e + 1 : e), s[e] && Oe(s[e]); + } + t === "Escape" && o && (r.toggle(), Oe(n)); } -const pr = (e) => { - const { target: t } = e, s = _( - bs, - w(t) - ); - if (!s) return; - const n = _( - lr, - s - ), o = oe(s); - if (!o) return; - const { options: i, triggers: r } = o, { backdrop: c } = i, a = M(t, wo), l = w(s).getSelection(); - P.contains(t) && c === "static" || (!(l && l.toString().length) && (!s.contains(t) && c && (!a || r.includes(t)) || n && n.contains(t)) && (o.relatedTarget = n && n.contains(t) ? n : void 0, o.hide()), a && a.tagName === "A" && e.preventDefault()); -}, mr = ({ code: e, target: t }) => { - const s = _( - bs, - w(t) - ), n = s && oe(s); - n && n.options.keyboard && e === ls && (n.relatedTarget = void 0, n.hide()); +var lr = class extends W { + static selector = Hn; + static init = Wn; + static getInstance = Un; + constructor(e, t) { + super(e, t); + let { parentElement: n } = this.element, [r] = pt(Ln, n); + r && (this.parentElement = n, this.menu = r, this._observer = new Pn(() => tr(this)), this._toggleEventListeners(!0)); + } + get name() { + return In; + } + get defaults() { + return Yn; + } + toggle() { + this.open ? this.hide() : this.show(); + } + show() { + let { element: e, open: n, menu: r, parentElement: i } = this; + if (n) return; + let a = ir(e), o = a && Un(a); + o && o.hide(), [ + Xn, + Zn, + er + ].forEach((t) => { + t.relatedTarget = e; + }), j(i, Xn), !Xn.defaultPrevented && (w(r, U), w(i, U), C(e, t, "true"), tr(this), this.open = !n, Oe(e), rr(this), j(i, Zn)); + } + hide() { + let { element: e, open: n, menu: r, parentElement: i } = this; + n && ([Qn, $n].forEach((t) => { + t.relatedTarget = e; + }), j(i, Qn), !Qn.defaultPrevented && (T(r, U), T(i, U), C(e, t, "false"), this.open = !n, rr(this), j(i, $n))); + } + _toggleEventListeners = (e) => { + (e ? V : H)(this.element, d, or); + }; + dispose() { + this.open && this.hide(), this._toggleEventListeners(), super.dispose(); + } +}, X = "modal", ur = "Modal", dr = "Offcanvas", fr = "fixed-top", pr = "fixed-bottom", mr = "sticky-top", hr = "position-sticky", gr = (e) => [ + ...pt(fr, e), + ...pt(pr, e), + ...pt(mr, e), + ...pt(hr, e), + ...pt("is-fixed", e) +], _r = (e) => { + let t = Ke(e); + F(t, { + paddingRight: "", + overflow: "" + }); + let n = gr(t); + n.length && n.forEach((e) => { + F(e, { + paddingRight: "", + marginRight: "" + }); + }); }, vr = (e) => { - const { element: t } = e; - v(t, Pe), Dt(t, re), I(t, $e, "true"), I(t, "role", "dialog"), b(t, Eo), $o(e, !0), lt(t), xe(t); -}, br = (e) => { - const { element: t, triggers: s } = e; - I(t, re, "true"), Dt(t, $e), Dt(t, "role"), S(t, { visibility: "" }); - const n = we.relatedTarget || s.find(go); - n && lt(n), uo(t), b(t, To), v(t, Pe), xe(t), Mt(t) || $o(e); -}; -class yo extends st { - static selector = ar; - static init = hr; - static getInstance = oe; - constructor(t, s) { - super(t, s); - const { element: n } = this; - this.triggers = [ - ...U( - wo, - w(n) - ) - ].filter( - (o) => K(o) === n - ), this.relatedTarget = void 0, this._toggleEventListeners(!0); - } - get name() { - return ms; - } - get defaults() { - return dr; - } - toggle() { - h(this.element, g) ? this.hide() : this.show(); - } - show() { - const { element: t, options: s, relatedTarget: n } = this; - let o = 0; - if (h(t, g) || (we.relatedTarget = n || void 0, Eo.relatedTarget = n || void 0, b(t, we), we.defaultPrevented)) return; - const i = Mt(t); - if (i && i !== t) { - const r = oe(i) || F( - i, - ps - ); - r && r.hide(); - } - s.backdrop ? (vs(P) ? ws() : ho(t, !0), o = le(P), fo(), setTimeout(() => on(this), o)) : (on(this), i && h(P, g) && He()); - } - hide() { - const { element: t, relatedTarget: s } = this; - h(t, g) && (je.relatedTarget = s || void 0, To.relatedTarget = s || void 0, b(t, je), !je.defaultPrevented && (d(t, Pe), v(t, g), ur(this))); - } - _toggleEventListeners = (t) => { - const s = t ? L : O; - this.triggers.forEach((n) => { - s(n, D, gr); - }); - }; - dispose() { - const { element: t } = this, s = h(t, g), n = () => setTimeout(() => super.dispose(), 1); - this.hide(), this._toggleEventListeners(), s ? x(t, n) : n(); - } -} -const Pt = "popover", Es = "Popover", ct = "tooltip", Co = (e) => { - const t = e === ct, s = t ? `${e}-inner` : `${e}-body`, n = t ? "" : `

`, o = `
`, i = `
`; - return `
${n + o + i}
`; -}, _o = { - top: "top", - bottom: "bottom", - left: "start", - right: "end" -}, ns = (e) => { - requestAnimationFrame(() => { - const t = /\b(top|bottom|start|end)+/, { element: s, tooltip: n, container: o, offsetParent: i, options: r, arrow: c } = e; - if (!n) return; - const a = Tt(s), { x: l, y: f } = ni(i); - S(n, { - top: "", - left: "", - right: "", - bottom: "" - }); - const { offsetWidth: p, offsetHeight: y } = n, { clientWidth: N, clientHeight: q, offsetWidth: G } = dt(s); - let { placement: m } = r; - const { clientWidth: V, offsetWidth: $t } = o, C = R( - o, - "position" - ) === "fixed", ft = Math.abs(C ? V - $t : N - G), it = a && C ? ft : 0, J = N - (a ? 0 : ft) - 1, Bt = e._observer.getEntry(s), { - width: $, - height: W, - left: Rt, - right: B, - top: Ct - } = Bt?.boundingClientRect || It(s, !0), { - x: fe, - y: Ft - } = ci( - s, - i, - { x: l, y: f } - ); - S(c, { - top: "", - left: "", - right: "", - bottom: "" - }); - let _t = 0, Xt = "", ut = 0, De = "", Wt = "", ue = "", Ie = ""; - const xt = c.offsetWidth || 0, gt = c.offsetHeight || 0, Le = xt / 2; - let qt = Ct - y - gt < 0, Ut = Ct + y + W + gt >= q, Yt = Rt - p - xt < it, Zt = Rt + p + $ + xt >= J; - const ge = ["left", "right"], Oe = ["top", "bottom"]; - qt = ge.includes(m) ? Ct + W / 2 - y / 2 - gt < 0 : qt, Ut = ge.includes(m) ? Ct + y / 2 + W / 2 + gt >= q : Ut, Yt = Oe.includes(m) ? Rt + $ / 2 - p / 2 < it : Yt, Zt = Oe.includes(m) ? Rt + p / 2 + $ / 2 >= J : Zt, m = ge.includes(m) && Yt && Zt ? "top" : m, m = m === "top" && qt ? "bottom" : m, m = m === "bottom" && Ut ? "top" : m, m = m === "left" && Yt ? "right" : m, m = m === "right" && Zt ? "left" : m, n.className.includes(m) || (n.className = n.className.replace( - t, - _o[m] - )), ge.includes(m) ? (m === "left" ? ut = fe - p - xt : ut = fe + $ + xt, qt && Ut ? (_t = 0, Xt = 0, Wt = Ft + W / 2 - gt / 2) : qt ? (_t = Ft, Xt = "", Wt = W / 2 - xt) : Ut ? (_t = Ft - y + W, Xt = "", Wt = y - W / 2 - xt) : (_t = Ft - y / 2 + W / 2, Wt = y / 2 - gt / 2)) : Oe.includes(m) && (m === "top" ? _t = Ft - y - gt : _t = Ft + W + gt, Yt ? (ut = 0, ue = fe + $ / 2 - Le) : Zt ? (ut = "auto", De = 0, Ie = $ / 2 + J - B - Le) : (ut = fe - p / 2 + $ / 2, ue = p / 2 - Le)), S(n, { - top: `${_t}px`, - bottom: Xt === "" ? "" : `${Xt}px`, - left: ut === "auto" ? ut : `${ut}px`, - right: De !== "" ? `${De}px` : "" - }), A(c) && (Wt !== "" && (c.style.top = `${Wt}px`), ue !== "" ? c.style.left = `${ue}px` : Ie !== "" && (c.style.right = `${Ie}px`)); - const Fo = E( - `updated.bs.${ee(e.name)}` - ); - b(s, Fo); - }); -}, os = { - template: Co(ct), - title: "", - customClass: "", - trigger: "hover focus", - placement: "top", - sanitizeFn: void 0, - animation: !0, - delay: 200, - container: document.body, - content: "", - dismissible: !1, - btnClose: "" -}, xo = "data-original-title", St = "Tooltip", mt = (e, t, s) => { - if (ae(t) && t.length) { - let n = t.trim(); - Bn(s) && (n = s(n)); - const i = new DOMParser().parseFromString(n, "text/html"); - e.append(...i.body.childNodes); - } else A(t) ? e.append(t) : (li(t) || ai(t) && t.every(H)) && e.append(...t); -}, wr = (e) => { - const t = e.name === St, { id: s, element: n, options: o } = e, { - title: i, - placement: r, - template: c, - animation: a, - customClass: l, - sanitizeFn: f, - dismissible: p, - content: y, - btnClose: N - } = o, q = t ? ct : Pt, G = { ..._o }; - let m = [], V = []; - Tt(n) && (G.left = "end", G.right = "start"); - const $t = `bs-${q}-${G[r]}`; - let yt; - if (A(c)) - yt = c; - else { - const $ = bt("div"); - mt($, c, f), yt = $.firstChild; - } - if (!A(yt)) return; - e.tooltip = yt.cloneNode(!0); - const { tooltip: C } = e; - I(C, "id", s), I(C, "role", ct); - const ft = t ? `${ct}-inner` : `${Pt}-body`, it = t ? null : _(`.${Pt}-header`, C), J = _(`.${ft}`, C); - e.arrow = _( - `.${q}-arrow`, - C - ); - const { arrow: Bt } = e; - if (A(i)) m = [i.cloneNode(!0)]; - else { - const $ = bt("div"); - mt($, i, f), m = [...$.childNodes]; - } - if (A(y)) V = [y.cloneNode(!0)]; - else { - const $ = bt("div"); - mt($, y, f), V = [...$.childNodes]; - } - if (p) - if (i) - if (A(N)) - m = [...m, N.cloneNode(!0)]; - else { - const $ = bt("div"); - mt($, N, f), m = [...m, $.firstChild]; - } - else if (it && it.remove(), A(N)) - V = [...V, N.cloneNode(!0)]; - else { - const $ = bt("div"); - mt($, N, f), V = [...V, $.firstChild]; - } - t ? i && J && mt(J, i, f) : (i && it && mt(it, m, f), y && J && mt(J, V, f), e.btn = _(".btn-close", C) || void 0), d(C, "position-absolute"), d(Bt, "position-absolute"), h(C, q) || d(C, q), a && !h(C, k) && d(C, k), l && !h(C, l) && d(C, l), h(C, $t) || d(C, $t); -}, Er = (e) => { - const t = ["HTML", "BODY"], s = []; - let { parentNode: n } = e; - for (; n && !t.includes(n.nodeName); ) - n = oi(n), Ln(n) || ii(n) || s.push(n); - return s.find((o, i) => (R(o, "position") !== "relative" || R(o, "position") === "relative" && o.offsetHeight !== o.scrollHeight) && s.slice(i + 1).every( - (r) => R(r, "position") === "static" - ) ? o : null) || w(e).body; -}, Tr = `[${ot}="${ct}"],[data-tip="${ct}"]`, So = "title"; -let rn = (e) => F(e, St); -const $r = (e) => new Ts(e), yr = (e) => { - const { element: t, tooltip: s, container: n } = e; - Dt(t, Cn), co( - s, - n - ); -}, Qt = (e) => { - const { tooltip: t, container: s } = e; - return t && vs(t, s); + let { clientWidth: t } = qe(e), { innerWidth: n } = Ze(e); + return Math.abs(n - t); +}, yr = (e, t) => { + let n = Ke(e), r = parseInt(M(n, "paddingRight"), 10), i = M(n, "overflow") === "hidden" && r ? 0 : vr(e), a = gr(n); + t && (F(n, { + overflow: "hidden", + paddingRight: `${r + i}px` + }), a.length && a.forEach((e) => { + let t = M(e, "paddingRight"); + if (e.style.paddingRight = `${parseInt(t, 10) + i}px`, ["sticky-top", "position-sticky"].some((t) => E(e, t))) { + let t = M(e, "marginRight"); + e.style.marginRight = `${parseInt(t, 10) - i}px`; + } + })); +}, Z = "offcanvas", br = we({ + tagName: "div", + className: "popup-container" +}), xr = (e, t) => { + let n = D(t) && t.nodeName === "BODY", r = D(t) && !n ? t : br, i = n ? t : Ke(e); + D(e) && (r === br && i.append(br), r.append(e)); +}, Sr = (e, t) => { + let n = D(t) && t.nodeName === "BODY", r = D(t) && !n ? t : br; + D(e) && (e.remove(), r === br && !br.children.length && br.remove()); }, Cr = (e, t) => { - const { element: s } = e; - e._toggleEventListeners(), Jt(s, xo) && e.name === St && Ho(e), t && t(); -}, Ao = (e, t) => { - const s = t ? L : O, { element: n } = e; - s( - w(n), - _e, - e.handleTouch, - te - ); -}, cn = (e) => { - const { element: t } = e, s = E( - `shown.bs.${ee(e.name)}` - ); - Ao(e, !0), b(t, s), u.clear(t, "in"); -}, an = (e) => { - const { element: t } = e, s = E( - `hidden.bs.${ee(e.name)}` - ); - Ao(e), yr(e), b(t, s), u.clear(t, "out"); -}, ln = (e, t) => { - const s = t ? L : O, { element: n, tooltip: o } = e, i = M(n, `.${X}`), r = M(n, `.${Z}`); - t ? [n, o].forEach((c) => e._observer.observe(c)) : e._observer.disconnect(), i && s(i, `hide.bs.${X}`, e.handleHide), r && s(r, `hide.bs.${Z}`, e.handleHide); -}, Ho = (e, t) => { - const s = [xo, So], { element: n } = e; - I( - n, - s[t ? 0 : 1], - t || Y(n, s[0]) || "" - ), Dt(n, s[t ? 1 : 0]); -}; -class Ts extends st { - static selector = Tr; - static init = $r; - static getInstance = rn; - static styleTip = ns; - constructor(t, s) { - super(t, s); - const { element: n } = this, o = this.name === St, i = o ? ct : Pt, r = o ? St : Es; - rn = (f) => F(f, r), this.enabled = !0, this.id = `${i}-${Nn(n, i)}`; - const { options: c } = this; - if (!c.title && o || !o && !c.content) - return; - at(os, { titleAttr: "" }), Jt(n, So) && o && typeof c.title == "string" && Ho(this, c.title); - const a = Er(n), l = ["sticky", "fixed", "relative"].some( - (f) => R(a, "position") === f - ) ? a : On(n); - this.container = a, this.offsetParent = l, wr(this), this.tooltip && (this._observer = new us(() => this.update()), this._toggleEventListeners(!0)); - } - get name() { - return St; - } - get defaults() { - return os; - } - handleFocus = () => lt(this.element); - handleShow = () => this.show(); - show() { - const { options: t, tooltip: s, element: n, container: o, id: i } = this, { animation: r } = t, c = u.get(n, "out"); - u.clear(n, "out"), s && !c && !Qt(this) && u.set( - n, - () => { - const a = E( - `show.bs.${ee(this.name)}` - ); - b(n, a), a.defaultPrevented || (ro(s, o), I(n, Cn, `#${i}`), this.update(), ln(this, !0), h(s, g) || d(s, g), r ? x(s, () => cn(this)) : cn(this)); - }, - 17, - "in" - ); - } - handleHide = () => this.hide(); - hide() { - const { options: t, tooltip: s, element: n } = this, { animation: o, delay: i } = t; - u.clear(n, "in"), s && Qt(this) && u.set( - n, - () => { - const r = E( - `hide.bs.${ee(this.name)}` - ); - b(n, r), r.defaultPrevented || (this.update(), v(s, g), ln(this), o ? x(s, () => an(this)) : an(this)); - }, - i + 17, - "out" - ); - } - update = () => { - ns(this); - }; - toggle = () => { - const { tooltip: t } = this; - t && !Qt(this) ? this.show() : this.hide(); - }; - enable() { - const { enabled: t } = this; - t || (this._toggleEventListeners(!0), this.enabled = !t); - } - disable() { - const { tooltip: t, enabled: s } = this; - s && (t && Qt(this) && this.hide(), this._toggleEventListeners(), this.enabled = !s); - } - toggleEnabled() { - this.enabled ? this.disable() : this.enable(); - } - handleTouch = ({ target: t }) => { - const { tooltip: s, element: n } = this; - s && s.contains(t) || t === n || t && n.contains(t) || this.hide(); - }; - _toggleEventListeners = (t) => { - const s = t ? L : O, { element: n, options: o, btn: i } = this, { trigger: r } = o, a = !!(this.name !== St && o.dismissible); - r.includes("manual") || (this.enabled = !!t, r.split(" ").forEach((f) => { - f === zo ? (s(n, xn, this.handleShow), s(n, Ce, this.handleShow), a || (s(n, as, this.handleHide), s( - w(n), - _e, - this.handleTouch, - te - ))) : f === D ? s(n, f, a ? this.handleShow : this.toggle) : f === rs && (s(n, cs, this.handleShow), a || s(n, _n, this.handleHide), Yo() && s(n, D, this.handleFocus)), a && i && s(i, D, this.handleHide); - })); - }; - dispose() { - const { tooltip: t, options: s } = this, n = { ...this, name: this.name }, o = () => setTimeout( - () => Cr(n, () => super.dispose()), - 17 - ); - s.animation && Qt(n) ? (this.options.delay = 0, this.hide(), x(t, o)) : o(); - } -} -const _r = `[${ot}="${Pt}"],[data-tip="${Pt}"]`, xr = at({}, os, { - template: Co(Pt), - content: "", - dismissible: !1, - btnClose: '' -}), Sr = (e) => F(e, Es), Ar = (e) => new Po(e); -class Po extends Ts { - static selector = _r; - static init = Ar; - static getInstance = Sr; - static styleTip = ns; - constructor(t, s) { - super(t, s); - } - get name() { - return Es; - } - get defaults() { - return xr; - } - show = () => { - super.show(); - const { options: t, btn: s } = this; - t.dismissible && s && setTimeout(() => lt(s), 17); - }; -} -const Hr = "scrollspy", Do = "ScrollSpy", Pr = '[data-bs-spy="scroll"]', Dr = "[href]", Ir = { - offset: 10, - target: void 0 -}, Lr = (e) => F(e, Do), Or = (e) => new Lo(e), dn = E(`activate.bs.${Hr}`), kr = (e) => { - const { - target: t, - _itemsLength: s, - _observables: n - } = e, o = fs("A", t), i = w(t); - !o.length || s === n.size || (n.clear(), Array.from(o).forEach((r) => { - const c = Y(r, "href")?.slice(1), a = c?.length ? i.getElementById(c) : null; - a && !nt(r) && e._observables.set(a, r); - }), e._itemsLength = e._observables.size); -}, Io = (e) => { - Array.from(fs("A", e)).forEach( - (t) => { - h(t, T) && v(t, T); - } - ); -}, hn = (e, t) => { - const { target: s, element: n } = e; - Io(s), e._activeItem = t, d(t, T); - let o = t; - for (; o !== s; ) - if (o = o.parentElement, ["nav", "dropdown-menu", "list-group"].some( - (i) => h(o, i) - )) { - const i = o.previousElementSibling; - i && !h(i, T) && d(i, T); - } - dn.relatedTarget = t, b(n, dn); -}, Ke = (e, t) => { - const { scrollTarget: s, element: n, options: o } = e; - return (s !== n ? It(t).top + s.scrollTop : t.offsetTop) - (o.offset || 10); -}; -class Lo extends st { - static selector = Pr; - static init = Or; - static getInstance = Lr; - constructor(t, s) { - super(t, s); - const { element: n, options: o } = this, i = _( - o.target, - w(n) - ); - i && (this.target = i, this.scrollTarget = n.clientHeight < n.scrollHeight ? n : dt(n), this._observables = /* @__PURE__ */ new Map(), this.refresh(), this._observer = new us(() => { - requestAnimationFrame(() => this.refresh()); - }, { - root: this.scrollTarget - }), this._toggleEventListeners(!0)); - } - get name() { - return Do; - } - get defaults() { - return Ir; - } - refresh = () => { - const { target: t, scrollTarget: s } = this; - if (!t || t.offsetHeight === 0) return; - kr(this); - const { _itemsLength: n, _observables: o, _activeItem: i } = this; - if (!n) return; - const r = o.entries().toArray(), { scrollTop: c, scrollHeight: a, clientHeight: l } = s; - if (c >= a - l) { - const p = r[n - 1]?.[1]; - i !== p && hn(this, p); - return; - } - const f = r[0]?.[0] ? Ke(this, r[0][0]) : null; - if (f !== null && c < f && f > 0) { - this._activeItem = null, Io(t); - return; - } - for (let p = 0; p < n; p += 1) { - const [y, N] = r[p], q = Ke(this, y), G = r[p + 1]?.[0], m = G ? Ke(this, G) : null; - if (i !== N && c >= q && (m === null || c < m)) { - hn(this, N); - break; - } - } - }; - _scrollTo = (t) => { - const s = M(t.target, Dr), n = s && Y(s, "href")?.slice(1), o = n && di(n, this.target); - o && (this.scrollTarget.scrollTo({ - top: o.offsetTop, - behavior: "smooth" - }), t.preventDefault()); - }; - _toggleEventListeners = (t) => { - const { target: s, _observables: n, _observer: o, _scrollTo: i } = this; - (t ? L : O)(s, D, i), t ? n?.forEach((c, a) => o.observe(a)) : o.disconnect(); - }; - dispose() { - this._toggleEventListeners(), super.dispose(); - } -} -const he = "tab", Oo = "Tab", is = `[${ot}="${he}"]`, ko = (e) => F(e, Oo), Nr = (e) => new No(e), Ve = E( - `show.bs.${he}` -), fn = E( - `shown.bs.${he}` -), Xe = E( - `hide.bs.${he}` -), un = E( - `hidden.bs.${he}` -), ie = /* @__PURE__ */ new Map(), gn = (e) => { - const { tabContent: t, nav: s } = e; - t && h(t, Lt) && (t.style.height = "", v(t, Lt)), s && u.clear(s); -}, pn = (e) => { - const { element: t, tabContent: s, content: n, nav: o } = e, { tab: i } = A(o) && ie.get(o) || { tab: null }; - if (s && n && h(n, k)) { - const { currentHeight: r, nextHeight: c } = ie.get(t) || { currentHeight: 0, nextHeight: 0 }; - r !== c ? setTimeout(() => { - s.style.height = `${c}px`, kt(s), x(s, () => gn(e)); - }, 50) : gn(e); - } else o && u.clear(o); - fn.relatedTarget = i, b(t, fn); -}, mn = (e) => { - const { element: t, content: s, tabContent: n, nav: o } = e, { tab: i, content: r } = o && ie.get(o) || { tab: null, content: null }; - let c = 0; - if (n && s && h(s, k) && ([r, s].forEach((a) => { - a && d(a, "overflow-hidden"); - }), c = r ? r.scrollHeight : 0), Ve.relatedTarget = i, un.relatedTarget = t, b(t, Ve), !Ve.defaultPrevented) { - if (s && d(s, T), r && v(r, T), n && s && h(s, k)) { - const a = s.scrollHeight; - ie.set(t, { - currentHeight: c, - nextHeight: a, - tab: null, - content: null - }), d(n, Lt), n.style.height = `${c}px`, kt(n), [r, s].forEach((l) => { - l && v(l, "overflow-hidden"); - }); - } - s && s && h(s, k) ? setTimeout(() => { - d(s, g), x(s, () => { - pn(e); - }); - }, 1) : (s && d(s, g), pn(e)), i && b(i, un); - } -}, vn = (e) => { - const { nav: t } = e; - if (!A(t)) - return { tab: null, content: null }; - const s = rt( - T, - t - ); - let n = null; - s.length === 1 && !Ot.some( - (i) => h(s[0].parentElement, i) - ) ? [n] = s : s.length > 1 && (n = s[s.length - 1]); - const o = A(n) ? K(n) : null; - return { tab: n, content: o }; -}, bn = (e) => { - if (!A(e)) return null; - const t = M(e, `.${Ot.join(",.")}`); - return t ? _(`.${Ot[0]}-toggle`, t) : null; -}, Mr = (e) => { - const t = M(e.target, is), s = t && ko(t); - s && (e.preventDefault(), s.show()); + let n = D(t) && t.nodeName !== "BODY" ? t : br; + return D(e) && n.contains(e); +}, wr = "backdrop", Tr = `${X}-${wr}`, Er = `${Z}-${wr}`, Dr = `.${X}.${U}`, Or = `.${Z}.${U}`, Q = we("div"), kr = (e) => B(`${Dr},${Or}`, A(e)), Ar = (e) => { + let t = e ? Tr : Er; + [Tr, Er].forEach((e) => { + T(Q, e); + }), w(Q, t); +}, jr = (e, t, n) => { + Ar(n), xr(Q, Ke(e)), t && w(Q, gt); +}, Mr = () => { + E(Q, "show") || (w(Q, U), Pe(Q)); +}, Nr = () => { + T(Q, U); +}, Pr = (e) => { + kr(e) || (T(Q, gt), Sr(Q, Ke(e)), _r(e)); +}, Fr = (e) => R(e) && M(e, "visibility") !== "hidden" && e.offsetParent !== null, Ir = `.${X}`, Lr = `[${At}="${X}"]`, Rr = `[${_t}="${X}"]`, zr = `${X}-static`, Br = { + backdrop: !0, + keyboard: !0 +}, Vr = (e) => k(e, ur), Hr = (e) => new ri(e), Ur = P(`show.bs.${X}`), Wr = P(`shown.bs.${X}`), Gr = P(`hide.bs.${X}`), Kr = P(`hidden.bs.${X}`), qr = (e) => { + let { element: t } = e, n = vr(t), { clientHeight: r, scrollHeight: i } = qe(t), { clientHeight: a, scrollHeight: o } = t, s = a !== o; + !s && n && F(t, { [ut(t) ? "paddingLeft" : "paddingRight"]: `${n}px` }), yr(t, s || r !== i); +}, Jr = (e, t) => { + let n = t ? V : H, { element: r } = e; + n(r, d, ti), n(A(r), l, ei), t ? e._observer.observe(r) : e._observer.disconnect(); +}, Yr = (e) => { + let { triggers: t, element: n, relatedTarget: r } = e; + Pr(n), F(n, { + paddingRight: "", + display: "" + }), Jr(e); + let i = Ur.relatedTarget || t.find(Fr); + i && Oe(i), Kr.relatedTarget = r || void 0, j(n, Kr), We(n); +}, Xr = (e) => { + let { element: t, relatedTarget: n } = e; + Oe(t), Jr(e, !0), Wr.relatedTarget = n || void 0, j(t, Wr), We(t); +}, Zr = (e) => { + let { element: t, hasFade: i } = e; + F(t, { display: "block" }), qr(e), kr(t) || F(Ke(t), { overflow: "hidden" }), w(t, U), fe(t, n), C(t, r, "true"), i ? N(t, () => Xr(e)) : Xr(e); +}, Qr = (e) => { + let { element: t, options: n, hasFade: r } = e; + n.backdrop && r && E(Q, "show") && !kr(t) ? (Nr(), N(Q, () => Yr(e))) : Yr(e); }; -class No extends st { - static selector = is; - static init = Nr; - static getInstance = ko; - constructor(t) { - super(t); - const { element: s } = this, n = K(s); - if (!n) return; - const o = M(s, ".nav"), i = M( - n, - ".tab-content" - ); - this.nav = o, this.content = n, this.tabContent = i, this.dropdown = bn(s); - const { tab: r } = vn(this); - if (o && !r) { - const c = _(is, o), a = c && K(c); - a && (d(c, T), d(a, g), d(a, T), I(s, ke, "true")); - } - this._toggleEventListeners(!0); - } - get name() { - return Oo; - } - show() { - const { element: t, content: s, nav: n, dropdown: o } = this; - if (n && u.get(n) || h(t, T)) return; - const { tab: i, content: r } = vn(this); - if (n && i && ie.set(n, { tab: i, content: r, currentHeight: 0, nextHeight: 0 }), Xe.relatedTarget = t, !A(i) || (b(i, Xe), Xe.defaultPrevented)) return; - d(t, T), I(t, ke, "true"); - const c = A(i) && bn(i); - if (c && h(c, T) && v(c, T), n) { - const a = () => { - i && (v(i, T), I(i, ke, "false")), o && !h(o, T) && d(o, T); - }; - r && (h(r, k) || s && h(s, k)) ? u.set(n, a, 1) : a(); - } - r && (v(r, g), h(r, k) ? x(r, () => mn(this)) : mn(this)); - } - _toggleEventListeners = (t) => { - (t ? L : O)(this.element, D, Mr); - }; - dispose() { - this._toggleEventListeners(), super.dispose(); - } +function $r(e) { + let t = K(this), n = t && Vr(t); + bt(this) || n && (this.tagName === "A" && e.preventDefault(), n.relatedTarget = this, n.toggle()); } -const Q = "toast", Mo = "Toast", Br = `.${Q}`, Rr = `[${Se}="${Q}"]`, Fr = `[${ot}="${Q}"]`, Vt = "showing", Bo = "hide", Wr = { - animation: !0, - autohide: !0, - delay: 5e3 -}, $s = (e) => F(e, Mo), zr = (e) => new Ro(e), wn = E( - `show.bs.${Q}` -), jr = E( - `shown.bs.${Q}` -), En = E( - `hide.bs.${Q}` -), Kr = E( - `hidden.bs.${Q}` -), Tn = (e) => { - const { element: t, options: s } = e; - v(t, Vt), u.clear(t, Vt), b(t, jr), s.autohide && u.set(t, () => e.hide(), s.delay, Q); -}, $n = (e) => { - const { element: t } = e; - v(t, Vt), v(t, g), d(t, Bo), u.clear(t, Q), b(t, Kr); -}, Vr = (e) => { - const { element: t, options: s } = e; - d(t, Vt), s.animation ? (kt(t), x(t, () => $n(e))) : $n(e); -}, Xr = (e) => { - const { element: t, options: s } = e; - u.set( - t, - () => { - v(t, Bo), kt(t), d(t, g), d(t, Vt), s.animation ? x(t, () => Tn(e)) : Tn(e); - }, - 17, - Vt - ); +var ei = ({ code: e, target: t }) => { + let n = B(Dr, A(t)), r = n && Vr(n); + if (!r) return; + let { options: i } = r; + i.keyboard && e === "Escape" && E(n, "show") && (r.relatedTarget = null, r.hide()); +}, ti = (e) => { + let { currentTarget: t } = e, n = t && Vr(t); + if (!n || !t || I.get(t)) return; + let { options: r, isStatic: i, modalDialog: a } = n, { backdrop: o } = r, { target: s } = e, c = A(t)?.getSelection()?.toString().length, l = a.contains(s), u = s && z(s, Rr); + i && !l ? I.set(t, () => { + w(t, zr), N(a, () => ni(n)); + }, 17) : (u || !c && !i && !l && o) && (n.relatedTarget = u || null, n.hide(), e.preventDefault()); +}, ni = (e) => { + let { element: t, modalDialog: n } = e, r = (De(n) || 0) + 17; + T(t, zr), I.set(t, () => I.clear(t), r); +}, ri = class extends W { + static selector = Ir; + static init = Hr; + static getInstance = Vr; + constructor(e, t) { + super(e, t); + let { element: n } = this, r = B(`.${X}-dialog`, n); + r && (this.modalDialog = r, this.triggers = [...L(Lr, A(n))].filter((e) => K(e) === n), this.isStatic = this.options.backdrop === "static", this.hasFade = E(n, gt), this.relatedTarget = null, this._observer = new ResizeObserver(() => this.update()), this._toggleEventListeners(!0)); + } + get name() { + return ur; + } + get defaults() { + return Br; + } + toggle() { + E(this.element, "show") ? this.hide() : this.show(); + } + show() { + let { element: e, options: t, hasFade: n, relatedTarget: r } = this, { backdrop: i } = t, a = 0; + if (E(e, "show") || (Ur.relatedTarget = r || void 0, j(e, Ur), Ur.defaultPrevented)) return; + let o = kr(e); + if (o && o !== e) { + let e = Vr(o) || k(o, "Offcanvas"); + e && e.hide(); + } + i ? (Cr(Q) ? Ar(!0) : jr(e, n, !0), a = De(Q), Mr(), setTimeout(() => Zr(this), a)) : (Zr(this), o && E(Q, "show") && Nr()); + } + hide() { + let { element: e, hasFade: t, relatedTarget: i } = this; + E(e, "show") && (Gr.relatedTarget = i || void 0, j(e, Gr), !Gr.defaultPrevented && (T(e, U), C(e, n, "true"), fe(e, r), t ? N(e, () => Qr(this)) : Qr(this))); + } + update = () => { + E(this.element, "show") && qr(this); + }; + _toggleEventListeners = (e) => { + let t = e ? V : H, { triggers: n } = this; + n.length && n.forEach((e) => { + t(e, d, $r); + }); + }; + dispose() { + let { modalDialog: e, hasFade: t } = { ...this }, n = () => setTimeout(() => super.dispose(), 17); + this.hide(), this._toggleEventListeners(), t ? N(e, n) : n(); + } +}, ii = `.${Z}`, ai = `[${At}="${Z}"]`, oi = `[${_t}="${Z}"]`, si = `${Z}-toggling`, ci = { + backdrop: !0, + keyboard: !0, + scroll: !1 +}, li = (e) => k(e, dr), ui = (e) => new wi(e), di = P(`show.bs.${Z}`), fi = P(`shown.bs.${Z}`), pi = P(`hide.bs.${Z}`), mi = P(`hidden.bs.${Z}`), hi = (e) => { + let { element: t } = e, { clientHeight: n, scrollHeight: r } = qe(t); + yr(t, n !== r); +}, gi = (e, t) => { + let n = t ? V : H, r = A(e.element); + n(r, l, xi), n(r, d, bi); +}, _i = (e) => { + let { element: t, options: n } = e; + n.scroll || (hi(e), F(Ke(t), { overflow: "hidden" })), w(t, si), w(t, U), F(t, { visibility: "visible" }), N(t, () => Si(e)); +}, vi = (e) => { + let { element: t, options: n } = e, r = kr(t); + t.blur(), !r && n.backdrop && E(Q, "show") && Nr(), N(t, () => Ci(e)); }; -function qr(e) { - const t = K(this), s = t && $s(t); - nt(this) || s && (this.tagName === "A" && e.preventDefault(), s.relatedTarget = this, s.show()); +function yi(e) { + let t = K(this), n = t && li(t); + bt(this) || n && (n.relatedTarget = this, n.toggle(), this.tagName === "A" && e.preventDefault()); } -const Ur = (e) => { - const t = e.target, s = $s(t), { type: n, relatedTarget: o } = e; - !s || t === o || t.contains(o) || ([Ce, cs].includes(n) ? u.clear(t, Q) : u.set(t, () => s.hide(), s.options.delay, Q)); +var bi = (e) => { + let { target: t } = e, n = B(Or, A(t)); + if (!n) return; + let r = B(oi, n), i = li(n); + if (!i) return; + let { options: a, triggers: o } = i, { backdrop: s } = a, c = z(t, ai), l = A(n).getSelection(); + Q.contains(t) && s === "static" || (!(l && l.toString().length) && (!n.contains(t) && s && (!c || o.includes(t)) || r && r.contains(t)) && (i.relatedTarget = r && r.contains(t) ? r : void 0, i.hide()), c && c.tagName === "A" && e.preventDefault()); +}, xi = ({ code: e, target: t }) => { + let n = B(Or, A(t)), r = n && li(n); + r && r.options.keyboard && e === "Escape" && (r.relatedTarget = void 0, r.hide()); +}, Si = (e) => { + let { element: t } = e; + T(t, si), fe(t, n), C(t, r, "true"), C(t, "role", "dialog"), j(t, fi), gi(e, !0), Oe(t), We(t); +}, Ci = (e) => { + let { element: t, triggers: i } = e; + C(t, n, "true"), fe(t, r), fe(t, "role"), F(t, { visibility: "" }); + let a = di.relatedTarget || i.find(Fr); + a && Oe(a), Pr(t), j(t, mi), T(t, si), We(t), kr(t) || gi(e); +}, wi = class extends W { + static selector = ii; + static init = ui; + static getInstance = li; + constructor(e, t) { + super(e, t); + let { element: n } = this; + this.triggers = [...L(ai, A(n))].filter((e) => K(e) === n), this.relatedTarget = void 0, this._toggleEventListeners(!0); + } + get name() { + return dr; + } + get defaults() { + return ci; + } + toggle() { + E(this.element, "show") ? this.hide() : this.show(); + } + show() { + let { element: e, options: t, relatedTarget: n } = this, r = 0; + if (E(e, "show") || (di.relatedTarget = n || void 0, fi.relatedTarget = n || void 0, j(e, di), di.defaultPrevented)) return; + let i = kr(e); + if (i && i !== e) { + let e = li(i) || k(i, "Modal"); + e && e.hide(); + } + t.backdrop ? (Cr(Q) ? Ar() : jr(e, !0), r = De(Q), Mr(), setTimeout(() => _i(this), r)) : (_i(this), i && E(Q, "show") && Nr()); + } + hide() { + let { element: e, relatedTarget: t } = this; + E(e, "show") && (pi.relatedTarget = t || void 0, mi.relatedTarget = t || void 0, j(e, pi), !pi.defaultPrevented && (w(e, si), T(e, U), vi(this))); + } + _toggleEventListeners = (e) => { + let t = e ? V : H; + this.triggers.forEach((e) => { + t(e, d, yi); + }); + }; + dispose() { + let { element: e } = this, t = E(e, U), n = () => setTimeout(() => super.dispose(), 1); + this.hide(), this._toggleEventListeners(), t ? N(e, n) : n(); + } +}, Ti = "popover", Ei = "Popover", Di = "tooltip", Oi = (e) => { + let t = e === Di, n = t ? `${e}-inner` : `${e}-body`, r = t ? "" : `

`, i = `
`, a = `
`; + return `
${r + i + a}
`; +}, ki = { + top: "top", + bottom: "bottom", + left: "start", + right: "end" +}, Ai = (e) => { + requestAnimationFrame(() => { + let t = /\b(top|bottom|start|end)+/, { element: n, tooltip: r, container: i, offsetParent: a, options: o, arrow: s } = e; + if (!r) return; + let c = ut(n), { x: l, y: u } = Je(a); + F(r, { + top: "", + left: "", + right: "", + bottom: "" + }); + let { offsetWidth: d, offsetHeight: f } = r, { clientWidth: p, clientHeight: m, offsetWidth: ee } = qe(n), { placement: h } = o, { clientWidth: g, offsetWidth: te } = i, ne = M(i, "position") === "fixed", _ = ne ? Math.abs(g - te) : Math.abs(p - ee), re = c && ne ? _ : 0, v = p - (c ? 0 : _) - 1, { width: y, height: b, left: ie, right: ae, top: oe } = e._observer.getEntry(n)?.boundingClientRect || Ge(n, !0), { x: se, y: ce } = tt(n, a, { + x: l, + y: u + }); + F(s, { + top: "", + left: "", + right: "", + bottom: "" + }); + let le = 0, ue = "", de = 0, x = "", S = "", C = "", fe = "", w = s.offsetWidth || 0, T = s.offsetHeight || 0, E = w / 2, pe = oe - f - T < 0, me = oe + f + b + T >= m, he = ie - d - w < re, ge = ie + d + y + w >= v, D = ["left", "right"], O = ["top", "bottom"]; + pe = D.includes(h) ? oe + b / 2 - f / 2 - T < 0 : pe, me = D.includes(h) ? oe + f / 2 + b / 2 + T >= m : me, he = O.includes(h) ? ie + y / 2 - d / 2 < re : he, ge = O.includes(h) ? ie + d / 2 + y / 2 >= v : ge, h = D.includes(h) && he && ge ? "top" : h, h = h === "top" && pe ? "bottom" : h, h = h === "bottom" && me ? "top" : h, h = h === "left" && he ? "right" : h, h = h === "right" && ge ? "left" : h, r.className.includes(h) || (r.className = r.className.replace(t, ki[h])), D.includes(h) ? (de = h === "left" ? se - d - w : se + y + w, pe && me ? (le = 0, ue = 0, S = ce + b / 2 - T / 2) : pe ? (le = ce, ue = "", S = b / 2 - w) : me ? (le = ce - f + b, ue = "", S = f - b / 2 - w) : (le = ce - f / 2 + b / 2, S = f / 2 - T / 2)) : O.includes(h) && (le = h === "top" ? ce - f - T : ce + b + T, he ? (de = 0, C = se + y / 2 - E) : ge ? (de = "auto", x = 0, fe = y / 2 + v - ae - E) : (de = se - d / 2 + y / 2, C = d / 2 - E)), F(r, { + top: `${le}px`, + bottom: ue === "" ? "" : `${ue}px`, + left: de === "auto" ? de : `${de}px`, + right: x === "" ? "" : `${x}px` + }), R(s) && (S !== "" && (s.style.top = `${S}px`), C === "" ? fe !== "" && (s.style.right = `${fe}px`) : s.style.left = `${C}px`), j(n, P(`updated.bs.${Re(e.name)}`)); + }); +}, ji = { + template: Oi(Di), + title: "", + customClass: "", + trigger: "hover focus", + placement: "top", + sanitizeFn: void 0, + animation: !0, + delay: 200, + container: document.body, + content: "", + dismissible: !1, + btnClose: "" +}, Mi = "data-original-title", Ni = "Tooltip", Pi = (e, t, n) => { + if (be(t) && t.length) { + let r = t.trim(); + ct(n) && (r = n(r)); + let i = new DOMParser().parseFromString(r, "text/html"); + e.append(...i.body.childNodes); + } else R(t) ? e.append(t) : (lt(t) || ot(t) && t.every(D)) && e.append(...t); +}, Fi = (e) => { + let t = e.name === Ni, { id: n, element: r, options: i } = e, { title: a, placement: o, template: s, animation: c, customClass: l, sanitizeFn: u, dismissible: d, content: f, btnClose: p } = i, m = t ? Di : Ti, ee = { ...ki }, h = [], g = []; + ut(r) && (ee.left = "end", ee.right = "start"); + let te = `bs-${m}-${ee[o]}`, ne; + if (R(s)) ne = s; + else { + let e = we("div"); + Pi(e, s, u), ne = e.firstChild; + } + if (!R(ne)) return; + e.tooltip = ne.cloneNode(!0); + let { tooltip: _ } = e; + C(_, "id", n), C(_, "role", Di); + let re = t ? `${Di}-inner` : `${Ti}-body`, v = t ? null : B(`.${Ti}-header`, _), y = B(`.${re}`, _); + e.arrow = B(`.${m}-arrow`, _); + let { arrow: b } = e; + if (R(a)) h = [a.cloneNode(!0)]; + else { + let e = we("div"); + Pi(e, a, u), h = [...[...e.childNodes]]; + } + if (R(f)) g = [f.cloneNode(!0)]; + else { + let e = we("div"); + Pi(e, f, u), g = [...[...e.childNodes]]; + } + if (d) if (a) if (R(p)) h = [...h, p.cloneNode(!0)]; + else { + let e = we("div"); + Pi(e, p, u), h = [...h, e.firstChild]; + } + else if (v && v.remove(), R(p)) g = [...g, p.cloneNode(!0)]; + else { + let e = we("div"); + Pi(e, p, u), g = [...g, e.firstChild]; + } + t ? a && y && Pi(y, a, u) : (a && v && Pi(v, h, u), f && y && Pi(y, g, u), e.btn = B(".btn-close", _) || void 0), w(_, "position-absolute"), w(b, "position-absolute"), E(_, m) || w(_, m), c && !E(_, "fade") && w(_, gt), l && !E(_, l) && w(_, l), E(_, te) || w(_, te); +}, Ii = (e) => { + let t = ["HTML", "BODY"], n = [], { parentNode: r } = e; + for (; r && !t.includes(r.nodeName);) r = Xe(r), Ye(r) || Qe(r) || n.push(r); + return n.find((e, t) => (M(e, "position") !== "relative" || M(e, "position") === "relative" && e.offsetHeight !== e.scrollHeight) && n.slice(t + 1).every((e) => M(e, "position") === "static") ? e : null) || A(e).body; +}, Li = `[${At}="${Di}"],[data-tip="${Di}"]`, Ri = "title", zi = (e) => k(e, Ni), Bi = (e) => new Yi(e), Vi = (t) => { + let { element: n, tooltip: r, container: i } = t; + fe(n, e), Sr(r, i); +}, Hi = (e) => { + let { tooltip: t, container: n } = e; + return t && Cr(t, n); +}, Ui = (e, t) => { + let { element: n } = e; + e._toggleEventListeners(), S(n, "data-original-title") && e.name === "Tooltip" && Ji(e), t && t(); +}, Wi = (e, t) => { + let n = t ? V : H, { element: r } = e; + n(A(r), te, e.handleTouch, Ne); +}, Gi = (e) => { + let { element: t } = e, n = P(`shown.bs.${Re(e.name)}`); + Wi(e, !0), j(t, n), I.clear(t, "in"); +}, Ki = (e) => { + let { element: t } = e, n = P(`hidden.bs.${Re(e.name)}`); + Wi(e), Vi(e), j(t, n), I.clear(t, "out"); +}, qi = (e, t) => { + let n = t ? V : H, { element: r, tooltip: i } = e, a = z(r, `.${X}`), o = z(r, `.${Z}`); + t ? [r, i].forEach((t) => e._observer.observe(t)) : e._observer.disconnect(), a && n(a, `hide.bs.${X}`, e.handleHide), o && n(o, `hide.bs.${Z}`, e.handleHide); +}, Ji = (e, t) => { + let n = [Mi, Ri], { element: r } = e; + C(r, n[t ? 0 : 1], t || x(r, n[0]) || ""), fe(r, n[t ? 1 : 0]); +}, Yi = class extends W { + static selector = Li; + static init = Bi; + static getInstance = zi; + static styleTip = Ai; + constructor(e, t) { + super(e, t); + let { element: n } = this, r = this.name === Ni, i = r ? Di : Ti, a = r ? Ni : Ei; + zi = (e) => k(e, a), this.enabled = !0, this.id = `${i}-${at(n, i)}`; + let { options: o } = this; + if (!o.title && r || !r && !o.content) return; + Ce(ji, { titleAttr: "" }), S(n, Ri) && r && typeof o.title == "string" && Ji(this, o.title); + let s = Ii(n), c = [ + "sticky", + "fixed", + "relative" + ].some((e) => M(s, "position") === e) ? s : Ze(n); + this.container = s, this.offsetParent = c, Fi(this), this.tooltip && (this._observer = new Pn(() => this.update()), this._toggleEventListeners(!0)); + } + get name() { + return Ni; + } + get defaults() { + return ji; + } + handleFocus = () => Oe(this.element); + handleShow = () => this.show(); + show() { + let { options: t, tooltip: n, element: r, container: i, id: a } = this, { animation: o } = t, s = I.get(r, "out"); + I.clear(r, "out"), n && !s && !Hi(this) && I.set(r, () => { + let t = P(`show.bs.${Re(this.name)}`); + j(r, t), t.defaultPrevented || (xr(n, i), C(r, e, `#${a}`), this.update(), qi(this, !0), E(n, "show") || w(n, U), o ? N(n, () => Gi(this)) : Gi(this)); + }, 17, "in"); + } + handleHide = () => this.hide(); + hide() { + let { options: e, tooltip: t, element: n } = this, { animation: r, delay: i } = e; + I.clear(n, "in"), t && Hi(this) && I.set(n, () => { + let e = P(`hide.bs.${Re(this.name)}`); + j(n, e), e.defaultPrevented || (this.update(), T(t, U), qi(this), r ? N(t, () => Ki(this)) : Ki(this)); + }, i + 17, "out"); + } + update = () => { + Ai(this); + }; + toggle = () => { + let { tooltip: e } = this; + e && !Hi(this) ? this.show() : this.hide(); + }; + enable() { + let { enabled: e } = this; + e || (this._toggleEventListeners(!0), this.enabled = !e); + } + disable() { + let { tooltip: e, enabled: t } = this; + t && (e && Hi(this) && this.hide(), this._toggleEventListeners(), this.enabled = !t); + } + toggleEnabled() { + this.enabled ? this.disable() : this.enable(); + } + handleTouch = ({ target: e }) => { + let { tooltip: t, element: n } = this; + t && t.contains(e) || e === n || e && n.contains(e) || this.hide(); + }; + _toggleEventListeners = (e) => { + let t = e ? V : H, { element: n, options: r, btn: i } = this, { trigger: a } = r, o = !!(this.name !== "Tooltip" && r.dismissible); + a.includes("manual") || (this.enabled = !!e, a.split(" ").forEach((e) => { + e === "hover" ? (t(n, f, this.handleShow), t(n, p, this.handleShow), o || (t(n, m, this.handleHide), t(A(n), te, this.handleTouch, Ne))) : e === "click" ? t(n, e, o ? this.handleShow : this.toggle) : e === "focus" && (t(n, s, this.handleShow), o || t(n, c, this.handleHide), ce() && t(n, d, this.handleFocus)), o && i && t(i, d, this.handleHide); + })); + }; + dispose() { + let { tooltip: e, options: t } = this, n = { + ...this, + name: this.name + }, r = () => setTimeout(() => Ui(n, () => super.dispose()), 17); + t.animation && Hi(n) ? (this.options.delay = 0, this.hide(), N(e, r)) : r(); + } +}, Xi = `[${At}="${Ti}"],[data-tip="${Ti}"]`, Zi = Ce({}, ji, { + template: Oi(Ti), + content: "", + dismissible: !1, + btnClose: "" +}), Qi = (e) => k(e, Ei), $i = (e) => new ea(e), ea = class extends Yi { + static selector = Xi; + static init = $i; + static getInstance = Qi; + static styleTip = Ai; + constructor(e, t) { + super(e, t); + } + get name() { + return Ei; + } + get defaults() { + return Zi; + } + show = () => { + super.show(); + let { options: e, btn: t } = this; + e.dismissible && t && setTimeout(() => Oe(t), 17); + }; +}, ta = "scrollspy", na = "ScrollSpy", ra = "[data-bs-spy=\"scroll\"]", ia = "[href]", aa = { + offset: 10, + target: void 0 +}, oa = (e) => k(e, na), sa = (e) => new pa(e), ca = P(`activate.bs.${ta}`), la = (e) => { + let { target: t, _itemsLength: n, _observables: r } = e, i = dt("A", t), a = A(t); + !i.length || n === r.size || (r.clear(), Array.from(i).forEach((t) => { + let n = x(t, "href")?.slice(1), r = n?.length ? a.getElementById(n) : null; + r && !bt(t) && e._observables.set(r, t); + }), e._itemsLength = e._observables.size); +}, ua = (e) => { + Array.from(dt("A", e)).forEach((e) => { + E(e, "active") && T(e, G); + }); +}, da = (e, t) => { + let { target: n, element: r } = e; + ua(n), e._activeItem = t, w(t, G); + let i = t; + for (; i !== n;) if (i = i.parentElement, [ + "nav", + "dropdown-menu", + "list-group" + ].some((e) => E(i, e))) { + let e = i.previousElementSibling; + e && !E(e, "active") && w(e, G); + } + ca.relatedTarget = t, j(r, ca); +}, fa = (e, t) => { + let { scrollTarget: n, element: r, options: i } = e; + return (n === r ? t.offsetTop : Ge(t).top + n.scrollTop) - (i.offset || 10); +}, pa = class extends W { + static selector = ra; + static init = sa; + static getInstance = oa; + constructor(e, t) { + super(e, t); + let { element: n, options: r } = this, i = B(r.target, A(n)); + i && (this.target = i, this.scrollTarget = n.clientHeight < n.scrollHeight ? n : qe(n), this._observables = /* @__PURE__ */ new Map(), this.refresh(), this._observer = new Pn(() => { + requestAnimationFrame(() => this.refresh()); + }, { root: this.scrollTarget }), this._toggleEventListeners(!0)); + } + get name() { + return na; + } + get defaults() { + return aa; + } + refresh = () => { + let { target: e, scrollTarget: t } = this; + if (!e || e.offsetHeight === 0) return; + la(this); + let { _itemsLength: n, _observables: r, _activeItem: i } = this; + if (!n) return; + let a = r.entries().toArray(), { scrollTop: o, scrollHeight: s, clientHeight: c } = t; + if (o >= s - c) { + let e = a[n - 1]?.[1]; + i !== e && da(this, e); + return; + } + let l = a[0]?.[0] ? fa(this, a[0][0]) : null; + if (l !== null && o < l && l > 0) { + this._activeItem = null, ua(e); + return; + } + for (let e = 0; e < n; e += 1) { + let [t, n] = a[e], r = fa(this, t), s = a[e + 1]?.[0], c = s ? fa(this, s) : null; + if (i !== n && o >= r && (c === null || o < c)) { + da(this, n); + break; + } + } + }; + _scrollTo = (e) => { + let t = z(e.target, ia), n = t && x(t, "href")?.slice(1), r = n && ft(n, this.target); + r && (this.scrollTarget.scrollTo({ + top: r.offsetTop, + behavior: "smooth" + }), e.preventDefault()); + }; + _toggleEventListeners = (e) => { + let { target: t, _observables: n, _observer: r, _scrollTo: i } = this; + (e ? V : H)(t, d, i), e ? n?.forEach((e, t) => r.observe(t)) : r.disconnect(); + }; + dispose() { + this._toggleEventListeners(), super.dispose(); + } +}, ma = `[${At}="tab"]`, ha = (e) => k(e, "Tab"), ga = (e) => new Oa(e), _a = P("show.bs.tab"), va = P("shown.bs.tab"), ya = P("hide.bs.tab"), ba = P("hidden.bs.tab"), xa = /* @__PURE__ */ new Map(), Sa = (e) => { + let { tabContent: t, nav: n } = e; + t && E(t, "collapsing") && (t.style.height = "", T(t, gn)), n && I.clear(n); +}, Ca = (e) => { + let { element: t, tabContent: n, content: r, nav: i } = e, { tab: a } = R(i) && xa.get(i) || { tab: null }; + if (n && r && E(r, "fade")) { + let { currentHeight: r, nextHeight: i } = xa.get(t) || { + currentHeight: 0, + nextHeight: 0 + }; + r === i ? Sa(e) : setTimeout(() => { + n.style.height = `${i}px`, Pe(n), N(n, () => Sa(e)); + }, 50); + } else i && I.clear(i); + va.relatedTarget = a, j(t, va); +}, wa = (e) => { + let { element: t, content: n, tabContent: r, nav: i } = e, { tab: a, content: o } = i && xa.get(i) || { + tab: null, + content: null + }, s = 0; + if (r && n && E(n, "fade") && ([o, n].forEach((e) => { + e && w(e, "overflow-hidden"); + }), s = o ? o.scrollHeight : 0), _a.relatedTarget = a, ba.relatedTarget = t, j(t, _a), !_a.defaultPrevented) { + if (n && w(n, G), o && T(o, G), r && n && E(n, "fade")) { + let e = n.scrollHeight; + xa.set(t, { + currentHeight: s, + nextHeight: e, + tab: null, + content: null + }), w(r, gn), r.style.height = `${s}px`, Pe(r), [o, n].forEach((e) => { + e && T(e, "overflow-hidden"); + }); + } + n && n && E(n, "fade") ? setTimeout(() => { + w(n, U), N(n, () => { + Ca(e); + }); + }, 1) : (n && w(n, U), Ca(e)), a && j(a, ba); + } +}, Ta = (e) => { + let { nav: t } = e; + if (!R(t)) return { + tab: null, + content: null + }; + let n = pt(G, t), r = null; + n.length === 1 && !Fn.some((e) => E(n[0].parentElement, e)) ? [r] = n : n.length > 1 && (r = n[n.length - 1]); + let i = R(r) ? K(r) : null; + return { + tab: r, + content: i + }; +}, Ea = (e) => { + if (!R(e)) return null; + let t = z(e, `.${Fn.join(",.")}`); + return t ? B(`.${Fn[0]}-toggle`, t) : null; +}, Da = (e) => { + let t = z(e.target, ma), n = t && ha(t); + n && (e.preventDefault(), n.show()); +}, Oa = class extends W { + static selector = ma; + static init = ga; + static getInstance = ha; + constructor(e) { + super(e); + let { element: t } = this, n = K(t); + if (!n) return; + let r = z(t, ".nav"), i = z(n, ".tab-content"); + this.nav = r, this.content = n, this.tabContent = i, this.dropdown = Ea(t); + let { tab: o } = Ta(this); + if (r && !o) { + let e = B(ma, r), n = e && K(e); + n && (w(e, G), w(n, U), w(n, G), C(t, a, "true")); + } + this._toggleEventListeners(!0); + } + get name() { + return "Tab"; + } + show() { + let { element: e, content: t, nav: n, dropdown: r } = this; + if (n && I.get(n) || E(e, "active")) return; + let { tab: i, content: o } = Ta(this); + if (n && i && xa.set(n, { + tab: i, + content: o, + currentHeight: 0, + nextHeight: 0 + }), ya.relatedTarget = e, !R(i) || (j(i, ya), ya.defaultPrevented)) return; + w(e, G), C(e, a, "true"); + let s = R(i) && Ea(i); + if (s && E(s, "active") && T(s, G), n) { + let e = () => { + i && (T(i, G), C(i, a, "false")), r && !E(r, "active") && w(r, G); + }; + o && (E(o, "fade") || t && E(t, "fade")) ? I.set(n, e, 1) : e(); + } + o && (T(o, U), E(o, "fade") ? N(o, () => wa(this)) : wa(this)); + } + _toggleEventListeners = (e) => { + (e ? V : H)(this.element, d, Da); + }; + dispose() { + this._toggleEventListeners(), super.dispose(); + } +}, $ = "toast", ka = "Toast", Aa = `.${$}`, ja = `[${_t}="${$}"]`, Ma = `[${At}="${$}"]`, Na = "showing", Pa = "hide", Fa = { + animation: !0, + autohide: !0, + delay: 5e3 +}, Ia = (e) => k(e, ka), La = (e) => new Ja(e), Ra = P(`show.bs.${$}`), za = P(`shown.bs.${$}`), Ba = P(`hide.bs.${$}`), Va = P(`hidden.bs.${$}`), Ha = (e) => { + let { element: t, options: n } = e; + T(t, Na), I.clear(t, Na), j(t, za), n.autohide && I.set(t, () => e.hide(), n.delay, $); +}, Ua = (e) => { + let { element: t } = e; + T(t, Na), T(t, U), w(t, Pa), I.clear(t, $), j(t, Va); +}, Wa = (e) => { + let { element: t, options: n } = e; + w(t, Na), n.animation ? (Pe(t), N(t, () => Ua(e))) : Ua(e); +}, Ga = (e) => { + let { element: t, options: n } = e; + I.set(t, () => { + T(t, Pa), Pe(t), w(t, U), w(t, Na), n.animation ? N(t, () => Ha(e)) : Ha(e); + }, 17, Na); }; -class Ro extends st { - static selector = Br; - static init = zr; - static getInstance = $s; - constructor(t, s) { - super(t, s); - const { element: n, options: o } = this; - o.animation && !h(n, k) ? d(n, k) : !o.animation && h(n, k) && v(n, k), this.dismiss = _(Rr, n), this.triggers = [ - ...U( - Fr, - w(n) - ) - ].filter( - (i) => K(i) === n - ), this._toggleEventListeners(!0); - } - get name() { - return Mo; - } - get defaults() { - return Wr; - } - get isShown() { - return h(this.element, g); - } - show = () => { - const { element: t, isShown: s } = this; - !t || s || (b(t, wn), wn.defaultPrevented || Xr(this)); - }; - hide = () => { - const { element: t, isShown: s } = this; - !t || !s || (b(t, En), En.defaultPrevented || Vr(this)); - }; - _toggleEventListeners = (t) => { - const s = t ? L : O, { element: n, triggers: o, dismiss: i, options: r, hide: c } = this; - i && s(i, D, c), r.autohide && [cs, _n, Ce, as].forEach( - (a) => s(n, a, Ur) - ), o.length && o.forEach((a) => { - s(a, D, qr); - }); - }; - dispose() { - const { element: t, isShown: s } = this; - this._toggleEventListeners(), u.clear(t, Q), s && v(t, g), super.dispose(); - } +function Ka(e) { + let t = K(this), n = t && Ia(t); + bt(this) || n && (this.tagName === "A" && e.preventDefault(), n.relatedTarget = this, n.show()); } -const ys = /* @__PURE__ */ new Map(); +var qa = (e) => { + let t = e.target, n = Ia(t), { type: r, relatedTarget: i } = e; + !n || t === i || t.contains(i) || (["mouseenter", "focusin"].includes(r) ? I.clear(t, $) : I.set(t, () => n.hide(), n.options.delay, $)); +}, Ja = class extends W { + static selector = Aa; + static init = La; + static getInstance = Ia; + constructor(e, t) { + super(e, t); + let { element: n, options: r } = this; + r.animation && !E(n, "fade") ? w(n, gt) : !r.animation && E(n, "fade") && T(n, gt), this.dismiss = B(ja, n), this.triggers = [...L(Ma, A(n))].filter((e) => K(e) === n), this._toggleEventListeners(!0); + } + get name() { + return ka; + } + get defaults() { + return Fa; + } + get isShown() { + return E(this.element, U); + } + show = () => { + let { element: e, isShown: t } = this; + !e || t || (j(e, Ra), Ra.defaultPrevented || Ga(this)); + }; + hide = () => { + let { element: e, isShown: t } = this; + !e || !t || (j(e, Ba), Ba.defaultPrevented || Wa(this)); + }; + _toggleEventListeners = (e) => { + let t = e ? V : H, { element: n, triggers: r, dismiss: i, options: a, hide: o } = this; + i && t(i, d, o), a.autohide && [ + s, + c, + p, + m + ].forEach((e) => t(n, e, qa)), r.length && r.forEach((e) => { + t(e, d, Ka); + }); + }; + dispose() { + let { element: e, isShown: t } = this; + this._toggleEventListeners(), I.clear(e, $), t && T(e, U), super.dispose(); + } +}, Ya = /* @__PURE__ */ new Map(); [ - Wn, - jn, - Xn, - Yn, - to, - bo, - yo, - Po, - Lo, - No, - Ro, - Ts -].forEach((e) => ys.set(e.prototype.name, e)); -const Yr = (e, t) => { - [...t].forEach((s) => e(s)); -}, Zr = (e, t) => { - const s = At.getAllFor(e); - s && [...s].forEach(([n, o]) => { - t.contains(n) && o.dispose(); - }); -}, yn = (e) => { - const t = e && e.nodeName ? e : document, s = [...fs("*", t)]; - ys.forEach((n) => { - const { init: o, selector: i } = n; - Yr( - o, - s.filter((r) => kn(r, i)) - ); - }); -}, Qr = (e) => { - const t = e && e.nodeName ? e : document; - ys.forEach((s) => { - Zr(s.prototype.name, t); - }); -}; -document.body ? yn() : L(document, "DOMContentLoaded", () => yn(), { - once: !0 -}); -export { - Wn as Alert, - jn as Button, - Xn as Carousel, - Yn as Collapse, - to as Dropdown, - bo as Modal, - yo as Offcanvas, - Po as Popover, - Lo as ScrollSpy, - No as Tab, - Ro as Toast, - Ts as Tooltip, - yn as initCallback, - Qr as removeDataAPI + kt, + It, + hn, + An, + lr, + ri, + wi, + ea, + pa, + Oa, + Ja, + Yi +].forEach((e) => Ya.set(e.prototype.name, e)); +var Xa = (e, t) => { + [...t].forEach((t) => e(t)); +}, Za = (e, t) => { + let n = ve.getAllFor(e); + n && [...n].forEach(([e, n]) => { + t.contains(e) && n.dispose(); + }); +}, Qa = (e) => { + let t = [...dt("*", e && e.nodeName ? e : document)]; + Ya.forEach((e) => { + let { init: n, selector: r } = e; + Xa(n, t.filter((e) => $e(e, r))); + }); +}, $a = (e) => { + let t = e && e.nodeName ? e : document; + Ya.forEach((e) => { + Za(e.prototype.name, t); + }); }; -//# sourceMappingURL=bootstrap-native.mjs.map +document.body ? Qa() : V(document, "DOMContentLoaded", () => Qa(), { once: !0 }); +//#endregion +export { kt as Alert, It as Button, hn as Carousel, An as Collapse, lr as Dropdown, ri as Modal, wi as Offcanvas, ea as Popover, pa as ScrollSpy, Oa as Tab, Ja as Toast, Yi as Tooltip, Qa as initCallback, $a as removeDataAPI }; + +//# sourceMappingURL=bootstrap-native.mjs.map \ No newline at end of file diff --git a/dist/bootstrap-native.mjs.map b/dist/bootstrap-native.mjs.map index 96618136..79e2db49 100644 --- a/dist/bootstrap-native.mjs.map +++ b/dist/bootstrap-native.mjs.map @@ -1 +1 @@ -{"version":3,"file":"bootstrap-native.mjs","sources":["../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../node_modules/.pnpm/@thednp+event-listener@2.0.10/node_modules/@thednp/event-listener/dist/event-listener.mjs","../src/strings/fadeClass.ts","../src/strings/showClass.ts","../src/strings/dataBsDismiss.ts","../src/strings/alertString.ts","../src/strings/alertComponent.ts","../src/util/isDisabled.ts","../src/version.ts","../src/components/base-component.ts","../src/components/alert.ts","../src/strings/activeClass.ts","../src/strings/dataBsToggle.ts","../src/strings/buttonString.ts","../src/strings/buttonComponent.ts","../src/components/button.ts","../src/strings/dataBsTarget.ts","../src/strings/carouselString.ts","../src/strings/carouselComponent.ts","../src/strings/dataBsParent.ts","../src/strings/dataBsContainer.ts","../src/util/getTargetElement.ts","../src/components/carousel.ts","../src/strings/collapsingClass.ts","../src/strings/collapseString.ts","../src/strings/collapseComponent.ts","../src/components/collapse.ts","../node_modules/.pnpm/@thednp+position-observer@1.1.0/node_modules/@thednp/position-observer/dist/index.mjs","../src/strings/dropdownClasses.ts","../src/strings/dropdownComponent.ts","../src/strings/dropdownMenuClass.ts","../src/util/isEmptyAnchor.ts","../src/components/dropdown.ts","../src/strings/modalString.ts","../src/strings/modalComponent.ts","../src/strings/offcanvasComponent.ts","../src/strings/fixedTopClass.ts","../src/strings/fixedBottomClass.ts","../src/strings/stickyTopClass.ts","../src/strings/positionStickyClass.ts","../src/util/scrollbar.ts","../src/strings/offcanvasString.ts","../src/util/popupContainer.ts","../src/util/backdrop.ts","../src/util/isVisible.ts","../src/components/modal.ts","../src/components/offcanvas.ts","../src/strings/popoverString.ts","../src/strings/popoverComponent.ts","../src/strings/tooltipString.ts","../src/util/getTipTemplate.ts","../src/util/tipClassPositions.ts","../src/util/styleTip.ts","../src/util/tooltipDefaults.ts","../src/strings/dataOriginalTitle.ts","../src/strings/tooltipComponent.ts","../src/util/setHtml.ts","../src/util/createTip.ts","../src/util/getElementContainer.ts","../src/components/tooltip.ts","../src/components/popover.ts","../src/strings/scrollspyString.ts","../src/strings/scrollspyComponent.ts","../src/components/scrollspy.ts","../src/strings/tabString.ts","../src/strings/tabComponent.ts","../src/components/tab.ts","../src/strings/toastString.ts","../src/strings/toastComponent.ts","../src/components/toast.ts","../src/util/init.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","const g = \"2.0.10\", e = {}, f = (t) => {\n const { type: n, currentTarget: c } = t;\n e[n].forEach((a, s) => {\n c === s && a.forEach((o, i) => {\n i.apply(s, [t]), typeof o == \"object\" && o.once && r(s, n, i, o);\n });\n });\n}, E = (t, n, c, a) => {\n e[n] || (e[n] = /* @__PURE__ */ new Map());\n const s = e[n];\n s.has(t) || s.set(t, /* @__PURE__ */ new Map());\n const o = s.get(\n t\n ), { size: i } = o;\n o.set(c, a), i || t.addEventListener(\n n,\n f,\n a\n );\n}, r = (t, n, c, a) => {\n const s = e[n], o = s && s.get(t), i = o && o.get(c), d = i !== void 0 ? i : a;\n o && o.has(c) && o.delete(c), s && (!o || !o.size) && s.delete(t), (!s || !s.size) && delete e[n], (!o || !o.size) && t.removeEventListener(\n n,\n f,\n d\n );\n}, M = E, p = r;\nexport {\n E as addListener,\n f as globalListener,\n p as off,\n M as on,\n e as registry,\n r as removeListener,\n g as version\n};\n//# sourceMappingURL=event-listener.mjs.map\n","/**\n * Global namespace for most components `fade` class.\n */\nconst fadeClass = \"fade\";\nexport default fadeClass;\n","/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n","/**\n * Global namespace for most components `dismiss` option.\n */\nconst dataBsDismiss = \"data-bs-dismiss\";\nexport default dataBsDismiss;\n","/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","import { getAttribute, hasClass } from \"@thednp/shorty\";\n\n/**\n * Check if interactive element is disabled.\n * @param target either a `
',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n","/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst tabString = \"tab\";\nexport default tabString;\n","/** @type {string} */\nconst tabComponent = \"Tab\";\nexport default tabComponent;\n","/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n","import { Data, getElementsByTagName, matches } from \"@thednp/shorty\";\n\nimport { addListener } from \"@thednp/event-listener\";\n\nimport Alert from \"../components/alert\";\nimport Button from \"../components/button\";\nimport Carousel from \"../components/carousel\";\nimport Collapse from \"../components/collapse\";\nimport Dropdown from \"../components/dropdown\";\nimport Modal from \"../components/modal\";\nimport Offcanvas from \"../components/offcanvas\";\nimport Popover from \"../components/popover\";\nimport ScrollSpy from \"../components/scrollspy\";\nimport Tab from \"../components/tab\";\nimport Toast from \"../components/toast\";\nimport Tooltip from \"../components/tooltip\";\n\nconst componentsList = new Map<\n string,\n | typeof Alert\n | typeof Button\n | typeof Carousel\n | typeof Collapse\n | typeof Dropdown\n | typeof Modal\n | typeof Offcanvas\n | typeof Popover\n | typeof ScrollSpy\n | typeof Tab\n | typeof Toast\n | typeof Tooltip\n>();\n\ntype Component =\n | Alert\n | Button\n | Carousel\n | Collapse\n | Dropdown\n | Modal\n | Offcanvas\n | Popover\n | ScrollSpy\n | Tab\n | Toast\n | Tooltip;\n\n[\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n].forEach((c) => componentsList.set(c.prototype.name, c));\n\n/**\n * Initialize all matched `Element`s for one component.\n *\n * @param callback\n * @param collection\n */\nconst initComponentDataAPI = (\n callback: (el: Element) => Component,\n collection: HTMLCollectionOf | Element[],\n) => {\n [...collection].forEach((x) => callback(x));\n};\n\n/**\n * Remove one component from a target container element or all in the page.\n *\n * @param component the component name\n * @param context parent `Node`\n */\nconst removeComponentDataAPI = (component: string, context: ParentNode) => {\n const compData = Data.getAllFor(component) as Map;\n\n if (compData) {\n [...compData].forEach(([element, instance]) => {\n if (context.contains(element)) {\n (instance as T & { dispose: () => void }).dispose();\n }\n });\n }\n};\n\n/**\n * Initialize all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const initCallback = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n const elemCollection = [...getElementsByTagName(\"*\", lookUp)];\n\n componentsList.forEach((cs) => {\n const { init, selector } = cs;\n initComponentDataAPI(\n init,\n elemCollection.filter((item) => matches(item, selector)),\n );\n });\n};\n\n/**\n * Remove all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const removeDataAPI = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n\n componentsList.forEach((comp) => {\n removeComponentDataAPI(comp.prototype.name, lookUp);\n });\n};\n\n// Bulk initialize all components\nif (document.body) initCallback();\nelse {\n addListener(document, \"DOMContentLoaded\", () => initCallback(), {\n once: true,\n });\n}\n"],"names":["Le","Oe","X","Pe","Fe","Be","ct","at","it","ft","gt","vt","Et","yt","wt","At","Ot","zt","It","Qt","je","Zt","on","sn","rn","cn","gn","Jt","Xt","M","R","xn","t","e","zn","ee","Q","n","o","j","K","oe","Qn","Kn","Gn","Zn","_n","v","u","i","E","L","to","P","N","q","G","d","T","se","Z","f","s","ie","ue","so","r","a","l","ao","F","S","uo","p","c","g","A","fo","mo","vo","bo","Eo","O","le","m","ho","yo","de","z","_","I","fe","pe","Ao","b","y","So","w","No","me","k","ve","be","Ee","we","Co","V","H","h","Ae","Se","Do","xo","Vo","Ho","Ne","Wo","Te","Qo","jo","fadeClass","showClass","dataBsDismiss","alertString","alertComponent","isDisabled","target","hasClass","getAttribute","Version","version","BaseComponent","config","element","isElement","isString","querySelector","prevInstance","Data","ObjectKeys","normalizeOptions","prop","alertSelector","alertDismissSelector","getAlertInstance","getInstance","alertInitCallback","Alert","closeAlertEvent","createCustomEvent","closedAlertEvent","alertTransitionEnd","self","dispatchEvent","dismiss","removeClass","emulateTransitionEnd","add","action","addListener","removeListener","close","mouseclickEvent","activeClass","dataBsToggle","buttonString","buttonComponent","buttonSelector","getButtonInstance","buttonInitCallback","Button","setAttribute","ariaPressed","isActive","addClass","dataBsTarget","carouselString","carouselComponent","dataBsParent","dataBsContainer","getTargetElement","targetAttr","doc","getDocument","att","attValue","closest","x","carouselSelector","carouselItem","dataBsSlideTo","dataBsSlide","pausedClass","touchEvent","isMobile","touchstartEvent","pointerdownEvent","carouselDefaults","getCarouselInstance","carouselInitCallback","Carousel","startX","currentX","endX","carouselSlideEvent","carouselSlidEvent","carouselTransitionEndHandler","index","direction","slides","options","activeItem","getActiveIndex","orientation","directionClass","Timer","carouselPauseHandler","carouselResumeHandler","carouselIndicatorHandler","newIndex","carouselControlsHandler","carouselKeyHandler","code","querySelectorAll","isElementInScrollRange","RTL","isRTL","keyArrowRight","keyArrowLeft","carouselDragHandler","carouselPointerDownHandler","controls","indicator","el","toggleCarouselTouchHandlers","carouselPointerMoveHandler","carouselPointerUpHandler","activateCarouselIndicator","indicators","pointermoveEvent","passiveHandler","pointerupEvent","getElementsByClassName","activeIndex","transitionItem","matches","ar","isPaused","idx","next","eventProperties","ObjectAssign","getElementTransitionDuration","reflow","touch","pause","interval","keyboard","mouseenterEvent","mouseleaveEvent","dragstartEvent","arrow","keydownEvent","isAnimating","clone","collapsingClass","collapseString","collapseComponent","collapseSelector","collapseToggleSelector","collapseDefaults","getCollapseInstance","collapseInitCallback","Collapse","showCollapseEvent","shownCollapseEvent","hideCollapseEvent","hiddenCollapseEvent","expandCollapse","parent","triggers","noop","setElementStyle","btn","ariaExpanded","collapseContent","collapseClickHandler","trigger","isHTMLElement","activeCollapse","activeCollapseInstance","callbackModes","errorString","PositionObserver","callback","isFunction","root","ioEntry","clientWidth","clientHeight","queue","resolve","updates","oldBoundingBox","oldIsIntersecting","left","top","ob","dropdownMenuClasses","dropdownComponent","dropdownMenuClass","isEmptyAnchor","parentAnchor","hasAttribute","dropdownString","dropupString","dropstartString","dropendString","dropdownClasses","dropdownSelector","getDropdownInstance","dropdownInitCallback","Dropdown","dropdownMenuEndClass","verticalClass","horizontalClass","menuFocusTags","dropdownDefaults","showDropdownEvent","shownDropdownEvent","hideDropdownEvent","hiddenDropdownEvent","updatedDropdownEvent","styleDropdown","menu","parentElement","offset","getElementStyle","menuEnd","style","positionClass","dropdownMargin","dropdownPosition","menuWidth","menuHeight","getDocumentElement","targetLeft","targetTop","targetWidth","targetHeight","getBoundingClientRect","leftFullExceed","rightFullExceed","bottomExceed","bottomFullExceed","topExceed","leftExceed","rightExceed","posAjust","margins","getMenuItems","firstElementChild","toggleDropdownDismiss","dropdownDismissHandler","focusEvent","dropdownPreventScroll","keyupEvent","dropdownKeyHandler","getCurrentOpenDropdown","currentParent","type","isForm","mousedownEvent","dropdownClickHandler","keyArrowDown","keyArrowUp","activeElement","open","menuItems","focus","keyEscape","currentElement","currentInstance","modalString","modalComponent","offcanvasComponent","fixedTopClass","fixedBottomClass","stickyTopClass","positionStickyClass","getFixedItems","resetScrollbar","bd","getDocumentBody","fixedItems","fixed","measureScrollbar","innerWidth","getWindow","setScrollbar","overflow","bodyPad","sbWidth","itemPadValue","itemMValue","offcanvasString","popupContainer","createElement","appendPopup","customContainer","containerIsBody","isNode","lookup","BODY","removePopup","hasPopup","backdropString","modalBackdropClass","offcanvasBackdropClass","modalActiveSelector","offcanvasActiveSelector","overlay","getCurrentOpen","toggleOverlayType","isModal","targetClass","appendOverlay","hasFade","showOverlay","hideOverlay","removeOverlay","isVisible","modalSelector","modalToggleSelector","modalDismissSelector","modalStaticClass","modalDefaults","getModalInstance","modalInitCallback","Modal","showModalEvent","shownModalEvent","hideModalEvent","hiddenModalEvent","setModalScrollbar","scrollbarWidth","scrollHeight","modalHeight","modalScrollHeight","modalOverflow","padStyle","toggleModalDismiss","modalDismissHandler","modalKeyHandler","afterModalHide","relatedTarget","focusElement","toggleFocusTrap","afterModalShow","beforeModalShow","removeAttribute","ariaHidden","ariaModal","beforeModalHide","modalClickHandler","currentTarget","isStatic","modalDialog","backdrop","selectedText","targetInsideDialog","staticTransitionEnd","duration","overlayDelay","currentOpen","that","offcanvasSelector","offcanvasToggleSelector","offcanvasDismissSelector","offcanvasTogglingClass","offcanvasDefaults","getOffcanvasInstance","offcanvasInitCallback","Offcanvas","showOffcanvasEvent","shownOffcanvasEvent","hideOffcanvasEvent","hiddenOffcanvasEvent","setOffCanvasScrollbar","toggleOffCanvasDismiss","offcanvasKeyDismissHandler","offcanvasDismissHandler","beforeOffcanvasShow","showOffcanvasComplete","beforeOffcanvasHide","hideOffcanvasComplete","offcanvasTriggerHandler","offCanvasDismiss","selection","visibleTrigger","isOpen","popoverString","popoverComponent","tooltipString","getTipTemplate","tipType","isTooltip","bodyClass","header","body","tipClassPositions","styleTip","tipClasses","tooltip","container","offsetParent","scrollLeft","scrollTop","getNodeScroll","tipWidth","tipHeight","htmlcw","htmlch","htmlow","placement","parentCWidth","parentOWidth","fixedParent","leftBoundry","rightBoundry","observerEntry","elemWidth","elemHeight","elemRectLeft","elemRectRight","elemRectTop","elemOffsetLeft","elemOffsetTop","getRectRelativeToOffsetParent","topPosition","bottomPosition","leftPosition","rightPosition","arrowTop","arrowLeft","arrowRight","arrowWidth","arrowHeight","arrowAdjust","horizontals","verticals","updatedTooltipEvent","toLowerCase","tooltipDefaults","dataOriginalTitle","tooltipComponent","setHtml","content","sanitizeFn","dirty","tempDocument","isNodeList","isArray","createTip","id","title","template","animation","customClass","dismissible","btnClose","tipString","tipPositions","titleParts","contentParts","placementClass","tooltipTemplate","htmlMarkup","tooltipHeader","tooltipBody","tempTitle","tempContent","tempBtn","getElementContainer","majorBlockTags","containers","parentNode","getParentNode","isShadowRoot","isTableElement","tooltipSelector","titleAttr","getTooltipInstance","tooltipInitCallback","Tooltip","removeTooltip","ariaDescribedBy","hasTip","disposeTooltipComplete","toggleTooltipTitle","toggleTooltipAction","tooltipShownAction","shownTooltipEvent","tooltipHiddenAction","hiddenTooltipEvent","toggleTooltipOpenHandlers","parentModal","parentOffcanvas","titleAtt","tipComponent","elem","getUID","position","outTimer","showTooltipEvent","delay","hideTooltipEvent","enabled","tr","mousehoverEvent","focusinEvent","focusoutEvent","isApple","popoverSelector","popoverDefaults","getPopoverInstance","popoverInitCallback","Popover","scrollspyString","scrollspyComponent","scrollspySelector","scrollSpyAnchorSelector","scrollspyDefaults","getScrollSpyInstance","scrollspyInitCallback","ScrollSpy","activateScrollSpy","updateSpyTargets","_itemsLength","_observables","links","getElementsByTagName","link","hash","targetItem","clear","item","activate","parentItem","parentLink","getOffset","scrollTarget","spyTarget","_activeItem","entries","newActiveItem","firstOffset","offsetTop","nextTarget","nextOffsetTop","getElementById","_observer","_scrollTo","tabString","tabComponent","tabSelector","getTabInstance","tabInitCallback","Tab","showTabEvent","shownTabEvent","hideTabEvent","hiddenTabEvent","tabPrivate","triggerTabEnd","tabContent","nav","triggerTabShow","nextContent","tab","currentHeight","nextHeight","triggerTabHide","getActiveTab","activeTabs","getParentDropdown","dropdown","tabClickHandler","firstTab","firstTabContent","ariaSelected","activeDropdown","toggleTab","toastString","toastComponent","toastSelector","toastDismissSelector","toastToggleSelector","showingClass","hideClass","toastDefaults","getToastInstance","toastInitCallback","Toast","showToastEvent","shownToastEvent","hideToastEvent","hiddenToastEvent","showToastComplete","hideToastComplete","hideToast","showToast","toastClickHandler","interactiveToastHandler","isShown","hide","componentsList","initComponentDataAPI","collection","removeComponentDataAPI","component","context","compData","instance","initCallback","lookUp","elemCollection","cs","init","selector","removeDataAPI","comp"],"mappings":"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","x_google_ignoreList":[0,1,27]} \ No newline at end of file +{"version":3,"file":"bootstrap-native.mjs","names":["isFunction","isElement"],"sources":["../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../node_modules/.pnpm/@thednp+event-listener@2.0.12/node_modules/@thednp/event-listener/dist/index.mjs","../src/strings/fadeClass.ts","../src/strings/showClass.ts","../src/strings/dataBsDismiss.ts","../src/strings/alertString.ts","../src/strings/alertComponent.ts","../src/util/isDisabled.ts","../package.json","../src/version.ts","../src/components/base-component.ts","../src/components/alert.ts","../src/strings/activeClass.ts","../src/strings/dataBsToggle.ts","../src/strings/buttonString.ts","../src/strings/buttonComponent.ts","../src/components/button.ts","../src/strings/dataBsTarget.ts","../src/strings/carouselString.ts","../src/strings/carouselComponent.ts","../src/strings/dataBsParent.ts","../src/strings/dataBsContainer.ts","../src/util/getTargetElement.ts","../src/components/carousel.ts","../src/strings/collapsingClass.ts","../src/strings/collapseString.ts","../src/strings/collapseComponent.ts","../src/components/collapse.ts","../node_modules/.pnpm/@thednp+position-observer@1.1.0/node_modules/@thednp/position-observer/dist/index.mjs","../src/strings/dropdownClasses.ts","../src/strings/dropdownComponent.ts","../src/strings/dropdownMenuClass.ts","../src/util/isEmptyAnchor.ts","../src/components/dropdown.ts","../src/strings/modalString.ts","../src/strings/modalComponent.ts","../src/strings/offcanvasComponent.ts","../src/strings/fixedTopClass.ts","../src/strings/fixedBottomClass.ts","../src/strings/stickyTopClass.ts","../src/strings/positionStickyClass.ts","../src/util/scrollbar.ts","../src/strings/offcanvasString.ts","../src/util/popupContainer.ts","../src/util/backdrop.ts","../src/util/isVisible.ts","../src/components/modal.ts","../src/components/offcanvas.ts","../src/strings/popoverString.ts","../src/strings/popoverComponent.ts","../src/strings/tooltipString.ts","../src/util/getTipTemplate.ts","../src/util/tipClassPositions.ts","../src/util/styleTip.ts","../src/util/tooltipDefaults.ts","../src/strings/dataOriginalTitle.ts","../src/strings/tooltipComponent.ts","../src/util/setHtml.ts","../src/util/createTip.ts","../src/util/getElementContainer.ts","../src/components/tooltip.ts","../src/components/popover.ts","../src/strings/scrollspyString.ts","../src/strings/scrollspyComponent.ts","../src/components/scrollspy.ts","../src/components/tab.ts","../src/strings/toastString.ts","../src/strings/toastComponent.ts","../src/components/toast.ts","../src/util/init.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","//#region package.json\nvar version = \"2.0.12\";\n\n//#endregion\n//#region src/index.ts\nconst registry = {};\nconst globalListener = (e) => {\n\tconst { type, currentTarget } = e;\n\tregistry[type].forEach((listenersMap, element) => {\n\t\tif (currentTarget === element) listenersMap.forEach((options, listener) => {\n\t\t\tlistener.apply(element, [e]);\n\t\t\tif (typeof options === \"object\" && options.once) removeListener(element, type, listener, options);\n\t\t});\n\t});\n};\nconst addListener = (element, eventType, listener, options) => {\n\tif (!registry[eventType]) registry[eventType] = /* @__PURE__ */ new Map();\n\tconst oneEventMap = registry[eventType];\n\tif (!oneEventMap.has(element)) oneEventMap.set(element, /* @__PURE__ */ new Map());\n\tconst oneElementMap = oneEventMap.get(element);\n\tconst { size } = oneElementMap;\n\toneElementMap.set(listener, options);\n\tif (!size) element.addEventListener(eventType, globalListener, options);\n};\nconst removeListener = (element, eventType, listener, options) => {\n\tconst oneEventMap = registry[eventType];\n\tconst oneElementMap = oneEventMap && oneEventMap.get(element);\n\tconst savedOptions = oneElementMap && oneElementMap.get(listener);\n\tconst eventOptions = savedOptions !== void 0 ? savedOptions : options;\n\tif (oneElementMap && oneElementMap.has(listener)) oneElementMap.delete(listener);\n\tif (oneEventMap && (!oneElementMap || !oneElementMap.size)) oneEventMap.delete(element);\n\tif (!oneEventMap || !oneEventMap.size) delete registry[eventType];\n\tif (!oneElementMap || !oneElementMap.size) element.removeEventListener(eventType, globalListener, eventOptions);\n};\nconst on = addListener;\nconst off = removeListener;\n\n//#endregion\nexport { addListener, globalListener, off, on, registry, removeListener, version };\n//# sourceMappingURL=index.mjs.map","/**\n * Global namespace for most components `fade` class.\n */\nconst fadeClass = \"fade\";\nexport default fadeClass;\n","/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n","/**\n * Global namespace for most components `dismiss` option.\n */\nconst dataBsDismiss = \"data-bs-dismiss\";\nexport default dataBsDismiss;\n","/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","import { getAttribute, hasClass } from \"@thednp/shorty\";\n\n/**\n * Check if interactive element is disabled.\n * @param target either a `',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n","/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n","import { Data, getElementsByTagName, matches } from \"@thednp/shorty\";\n\nimport { addListener } from \"@thednp/event-listener\";\n\nimport Alert from \"../components/alert\";\nimport Button from \"../components/button\";\nimport Carousel from \"../components/carousel\";\nimport Collapse from \"../components/collapse\";\nimport Dropdown from \"../components/dropdown\";\nimport Modal from \"../components/modal\";\nimport Offcanvas from \"../components/offcanvas\";\nimport Popover from \"../components/popover\";\nimport ScrollSpy from \"../components/scrollspy\";\nimport Tab from \"../components/tab\";\nimport Toast from \"../components/toast\";\nimport Tooltip from \"../components/tooltip\";\n\nconst componentsList = new Map<\n string,\n | typeof Alert\n | typeof Button\n | typeof Carousel\n | typeof Collapse\n | typeof Dropdown\n | typeof Modal\n | typeof Offcanvas\n | typeof Popover\n | typeof ScrollSpy\n | typeof Tab\n | typeof Toast\n | typeof Tooltip\n>();\n\ntype Component =\n | Alert\n | Button\n | Carousel\n | Collapse\n | Dropdown\n | Modal\n | Offcanvas\n | Popover\n | ScrollSpy\n | Tab\n | Toast\n | Tooltip;\n\n[\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n].forEach((c) => componentsList.set(c.prototype.name, c));\n\n/**\n * Initialize all matched `Element`s for one component.\n *\n * @param callback\n * @param collection\n */\nconst initComponentDataAPI = (\n callback: (el: Element) => Component,\n collection: HTMLCollectionOf | Element[],\n) => {\n [...collection].forEach((x) => callback(x));\n};\n\n/**\n * Remove one component from a target container element or all in the page.\n *\n * @param component the component name\n * @param context parent `Node`\n */\nconst removeComponentDataAPI = (component: string, context: ParentNode) => {\n const compData = Data.getAllFor(component) as Map;\n\n if (compData) {\n [...compData].forEach(([element, instance]) => {\n if (context.contains(element)) {\n (instance as T & { dispose: () => void }).dispose();\n }\n });\n }\n};\n\n/**\n * Initialize all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const initCallback = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n const elemCollection = [...getElementsByTagName(\"*\", lookUp)];\n\n componentsList.forEach((cs) => {\n const { init, selector } = cs;\n initComponentDataAPI(\n init,\n elemCollection.filter((item) => matches(item, selector)),\n );\n });\n};\n\n/**\n * Remove all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const removeDataAPI = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n\n componentsList.forEach((comp) => {\n removeComponentDataAPI(comp.prototype.name, lookUp);\n });\n};\n\n// Bulk initialize all components\nif (document.body) initCallback();\nelse {\n addListener(document, \"DOMContentLoaded\", () => initCallback(), {\n once: true,\n });\n}\n"],"x_google_ignoreList":[0,1,28],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/activeClass-CiLr15n0.js b/dist/components/activeClass-CiLr15n0.js new file mode 100644 index 00000000..1c4e48a1 --- /dev/null +++ b/dist/components/activeClass-CiLr15n0.js @@ -0,0 +1,2 @@ +var e=`active`;Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return e}}); +//# sourceMappingURL=activeClass-CiLr15n0.js.map \ No newline at end of file diff --git a/dist/components/activeClass-CiLr15n0.js.map b/dist/components/activeClass-CiLr15n0.js.map new file mode 100644 index 00000000..2aa3ce95 --- /dev/null +++ b/dist/components/activeClass-CiLr15n0.js.map @@ -0,0 +1 @@ +{"version":3,"file":"activeClass-CiLr15n0.js","names":[],"sources":["../../src/strings/activeClass.ts"],"sourcesContent":["/**\n * Global namespace for most components active class.\n */\nconst activeClass = \"active\";\nexport default activeClass;\n"],"mappings":"AACA,IAAG,EAAiB"} \ No newline at end of file diff --git a/dist/components/activeClass-CxJYQAGN.js b/dist/components/activeClass-CxJYQAGN.js deleted file mode 100644 index 69bb8883..00000000 --- a/dist/components/activeClass-CxJYQAGN.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";const s="active";exports.activeClass=s; -//# sourceMappingURL=activeClass-CxJYQAGN.js.map diff --git a/dist/components/activeClass-CxJYQAGN.js.map b/dist/components/activeClass-CxJYQAGN.js.map deleted file mode 100644 index 83f0da56..00000000 --- a/dist/components/activeClass-CxJYQAGN.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"activeClass-CxJYQAGN.js","sources":["../../src/strings/activeClass.ts"],"sourcesContent":["/**\n * Global namespace for most components active class.\n */\nconst activeClass = \"active\";\nexport default activeClass;\n"],"names":["activeClass"],"mappings":"aACA,MAAMA,EAAc"} \ No newline at end of file diff --git a/dist/components/activeClass-LUKCeUHG.mjs b/dist/components/activeClass-LUKCeUHG.mjs new file mode 100644 index 00000000..3261683d --- /dev/null +++ b/dist/components/activeClass-LUKCeUHG.mjs @@ -0,0 +1,6 @@ +//#region src/strings/activeClass.ts +var e = "active"; +//#endregion +export { e as t }; + +//# sourceMappingURL=activeClass-LUKCeUHG.mjs.map \ No newline at end of file diff --git a/dist/components/activeClass-LUKCeUHG.mjs.map b/dist/components/activeClass-LUKCeUHG.mjs.map new file mode 100644 index 00000000..6dab93d2 --- /dev/null +++ b/dist/components/activeClass-LUKCeUHG.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"activeClass-LUKCeUHG.mjs","names":[],"sources":["../../src/strings/activeClass.ts"],"sourcesContent":["/**\n * Global namespace for most components active class.\n */\nconst activeClass = \"active\";\nexport default activeClass;\n"],"mappings":";AACA,IAAG,IAAiB"} \ No newline at end of file diff --git a/dist/components/activeClass-iqaD75Su.mjs b/dist/components/activeClass-iqaD75Su.mjs deleted file mode 100644 index b84b4fa0..00000000 --- a/dist/components/activeClass-iqaD75Su.mjs +++ /dev/null @@ -1,5 +0,0 @@ -const a = "active"; -export { - a -}; -//# sourceMappingURL=activeClass-iqaD75Su.mjs.map diff --git a/dist/components/activeClass-iqaD75Su.mjs.map b/dist/components/activeClass-iqaD75Su.mjs.map deleted file mode 100644 index 06e21232..00000000 --- a/dist/components/activeClass-iqaD75Su.mjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"activeClass-iqaD75Su.mjs","sources":["../../src/strings/activeClass.ts"],"sourcesContent":["/**\n * Global namespace for most components active class.\n */\nconst activeClass = \"active\";\nexport default activeClass;\n"],"names":["activeClass"],"mappings":"AACA,MAAMA,IAAc;"} \ No newline at end of file diff --git a/dist/components/alert.cjs b/dist/components/alert.cjs index 77a0339b..5babbc70 100644 --- a/dist/components/alert.cjs +++ b/dist/components/alert.cjs @@ -1,2 +1,2 @@ -"use strict";const s=require("./base-component-_c7CmBvl.js"),u=require("./fadeClass-Co6nOzNJ.js"),r=require("./showClass-D_Ms1FgG.js"),g=require("./dataBsDismiss-CMHF7If_.js"),h=require("./isDisabled-BI_fUUV9.js"),o="alert",a="Alert",p=`.${o}`,v=`[${g.dataBsDismiss}="${o}"]`,C=e=>s.to(e,a),E=e=>new d(e),c=s.mo(`close.bs.${o}`),b=s.mo(`closed.bs.${o}`),l=e=>{const{element:t}=e;s.Z(t,b),e._toggleEventListeners(),e.dispose(),t.remove()};class d extends s.BaseComponent{static selector=p;static init=E;static getInstance=C;dismiss;constructor(t){super(t),this.dismiss=s.Wo(v,this.element),this._toggleEventListeners(!0)}get name(){return a}close=t=>{const{element:n,dismiss:i}=this;!n||!s._n(n,r.showClass)||t&&i&&h.isDisabled(i)||(s.Z(n,c),!c.defaultPrevented&&(s.Zn(n,r.showClass),s._n(n,u.fadeClass)?s.so(n,()=>l(this)):l(this)))};_toggleEventListeners=t=>{const n=t?s.E:s.r,{dismiss:i,close:m}=this;i&&n(i,s.vt,m)};dispose(){this._toggleEventListeners(),super.dispose()}}module.exports=d; -//# sourceMappingURL=alert.cjs.map +const e=require(`./base-component-LPll9cLQ.js`);require(`./fadeClass-DAfX8y06.js`);const t=require(`./showClass-CR_WzH06.js`),n=require(`./dataBsDismiss-gvZhVct3.js`),r=require(`./isDisabled-VaupgHJv.js`);var i=`alert`,a=`Alert`,o=`.${i}`,s=`[${n.t}="${i}"]`,c=t=>e.pt(t,a),l=e=>new p(e),u=e.ot(`close.bs.${i}`),d=e.ot(`closed.bs.${i}`),f=t=>{let{element:n}=t;e.I(n,d),t._toggleEventListeners(),t.dispose(),n.remove()},p=class extends e.t{static selector=o;static init=l;static getInstance=c;dismiss;constructor(t){super(t),this.dismiss=e.P(s,this.element),this._toggleEventListeners(!0)}get name(){return a}close=n=>{let{element:i,dismiss:a}=this;!i||!e.R(i,`show`)||n&&a&&r.t(a)||(e.I(i,u),!u.defaultPrevented&&(e.L(i,t.t),e.R(i,`fade`)?e.ft(i,()=>f(this)):f(this)))};_toggleEventListeners=t=>{let n=t?e.n:e.r,{dismiss:r,close:i}=this;r&&n(r,e.vt,i)};dispose(){this._toggleEventListeners(),super.dispose()}};module.exports=p; +//# sourceMappingURL=alert.cjs.map \ No newline at end of file diff --git a/dist/components/alert.cjs.map b/dist/components/alert.cjs.map index d45229d7..11a7d71e 100644 --- a/dist/components/alert.cjs.map +++ b/dist/components/alert.cjs.map @@ -1 +1 @@ -{"version":3,"file":"alert.cjs","sources":["../../src/strings/alertString.ts","../../src/strings/alertComponent.ts","../../src/components/alert.ts"],"sourcesContent":["/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","/* Native JavaScript for Bootstrap 5 | Alert\n-------------------------------------------- */\nimport {\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getInstance,\n hasClass,\n mouseclickEvent,\n PointerEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport alertString from \"~/strings/alertString\";\nimport alertComponent from \"~/strings/alertComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport type { AlertEvent } from \"~/interface/alert\";\n\nimport BaseComponent from \"./base-component\";\n\n// ALERT PRIVATE GC\n// ================\nconst alertSelector = `.${alertString}`;\nconst alertDismissSelector = `[${dataBsDismiss}=\"${alertString}\"]`;\n\n/**\n * Static method which returns an existing `Alert` instance associated\n * to a target `Element`.\n */\nconst getAlertInstance = (element: Element) =>\n getInstance(element, alertComponent);\n\n/**\n * An `Alert` initialization callback.\n */\nconst alertInitCallback = (element: Element) => new Alert(element);\n\n// ALERT CUSTOM EVENTS\n// ===================\nconst closeAlertEvent = createCustomEvent, AlertEvent>(\n `close.bs.${alertString}`,\n);\nconst closedAlertEvent = createCustomEvent, AlertEvent>(\n `closed.bs.${alertString}`,\n);\n\n// ALERT EVENT HANDLER\n// ===================\n/**\n * Alert `transitionend` callback.\n *\n * @param that target Alert instance\n */\nconst alertTransitionEnd = (self: Alert) => {\n const { element } = self;\n dispatchEvent(element, closedAlertEvent);\n\n self._toggleEventListeners();\n self.dispose();\n element.remove();\n};\n\n// ALERT DEFINITION\n// ================\n/** Creates a new Alert instance. */\nexport default class Alert extends BaseComponent {\n static selector = alertSelector;\n static init = alertInitCallback;\n static getInstance = getAlertInstance;\n dismiss: HTMLElement | null;\n\n constructor(target: Element | string) {\n super(target);\n\n // the dismiss button\n this.dismiss = querySelector(\n alertDismissSelector,\n this.element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /** Returns component name string. */\n get name() {\n return alertComponent;\n }\n\n // ALERT PUBLIC METHODS\n // ====================\n /**\n * Public method that hides the `.alert` element from the user,\n * disposes the instance once animation is complete, then\n * removes the element from the DOM.\n */\n close = (e: PointerEvent) => {\n const { element, dismiss } = this;\n\n // istanbul ignore if @preserve\n if (!element || !hasClass(element, showClass)) return;\n // istanbul ignore if @preserve\n if (e && dismiss && isDisabled(dismiss)) return;\n dispatchEvent(element, closeAlertEvent);\n\n if (closeAlertEvent.defaultPrevented) return;\n\n removeClass(element, showClass);\n\n if (hasClass(element, fadeClass)) {\n emulateTransitionEnd(element, () => alertTransitionEnd(this));\n } else alertTransitionEnd(this);\n };\n /**\n * Toggle on / off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { dismiss, close } = this;\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, close);\n }\n };\n\n /** Remove the component from target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"names":["alertString","alertComponent","alertSelector","alertDismissSelector","dataBsDismiss","getAlertInstance","element","getInstance","alertInitCallback","Alert","closeAlertEvent","createCustomEvent","closedAlertEvent","alertTransitionEnd","self","dispatchEvent","BaseComponent","target","querySelector","e","dismiss","hasClass","showClass","isDisabled","removeClass","fadeClass","emulateTransitionEnd","add","action","addListener","removeListener","close","mouseclickEvent"],"mappings":"sNACMA,EAAc,QCAdC,EAAiB,QC0BjBC,EAAgB,IAAIF,CAAW,GAC/BG,EAAuB,IAAIC,EAAAA,aAAa,KAAKJ,CAAW,KAGxDK,EAAoBC,GACxBC,KAAmBD,EAASL,CAAc,EAGtCO,EAAqBF,GAAqB,IAAIG,EAAMH,CAAO,EAI3DI,EAAkBC,EAAAA,GACtB,YAAYX,CAAW,EACzB,EACMY,EAAmBD,EAAAA,GACvB,aAAaX,CAAW,EAC1B,EAKMa,EAAsBC,GAAgB,CAC1C,KAAM,CAAE,QAAAR,GAAYQ,EACpBC,EAAAA,EAAcT,EAASM,CAAgB,EAEvCE,EAAK,sBAAA,EACLA,EAAK,QAAA,EACLR,EAAQ,OAAA,CACV,EAKA,MAAqBG,UAAcO,EAAAA,aAAc,CAC/C,OAAO,SAAWd,EAClB,OAAO,KAAOM,EACd,OAAO,YAAcH,EACrB,QAEA,YAAYY,EAA0B,CACpC,MAAMA,CAAM,EAGZ,KAAK,QAAUC,EAAAA,GACbf,EACA,KAAK,OAAA,EAIP,KAAK,sBAAsB,EAAI,CACjC,CAGA,IAAI,MAAO,CACT,OAAOF,CACT,CAKA,MAASkB,GAAiC,CACxC,KAAM,CAAE,QAAAb,EAAS,QAAAc,CAAA,EAAY,KAGzB,CAACd,GAAW,CAACe,EAAAA,GAASf,EAASgB,EAAAA,SAAS,GAExCH,GAAKC,GAAWG,EAAAA,WAAWH,CAAO,IACtCL,EAAAA,EAAcT,EAASI,CAAe,EAElC,CAAAA,EAAgB,mBAEpBc,EAAAA,GAAYlB,EAASgB,WAAS,EAE1BD,EAAAA,GAASf,EAASmB,EAAAA,SAAS,EAC7BC,EAAAA,GAAqBpB,EAAS,IAAMO,EAAmB,IAAI,CAAC,IACpC,IAAI,GAChC,EAEA,sBAAyBc,GAAkB,CACzC,MAAMC,EAASD,EAAME,EAAAA,EAAcC,EAAAA,EAC7B,CAAE,QAAAV,EAAS,MAAAW,CAAA,EAAU,KAEvBX,GACFQ,EAAOR,EAASY,EAAAA,GAAiBD,CAAK,CAE1C,EAGA,SAAU,CACR,KAAK,sBAAA,EACL,MAAM,QAAA,CACR,CACF"} \ No newline at end of file +{"version":3,"file":"alert.cjs","names":[],"sources":["../../src/strings/alertString.ts","../../src/strings/alertComponent.ts","../../src/components/alert.ts"],"sourcesContent":["/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","/* Native JavaScript for Bootstrap 5 | Alert\n-------------------------------------------- */\nimport {\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getInstance,\n hasClass,\n mouseclickEvent,\n PointerEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport alertString from \"~/strings/alertString\";\nimport alertComponent from \"~/strings/alertComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport type { AlertEvent } from \"~/interface/alert\";\n\nimport BaseComponent from \"./base-component\";\n\n// ALERT PRIVATE GC\n// ================\nconst alertSelector = `.${alertString}`;\nconst alertDismissSelector = `[${dataBsDismiss}=\"${alertString}\"]`;\n\n/**\n * Static method which returns an existing `Alert` instance associated\n * to a target `Element`.\n */\nconst getAlertInstance = (element: Element) =>\n getInstance(element, alertComponent);\n\n/**\n * An `Alert` initialization callback.\n */\nconst alertInitCallback = (element: Element) => new Alert(element);\n\n// ALERT CUSTOM EVENTS\n// ===================\nconst closeAlertEvent = createCustomEvent, AlertEvent>(\n `close.bs.${alertString}`,\n);\nconst closedAlertEvent = createCustomEvent, AlertEvent>(\n `closed.bs.${alertString}`,\n);\n\n// ALERT EVENT HANDLER\n// ===================\n/**\n * Alert `transitionend` callback.\n *\n * @param that target Alert instance\n */\nconst alertTransitionEnd = (self: Alert) => {\n const { element } = self;\n dispatchEvent(element, closedAlertEvent);\n\n self._toggleEventListeners();\n self.dispose();\n element.remove();\n};\n\n// ALERT DEFINITION\n// ================\n/** Creates a new Alert instance. */\nexport default class Alert extends BaseComponent {\n static selector = alertSelector;\n static init = alertInitCallback;\n static getInstance = getAlertInstance;\n dismiss: HTMLElement | null;\n\n constructor(target: Element | string) {\n super(target);\n\n // the dismiss button\n this.dismiss = querySelector(\n alertDismissSelector,\n this.element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /** Returns component name string. */\n get name() {\n return alertComponent;\n }\n\n // ALERT PUBLIC METHODS\n // ====================\n /**\n * Public method that hides the `.alert` element from the user,\n * disposes the instance once animation is complete, then\n * removes the element from the DOM.\n */\n close = (e: PointerEvent) => {\n const { element, dismiss } = this;\n\n // istanbul ignore if @preserve\n if (!element || !hasClass(element, showClass)) return;\n // istanbul ignore if @preserve\n if (e && dismiss && isDisabled(dismiss)) return;\n dispatchEvent(element, closeAlertEvent);\n\n if (closeAlertEvent.defaultPrevented) return;\n\n removeClass(element, showClass);\n\n if (hasClass(element, fadeClass)) {\n emulateTransitionEnd(element, () => alertTransitionEnd(this));\n } else alertTransitionEnd(this);\n };\n /**\n * Toggle on / off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { dismiss, close } = this;\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, close);\n }\n };\n\n /** Remove the component from target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"mappings":"6MACA,IAAM,EAAc,QCAd,EAAiB,QC0BjB,EAAY,IAAA,IACZ,EAAoB,IAAA,EAAA,EAAa,IAAA,EAAA,IAGrC,EAAA,GACA,EAAA,GAAe,EAAa,EAAc,CAGtC,EAAoB,GAAmB,IAAA,EAAA,EAAA,CAIvC,EAAQ,EAAA,GACZ,YAAA,IACF,QAEE,aAAa,IACd,CAKE,EAAyB,GAAA,CAC3B,GAAA,CAAA,WAAA,WAGC,EAAK,uBAAc,CACnB,EAAA,SAAA,CACA,EAAQ,QAAA,EAMM,EAAhB,cAAyB,EAAA,CAAiB,mBAExC,OAAK,KAAA,EACL,OAAK,YAAS,EACd,uBAGC,MAAM,EAAA,CAGT,KAAO,QAAQ,EAAA,EACb,EACA,KAAO,QACP,CAGA,KAAA,sBAA6B,GAAC,CAI9B,IAAE,MAAK,CACL,OAAE,EAMJ,MAAA,GAAA,+BAIE,CAAA,GAAO,CAAA,EAAA,EAAc,EAAA,OAAA,iBAGrB,EAAA,EAAc,EAAA,EAAA,CAEd,GAAA,mBAEA,EAAA,EAAU,EAAI,EAAA,EAAc,CAE5B,EAAA,EAAA,EAAA,OAAA,CACF,EAAA,GAAyB,MAAe,EAAE,KAAA,CAAA,CACjC,EAAmB,KAAG,IAG/B,sBAAmB,GAAkB,CACnC,IAAG,EAAS,EAAS,EAAA,EAAE,EAAA,EACjB,CAAE,UAAS,SAAG,QAGlB,EAAE,EAAA,EAAA,GAAgB,EAAkB,EAKxC,SAAI,CACF,KAAE,uBAAwB,CAC3B,MAAA,SAAA"} \ No newline at end of file diff --git a/dist/components/alert.mjs b/dist/components/alert.mjs index d1da80da..2c371032 100644 --- a/dist/components/alert.mjs +++ b/dist/components/alert.mjs @@ -1,43 +1,36 @@ -import { B as f, t as g, W as u, _ as i, Z as c, m, a as v, s as h, E, r as _, v as A } from "./base-component-BazRqYWL.mjs"; -import { f as C } from "./fadeClass-CLIYI_zn.mjs"; -import { s as r } from "./showClass-C8hdJfjQ.mjs"; -import { d as $ } from "./dataBsDismiss-DdNPQYa-.mjs"; -import { i as b } from "./isDisabled-CipSDrHr.mjs"; -const n = "alert", d = "Alert", L = `.${n}`, B = `[${$}="${n}"]`, D = (s) => g(s, d), I = (s) => new w(s), a = m( - `close.bs.${n}` -), S = m( - `closed.bs.${n}` -), l = (s) => { - const { element: t } = s; - c(t, S), s._toggleEventListeners(), s.dispose(), t.remove(); +import { I as e, L as t, P as n, R as r, ft as i, n as a, ot as o, pt as s, r as c, t as l, vt as u } from "./base-component-Bm8KwB_I.mjs"; +import "./fadeClass-Bzjdr13Y.mjs"; +import { t as d } from "./showClass-CH6sh0pm.mjs"; +import { t as f } from "./dataBsDismiss-D_m2Bp4t.mjs"; +import { t as p } from "./isDisabled-CA05SUmE.mjs"; +//#region src/strings/alertString.ts +var m = "alert", h = "Alert", g = `.${m}`, _ = `[${f}="${m}"]`, v = (e) => s(e, h), y = (e) => new C(e), b = o(`close.bs.${m}`), x = o(`closed.bs.${m}`), S = (t) => { + let { element: n } = t; + e(n, x), t._toggleEventListeners(), t.dispose(), n.remove(); +}, C = class extends l { + static selector = g; + static init = y; + static getInstance = v; + dismiss; + constructor(e) { + super(e), this.dismiss = n(_, this.element), this._toggleEventListeners(!0); + } + get name() { + return h; + } + close = (n) => { + let { element: a, dismiss: o } = this; + !a || !r(a, "show") || n && o && p(o) || (e(a, b), !b.defaultPrevented && (t(a, d), r(a, "fade") ? i(a, () => S(this)) : S(this))); + }; + _toggleEventListeners = (e) => { + let t = e ? a : c, { dismiss: n, close: r } = this; + n && t(n, u, r); + }; + dispose() { + this._toggleEventListeners(), super.dispose(); + } }; -class w extends f { - static selector = L; - static init = I; - static getInstance = D; - dismiss; - constructor(t) { - super(t), this.dismiss = u( - B, - this.element - ), this._toggleEventListeners(!0); - } - get name() { - return d; - } - close = (t) => { - const { element: e, dismiss: o } = this; - !e || !i(e, r) || t && o && b(o) || (c(e, a), !a.defaultPrevented && (v(e, r), i(e, C) ? h(e, () => l(this)) : l(this))); - }; - _toggleEventListeners = (t) => { - const e = t ? E : _, { dismiss: o, close: p } = this; - o && e(o, A, p); - }; - dispose() { - this._toggleEventListeners(), super.dispose(); - } -} -export { - w as default -}; -//# sourceMappingURL=alert.mjs.map +//#endregion +export { C as default }; + +//# sourceMappingURL=alert.mjs.map \ No newline at end of file diff --git a/dist/components/alert.mjs.map b/dist/components/alert.mjs.map index 4984d790..3a307185 100644 --- a/dist/components/alert.mjs.map +++ b/dist/components/alert.mjs.map @@ -1 +1 @@ -{"version":3,"file":"alert.mjs","sources":["../../src/strings/alertString.ts","../../src/strings/alertComponent.ts","../../src/components/alert.ts"],"sourcesContent":["/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","/* Native JavaScript for Bootstrap 5 | Alert\n-------------------------------------------- */\nimport {\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getInstance,\n hasClass,\n mouseclickEvent,\n PointerEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport alertString from \"~/strings/alertString\";\nimport alertComponent from \"~/strings/alertComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport type { AlertEvent } from \"~/interface/alert\";\n\nimport BaseComponent from \"./base-component\";\n\n// ALERT PRIVATE GC\n// ================\nconst alertSelector = `.${alertString}`;\nconst alertDismissSelector = `[${dataBsDismiss}=\"${alertString}\"]`;\n\n/**\n * Static method which returns an existing `Alert` instance associated\n * to a target `Element`.\n */\nconst getAlertInstance = (element: Element) =>\n getInstance(element, alertComponent);\n\n/**\n * An `Alert` initialization callback.\n */\nconst alertInitCallback = (element: Element) => new Alert(element);\n\n// ALERT CUSTOM EVENTS\n// ===================\nconst closeAlertEvent = createCustomEvent, AlertEvent>(\n `close.bs.${alertString}`,\n);\nconst closedAlertEvent = createCustomEvent, AlertEvent>(\n `closed.bs.${alertString}`,\n);\n\n// ALERT EVENT HANDLER\n// ===================\n/**\n * Alert `transitionend` callback.\n *\n * @param that target Alert instance\n */\nconst alertTransitionEnd = (self: Alert) => {\n const { element } = self;\n dispatchEvent(element, closedAlertEvent);\n\n self._toggleEventListeners();\n self.dispose();\n element.remove();\n};\n\n// ALERT DEFINITION\n// ================\n/** Creates a new Alert instance. */\nexport default class Alert extends BaseComponent {\n static selector = alertSelector;\n static init = alertInitCallback;\n static getInstance = getAlertInstance;\n dismiss: HTMLElement | null;\n\n constructor(target: Element | string) {\n super(target);\n\n // the dismiss button\n this.dismiss = querySelector(\n alertDismissSelector,\n this.element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /** Returns component name string. */\n get name() {\n return alertComponent;\n }\n\n // ALERT PUBLIC METHODS\n // ====================\n /**\n * Public method that hides the `.alert` element from the user,\n * disposes the instance once animation is complete, then\n * removes the element from the DOM.\n */\n close = (e: PointerEvent) => {\n const { element, dismiss } = this;\n\n // istanbul ignore if @preserve\n if (!element || !hasClass(element, showClass)) return;\n // istanbul ignore if @preserve\n if (e && dismiss && isDisabled(dismiss)) return;\n dispatchEvent(element, closeAlertEvent);\n\n if (closeAlertEvent.defaultPrevented) return;\n\n removeClass(element, showClass);\n\n if (hasClass(element, fadeClass)) {\n emulateTransitionEnd(element, () => alertTransitionEnd(this));\n } else alertTransitionEnd(this);\n };\n /**\n * Toggle on / off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { dismiss, close } = this;\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, close);\n }\n };\n\n /** Remove the component from target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"names":["alertString","alertComponent","alertSelector","alertDismissSelector","dataBsDismiss","getAlertInstance","element","getInstance","alertInitCallback","Alert","closeAlertEvent","createCustomEvent","closedAlertEvent","alertTransitionEnd","self","dispatchEvent","BaseComponent","target","querySelector","e","dismiss","hasClass","showClass","isDisabled","removeClass","fadeClass","emulateTransitionEnd","add","action","addListener","removeListener","close","mouseclickEvent"],"mappings":";;;;;AACA,MAAMA,IAAc,SCAdC,IAAiB,SC0BjBC,IAAgB,IAAIF,CAAW,IAC/BG,IAAuB,IAAIC,CAAa,KAAKJ,CAAW,MAGxDK,IAAmB,CAACC,MACxBC,EAAmBD,GAASL,CAAc,GAGtCO,IAAoB,CAACF,MAAqB,IAAIG,EAAMH,CAAO,GAI3DI,IAAkBC;AAAAA,EACtB,YAAYX,CAAW;AACzB,GACMY,IAAmBD;AAAAA,EACvB,aAAaX,CAAW;AAC1B,GAKMa,IAAqB,CAACC,MAAgB;AAC1C,QAAM,EAAE,SAAAR,MAAYQ;AACpBC,EAAAA,EAAcT,GAASM,CAAgB,GAEvCE,EAAK,sBAAA,GACLA,EAAK,QAAA,GACLR,EAAQ,OAAA;AACV;AAKA,MAAqBG,UAAcO,EAAc;AAAA,EAC/C,OAAO,WAAWd;AAAA,EAClB,OAAO,OAAOM;AAAA,EACd,OAAO,cAAcH;AAAA,EACrB;AAAA,EAEA,YAAYY,GAA0B;AACpC,UAAMA,CAAM,GAGZ,KAAK,UAAUC;AAAAA,MACbf;AAAA,MACA,KAAK;AAAA,IAAA,GAIP,KAAK,sBAAsB,EAAI;AAAA,EACjC;AAAA,EAGA,IAAI,OAAO;AACT,WAAOF;AAAA,EACT;AAAA,EAKA,QAAQ,CAACkB,MAAiC;AACxC,UAAM,EAAE,SAAAb,GAAS,SAAAc,EAAA,IAAY;AAG7B,IAAI,CAACd,KAAW,CAACe,EAASf,GAASgB,CAAS,KAExCH,KAAKC,KAAWG,EAAWH,CAAO,MACtCL,EAAcT,GAASI,CAAe,GAElC,CAAAA,EAAgB,qBAEpBc,EAAYlB,GAASgB,CAAS,GAE1BD,EAASf,GAASmB,CAAS,IAC7BC,EAAqBpB,GAAS,MAAMO,EAAmB,IAAI,CAAC,MACpC,IAAI;AAAA,EAChC;AAAA,EAEA,wBAAwB,CAACc,MAAkB;AACzC,UAAMC,IAASD,IAAME,IAAcC,GAC7B,EAAE,SAAAV,GAAS,OAAAW,EAAA,IAAU;AAE3B,IAAIX,KACFQ,EAAOR,GAASY,GAAiBD,CAAK;AAAA,EAE1C;AAAA,EAGA,UAAU;AACR,SAAK,sBAAA,GACL,MAAM,QAAA;AAAA,EACR;AACF;"} \ No newline at end of file +{"version":3,"file":"alert.mjs","names":[],"sources":["../../src/strings/alertString.ts","../../src/strings/alertComponent.ts","../../src/components/alert.ts"],"sourcesContent":["/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","/* Native JavaScript for Bootstrap 5 | Alert\n-------------------------------------------- */\nimport {\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getInstance,\n hasClass,\n mouseclickEvent,\n PointerEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport alertString from \"~/strings/alertString\";\nimport alertComponent from \"~/strings/alertComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport type { AlertEvent } from \"~/interface/alert\";\n\nimport BaseComponent from \"./base-component\";\n\n// ALERT PRIVATE GC\n// ================\nconst alertSelector = `.${alertString}`;\nconst alertDismissSelector = `[${dataBsDismiss}=\"${alertString}\"]`;\n\n/**\n * Static method which returns an existing `Alert` instance associated\n * to a target `Element`.\n */\nconst getAlertInstance = (element: Element) =>\n getInstance(element, alertComponent);\n\n/**\n * An `Alert` initialization callback.\n */\nconst alertInitCallback = (element: Element) => new Alert(element);\n\n// ALERT CUSTOM EVENTS\n// ===================\nconst closeAlertEvent = createCustomEvent, AlertEvent>(\n `close.bs.${alertString}`,\n);\nconst closedAlertEvent = createCustomEvent, AlertEvent>(\n `closed.bs.${alertString}`,\n);\n\n// ALERT EVENT HANDLER\n// ===================\n/**\n * Alert `transitionend` callback.\n *\n * @param that target Alert instance\n */\nconst alertTransitionEnd = (self: Alert) => {\n const { element } = self;\n dispatchEvent(element, closedAlertEvent);\n\n self._toggleEventListeners();\n self.dispose();\n element.remove();\n};\n\n// ALERT DEFINITION\n// ================\n/** Creates a new Alert instance. */\nexport default class Alert extends BaseComponent {\n static selector = alertSelector;\n static init = alertInitCallback;\n static getInstance = getAlertInstance;\n dismiss: HTMLElement | null;\n\n constructor(target: Element | string) {\n super(target);\n\n // the dismiss button\n this.dismiss = querySelector(\n alertDismissSelector,\n this.element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /** Returns component name string. */\n get name() {\n return alertComponent;\n }\n\n // ALERT PUBLIC METHODS\n // ====================\n /**\n * Public method that hides the `.alert` element from the user,\n * disposes the instance once animation is complete, then\n * removes the element from the DOM.\n */\n close = (e: PointerEvent) => {\n const { element, dismiss } = this;\n\n // istanbul ignore if @preserve\n if (!element || !hasClass(element, showClass)) return;\n // istanbul ignore if @preserve\n if (e && dismiss && isDisabled(dismiss)) return;\n dispatchEvent(element, closeAlertEvent);\n\n if (closeAlertEvent.defaultPrevented) return;\n\n removeClass(element, showClass);\n\n if (hasClass(element, fadeClass)) {\n emulateTransitionEnd(element, () => alertTransitionEnd(this));\n } else alertTransitionEnd(this);\n };\n /**\n * Toggle on / off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { dismiss, close } = this;\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, close);\n }\n };\n\n /** Remove the component from target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"mappings":";;;;;;AACA,IAAM,IAAc,SCAd,IAAiB,SC0BjB,IAAY,IAAA,KACZ,IAAoB,IAAA,EAAa,IAAA,EAAA,KAGrC,KAAA,MACA,EAAe,GAAa,EAAc,EAGtC,KAAoB,MAAmB,IAAA,EAAA,EAAA,EAIvC,IAAQ,EACZ,YAAA,IACF,QAEE,aAAa,IACd,EAKE,KAAyB,MAAA;CAC3B,IAAA,EAAA,eAAA;AAKC,UAFA,EAAK,uBAAc,EACnB,EAAA,SAAA,EACA,EAAQ,QAAA;GAMM,IAAhB,cAAyB,EAAiB;;CAExC,OAAK,OAAA;CACL,OAAK,cAAS;CACd;;AAYA,EATC,MAAM,EAAA,EAGT,KAAO,UAAQ,EACb,GACA,KAAO,QACP,EAGA,KAAA,sBAA6B,GAAC;;CAI9B,IAAE,OAAK;AACL,SAAE;;CAMJ,SAAA,MAAA;;AAIE,GAAA,KAAO,CAAA,EAAc,GAAA,OAAA,uBAGrB,EAAc,GAAA,EAAA,EAEd,GAAA,qBAEA,EAAU,GAAI,EAAc,EAE5B,EAAA,GAAA,OAAA,GACF,EAAyB,SAAe,EAAE,KAAA,CAAA,GACjC,EAAmB,KAAG;;CAG/B,yBAAmB,MAAkB;EACnC,IAAG,IAAS,IAAS,IAAE,GACjB,EAAE,YAAS,aAAG;OAGlB,EAAE,GAAA,GAAgB,EAAkB;;CAKxC,UAAI;AAEH,EADC,KAAE,uBAAwB,EAC3B,MAAA,SAAA"} \ No newline at end of file diff --git a/dist/components/base-component-BazRqYWL.mjs b/dist/components/base-component-BazRqYWL.mjs deleted file mode 100644 index 56013b20..00000000 --- a/dist/components/base-component-BazRqYWL.mjs +++ /dev/null @@ -1,338 +0,0 @@ -const he = "aria-describedby", ge = "aria-expanded", q = "aria-hidden", me = "aria-modal", pe = "aria-pressed", ye = "aria-selected", we = "focus", be = "focusin", ve = "focusout", Ee = "keydown", Ae = "keyup", Le = "click", Ne = "mousedown", Te = "hover", Me = "mouseenter", xe = "mouseleave", Ce = "pointerdown", De = "pointermove", Pe = "pointerup", ke = "touchstart", je = "dragstart", I = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]', ze = "ArrowDown", He = "ArrowUp", Be = "ArrowLeft", Se = "ArrowRight", Fe = "Escape", Q = "transitionDuration", Z = "transitionDelay", N = "transitionend", F = "transitionProperty", Oe = () => { - const e = /iPhone|iPad|iPod|Android/i; - return navigator?.userAgentData?.brands.some( - (s) => e.test(s.brand) - ) || e.test(navigator?.userAgent) || !1; -}, Ve = () => { - const e = /(iPhone|iPod|iPad)/; - return navigator?.userAgentData?.brands.some( - (s) => e.test(s.brand) - ) || e.test( - navigator?.userAgent - ) || !1; -}, We = () => { -}, _ = (e, s, t, a) => { - e.addEventListener( - s, - t, - !1 - ); -}, X = (e, s, t, a) => { - e.removeEventListener( - s, - t, - !1 - ); -}, O = (e, s) => e.getAttribute(s), G = (e, s) => e.hasAttribute(s), $e = (e, s, t) => e.setAttribute(s, t), Re = (e, s) => e.removeAttribute(s), qe = (e, ...s) => { - e.classList.add(...s); -}, Ie = (e, ...s) => { - e.classList.remove(...s); -}, Qe = (e, s) => e.classList.contains(s), b = (e) => e != null && typeof e == "object" || !1, c = (e) => b(e) && typeof e.nodeType == "number" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some( - (s) => e.nodeType === s -) || !1, u = (e) => c(e) && e.nodeType === 1 || !1, m = /* @__PURE__ */ new Map(), y = { - data: m, - set: (e, s, t) => { - u(e) && (m.has(s) || m.set(s, /* @__PURE__ */ new Map()), m.get(s).set(e, t)); - }, - getAllFor: (e) => m.get(e) || null, - get: (e, s) => { - if (!u(e) || !s) return null; - const t = y.getAllFor(s); - return e && t && t.get(e) || null; - }, - remove: (e, s) => { - const t = y.getAllFor(s); - !t || !u(e) || (t.delete(e), t.size === 0 && m.delete(s)); - } -}, Ze = (e, s) => y.get(e, s), j = (e) => e?.trim().replace( - /(?:^\w|[A-Z]|\b\w)/g, - (s, t) => t === 0 ? s.toLowerCase() : s.toUpperCase() -).replace(/\s+/g, ""), M = (e) => typeof e == "string" || !1, V = (e) => b(e) && e.constructor.name === "Window" || !1, W = (e) => c(e) && e.nodeType === 9 || !1, d = (e) => W(e) ? e : c(e) ? e.ownerDocument : V(e) ? e.document : globalThis.document, x = (e, ...s) => Object.assign(e, ...s), K = (e) => { - if (!e) return; - if (M(e)) - return d().createElement(e); - const { tagName: s } = e, t = K(s); - if (!t) return; - const a = { ...e }; - return delete a.tagName, x(t, a); -}, U = (e, s) => e.dispatchEvent(s), A = (e, s, t) => { - const a = getComputedStyle(e, t), n = s.replace("webkit", "Webkit").replace(/([A-Z])/g, "-$1").toLowerCase(); - return a.getPropertyValue(n); -}, J = (e) => { - const s = A(e, F), t = A(e, Z), a = t.includes("ms") ? 1 : 1e3, n = s && s !== "none" ? parseFloat(t) * a : 0; - return Number.isNaN(n) ? 0 : n; -}, Y = (e) => { - const s = A(e, F), t = A(e, Q), a = t.includes("ms") ? 1 : 1e3, n = s && s !== "none" ? parseFloat(t) * a : 0; - return Number.isNaN(n) ? 0 : n; -}, _e = (e, s) => { - let t = 0; - const a = new Event(N), n = Y(e), o = J(e); - if (n) { - const r = (l) => { - l.target === e && (s.apply(e, [l]), e.removeEventListener(N, r), t = 1); - }; - e.addEventListener(N, r), setTimeout(() => { - t || U(e, a); - }, n + o + 17); - } else - s.apply(e, [a]); -}, Xe = (e, s) => e.focus(s), z = (e) => ["true", !0].includes(e) ? !0 : ["false", !1].includes(e) ? !1 : ["null", "", null, void 0].includes(e) ? null : e !== "" && !Number.isNaN(+e) ? +e : e, E = (e) => Object.entries(e), ee = (e, s, t, a) => { - if (!u(e)) return s; - const n = { ...t }, o = { ...e.dataset }, r = { ...s }, l = {}, f = "title"; - return E(o).forEach(([i, h]) => { - const v = typeof i == "string" && i.includes(a) ? j(i.replace(a, "")) : j(i); - l[v] = z(h); - }), E(n).forEach(([i, h]) => { - n[i] = z(h); - }), E(s).forEach(([i, h]) => { - i in n ? r[i] = n[i] : i in l ? r[i] = l[i] : r[i] = i === f ? O(e, f) : h; - }), r; -}, H = (e) => Object.keys(e), Ge = (e, s) => { - const t = new CustomEvent(e, { - cancelable: !0, - bubbles: !0 - }); - return b(s) && x(t, s), t; -}, Ke = { passive: !0 }, Ue = (e) => e.offsetHeight, Je = (e, s) => { - E(s).forEach(([t, a]) => { - if (a && M(t) && t.includes("--")) - e.style.setProperty(t, a); - else { - const n = {}; - n[t] = a, x(e.style, n); - } - }); -}, T = (e) => b(e) && e.constructor.name === "Map" || !1, se = (e) => typeof e == "number" || !1, g = /* @__PURE__ */ new Map(), Ye = { - set: (e, s, t, a) => { - u(e) && (a && a.length ? (g.has(e) || g.set(e, /* @__PURE__ */ new Map()), g.get(e).set(a, setTimeout(s, t))) : g.set(e, setTimeout(s, t))); - }, - get: (e, s) => { - if (!u(e)) return null; - const t = g.get(e); - return s && t && T(t) ? t.get(s) || null : se(t) ? t : null; - }, - clear: (e, s) => { - if (!u(e)) return; - const t = g.get(e); - s && s.length && T(t) ? (clearTimeout(t.get(s)), t.delete(s), t.size === 0 && g.delete(e)) : (clearTimeout(t), g.delete(e)); - } -}, es = (e) => e.toLowerCase(), te = (e, s) => (c(s) ? s : d()).querySelectorAll(e), C = /* @__PURE__ */ new Map(); -function $(e) { - const { shiftKey: s, code: t } = e, a = d(this), n = [ - ...te(I, this) - ].filter( - (l) => !G(l, "disabled") && !O(l, q) - ); - if (!n.length) return; - const o = n[0], r = n[n.length - 1]; - t === "Tab" && (s && a.activeElement === o ? (r.focus(), e.preventDefault()) : !s && a.activeElement === r && (o.focus(), e.preventDefault())); -} -const D = (e) => C.has(e) === !0, ae = (e) => { - D(e) || (_(e, "keydown", $), C.set(e, !0)); -}, ne = (e) => { - D(e) && (X(e, "keydown", $), C.delete(e)); -}, ss = (e) => { - D(e) ? ne(e) : ae(e); -}, P = (e) => u(e) && "offsetWidth" in e || !1, L = (e, s) => { - const { width: t, height: a, top: n, right: o, bottom: r, left: l } = e.getBoundingClientRect(); - let f = 1, i = 1; - if (s && P(e)) { - const { offsetWidth: h, offsetHeight: v } = e; - f = h > 0 ? Math.round(t) / h : 1, i = v > 0 ? Math.round(a) / v : 1; - } - return { - width: t / f, - height: a / i, - top: n / i, - right: o / f, - bottom: r / i, - left: l / f, - x: l / f, - y: n / i - }; -}, ts = (e) => d(e).body, k = (e) => d(e).documentElement, as = (e) => { - const s = V(e), t = s ? e.scrollX : e.scrollLeft, a = s ? e.scrollY : e.scrollTop; - return { x: t, y: a }; -}, oe = (e) => c(e) && e.constructor.name === "ShadowRoot" || !1, ns = (e) => e.nodeName === "HTML" ? e : u(e) && e.assignedSlot || c(e) && e.parentNode || oe(e) && e.host || k(e), os = (e) => e ? W(e) ? e.defaultView : c(e) ? e?.ownerDocument?.defaultView : e : window, rs = (e) => c(e) && ["TABLE", "TD", "TH"].includes(e.nodeName) || !1, is = (e, s) => e.matches(s), re = (e) => { - if (!P(e)) return !1; - const { width: s, height: t } = L(e), { offsetWidth: a, offsetHeight: n } = e; - return Math.round(s) !== a || Math.round(t) !== n; -}, ls = (e, s, t) => { - const a = P(s), n = L( - e, - a && re(s) - ), o = { x: 0, y: 0 }; - if (a) { - const r = L(s, !0); - o.x = r.x + s.clientLeft, o.y = r.y + s.clientTop; - } - return { - x: n.left + t.x - o.x, - y: n.top + t.y - o.y, - width: n.width, - height: n.height - }; -}; -let B = 0, S = 0; -const p = /* @__PURE__ */ new Map(), ie = (e, s) => { - let t = s ? B : S; - if (s) { - const a = ie(e), n = p.get(a) || /* @__PURE__ */ new Map(); - p.has(a) || p.set(a, n), T(n) && !n.has(s) ? (n.set(s, t), B += 1) : t = n.get(s); - } else { - const a = e.id || e; - p.has(a) ? t = p.get(a) : (p.set(a, t), S += 1); - } - return t; -}, us = (e) => Array.isArray(e) || !1, cs = (e) => { - if (!c(e)) return !1; - const { top: s, bottom: t } = L(e), { clientHeight: a } = k(e); - return s <= a && t >= 0; -}, ds = (e) => typeof e == "function" || !1, fs = (e) => b(e) && e.constructor.name === "NodeList" || !1, hs = (e) => k(e).dir === "rtl", le = (e, s) => !e || !s ? null : e.closest(s) || le(e.getRootNode().host, s) || null, ue = (e, s) => u(e) ? e : (u(s) ? s : d()).querySelector(e), gs = (e, s) => (c(s) ? s : d()).getElementsByTagName( - e -), ms = (e, s) => d(s).getElementById(e), ps = (e, s) => (s && c(s) ? s : d()).getElementsByClassName( - e -), w = {}, R = (e) => { - const { type: s, currentTarget: t } = e; - w[s].forEach((a, n) => { - t === n && a.forEach((o, r) => { - r.apply(n, [e]), typeof o == "object" && o.once && ce(n, s, r, o); - }); - }); -}, ys = (e, s, t, a) => { - w[s] || (w[s] = /* @__PURE__ */ new Map()); - const n = w[s]; - n.has(e) || n.set(e, /* @__PURE__ */ new Map()); - const o = n.get( - e - ), { size: r } = o; - o.set(t, a), r || e.addEventListener( - s, - R, - a - ); -}, ce = (e, s, t, a) => { - const n = w[s], o = n && n.get(e), r = o && o.get(t), l = r !== void 0 ? r : a; - o && o.has(t) && o.delete(t), n && (!o || !o.size) && n.delete(e), (!n || !n.size) && delete w[s], (!o || !o.size) && e.removeEventListener( - s, - R, - l - ); -}, de = "5.1.6", fe = de; -class ws { - constructor(s, t) { - let a; - try { - if (u(s)) - a = s; - else if (M(s)) { - if (a = ue(s), !a) throw Error(`"${s}" is not a valid selector.`); - } else - throw Error("your target is not an instance of HTMLElement."); - } catch (o) { - throw Error(`${this.name} Error: ${o.message}`); - } - const n = y.get(a, this.name); - n && n._toggleEventListeners(), this.element = a, this.options = this.defaults && H(this.defaults).length ? ee(a, this.defaults, t || {}, "bs") : {}, y.set(a, this.name, this); - } - get version() { - return fe; - } - get name() { - return "BaseComponent"; - } - get defaults() { - return {}; - } - _toggleEventListeners = () => { - }; - dispose() { - y.remove(this.element, this.name), H(this).forEach((s) => { - delete this[s]; - }); - } -} -export { - Fe as $, - xe as A, - ws as B, - ge as C, - cs as D, - ys as E, - pe as F, - qe as G, - hs as H, - Pe as I, - G as J, - O as K, - Xe as L, - A as M, - le as N, - Ce as O, - k as P, - $e as Q, - L as R, - we as S, - x as T, - Ae as U, - Ne as V, - ue as W, - ze as X, - He as Y, - U as Z, - Qe as _, - Ie as a, - Re as a0, - q as a1, - me as a2, - ts as a3, - ss as a4, - os as a5, - K as a6, - ms as a7, - gs as a8, - ye as a9, - be as aa, - ve as ab, - as as ac, - ls as ad, - es as ae, - ds as af, - fs as ag, - us as ah, - c as ai, - ns as aj, - oe as ak, - rs as al, - ie as am, - Te as an, - Ve as ao, - he as ap, - u as aq, - ke as b, - is as c, - d, - te as e, - Ue as f, - Ke as g, - Ye as h, - je as i, - ps as j, - Ee as k, - Be as l, - Ge as m, - Se as n, - P as o, - M as p, - We as q, - ce as r, - _e as s, - Ze as t, - Y as u, - Le as v, - Me as w, - Oe as x, - Je as y, - De as z -}; -//# sourceMappingURL=base-component-BazRqYWL.mjs.map diff --git a/dist/components/base-component-BazRqYWL.mjs.map b/dist/components/base-component-BazRqYWL.mjs.map deleted file mode 100644 index b2268197..00000000 --- a/dist/components/base-component-BazRqYWL.mjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"base-component-BazRqYWL.mjs","sources":["../../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../../node_modules/.pnpm/@thednp+event-listener@2.0.10/node_modules/@thednp/event-listener/dist/event-listener.mjs","../../src/version.ts","../../src/components/base-component.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","const g = \"2.0.10\", e = {}, f = (t) => {\n const { type: n, currentTarget: c } = t;\n e[n].forEach((a, s) => {\n c === s && a.forEach((o, i) => {\n i.apply(s, [t]), typeof o == \"object\" && o.once && r(s, n, i, o);\n });\n });\n}, E = (t, n, c, a) => {\n e[n] || (e[n] = /* @__PURE__ */ new Map());\n const s = e[n];\n s.has(t) || s.set(t, /* @__PURE__ */ new Map());\n const o = s.get(\n t\n ), { size: i } = o;\n o.set(c, a), i || t.addEventListener(\n n,\n f,\n a\n );\n}, r = (t, n, c, a) => {\n const s = e[n], o = s && s.get(t), i = o && o.get(c), d = i !== void 0 ? i : a;\n o && o.has(c) && o.delete(c), s && (!o || !o.size) && s.delete(t), (!s || !s.size) && delete e[n], (!o || !o.size) && t.removeEventListener(\n n,\n f,\n d\n );\n}, M = E, p = r;\nexport {\n E as addListener,\n f as globalListener,\n p as off,\n M as on,\n e as registry,\n r as removeListener,\n g as version\n};\n//# sourceMappingURL=event-listener.mjs.map\n","import { version } from \"../package.json\";\n\nconst Version = version;\n\nexport default Version;\n","/* Native JavaScript for Bootstrap 5 | Base Component\n----------------------------------------------------- */\nimport {\n Data,\n isElement,\n isString,\n normalizeOptions,\n ObjectKeys,\n querySelector,\n} from \"@thednp/shorty\";\n\nimport type { BaseOptions } from \"~/interface/baseComponent\";\nimport Version from \"~/version\";\n\n/** Returns a new `BaseComponent` instance. */\nexport default class BaseComponent {\n declare element: Element;\n declare options?: BaseOptions;\n\n /**\n * @param target `Element` or selector string\n * @param config component instance options\n */\n constructor(target: Element | string, config?: BaseOptions) {\n let element: Element | null;\n\n try {\n if (isElement(target)) {\n element = target as Element;\n } else if (isString(target)) {\n element = querySelector(target);\n // istanbul ignore else @preserve\n if (!element) throw Error(`\"${target}\" is not a valid selector.`);\n } else {\n throw Error(`your target is not an instance of HTMLElement.`);\n }\n } catch (e) {\n throw Error(`${this.name} Error: ${(e as Error).message}`);\n }\n\n const prevInstance = Data.get(element, this.name);\n /* istanbul ignore else @preserve */\n if (prevInstance) {\n // remove previously attached event listeners\n // to avoid memory leaks\n prevInstance._toggleEventListeners();\n }\n\n this.element = element;\n this.options = this.defaults && ObjectKeys(this.defaults).length\n ? normalizeOptions(element, this.defaults, config || {}, \"bs\")\n : /* istanbul ignore next @preserve */ {};\n\n Data.set(element, this.name, this);\n }\n\n // istanbul ignore next @preserve\n get version() {\n return Version;\n }\n\n // istanbul ignore next @preserve\n get name() {\n return \"BaseComponent\";\n }\n\n // istanbul ignore next @preserve\n get defaults() {\n return {};\n }\n\n /** just to have something to extend from */\n // istanbul ignore next @preserve coverage wise this isn't important\n _toggleEventListeners = () => {\n // do something to please linters\n };\n\n /** Removes component from target element. */\n dispose() {\n Data.remove(this.element, this.name);\n ObjectKeys(this).forEach((prop) => {\n delete this[prop];\n });\n }\n}\n"],"names":["Le","Oe","X","Pe","Fe","Be","ct","at","it","ft","gt","vt","Et","yt","wt","At","Ot","zt","It","Qt","Zt","on","sn","rn","cn","gn","Jt","Xt","M","R","xn","t","e","zn","ee","Q","n","o","j","K","oe","Qn","Kn","Gn","Zn","_n","v","u","i","E","L","to","P","N","q","G","T","se","Z","f","s","ie","ue","so","r","a","ao","F","S","uo","p","c","g","A","fo","mo","vo","bo","Eo","O","le","m","ho","yo","de","z","_","I","fe","pe","Ao","b","y","So","w","No","me","k","ve","be","Ee","we","Co","V","H","h","Ae","Se","Do","xo","Vo","Ho","Ne","Wo","Te","Qo","jo","d","Version","version","BaseComponent","target","config","element","isElement","isString","querySelector","prevInstance","Data","ObjectKeys","normalizeOptions","prop"],"mappings":"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","x_google_ignoreList":[0,1]} \ No newline at end of file diff --git a/dist/components/base-component-Bm8KwB_I.mjs b/dist/components/base-component-Bm8KwB_I.mjs new file mode 100644 index 00000000..d56bce0f --- /dev/null +++ b/dist/components/base-component-Bm8KwB_I.mjs @@ -0,0 +1,261 @@ +(() => { + for (var e = new Uint8Array(128), t = 0; t < 64; t++) e[t < 26 ? t + 65 : t < 52 ? t + 71 : t < 62 ? t - 4 : t * 4 - 205] = t; + return (t) => { + for (var n = t.length, r = new Uint8Array((n - (t[n - 1] == "=") - (t[n - 2] == "=")) * 3 / 4 | 0), i = 0, a = 0; i < n;) { + var o = e[t.charCodeAt(i++)], s = e[t.charCodeAt(i++)], c = e[t.charCodeAt(i++)], l = e[t.charCodeAt(i++)]; + r[a++] = o << 2 | s >> 4, r[a++] = s << 4 | c >> 2, r[a++] = c << 6 | l; + } + return r; + }; +})(), ((e) => typeof require < "u" ? require : typeof Proxy < "u" ? new Proxy(e, { get: (e, t) => (typeof require < "u" ? require : e)[t] }) : e)(function(e) { + if (typeof require < "u") return require.apply(this, arguments); + throw Error("Calling `require` for \"" + e + "\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details."); +}); +//#endregion +//#region node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs +var e = "aria-describedby", t = "aria-expanded", n = "aria-hidden", r = "aria-modal", i = "aria-pressed", a = "aria-selected", o = "focus", s = "focusin", c = "focusout", l = "keydown", ee = "keyup", te = "click", ne = "mousedown", re = "hover", ie = "mouseenter", ae = "mouseleave", oe = "pointerdown", se = "pointermove", ce = "pointerup", u = "touchstart", d = "dragstart"; +"onmouseleave" in document; +var le = "a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]", ue = "ArrowDown", de = "ArrowUp", fe = "ArrowLeft", pe = "ArrowRight", me = "Escape", he = "transitionDuration", ge = "transitionDelay", f = "transitionend", p = "transitionProperty"; +navigator.userAgentData; +var { userAgent: _e } = navigator, ve = () => { + let e = /iPhone|iPad|iPod|Android/i; + return navigator?.userAgentData?.brands.some((t) => e.test(t.brand)) || e.test(navigator?.userAgent) || !1; +}, ye = () => { + let e = /(iPhone|iPod|iPad)/; + return navigator?.userAgentData?.brands.some((t) => e.test(t.brand)) || e.test(navigator?.userAgent) || !1; +}, be = () => {}, xe = (e, t, n, r) => { + let i = r || !1; + e.addEventListener(t, n, i); +}, Se = (e, t, n, r) => { + let i = r || !1; + e.removeEventListener(t, n, i); +}, m = (e, t) => e.getAttribute(t), h = (e, t) => e.hasAttribute(t), Ce = (e, t, n) => e.setAttribute(t, n), we = (e, t) => e.removeAttribute(t), Te = (e, ...t) => { + e.classList.add(...t); +}, Ee = (e, ...t) => { + e.classList.remove(...t); +}, De = (e, t) => e.classList.contains(t), { body: Oe } = document, { documentElement: ke } = document, { head: Ae } = document, g = (e) => typeof e == "object" && !!e || !1, _ = (e) => g(e) && typeof e.nodeType == "number" && [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 +].some((t) => e.nodeType === t) || !1, v = (e) => _(e) && e.nodeType === 1 || !1, y = /* @__PURE__ */ new Map(), b = { + data: y, + set: (e, t, n) => { + v(e) && (y.has(t) || y.set(t, /* @__PURE__ */ new Map()), y.get(t).set(e, n)); + }, + getAllFor: (e) => y.get(e) || null, + get: (e, t) => { + if (!v(e) || !t) return null; + let n = b.getAllFor(t); + return e && n && n.get(e) || null; + }, + remove: (e, t) => { + let n = b.getAllFor(t); + !n || !v(e) || (n.delete(e), n.size === 0 && y.delete(t)); + } +}, je = (e, t) => b.get(e, t), x = (e) => e?.trim().replace(/(?:^\w|[A-Z]|\b\w)/g, (e, t) => t === 0 ? e.toLowerCase() : e.toUpperCase()).replace(/\s+/g, ""), S = (e) => typeof e == "string" || !1, C = (e) => g(e) && e.constructor.name === "Window" || !1, w = (e) => _(e) && e.nodeType === 9 || !1, T = (e) => w(e) ? e : _(e) ? e.ownerDocument : C(e) ? e.document : globalThis.document, E = (e, ...t) => Object.assign(e, ...t), D = (e) => { + if (!e) return; + if (S(e)) return T().createElement(e); + let { tagName: t } = e, n = D(t); + if (!n) return; + let r = { ...e }; + return delete r.tagName, E(n, r); +}, Me = (e, t) => { + if (!e || !t) return; + if (S(t)) return T().createElementNS(e, t); + let { tagName: n } = t, r = Me(e, n); + if (!r) return; + let i = { ...t }; + return delete i.tagName, E(r, i); +}, O = (e, t) => e.dispatchEvent(t), k = (e, t, n) => { + let r = getComputedStyle(e, n), i = t.replace("webkit", "Webkit").replace(/([A-Z])/g, "-$1").toLowerCase(); + return r.getPropertyValue(i); +}, Ne = (e) => { + let t = k(e, p), n = k(e, ge), r = n.includes("ms") ? 1 : 1e3, i = t && t !== "none" ? parseFloat(n) * r : 0; + return Number.isNaN(i) ? 0 : i; +}, A = (e) => { + let t = k(e, p), n = k(e, he), r = n.includes("ms") ? 1 : 1e3, i = t && t !== "none" ? parseFloat(n) * r : 0; + return Number.isNaN(i) ? 0 : i; +}, Pe = (e, t) => { + let n = 0, r = new Event(f), i = A(e), a = Ne(e); + if (i) { + let o = (r) => { + r.target === e && (t.apply(e, [r]), e.removeEventListener("transitionend", o), n = 1); + }; + e.addEventListener(f, o), setTimeout(() => { + n || O(e, r); + }, i + a + 17); + } else t.apply(e, [r]); +}, Fe = (e, t) => e.focus(t), j = (e) => ["true", !0].includes(e) ? !0 : ["false", !1].includes(e) ? !1 : [ + "null", + "", + null, + void 0 +].includes(e) ? null : e !== "" && !Number.isNaN(+e) ? +e : e, M = (e) => Object.entries(e), Ie = (e, t, n, r) => { + if (!v(e)) return t; + let i = { ...n }, a = { ...e.dataset }, o = { ...t }, s = {}, c = "title"; + return M(a).forEach(([e, t]) => { + let n = r && typeof e == "string" && e.includes(r) ? x(e.replace(r, "")) : x(e); + s[n] = j(t); + }), M(i).forEach(([e, t]) => { + i[e] = j(t); + }), M(t).forEach(([t, n]) => { + t in i ? o[t] = i[t] : t in s ? o[t] = s[t] : o[t] = t === c ? m(e, c) : n; + }), o; +}, N = (e) => Object.keys(e), Le = (e, t) => { + let n = new CustomEvent(e, { + cancelable: !0, + bubbles: !0 + }); + return g(t) && E(n, t), n; +}, Re = { passive: !0 }, ze = (e) => e.offsetHeight, Be = (e, t) => { + M(t).forEach(([t, n]) => { + if (n && S(t) && t.includes("--")) e.style.setProperty(t, n); + else { + let r = {}; + r[t] = n, E(e.style, r); + } + }); +}, P = (e) => g(e) && e.constructor.name === "Map" || !1, Ve = (e) => typeof e == "number" || !1, F = /* @__PURE__ */ new Map(), He = { + set: (e, t, n, r) => { + v(e) && (r && r.length ? (F.has(e) || F.set(e, /* @__PURE__ */ new Map()), F.get(e).set(r, setTimeout(t, n))) : F.set(e, setTimeout(t, n))); + }, + get: (e, t) => { + if (!v(e)) return null; + let n = F.get(e); + return t && n && P(n) ? n.get(t) || null : Ve(n) ? n : null; + }, + clear: (e, t) => { + if (!v(e)) return; + let n = F.get(e); + t && t.length && P(n) ? (clearTimeout(n.get(t)), n.delete(t), n.size === 0 && F.delete(e)) : (clearTimeout(n), F.delete(e)); + } +}, Ue = (e) => e.toLowerCase(), I = (e, t) => (_(t) ? t : T()).querySelectorAll(e), L = /* @__PURE__ */ new Map(); +function R(e) { + let { shiftKey: t, code: n } = e, r = T(this), i = [...I(le, this)].filter((e) => !h(e, "disabled") && !m(e, "aria-hidden")); + if (!i.length) return; + let a = i[0], o = i[i.length - 1]; + n === "Tab" && (t && r.activeElement === a ? (o.focus(), e.preventDefault()) : !t && r.activeElement === o && (a.focus(), e.preventDefault())); +} +var z = (e) => L.has(e) === !0, We = (e) => { + z(e) || (xe(e, "keydown", R), L.set(e, !0)); +}, Ge = (e) => { + z(e) && (Se(e, "keydown", R), L.delete(e)); +}, Ke = (e) => { + z(e) ? Ge(e) : We(e); +}, B = (e) => v(e) && "offsetWidth" in e || !1, V = (e, t) => { + let { width: n, height: r, top: i, right: a, bottom: o, left: s } = e.getBoundingClientRect(), c = 1, l = 1; + if (t && B(e)) { + let { offsetWidth: t, offsetHeight: i } = e; + c = t > 0 ? Math.round(n) / t : 1, l = i > 0 ? Math.round(r) / i : 1; + } + return { + width: n / c, + height: r / l, + top: i / l, + right: a / c, + bottom: o / l, + left: s / c, + x: s / c, + y: i / l + }; +}, qe = (e) => T(e).body, H = (e) => T(e).documentElement, Je = (e) => { + let t = C(e); + return { + x: t ? e.scrollX : e.scrollLeft, + y: t ? e.scrollY : e.scrollTop + }; +}, U = (e) => _(e) && e.constructor.name === "ShadowRoot" || !1, Ye = (e) => e.nodeName === "HTML" ? e : v(e) && e.assignedSlot || _(e) && e.parentNode || U(e) && e.host || H(e), Xe = (e) => e ? w(e) ? e.defaultView : _(e) ? e?.ownerDocument?.defaultView : e : window, Ze = (e) => _(e) && [ + "TABLE", + "TD", + "TH" +].includes(e.nodeName) || !1, Qe = (e, t) => e.matches(t), $e = (e) => { + if (!B(e)) return !1; + let { width: t, height: n } = V(e), { offsetWidth: r, offsetHeight: i } = e; + return Math.round(t) !== r || Math.round(n) !== i; +}, et = (e, t, n) => { + let r = B(t), i = V(e, r && $e(t)), a = { + x: 0, + y: 0 + }; + if (r) { + let e = V(t, !0); + a.x = e.x + t.clientLeft, a.y = e.y + t.clientTop; + } + return { + x: i.left + n.x - a.x, + y: i.top + n.y - a.y, + width: i.width, + height: i.height + }; +}, W = 0, G = 0, K = /* @__PURE__ */ new Map(), q = (e, t) => { + let n = t ? W : G; + if (t) { + let r = q(e), i = K.get(r) || /* @__PURE__ */ new Map(); + K.has(r) || K.set(r, i), P(i) && !i.has(t) ? (i.set(t, n), W += 1) : n = i.get(t); + } else { + let t = e.id || e; + K.has(t) ? n = K.get(t) : (K.set(t, n), G += 1); + } + return n; +}, tt = (e) => Array.isArray(e) || !1, nt = (e) => { + if (!_(e)) return !1; + let { top: t, bottom: n } = V(e), { clientHeight: r } = H(e); + return t <= r && n >= 0; +}, J = (e) => typeof e == "function" || !1, rt = (e) => g(e) && e.constructor.name === "NodeList" || !1, it = (e) => H(e).dir === "rtl", Y = (e, t) => !e || !t ? null : e.closest(t) || Y(e.getRootNode().host, t) || null, X = (e, t) => v(e) ? e : (v(t) ? t : T()).querySelector(e), at = (e, t) => (_(t) ? t : T()).getElementsByTagName(e), ot = (e, t) => T(t).getElementById(e), st = (e, t) => (t && _(t) ? t : T()).getElementsByClassName(e), Z = {}, Q = (e) => { + let { type: t, currentTarget: n } = e; + Z[t].forEach((r, i) => { + n === i && r.forEach((n, r) => { + r.apply(i, [e]), typeof n == "object" && n.once && $(i, t, r, n); + }); + }); +}, ct = (e, t, n, r) => { + Z[t] || (Z[t] = /* @__PURE__ */ new Map()); + let i = Z[t]; + i.has(e) || i.set(e, /* @__PURE__ */ new Map()); + let a = i.get(e), { size: o } = a; + a.set(n, r), o || e.addEventListener(t, Q, r); +}, $ = (e, t, n, r) => { + let i = Z[t], a = i && i.get(e), o = a && a.get(n), s = o === void 0 ? r : o; + a && a.has(n) && a.delete(n), i && (!a || !a.size) && i.delete(e), (!i || !i.size) && delete Z[t], (!a || !a.size) && e.removeEventListener(t, Q, s); +}, lt = "5.1.6", ut = class { + constructor(e, t) { + let n; + try { + if (v(e)) n = e; + else if (S(e)) { + if (n = X(e), !n) throw Error(`"${e}" is not a valid selector.`); + } else throw Error("your target is not an instance of HTMLElement."); + } catch (e) { + throw Error(`${this.name} Error: ${e.message}`); + } + let r = b.get(n, this.name); + r && r._toggleEventListeners(), this.element = n, this.options = this.defaults && N(this.defaults).length ? Ie(n, this.defaults, t || {}, "bs") : {}, b.set(n, this.name, this); + } + get version() { + return lt; + } + get name() { + return "BaseComponent"; + } + get defaults() { + return {}; + } + _toggleEventListeners = () => {}; + dispose() { + b.remove(this.element, this.name), N(this).forEach((e) => { + delete this[e]; + }); + } +}; +//#endregion +export { He as $, qe as A, s as B, t as C, V as Ct, ot as D, se as Dt, Ce as E, ye as Et, n as F, o as G, Ze as H, O as I, be as J, T as K, Ee as L, at as M, rt as N, u as O, X as P, ee as Q, De as R, Je as S, J as St, r as T, re as Tt, ze as U, B as V, pe as W, l as X, k as Y, me as Z, m as _, Re as _t, Ke as a, U as at, S as b, ie as bt, et as c, ue as ct, Be as d, de as dt, v as et, ne as f, Pe as ft, ce as g, Xe as gt, it as h, A as ht, q as i, Ye as it, E as j, tt as k, nt as l, fe as lt, Te as m, _ as mt, ct as n, d as nt, ae as o, Le as ot, i as p, je as pt, I as q, $ as r, st as rt, a as s, h as st, ut as t, c as tt, Qe as u, D as ut, we as v, te as vt, oe as w, Ue as wt, Y as x, ve as xt, e as y, H as yt, Fe as z }; + +//# sourceMappingURL=base-component-Bm8KwB_I.mjs.map \ No newline at end of file diff --git a/dist/components/base-component-Bm8KwB_I.mjs.map b/dist/components/base-component-Bm8KwB_I.mjs.map new file mode 100644 index 00000000..94cbd1f6 --- /dev/null +++ b/dist/components/base-component-Bm8KwB_I.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"base-component-Bm8KwB_I.mjs","names":[],"sources":["../../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../../node_modules/.pnpm/@thednp+event-listener@2.0.12/node_modules/@thednp/event-listener/dist/index.mjs","../../package.json","../../src/version.ts","../../src/components/base-component.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","//#region package.json\nvar version = \"2.0.12\";\n\n//#endregion\n//#region src/index.ts\nconst registry = {};\nconst globalListener = (e) => {\n\tconst { type, currentTarget } = e;\n\tregistry[type].forEach((listenersMap, element) => {\n\t\tif (currentTarget === element) listenersMap.forEach((options, listener) => {\n\t\t\tlistener.apply(element, [e]);\n\t\t\tif (typeof options === \"object\" && options.once) removeListener(element, type, listener, options);\n\t\t});\n\t});\n};\nconst addListener = (element, eventType, listener, options) => {\n\tif (!registry[eventType]) registry[eventType] = /* @__PURE__ */ new Map();\n\tconst oneEventMap = registry[eventType];\n\tif (!oneEventMap.has(element)) oneEventMap.set(element, /* @__PURE__ */ new Map());\n\tconst oneElementMap = oneEventMap.get(element);\n\tconst { size } = oneElementMap;\n\toneElementMap.set(listener, options);\n\tif (!size) element.addEventListener(eventType, globalListener, options);\n};\nconst removeListener = (element, eventType, listener, options) => {\n\tconst oneEventMap = registry[eventType];\n\tconst oneElementMap = oneEventMap && oneEventMap.get(element);\n\tconst savedOptions = oneElementMap && oneElementMap.get(listener);\n\tconst eventOptions = savedOptions !== void 0 ? savedOptions : options;\n\tif (oneElementMap && oneElementMap.has(listener)) oneElementMap.delete(listener);\n\tif (oneEventMap && (!oneElementMap || !oneElementMap.size)) oneEventMap.delete(element);\n\tif (!oneEventMap || !oneEventMap.size) delete registry[eventType];\n\tif (!oneElementMap || !oneElementMap.size) element.removeEventListener(eventType, globalListener, eventOptions);\n};\nconst on = addListener;\nconst off = removeListener;\n\n//#endregion\nexport { addListener, globalListener, off, on, registry, removeListener, version };\n//# sourceMappingURL=index.mjs.map","{\n \"name\": \"bootstrap.native\",\n \"version\": \"5.1.6\",\n \"author\": \"thednp\",\n \"license\": \"MIT\",\n \"description\": \"Bootstrap components build with Typescript\",\n \"homepage\": \"https://thednp.github.io/bootstrap.native/\",\n \"source\": \"./src/index.ts\",\n \"main\": \"./dist/bootstrap-native.js\",\n \"module\": \"./dist/bootstrap-native.mjs\",\n \"exports\": {\n \".\": {\n \"types\": \"./dist/bootstrap-native.d.ts\",\n \"require\": \"./dist/bootstrap-native.cjs\",\n \"import\": \"./dist/bootstrap-native.mjs\"\n },\n \"./alert\": {\n \"types\": \"./dist/components/alert.d.ts\",\n \"require\": \"./dist/components/alert.cjs\",\n \"import\": \"./dist/components/alert.mjs\"\n },\n \"./button\": {\n \"types\": \"./dist/components/button.d.ts\",\n \"require\": \"./dist/components/button.cjs\",\n \"import\": \"./dist/components/button.mjs\"\n },\n \"./carousel\": {\n \"types\": \"./dist/components/carousel.d.ts\",\n \"require\": \"./dist/components/carousel.cjs\",\n \"import\": \"./dist/components/carousel.mjs\"\n },\n \"./collapse\": {\n \"types\": \"./dist/components/collapse.d.ts\",\n \"require\": \"./dist/components/collapse.cjs\",\n \"import\": \"./dist/components/collapse.mjs\"\n },\n \"./dropdown\": {\n \"types\": \"./dist/components/dropdown.d.ts\",\n \"require\": \"./dist/components/dropdown.cjs\",\n \"import\": \"./dist/components/dropdown.mjs\"\n },\n \"./modal\": {\n \"types\": \"./dist/components/modal.d.ts\",\n \"require\": \"./dist/components/modal.cjs\",\n \"import\": \"./dist/components/modal.mjs\"\n },\n \"./offcanvas\": {\n \"types\": \"./dist/components/offcanvas.d.ts\",\n \"require\": \"./dist/components/offcanvas.cjs\",\n \"import\": \"./dist/components/offcanvas.mjs\"\n },\n \"./popover\": {\n \"types\": \"./dist/components/popover.d.ts\",\n \"require\": \"./dist/components/popover.cjs\",\n \"import\": \"./dist/components/popover.mjs\"\n },\n \"./scrollspy\": {\n \"types\": \"./dist/components/scrollspy.d.ts\",\n \"require\": \"./dist/components/scrollspy.cjs\",\n \"import\": \"./dist/components/scrollspy.mjs\"\n },\n \"./tab\": {\n \"types\": \"./dist/components/tab.d.ts\",\n \"require\": \"./dist/components/tab.cjs\",\n \"import\": \"./dist/components/tab.mjs\"\n },\n \"./toast\": {\n \"types\": \"./dist/components/toast.d.ts\",\n \"require\": \"./dist/components/toast.cjs\",\n \"import\": \"./dist/components/toast.mjs\"\n },\n \"./tooltip\": {\n \"types\": \"./dist/components/tooltip.d.ts\",\n \"require\": \"./dist/components/tooltip.cjs\",\n \"import\": \"./dist/components/tooltip.mjs\"\n }\n },\n \"scripts\": {\n \"pre-test\": \"pnpm clean-coverage\",\n \"dev\": \"vite --open ./docs/index-dev.html --port 8577\",\n \"serve\": \"vite --open ./docs/index.html --port 8577\",\n \"test\": \"pnpm pre-test && vitest --config vitest.config.ts\",\n \"test-ui\": \"pnpm pre-test && vitest --config vitest.config-ui.ts --browser=chromium\",\n \"clean-coverage\": \"rm -rf coverage .nyc_output\",\n \"badges\": \"npx -p dependency-version-badge update-badge typescript vitest vite\",\n \"build\": \"pnpm build-vite && pnpm build-components && pnpm copy-docs\",\n \"build-vite\": \"vite build\",\n \"build-components\": \"vite build --config vite.config.components.ts\",\n \"copy-docs\": \"cp dist/bootstrap-native.js docs/assets/js/bootstrap-native.js && cp dist/bootstrap-native.js.map docs/assets/js/bootstrap-native.js.map\",\n \"lint\": \"deno lint src && pnpm check:ts\",\n \"check:ts\": \"tsc --noEmit\",\n \"prepublishOnly\": \"pnpm update --latest && pnpm lint && deno fmt src && pnpm build && pnpm copy-docs && pnpm badges\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/thednp/bootstrap.native/issues\"\n },\n \"files\": [\n \"dist\"\n ],\n \"publishConfig\": {\n \"access\": \"public\",\n \"registry\": \"https://registry.npmjs.org/\"\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/thednp/bootstrap.native.git\"\n },\n \"keywords\": [\n \"twitter-bootstrap\",\n \"bootstrap\",\n \"native\",\n \"typescript\"\n ],\n \"dependencies\": {\n \"@thednp/event-listener\": \"^2.0.12\",\n \"@thednp/position-observer\": \"^1.1.0\",\n \"@thednp/shorty\": \"^2.0.11\"\n },\n \"devDependencies\": {\n \"@types/node\": \"^25.5.0\",\n \"@vitest/browser\": \"^4.1.0\",\n \"@vitest/coverage-istanbul\": \"^4.1.0\",\n \"@vitest/ui\": \"^4.1.0\",\n \"playwright\": \"^1.58.2\",\n \"typescript\": \"^5.9.3\",\n \"vite\": \"^8.0.0\",\n \"vite-plugin-dts\": \"^4.5.4\",\n \"vite-plugin-strip-comments\": \"^0.0.9\",\n \"vitest\": \"^4.1.0\"\n },\n \"packageManager\": \"pnpm@8.6.12\",\n \"engines\": {\n \"node\": \">=16\",\n \"pnpm\": \">=8.6.0\"\n }\n}\n","import { version } from \"../package.json\";\n\nconst Version = version;\n\nexport default Version;\n","/* Native JavaScript for Bootstrap 5 | Base Component\n----------------------------------------------------- */\nimport {\n Data,\n isElement,\n isString,\n normalizeOptions,\n ObjectKeys,\n querySelector,\n} from \"@thednp/shorty\";\n\nimport type { BaseOptions } from \"~/interface/baseComponent\";\nimport Version from \"~/version\";\n\n/** Returns a new `BaseComponent` instance. */\nexport default class BaseComponent {\n declare element: Element;\n declare options?: BaseOptions;\n\n /**\n * @param target `Element` or selector string\n * @param config component instance options\n */\n constructor(target: Element | string, config?: BaseOptions) {\n let element: Element | null;\n\n try {\n if (isElement(target)) {\n element = target as Element;\n } else if (isString(target)) {\n element = querySelector(target);\n // istanbul ignore else @preserve\n if (!element) throw Error(`\"${target}\" is not a valid selector.`);\n } else {\n throw Error(`your target is not an instance of HTMLElement.`);\n }\n } catch (e) {\n throw Error(`${this.name} Error: ${(e as Error).message}`);\n }\n\n const prevInstance = Data.get(element, this.name);\n /* istanbul ignore else @preserve */\n if (prevInstance) {\n // remove previously attached event listeners\n // to avoid memory leaks\n prevInstance._toggleEventListeners();\n }\n\n this.element = element;\n this.options = this.defaults && ObjectKeys(this.defaults).length\n ? normalizeOptions(element, this.defaults, config || {}, \"bs\")\n : /* istanbul ignore next @preserve */ {};\n\n Data.set(element, this.name, this);\n }\n\n // istanbul ignore next @preserve\n get version() {\n return Version;\n }\n\n // istanbul ignore next @preserve\n get name() {\n return \"BaseComponent\";\n }\n\n // istanbul ignore next @preserve\n get defaults() {\n return {};\n }\n\n /** just to have something to extend from */\n // istanbul ignore next @preserve coverage wise this isn't important\n _toggleEventListeners = () => {\n // do something to please linters\n };\n\n /** Removes component from target element. */\n dispose() {\n Data.remove(this.element, this.name);\n ObjectKeys(this).forEach((prop) => {\n delete this[prop];\n });\n }\n}\n"],"x_google_ignoreList":[0,1],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/base-component-LPll9cLQ.js b/dist/components/base-component-LPll9cLQ.js new file mode 100644 index 00000000..355ed346 --- /dev/null +++ b/dist/components/base-component-LPll9cLQ.js @@ -0,0 +1,2 @@ +(()=>{for(var e=new Uint8Array(128),t=0;t<64;t++)e[t<26?t+65:t<52?t+71:t<62?t-4:t*4-205]=t;return t=>{for(var n=t.length,r=new Uint8Array((n-(t[n-1]==`=`)-(t[n-2]==`=`))*3/4|0),i=0,a=0;i>4,r[a++]=s<<4|c>>2,r[a++]=c<<6|l}return r}})(),(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.")});var e=`aria-describedby`,t=`aria-expanded`,n=`aria-hidden`,r=`aria-modal`,i=`aria-pressed`,a=`aria-selected`,o=`focus`,s=`focusin`,c=`focusout`,l=`keydown`,ee=`keyup`,te=`click`,ne=`mousedown`,re=`hover`,ie=`mouseenter`,ae=`mouseleave`,oe=`pointerdown`,se=`pointermove`,ce=`pointerup`,u=`touchstart`,d=`dragstart`;`onmouseleave`in document;var le=`a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]`,ue=`ArrowDown`,de=`ArrowUp`,fe=`ArrowLeft`,pe=`ArrowRight`,me=`Escape`,he=`transitionDuration`,ge=`transitionDelay`,f=`transitionend`,p=`transitionProperty`;navigator.userAgentData;var{userAgent:_e}=navigator,ve=()=>{let e=/iPhone|iPad|iPod|Android/i;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},ye=()=>{let e=/(iPhone|iPod|iPad)/;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},be=()=>{},xe=(e,t,n,r)=>{let i=r||!1;e.addEventListener(t,n,i)},Se=(e,t,n,r)=>{let i=r||!1;e.removeEventListener(t,n,i)},m=(e,t)=>e.getAttribute(t),h=(e,t)=>e.hasAttribute(t),Ce=(e,t,n)=>e.setAttribute(t,n),we=(e,t)=>e.removeAttribute(t),Te=(e,...t)=>{e.classList.add(...t)},Ee=(e,...t)=>{e.classList.remove(...t)},De=(e,t)=>e.classList.contains(t),{body:Oe}=document,{documentElement:ke}=document,{head:Ae}=document,g=e=>typeof e==`object`&&!!e||!1,_=e=>g(e)&&typeof e.nodeType==`number`&&[1,2,3,4,5,6,7,8,9,10,11].some(t=>e.nodeType===t)||!1,v=e=>_(e)&&e.nodeType===1||!1,y=new Map,b={data:y,set:(e,t,n)=>{v(e)&&(y.has(t)||y.set(t,new Map),y.get(t).set(e,n))},getAllFor:e=>y.get(e)||null,get:(e,t)=>{if(!v(e)||!t)return null;let n=b.getAllFor(t);return e&&n&&n.get(e)||null},remove:(e,t)=>{let n=b.getAllFor(t);!n||!v(e)||(n.delete(e),n.size===0&&y.delete(t))}},je=(e,t)=>b.get(e,t),x=e=>e?.trim().replace(/(?:^\w|[A-Z]|\b\w)/g,(e,t)=>t===0?e.toLowerCase():e.toUpperCase()).replace(/\s+/g,``),S=e=>typeof e==`string`||!1,C=e=>g(e)&&e.constructor.name===`Window`||!1,w=e=>_(e)&&e.nodeType===9||!1,T=e=>w(e)?e:_(e)?e.ownerDocument:C(e)?e.document:globalThis.document,E=(e,...t)=>Object.assign(e,...t),D=e=>{if(!e)return;if(S(e))return T().createElement(e);let{tagName:t}=e,n=D(t);if(!n)return;let r={...e};return delete r.tagName,E(n,r)},Me=(e,t)=>{if(!e||!t)return;if(S(t))return T().createElementNS(e,t);let{tagName:n}=t,r=Me(e,n);if(!r)return;let i={...t};return delete i.tagName,E(r,i)},O=(e,t)=>e.dispatchEvent(t),k=(e,t,n)=>{let r=getComputedStyle(e,n),i=t.replace(`webkit`,`Webkit`).replace(/([A-Z])/g,`-$1`).toLowerCase();return r.getPropertyValue(i)},Ne=e=>{let t=k(e,p),n=k(e,ge),r=n.includes(`ms`)?1:1e3,i=t&&t!==`none`?parseFloat(n)*r:0;return Number.isNaN(i)?0:i},A=e=>{let t=k(e,p),n=k(e,he),r=n.includes(`ms`)?1:1e3,i=t&&t!==`none`?parseFloat(n)*r:0;return Number.isNaN(i)?0:i},Pe=(e,t)=>{let n=0,r=new Event(f),i=A(e),a=Ne(e);if(i){let o=r=>{r.target===e&&(t.apply(e,[r]),e.removeEventListener(`transitionend`,o),n=1)};e.addEventListener(f,o),setTimeout(()=>{n||O(e,r)},i+a+17)}else t.apply(e,[r])},Fe=(e,t)=>e.focus(t),j=e=>[`true`,!0].includes(e)?!0:[`false`,!1].includes(e)?!1:[`null`,``,null,void 0].includes(e)?null:e!==``&&!Number.isNaN(+e)?+e:e,M=e=>Object.entries(e),Ie=(e,t,n,r)=>{if(!v(e))return t;let i={...n},a={...e.dataset},o={...t},s={},c=`title`;return M(a).forEach(([e,t])=>{let n=r&&typeof e==`string`&&e.includes(r)?x(e.replace(r,``)):x(e);s[n]=j(t)}),M(i).forEach(([e,t])=>{i[e]=j(t)}),M(t).forEach(([t,n])=>{t in i?o[t]=i[t]:t in s?o[t]=s[t]:o[t]=t===c?m(e,c):n}),o},N=e=>Object.keys(e),Le=(e,t)=>{let n=new CustomEvent(e,{cancelable:!0,bubbles:!0});return g(t)&&E(n,t),n},Re={passive:!0},ze=e=>e.offsetHeight,Be=(e,t)=>{M(t).forEach(([t,n])=>{if(n&&S(t)&&t.includes(`--`))e.style.setProperty(t,n);else{let r={};r[t]=n,E(e.style,r)}})},P=e=>g(e)&&e.constructor.name===`Map`||!1,Ve=e=>typeof e==`number`||!1,F=new Map,He={set:(e,t,n,r)=>{v(e)&&(r&&r.length?(F.has(e)||F.set(e,new Map),F.get(e).set(r,setTimeout(t,n))):F.set(e,setTimeout(t,n)))},get:(e,t)=>{if(!v(e))return null;let n=F.get(e);return t&&n&&P(n)?n.get(t)||null:Ve(n)?n:null},clear:(e,t)=>{if(!v(e))return;let n=F.get(e);t&&t.length&&P(n)?(clearTimeout(n.get(t)),n.delete(t),n.size===0&&F.delete(e)):(clearTimeout(n),F.delete(e))}},Ue=e=>e.toLowerCase(),I=(e,t)=>(_(t)?t:T()).querySelectorAll(e),L=new Map;function R(e){let{shiftKey:t,code:n}=e,r=T(this),i=[...I(le,this)].filter(e=>!h(e,`disabled`)&&!m(e,`aria-hidden`));if(!i.length)return;let a=i[0],o=i[i.length-1];n===`Tab`&&(t&&r.activeElement===a?(o.focus(),e.preventDefault()):!t&&r.activeElement===o&&(a.focus(),e.preventDefault()))}var z=e=>L.has(e)===!0,We=e=>{z(e)||(xe(e,`keydown`,R),L.set(e,!0))},Ge=e=>{z(e)&&(Se(e,`keydown`,R),L.delete(e))},Ke=e=>{z(e)?Ge(e):We(e)},B=e=>v(e)&&`offsetWidth`in e||!1,V=(e,t)=>{let{width:n,height:r,top:i,right:a,bottom:o,left:s}=e.getBoundingClientRect(),c=1,l=1;if(t&&B(e)){let{offsetWidth:t,offsetHeight:i}=e;c=t>0?Math.round(n)/t:1,l=i>0?Math.round(r)/i:1}return{width:n/c,height:r/l,top:i/l,right:a/c,bottom:o/l,left:s/c,x:s/c,y:i/l}},qe=e=>T(e).body,H=e=>T(e).documentElement,Je=e=>{let t=C(e);return{x:t?e.scrollX:e.scrollLeft,y:t?e.scrollY:e.scrollTop}},U=e=>_(e)&&e.constructor.name===`ShadowRoot`||!1,Ye=e=>e.nodeName===`HTML`?e:v(e)&&e.assignedSlot||_(e)&&e.parentNode||U(e)&&e.host||H(e),Xe=e=>e?w(e)?e.defaultView:_(e)?e?.ownerDocument?.defaultView:e:window,Ze=e=>_(e)&&[`TABLE`,`TD`,`TH`].includes(e.nodeName)||!1,Qe=(e,t)=>e.matches(t),$e=e=>{if(!B(e))return!1;let{width:t,height:n}=V(e),{offsetWidth:r,offsetHeight:i}=e;return Math.round(t)!==r||Math.round(n)!==i},et=(e,t,n)=>{let r=B(t),i=V(e,r&&$e(t)),a={x:0,y:0};if(r){let e=V(t,!0);a.x=e.x+t.clientLeft,a.y=e.y+t.clientTop}return{x:i.left+n.x-a.x,y:i.top+n.y-a.y,width:i.width,height:i.height}},W=0,G=0,K=new Map,q=(e,t)=>{let n=t?W:G;if(t){let r=q(e),i=K.get(r)||new Map;K.has(r)||K.set(r,i),P(i)&&!i.has(t)?(i.set(t,n),W+=1):n=i.get(t)}else{let t=e.id||e;K.has(t)?n=K.get(t):(K.set(t,n),G+=1)}return n},tt=e=>Array.isArray(e)||!1,nt=e=>{if(!_(e))return!1;let{top:t,bottom:n}=V(e),{clientHeight:r}=H(e);return t<=r&&n>=0},J=e=>typeof e==`function`||!1,rt=e=>g(e)&&e.constructor.name===`NodeList`||!1,it=e=>H(e).dir===`rtl`,Y=(e,t)=>!e||!t?null:e.closest(t)||Y(e.getRootNode().host,t)||null,X=(e,t)=>v(e)?e:(v(t)?t:T()).querySelector(e),at=(e,t)=>(_(t)?t:T()).getElementsByTagName(e),ot=(e,t)=>T(t).getElementById(e),st=(e,t)=>(t&&_(t)?t:T()).getElementsByClassName(e),Z={},Q=e=>{let{type:t,currentTarget:n}=e;Z[t].forEach((r,i)=>{n===i&&r.forEach((n,r)=>{r.apply(i,[e]),typeof n==`object`&&n.once&&$(i,t,r,n)})})},ct=(e,t,n,r)=>{Z[t]||(Z[t]=new Map);let i=Z[t];i.has(e)||i.set(e,new Map);let a=i.get(e),{size:o}=a;a.set(n,r),o||e.addEventListener(t,Q,r)},$=(e,t,n,r)=>{let i=Z[t],a=i&&i.get(e),o=a&&a.get(n),s=o===void 0?r:o;a&&a.has(n)&&a.delete(n),i&&(!a||!a.size)&&i.delete(e),(!i||!i.size)&&delete Z[t],(!a||!a.size)&&e.removeEventListener(t,Q,s)},lt=`5.1.6`,ut=class{constructor(e,t){let n;try{if(v(e))n=e;else if(S(e)){if(n=X(e),!n)throw Error(`"${e}" is not a valid selector.`)}else throw Error(`your target is not an instance of HTMLElement.`)}catch(e){throw Error(`${this.name} Error: ${e.message}`)}let r=b.get(n,this.name);r&&r._toggleEventListeners(),this.element=n,this.options=this.defaults&&N(this.defaults).length?Ie(n,this.defaults,t||{},`bs`):{},b.set(n,this.name,this)}get version(){return lt}get name(){return`BaseComponent`}get defaults(){return{}}_toggleEventListeners=()=>{};dispose(){b.remove(this.element,this.name),N(this).forEach(e=>{delete this[e]})}};Object.defineProperty(exports,`$`,{enumerable:!0,get:function(){return He}}),Object.defineProperty(exports,`A`,{enumerable:!0,get:function(){return qe}}),Object.defineProperty(exports,`B`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`C`,{enumerable:!0,get:function(){return t}}),Object.defineProperty(exports,`Ct`,{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,`D`,{enumerable:!0,get:function(){return ot}}),Object.defineProperty(exports,`Dt`,{enumerable:!0,get:function(){return se}}),Object.defineProperty(exports,`E`,{enumerable:!0,get:function(){return Ce}}),Object.defineProperty(exports,`Et`,{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,`F`,{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,`G`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`H`,{enumerable:!0,get:function(){return Ze}}),Object.defineProperty(exports,`I`,{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,`J`,{enumerable:!0,get:function(){return be}}),Object.defineProperty(exports,`K`,{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,`L`,{enumerable:!0,get:function(){return Ee}}),Object.defineProperty(exports,`M`,{enumerable:!0,get:function(){return at}}),Object.defineProperty(exports,`N`,{enumerable:!0,get:function(){return rt}}),Object.defineProperty(exports,`O`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`P`,{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,`Q`,{enumerable:!0,get:function(){return ee}}),Object.defineProperty(exports,`R`,{enumerable:!0,get:function(){return De}}),Object.defineProperty(exports,`S`,{enumerable:!0,get:function(){return Je}}),Object.defineProperty(exports,`St`,{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,`T`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`Tt`,{enumerable:!0,get:function(){return re}}),Object.defineProperty(exports,`U`,{enumerable:!0,get:function(){return ze}}),Object.defineProperty(exports,`V`,{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,`W`,{enumerable:!0,get:function(){return pe}}),Object.defineProperty(exports,`X`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`Y`,{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,`Z`,{enumerable:!0,get:function(){return me}}),Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`_t`,{enumerable:!0,get:function(){return Re}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return Ke}}),Object.defineProperty(exports,`at`,{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,`bt`,{enumerable:!0,get:function(){return ie}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return et}}),Object.defineProperty(exports,`ct`,{enumerable:!0,get:function(){return ue}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return Be}}),Object.defineProperty(exports,`dt`,{enumerable:!0,get:function(){return de}}),Object.defineProperty(exports,`et`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return ne}}),Object.defineProperty(exports,`ft`,{enumerable:!0,get:function(){return Pe}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return ce}}),Object.defineProperty(exports,`gt`,{enumerable:!0,get:function(){return Xe}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return it}}),Object.defineProperty(exports,`ht`,{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,`it`,{enumerable:!0,get:function(){return Ye}}),Object.defineProperty(exports,`j`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`k`,{enumerable:!0,get:function(){return tt}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return nt}}),Object.defineProperty(exports,`lt`,{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return Te}}),Object.defineProperty(exports,`mt`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return ct}}),Object.defineProperty(exports,`nt`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return ae}}),Object.defineProperty(exports,`ot`,{enumerable:!0,get:function(){return Le}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`pt`,{enumerable:!0,get:function(){return je}}),Object.defineProperty(exports,`q`,{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,`rt`,{enumerable:!0,get:function(){return st}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`st`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return ut}}),Object.defineProperty(exports,`tt`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return Qe}}),Object.defineProperty(exports,`ut`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return we}}),Object.defineProperty(exports,`vt`,{enumerable:!0,get:function(){return te}}),Object.defineProperty(exports,`w`,{enumerable:!0,get:function(){return oe}}),Object.defineProperty(exports,`wt`,{enumerable:!0,get:function(){return Ue}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return Y}}),Object.defineProperty(exports,`xt`,{enumerable:!0,get:function(){return ve}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return e}}),Object.defineProperty(exports,`yt`,{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,`z`,{enumerable:!0,get:function(){return Fe}}); +//# sourceMappingURL=base-component-LPll9cLQ.js.map \ No newline at end of file diff --git a/dist/components/base-component-LPll9cLQ.js.map b/dist/components/base-component-LPll9cLQ.js.map new file mode 100644 index 00000000..5833db09 --- /dev/null +++ b/dist/components/base-component-LPll9cLQ.js.map @@ -0,0 +1 @@ +{"version":3,"file":"base-component-LPll9cLQ.js","names":[],"sources":["../../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../../node_modules/.pnpm/@thednp+event-listener@2.0.12/node_modules/@thednp/event-listener/dist/index.mjs","../../package.json","../../src/version.ts","../../src/components/base-component.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","//#region package.json\nvar version = \"2.0.12\";\n\n//#endregion\n//#region src/index.ts\nconst registry = {};\nconst globalListener = (e) => {\n\tconst { type, currentTarget } = e;\n\tregistry[type].forEach((listenersMap, element) => {\n\t\tif (currentTarget === element) listenersMap.forEach((options, listener) => {\n\t\t\tlistener.apply(element, [e]);\n\t\t\tif (typeof options === \"object\" && options.once) removeListener(element, type, listener, options);\n\t\t});\n\t});\n};\nconst addListener = (element, eventType, listener, options) => {\n\tif (!registry[eventType]) registry[eventType] = /* @__PURE__ */ new Map();\n\tconst oneEventMap = registry[eventType];\n\tif (!oneEventMap.has(element)) oneEventMap.set(element, /* @__PURE__ */ new Map());\n\tconst oneElementMap = oneEventMap.get(element);\n\tconst { size } = oneElementMap;\n\toneElementMap.set(listener, options);\n\tif (!size) element.addEventListener(eventType, globalListener, options);\n};\nconst removeListener = (element, eventType, listener, options) => {\n\tconst oneEventMap = registry[eventType];\n\tconst oneElementMap = oneEventMap && oneEventMap.get(element);\n\tconst savedOptions = oneElementMap && oneElementMap.get(listener);\n\tconst eventOptions = savedOptions !== void 0 ? savedOptions : options;\n\tif (oneElementMap && oneElementMap.has(listener)) oneElementMap.delete(listener);\n\tif (oneEventMap && (!oneElementMap || !oneElementMap.size)) oneEventMap.delete(element);\n\tif (!oneEventMap || !oneEventMap.size) delete registry[eventType];\n\tif (!oneElementMap || !oneElementMap.size) element.removeEventListener(eventType, globalListener, eventOptions);\n};\nconst on = addListener;\nconst off = removeListener;\n\n//#endregion\nexport { addListener, globalListener, off, on, registry, removeListener, version };\n//# sourceMappingURL=index.mjs.map","{\n \"name\": \"bootstrap.native\",\n \"version\": \"5.1.6\",\n \"author\": \"thednp\",\n \"license\": \"MIT\",\n \"description\": \"Bootstrap components build with Typescript\",\n \"homepage\": \"https://thednp.github.io/bootstrap.native/\",\n \"source\": \"./src/index.ts\",\n \"main\": \"./dist/bootstrap-native.js\",\n \"module\": \"./dist/bootstrap-native.mjs\",\n \"exports\": {\n \".\": {\n \"types\": \"./dist/bootstrap-native.d.ts\",\n \"require\": \"./dist/bootstrap-native.cjs\",\n \"import\": \"./dist/bootstrap-native.mjs\"\n },\n \"./alert\": {\n \"types\": \"./dist/components/alert.d.ts\",\n \"require\": \"./dist/components/alert.cjs\",\n \"import\": \"./dist/components/alert.mjs\"\n },\n \"./button\": {\n \"types\": \"./dist/components/button.d.ts\",\n \"require\": \"./dist/components/button.cjs\",\n \"import\": \"./dist/components/button.mjs\"\n },\n \"./carousel\": {\n \"types\": \"./dist/components/carousel.d.ts\",\n \"require\": \"./dist/components/carousel.cjs\",\n \"import\": \"./dist/components/carousel.mjs\"\n },\n \"./collapse\": {\n \"types\": \"./dist/components/collapse.d.ts\",\n \"require\": \"./dist/components/collapse.cjs\",\n \"import\": \"./dist/components/collapse.mjs\"\n },\n \"./dropdown\": {\n \"types\": \"./dist/components/dropdown.d.ts\",\n \"require\": \"./dist/components/dropdown.cjs\",\n \"import\": \"./dist/components/dropdown.mjs\"\n },\n \"./modal\": {\n \"types\": \"./dist/components/modal.d.ts\",\n \"require\": \"./dist/components/modal.cjs\",\n \"import\": \"./dist/components/modal.mjs\"\n },\n \"./offcanvas\": {\n \"types\": \"./dist/components/offcanvas.d.ts\",\n \"require\": \"./dist/components/offcanvas.cjs\",\n \"import\": \"./dist/components/offcanvas.mjs\"\n },\n \"./popover\": {\n \"types\": \"./dist/components/popover.d.ts\",\n \"require\": \"./dist/components/popover.cjs\",\n \"import\": \"./dist/components/popover.mjs\"\n },\n \"./scrollspy\": {\n \"types\": \"./dist/components/scrollspy.d.ts\",\n \"require\": \"./dist/components/scrollspy.cjs\",\n \"import\": \"./dist/components/scrollspy.mjs\"\n },\n \"./tab\": {\n \"types\": \"./dist/components/tab.d.ts\",\n \"require\": \"./dist/components/tab.cjs\",\n \"import\": \"./dist/components/tab.mjs\"\n },\n \"./toast\": {\n \"types\": \"./dist/components/toast.d.ts\",\n \"require\": \"./dist/components/toast.cjs\",\n \"import\": \"./dist/components/toast.mjs\"\n },\n \"./tooltip\": {\n \"types\": \"./dist/components/tooltip.d.ts\",\n \"require\": \"./dist/components/tooltip.cjs\",\n \"import\": \"./dist/components/tooltip.mjs\"\n }\n },\n \"scripts\": {\n \"pre-test\": \"pnpm clean-coverage\",\n \"dev\": \"vite --open ./docs/index-dev.html --port 8577\",\n \"serve\": \"vite --open ./docs/index.html --port 8577\",\n \"test\": \"pnpm pre-test && vitest --config vitest.config.ts\",\n \"test-ui\": \"pnpm pre-test && vitest --config vitest.config-ui.ts --browser=chromium\",\n \"clean-coverage\": \"rm -rf coverage .nyc_output\",\n \"badges\": \"npx -p dependency-version-badge update-badge typescript vitest vite\",\n \"build\": \"pnpm build-vite && pnpm build-components && pnpm copy-docs\",\n \"build-vite\": \"vite build\",\n \"build-components\": \"vite build --config vite.config.components.ts\",\n \"copy-docs\": \"cp dist/bootstrap-native.js docs/assets/js/bootstrap-native.js && cp dist/bootstrap-native.js.map docs/assets/js/bootstrap-native.js.map\",\n \"lint\": \"deno lint src && pnpm check:ts\",\n \"check:ts\": \"tsc --noEmit\",\n \"prepublishOnly\": \"pnpm update --latest && pnpm lint && deno fmt src && pnpm build && pnpm copy-docs && pnpm badges\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/thednp/bootstrap.native/issues\"\n },\n \"files\": [\n \"dist\"\n ],\n \"publishConfig\": {\n \"access\": \"public\",\n \"registry\": \"https://registry.npmjs.org/\"\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/thednp/bootstrap.native.git\"\n },\n \"keywords\": [\n \"twitter-bootstrap\",\n \"bootstrap\",\n \"native\",\n \"typescript\"\n ],\n \"dependencies\": {\n \"@thednp/event-listener\": \"^2.0.12\",\n \"@thednp/position-observer\": \"^1.1.0\",\n \"@thednp/shorty\": \"^2.0.11\"\n },\n \"devDependencies\": {\n \"@types/node\": \"^25.5.0\",\n \"@vitest/browser\": \"^4.1.0\",\n \"@vitest/coverage-istanbul\": \"^4.1.0\",\n \"@vitest/ui\": \"^4.1.0\",\n \"playwright\": \"^1.58.2\",\n \"typescript\": \"^5.9.3\",\n \"vite\": \"^8.0.0\",\n \"vite-plugin-dts\": \"^4.5.4\",\n \"vite-plugin-strip-comments\": \"^0.0.9\",\n \"vitest\": \"^4.1.0\"\n },\n \"packageManager\": \"pnpm@8.6.12\",\n \"engines\": {\n \"node\": \">=16\",\n \"pnpm\": \">=8.6.0\"\n }\n}\n","import { version } from \"../package.json\";\n\nconst Version = version;\n\nexport default Version;\n","/* Native JavaScript for Bootstrap 5 | Base Component\n----------------------------------------------------- */\nimport {\n Data,\n isElement,\n isString,\n normalizeOptions,\n ObjectKeys,\n querySelector,\n} from \"@thednp/shorty\";\n\nimport type { BaseOptions } from \"~/interface/baseComponent\";\nimport Version from \"~/version\";\n\n/** Returns a new `BaseComponent` instance. */\nexport default class BaseComponent {\n declare element: Element;\n declare options?: BaseOptions;\n\n /**\n * @param target `Element` or selector string\n * @param config component instance options\n */\n constructor(target: Element | string, config?: BaseOptions) {\n let element: Element | null;\n\n try {\n if (isElement(target)) {\n element = target as Element;\n } else if (isString(target)) {\n element = querySelector(target);\n // istanbul ignore else @preserve\n if (!element) throw Error(`\"${target}\" is not a valid selector.`);\n } else {\n throw Error(`your target is not an instance of HTMLElement.`);\n }\n } catch (e) {\n throw Error(`${this.name} Error: ${(e as Error).message}`);\n }\n\n const prevInstance = Data.get(element, this.name);\n /* istanbul ignore else @preserve */\n if (prevInstance) {\n // remove previously attached event listeners\n // to avoid memory leaks\n prevInstance._toggleEventListeners();\n }\n\n this.element = element;\n this.options = this.defaults && ObjectKeys(this.defaults).length\n ? normalizeOptions(element, this.defaults, config || {}, \"bs\")\n : /* istanbul ignore next @preserve */ {};\n\n Data.set(element, this.name, this);\n }\n\n // istanbul ignore next @preserve\n get version() {\n return Version;\n }\n\n // istanbul ignore next @preserve\n get name() {\n return \"BaseComponent\";\n }\n\n // istanbul ignore next @preserve\n get defaults() {\n return {};\n }\n\n /** just to have something to extend from */\n // istanbul ignore next @preserve coverage wise this isn't important\n _toggleEventListeners = () => {\n // do something to please linters\n };\n\n /** Removes component from target element. */\n dispose() {\n Data.remove(this.element, this.name);\n ObjectKeys(this).forEach((prop) => {\n delete this[prop];\n });\n }\n}\n"],"x_google_ignoreList":[0,1],"mappings":"0tBAAA,IAAmE,EAAK,mBAAoB,EAAK,gBAAuC,EAAI,cAA0D,EAAK,aAAc,EAAK,eAAgB,EAAK,gBAAyP,EAAK,QAAS,EAAK,UAAW,EAAK,WAA0E,EAAK,UAA4B,GAAK,QAAsB,GAAK,QAA0B,GAAK,YAA6B,GAAK,QAAS,GAAK,aAAc,GAAK,aAAmK,GAAK,cAAoC,GAAK,cAAe,GAAK,YAAsJ,EAAK,aAmD5mC,EAAK,YAK8B,iBAAkB,SAxDrE,IA6D4C,GAAK,oFAoBlC,GAAK,YAAa,GAAK,UAAW,GAAK,YAAa,GAAK,aAAkH,GAAK,SAAyM,GAAK,qBAAsB,GAAK,kBAAmB,EAAI,gBAAiB,EAAI,qBA0BzW,UAAU,cA3GrH,GA2GoI,CAAE,UAAW,IAAO,UAAoB,OAAW,CACrL,IAAM,EAAI,4BACV,OAAO,WAAW,eAAe,OAAO,KACrC,GAAM,EAAE,KAAK,EAAE,MAAM,CACvB,EAAI,EAAE,KAAK,WAAW,UAAU,EAAI,CAAC,GACrC,OAAW,CACZ,IAAM,EAAI,qBACV,OAAO,WAAW,eAAe,OAAO,KACrC,GAAM,EAAE,KAAK,EAAE,MAAM,CACvB,EAAI,EAAE,KACL,WAAW,UACZ,EAAI,CAAC,GACmP,OAAW,GACnQ,IAAK,EAAG,EAAG,EAAG,IAAM,CACrB,IAAM,EAAI,GAAK,CAAC,EAChB,EAAE,iBACA,EACA,EACA,EACD,EACA,IAAK,EAAG,EAAG,EAAG,IAAM,CACrB,IAAM,EAAI,GAAK,CAAC,EAChB,EAAE,oBACA,EACA,EACA,EACD,EAgBmU,GAAK,EAAG,IAAM,EAAE,aAAa,EAAE,CAA4C,GAAM,EAAG,IAAM,EAAE,aAAa,EAAE,CAA4C,IAAM,EAAG,EAAG,IAAM,EAAE,aAAa,EAAG,EAAE,CAAkD,IAAM,EAAG,IAAM,EAAE,gBAAgB,EAAE,CAA+C,IAAM,EAAG,GAAG,IAAM,CACvpB,EAAE,UAAU,IAAI,GAAG,EAAE,EACpB,IAAM,EAAG,GAAG,IAAM,CACnB,EAAE,UAAU,OAAO,GAAG,EAAE,EACvB,IAAM,EAAG,IAAM,EAAE,UAAU,SAAS,EAAE,CAAE,CAAE,KAAM,IAAO,SAAU,CAAE,gBAAiB,IAAO,SAAU,CAAE,KAAM,IAAO,SAAqC,EAAK,GAAmB,OAAO,GAAK,YAAzB,GAAqC,CAAC,EAAG,EAAK,GAAM,EAAE,EAAE,EAAI,OAAO,EAAE,UAAY,UAAY,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAG,CAAC,KACrS,GAAM,EAAE,WAAa,EACvB,EAAI,CAAC,EAAG,EAAK,GAAM,EAAE,EAAE,EAAI,EAAE,WAAa,GAAK,CAAC,EAAG,EAAoB,IAAI,IAAO,EAAI,CACrF,KAAM,EACN,KAAM,EAAG,EAAG,IAAM,CACX,EAAE,EAAE,GACT,EAAE,IAAI,EAAE,EAAI,EAAE,IAAI,EAAmB,IAAI,IAAM,CAAE,EAAE,IAAI,EAAE,CAAC,IAAI,EAAG,EAAE,GAErE,UAAY,GAAM,EAAE,IAAI,EAAE,EAAI,KAC9B,KAAM,EAAG,IAAM,CACb,GAAI,CAAC,EAAE,EAAE,EAAI,CAAC,EAAG,OAAO,KACxB,IAAM,EAAI,EAAE,UAAU,EAAE,CACxB,OAAO,GAAK,GAAK,EAAE,IAAI,EAAE,EAAI,MAE/B,QAAS,EAAG,IAAM,CAChB,IAAM,EAAI,EAAE,UAAU,EAAE,CACxB,CAAC,GAAK,CAAC,EAAE,EAAE,GAAK,EAAE,OAAO,EAAE,CAAE,EAAE,OAAS,GAAK,EAAE,OAAO,EAAE,GAE3D,CAAE,IAAM,EAAG,IAAM,EAAE,IAAI,EAAG,EAAE,CAAwD,EAAK,GAAM,GAAG,MAAM,CAAC,QACxG,uBACC,EAAG,IAAM,IAAM,EAAI,EAAE,aAAa,CAAG,EAAE,aAAa,CACtD,CAAC,QAAQ,OAAQ,GAAG,CAAE,EAAK,GAAM,OAAO,GAAK,UAAY,CAAC,EAAG,EAAK,GAAM,EAAE,EAAE,EAAI,EAAE,YAAY,OAAS,UAAY,CAAC,EAAG,EAAK,GAAM,EAAE,EAAE,EAAI,EAAE,WAAa,GAAK,CAAC,EAAG,EAAK,GAAM,EAAE,EAAE,CAAG,EAAI,EAAE,EAAE,CAAG,EAAE,cAAgB,EAAE,EAAE,CAAG,EAAE,SAAW,WAAW,SAAU,GAAK,EAAG,GAAG,IAAM,OAAO,OAAO,EAAG,GAAG,EAAE,CAAE,EAAM,GAAM,CAC9S,GAAI,CAAC,EAAG,OACR,GAAI,EAAE,EAAE,CACN,OAAO,GAAG,CAAC,cAAc,EAAE,CAC7B,GAAM,CAAE,QAAS,GAAM,EAAG,EAAI,EAAG,EAAE,CACnC,GAAI,CAAC,EAAG,OACR,IAAM,EAAI,CAAE,GAAG,EAAG,CAClB,OAAO,OAAO,EAAE,QAAS,EAAE,EAAG,EAAE,EAC/B,IAAM,EAAG,IAAM,CAChB,GAAI,CAAC,GAAK,CAAC,EAAG,OACd,GAAI,EAAE,EAAE,CACN,OAAO,GAAG,CAAC,gBAAgB,EAAG,EAAE,CAClC,GAAM,CAAE,QAAS,GAAM,EAAG,EAAI,GAAG,EAAG,EAAE,CACtC,GAAI,CAAC,EAAG,OACR,IAAM,EAAI,CAAE,GAAG,EAAG,CAClB,OAAO,OAAO,EAAE,QAAS,EAAE,EAAG,EAAE,EAC/B,GAAK,EAAG,IAAM,EAAE,cAAc,EAAE,CAAwC,GAAK,EAAG,EAAG,IAAM,CAC1F,IAAM,EAAI,iBAAiB,EAAG,EAAE,CAAE,EAAI,EAAE,QAAQ,SAAU,SAAS,CAAC,QAAQ,WAAY,MAAM,CAAC,aAAa,CAC5G,OAAO,EAAE,iBAAiB,EAAE,EAmB3B,GAAM,GAAM,CACb,IAAM,EAAI,EAAE,EAAG,EAAE,CAAE,EAAI,EAAE,EAAG,GAAG,CAAE,EAAI,EAAE,SAAS,KAAK,CAAG,EAAI,IAAK,EAAI,GAAK,IAAM,OAAS,WAAW,EAAE,CAAG,EAAI,EAC7G,OAAO,OAAO,MAAM,EAAE,CAAG,EAAI,GAC5B,EAAM,GAAM,CACb,IAAM,EAAI,EAAE,EAAG,EAAE,CAAE,EAAI,EAAE,EAAG,GAAG,CAAE,EAAI,EAAE,SAAS,KAAK,CAAG,EAAI,IAAK,EAAI,GAAK,IAAM,OAAS,WAAW,EAAE,CAAG,EAAI,EAC7G,OAAO,OAAO,MAAM,EAAE,CAAG,EAAI,GAC5B,IAAM,EAAG,IAAM,CAChB,IAAI,EAAI,EACF,EAAI,IAAI,MAAM,EAAE,CAAE,EAAI,EAAG,EAAE,CAAE,EAAI,GAAG,EAAE,CAC5C,GAAI,EAAG,CACL,IAAM,EAAK,GAAM,CACf,EAAE,SAAW,IAAM,EAAE,MAAM,EAAG,CAAC,EAAE,CAAC,CAAE,EAAE,oBAAA,gBAAuB,EAAE,CAAE,EAAI,IAEvE,EAAE,iBAAiB,EAAG,EAAE,CAAE,eAAiB,CACzC,GAAK,EAAE,EAAG,EAAE,EACX,EAAI,EAAI,GAAG,MAEd,EAAE,MAAM,EAAG,CAAC,EAAE,CAAC,EAC4E,IAAM,EAAG,IAAM,EAAE,MAAM,EAAE,CAAgG,EAAK,GAAM,CAAC,OAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,CAAG,CAAC,EAAI,CAAC,QAAS,CAAC,EAAE,CAAC,SAAS,EAAE,CAAG,CAAC,EAAI,CAAC,OAAQ,GAAI,KAAM,IAAK,GAAE,CAAC,SAAS,EAAE,CAAG,KAAO,IAAM,IAAM,CAAC,OAAO,MAAM,CAAC,EAAE,CAAG,CAAC,EAAI,EAAG,EAAK,GAAM,OAAO,QAAQ,EAAE,CAAE,IAAM,EAAG,EAAG,EAAG,IAAM,CAC7a,GAAI,CAAC,EAAE,EAAE,CAAE,OAAO,EAClB,IAAM,EAAI,CAAE,GAAG,EAAG,CAAE,EAAI,CAAE,GAAG,EAAE,QAAS,CAAE,EAAI,CAAE,GAAG,EAAG,CAAE,EAAI,EAAE,CAAE,EAAI,QACpE,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,EAAG,KAAO,CAC9B,IAAM,EAAI,GAAK,OAAO,GAAK,UAAY,EAAE,SAAS,EAAE,CAAG,EAAE,EAAE,QAAQ,EAAG,GAAG,CAAC,CAAG,EAAE,EAAE,CACjF,EAAE,GAAK,EAAE,EAAE,EACX,CAAE,EAAE,EAAE,CAAC,SAAS,CAAC,EAAG,KAAO,CAC3B,EAAE,GAAK,EAAE,EAAE,EACX,CAAE,EAAE,EAAE,CAAC,SAAS,CAAC,EAAG,KAAO,CAC3B,KAAK,EAAI,EAAE,GAAK,EAAE,GAAK,KAAK,EAAI,EAAE,GAAK,EAAE,GAAK,EAAE,GAAK,IAAM,EAAI,EAAE,EAAG,EAAE,CAAG,GACzE,CAAE,GACqD,EAAM,GAAM,OAAO,KAAK,EAAE,CAAmE,IAAM,EAAG,IAAM,CACrK,IAAM,EAAI,IAAI,YAAY,EAAG,CAC3B,WAAY,CAAC,EACb,QAAS,CAAC,EACX,CAAC,CACF,OAAO,EAAE,EAAE,EAAI,EAAE,EAAG,EAAE,CAAE,GACvB,GAAK,CAAE,QAAS,CAAC,EAAG,CAAE,GAAM,GAAM,EAAE,aAAc,IAAM,EAAG,IAAM,CAClE,EAAE,EAAE,CAAC,SAAS,CAAC,EAAG,KAAO,CACvB,GAAI,GAAK,EAAE,EAAE,EAAI,EAAE,SAAS,KAAK,CAC/B,EAAE,MAAM,YAAY,EAAG,EAAE,KACtB,CACH,IAAM,EAAI,EAAE,CACZ,EAAE,GAAK,EAAG,EAAE,EAAE,MAAO,EAAE,GAEzB,EACD,EAAK,GAAM,EAAE,EAAE,EAAI,EAAE,YAAY,OAAS,OAAS,CAAC,EAAG,GAAM,GAAM,OAAO,GAAK,UAAY,CAAC,EAAG,EAAoB,IAAI,IAAO,GAAK,CACpI,KAAM,EAAG,EAAG,EAAG,IAAM,CACnB,EAAE,EAAE,GAAK,GAAK,EAAE,QAAU,EAAE,IAAI,EAAE,EAAI,EAAE,IAAI,EAAmB,IAAI,IAAM,CAAE,EAAE,IAAI,EAAE,CAAC,IAAI,EAAG,WAAW,EAAG,EAAE,CAAC,EAAI,EAAE,IAAI,EAAG,WAAW,EAAG,EAAE,CAAC,GAE5I,KAAM,EAAG,IAAM,CACb,GAAI,CAAC,EAAE,EAAE,CAAE,OAAO,KAClB,IAAM,EAAI,EAAE,IAAI,EAAE,CAClB,OAAO,GAAK,GAAK,EAAE,EAAE,CAAG,EAAE,IAAI,EAAE,EAAI,KAAO,GAAG,EAAE,CAAG,EAAI,MAEzD,OAAQ,EAAG,IAAM,CACf,GAAI,CAAC,EAAE,EAAE,CAAE,OACX,IAAM,EAAI,EAAE,IAAI,EAAE,CAClB,GAAK,EAAE,QAAU,EAAE,EAAE,EAAI,aAAa,EAAE,IAAI,EAAE,CAAC,CAAE,EAAE,OAAO,EAAE,CAAE,EAAE,OAAS,GAAK,EAAE,OAAO,EAAE,GAAK,aAAa,EAAE,CAAE,EAAE,OAAO,EAAE,GAE7H,CAAE,GAAM,GAAM,EAAE,aAAa,CAA+B,GAAM,EAAG,KAAO,EAAE,EAAE,CAAG,EAAI,GAAG,EAAE,iBAAiB,EAAE,CAAE,EAAoB,IAAI,IAC1I,SAAS,EAAE,EAAG,CACZ,GAAM,CAAE,SAAU,EAAG,KAAM,GAAM,EAAG,EAAI,EAAE,KAAK,CAAE,EAAI,CACnD,GAAG,EAAG,GAAI,KAAK,CAChB,CAAC,OACC,GAAM,CAAC,EAAG,EAAG,WAAW,EAAI,CAAC,EAAE,EAAA,cAAK,CACtC,CACD,GAAI,CAAC,EAAE,OAAQ,OACf,IAAM,EAAI,EAAE,GAAI,EAAI,EAAE,EAAE,OAAS,GACjC,IAAM,QAAU,GAAK,EAAE,gBAAkB,GAAK,EAAE,OAAO,CAAE,EAAE,gBAAgB,EAAI,CAAC,GAAK,EAAE,gBAAkB,IAAM,EAAE,OAAO,CAAE,EAAE,gBAAgB,GAE9I,IAAM,EAAK,GAAM,EAAE,IAAI,EAAE,GAAK,CAAC,EAAG,GAAM,GAAM,CAC5C,EAAE,EAAE,GAAK,GAAE,EAAG,UAAW,EAAE,CAAE,EAAE,IAAI,EAAG,CAAC,EAAE,GACxC,GAAM,GAAM,CACb,EAAE,EAAE,GAAK,GAAE,EAAG,UAAW,EAAE,CAAE,EAAE,OAAO,EAAE,GACvC,GAAM,GAAM,CACb,EAAE,EAAE,CAAG,GAAG,EAAE,CAAG,GAAG,EAAE,EACnB,EAAK,GAAM,EAAE,EAAE,EAAI,gBAAiB,GAAK,CAAC,EAAG,GAAK,EAAG,IAAM,CAC5D,GAAM,CAAE,MAAO,EAAG,OAAQ,EAAG,IAAK,EAAG,MAAO,EAAG,OAAQ,EAAG,KAAM,GAAM,EAAE,uBAAuB,CAC3F,EAAI,EAAG,EAAI,EACf,GAAI,GAAK,EAAE,EAAE,CAAE,CACb,GAAM,CAAE,YAAa,EAAG,aAAc,GAAM,EAC5C,EAAI,EAAI,EAAI,KAAK,MAAM,EAAE,CAAG,EAAI,EAAG,EAAI,EAAI,EAAI,KAAK,MAAM,EAAE,CAAG,EAAI,EAErE,MAAO,CACL,MAAO,EAAI,EACX,OAAQ,EAAI,EACZ,IAAK,EAAI,EACT,MAAO,EAAI,EACX,OAAQ,EAAI,EACZ,KAAM,EAAI,EACV,EAAG,EAAI,EACP,EAAG,EAAI,EACR,EACA,GAAM,GAAM,EAAE,EAAE,CAAC,KAAM,EAAK,GAAM,EAAE,EAAE,CAAC,gBAA2G,GAAM,GAAM,CAC/J,IAAM,EAAI,EAAE,EAAE,CACd,MAAO,CAAE,EADW,EAAI,EAAE,QAAU,EAAE,WACvB,EADuC,EAAI,EAAE,QAAU,EAAE,UACnD,EACpB,EAAM,GAAM,EAAE,EAAE,EAAI,EAAE,YAAY,OAAS,cAAgB,CAAC,EAAG,GAAK,GAAM,EAAE,WAAa,OAAS,EAAI,EAAE,EAAE,EAAI,EAAE,cAAgB,EAAE,EAAE,EAAI,EAAE,YAAc,EAAG,EAAE,EAAI,EAAE,MAAQ,EAAE,EAAE,CAAE,GAAM,GAAM,EAAI,EAAE,EAAE,CAAG,EAAE,YAAc,EAAE,EAAE,CAAG,GAAG,eAAe,YAAc,EAAI,OAAQ,GAAM,GAAM,EAAE,EAAE,EAAI,CAAC,QAAS,KAAM,KAAK,CAAC,SAAS,EAAE,SAAS,EAAI,CAAC,EAAG,IAAM,EAAG,IAAM,EAAE,QAAQ,EAAE,CA6C5W,GAAM,GAAM,CACb,GAAI,CAAC,EAAE,EAAE,CAAE,MAAO,CAAC,EACnB,GAAM,CAAE,MAAO,EAAG,OAAQ,GAAM,EAAE,EAAE,CAAE,CAAE,YAAa,EAAG,aAAc,GAAM,EAC5E,OAAO,KAAK,MAAM,EAAE,GAAK,GAAK,KAAK,MAAM,EAAE,GAAK,GAC/C,IAAM,EAAG,EAAG,IAAM,CACnB,IAAM,EAAI,EAAE,EAAE,CAAE,EAAI,EAClB,EACA,GAAK,GAAG,EAAE,CACX,CAAE,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,CACrB,GAAI,EAAG,CACL,IAAM,EAAI,EAAE,EAAG,CAAC,EAAE,CAClB,EAAE,EAAI,EAAE,EAAI,EAAE,WAAY,EAAE,EAAI,EAAE,EAAI,EAAE,UAE1C,MAAO,CACL,EAAG,EAAE,KAAO,EAAE,EAAI,EAAE,EACpB,EAAG,EAAE,IAAM,EAAE,EAAI,EAAE,EACnB,MAAO,EAAE,MACT,OAAQ,EAAE,OACX,EAEC,EAAI,EAAG,EAAI,EACT,EAAoB,IAAI,IAAO,GAAM,EAAG,IAAM,CAClD,IAAI,EAAI,EAAI,EAAI,EAChB,GAAI,EAAG,CACL,IAAM,EAAI,EAAG,EAAE,CAAE,EAAI,EAAE,IAAI,EAAE,EAAoB,IAAI,IACrD,EAAE,IAAI,EAAE,EAAI,EAAE,IAAI,EAAG,EAAE,CAAE,EAAE,EAAE,EAAI,CAAC,EAAE,IAAI,EAAE,EAAI,EAAE,IAAI,EAAG,EAAE,CAAE,GAAK,GAAK,EAAI,EAAE,IAAI,EAAE,KAC5E,CACL,IAAM,EAAI,EAAE,IAAM,EAClB,EAAE,IAAI,EAAE,CAAG,EAAI,EAAE,IAAI,EAAE,EAAI,EAAE,IAAI,EAAG,EAAE,CAAE,GAAK,GAE/C,OAAO,GACN,GAAM,GAAM,MAAM,QAAQ,EAAE,EAAI,CAAC,EAAgG,GAAM,GAAM,CAC9I,GAAI,CAAC,EAAE,EAAE,CAAE,MAAO,CAAC,EACnB,GAAM,CAAE,IAAK,EAAG,OAAQ,GAAM,EAAE,EAAE,CAAE,CAAE,aAAc,GAAM,EAAE,EAAE,CAC9D,OAAO,GAAK,GAAK,GAAK,GAKkB,EAAM,GAAM,OAAO,GAAK,YAAc,CAAC,EAUxE,GAAM,GAAM,EAAE,EAAE,EAAI,EAAE,YAAY,OAAS,YAAc,CAAC,EAAG,GAAM,GAAM,EAAE,EAAE,CAAC,MAAQ,MAAqE,GAAM,EAAG,IAAM,CAAC,GAAK,CAAC,EAAI,KAAO,EAAE,QAAQ,EAAE,EAAI,EAAG,EAAE,aAAa,CAAC,KAAM,EAAE,EAAI,KAAM,GAAM,EAAG,IAAM,EAAE,EAAE,CAAG,GAAK,EAAE,EAAE,CAAG,EAAI,GAAG,EAAE,cAAc,EAAE,CAAE,IAAM,EAAG,KAAO,EAAE,EAAE,CAAG,EAAI,GAAG,EAAE,qBACrV,EACD,CAA0C,IAAM,EAAG,IAAM,EAAE,EAAE,CAAC,eAAe,EAAE,CAAE,IAAM,EAAG,KAAO,GAAK,EAAE,EAAE,CAAG,EAAI,GAAG,EAAE,uBACrH,EACD,CC/YK,EAAW,EAAE,CACb,EAAkB,GAAM,CAC7B,GAAM,CAAE,OAAM,iBAAkB,EAChC,EAAS,GAAM,SAAS,EAAc,IAAY,CAC7C,IAAkB,GAAS,EAAa,SAAS,EAAS,IAAa,CAC1E,EAAS,MAAM,EAAS,CAAC,EAAE,CAAC,CACxB,OAAO,GAAY,UAAY,EAAQ,MAAM,EAAe,EAAS,EAAM,EAAU,EAAQ,EAChG,EACD,EAEG,IAAe,EAAS,EAAW,EAAU,IAAY,CACzD,EAAS,KAAY,EAAS,GAA6B,IAAI,KACpE,IAAM,EAAc,EAAS,GACxB,EAAY,IAAI,EAAQ,EAAE,EAAY,IAAI,EAAyB,IAAI,IAAM,CAClF,IAAM,EAAgB,EAAY,IAAI,EAAQ,CACxC,CAAE,QAAS,EACjB,EAAc,IAAI,EAAU,EAAQ,CAC/B,GAAM,EAAQ,iBAAiB,EAAW,EAAgB,EAAQ,EAElE,GAAkB,EAAS,EAAW,EAAU,IAAY,CACjE,IAAM,EAAc,EAAS,GACvB,EAAgB,GAAe,EAAY,IAAI,EAAQ,CACvD,EAAe,GAAiB,EAAc,IAAI,EAAS,CAC3D,EAAe,IAAiB,IAAK,GAAmB,EAAf,EAC3C,GAAiB,EAAc,IAAI,EAAS,EAAE,EAAc,OAAO,EAAS,CAC5E,IAAgB,CAAC,GAAiB,CAAC,EAAc,OAAO,EAAY,OAAO,EAAQ,EACnF,CAAC,GAAe,CAAC,EAAY,OAAM,OAAO,EAAS,IACnD,CAAC,GAAiB,CAAC,EAAc,OAAM,EAAQ,oBAAoB,EAAW,EAAgB,EAAa,EE9B1G,WCYa,GAAnB,KAAkC,CAKhC,YAAE,EAAA,EAAA,CACA,IAAE,EAEF,GAAA,CACF,GAAA,EAAkB,EAAE,CACd,EAAS,eAIT,IAFA,EAAA,EAAA,EAAA,CAEA,CAAA,EAAU,MAAU,MAAA,IAAO,EAAA,4BAAA,MAE3B,MAAA,MAAU,iDAAqB,OAE1B,EAAA,CACP,MAAM,MAAC,GAAA,KAAA,KAAA,UAAA,EAAA,UAAA,CAGT,IAAE,EAAU,EAAA,IAAA,EAAA,KAAA,KAAA,CAEZ,GAGE,EAAU,uBAAuB,CAGnC,KAAK,QAAS,EACd,KAAE,QAAa,KAAA,UAAA,EAAuB,KAAA,SAAA,CAAA,OACtC,GAAA,EAAA,KAAA,SAAA,GAAA,EAAA,CAAA,KAAA,CAAA,EAAA,CAGA,EAAK,IAAA,EAAU,KAAK,KAAS,KAAG,CAIlC,IAAE,SAAS,CACX,OAAA,GAIA,IAAE,MAAO,CACT,MAAA,gBAIA,IAAE,UAAQ,CACV,MAAA,EAAA,CAKA,0BAAA,GAKA,SAAQ,CACP,EAAA,OAAA,KAAA,QAAA,KAAA,KAAA,qBAEG,OAAO,KAAC,IACZ"} \ No newline at end of file diff --git a/dist/components/base-component-_c7CmBvl.js b/dist/components/base-component-_c7CmBvl.js deleted file mode 100644 index 4ced0725..00000000 --- a/dist/components/base-component-_c7CmBvl.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";const ee="aria-describedby",te="aria-expanded",O="aria-hidden",ne="aria-modal",oe="aria-pressed",se="aria-selected",re="focus",ae="focusin",ie="focusout",le="keydown",ue="keyup",ce="click",de="mousedown",fe="hover",he="mouseenter",ge="mouseleave",me="pointerdown",pe="pointermove",ye="pointerup",we="touchstart",be="dragstart",ve='a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]',Ee="ArrowDown",Ae="ArrowUp",Le="ArrowLeft",Ne="ArrowRight",Te="Escape",Me="transitionDuration",xe="transitionDelay",C="transitionend",Q="transitionProperty",Ce=()=>{const e=/iPhone|iPad|iPod|Android/i;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},De=()=>{const e=/(iPhone|iPod|iPad)/;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},Pe=()=>{},ze=(e,t,n,o)=>{e.addEventListener(t,n,!1)},je=(e,t,n,o)=>{e.removeEventListener(t,n,!1)},P=(e,t)=>e.getAttribute(t),V=(e,t)=>e.hasAttribute(t),ke=(e,t,n)=>e.setAttribute(t,n),Be=(e,t)=>e.removeAttribute(t),He=(e,...t)=>{e.classList.add(...t)},Se=(e,...t)=>{e.classList.remove(...t)},Fe=(e,t)=>e.classList.contains(t),E=e=>e!=null&&typeof e=="object"||!1,c=e=>E(e)&&typeof e.nodeType=="number"&&[1,2,3,4,5,6,7,8,9,10,11].some(t=>e.nodeType===t)||!1,u=e=>c(e)&&e.nodeType===1||!1,m=new Map,y={data:m,set:(e,t,n)=>{u(e)&&(m.has(t)||m.set(t,new Map),m.get(t).set(e,n))},getAllFor:e=>m.get(e)||null,get:(e,t)=>{if(!u(e)||!t)return null;const n=y.getAllFor(t);return e&&n&&n.get(e)||null},remove:(e,t)=>{const n=y.getAllFor(t);!n||!u(e)||(n.delete(e),n.size===0&&m.delete(t))}},Oe=(e,t)=>y.get(e,t),k=e=>e?.trim().replace(/(?:^\w|[A-Z]|\b\w)/g,(t,n)=>n===0?t.toLowerCase():t.toUpperCase()).replace(/\s+/g,""),N=e=>typeof e=="string"||!1,W=e=>E(e)&&e.constructor.name==="Window"||!1,Z=e=>c(e)&&e.nodeType===9||!1,d=e=>Z(e)?e:c(e)?e.ownerDocument:W(e)?e.document:globalThis.document,T=(e,...t)=>Object.assign(e,...t),$=e=>{if(!e)return;if(N(e))return d().createElement(e);const{tagName:t}=e,n=$(t);if(!n)return;const o={...e};return delete o.tagName,T(n,o)},I=(e,t)=>e.dispatchEvent(t),b=(e,t,n)=>{const o=getComputedStyle(e,n),s=t.replace("webkit","Webkit").replace(/([A-Z])/g,"-$1").toLowerCase();return o.getPropertyValue(s)},Qe=e=>{const t=b(e,Q),n=b(e,xe),o=n.includes("ms")?1:1e3,s=t&&t!=="none"?parseFloat(n)*o:0;return Number.isNaN(s)?0:s},K=e=>{const t=b(e,Q),n=b(e,Me),o=n.includes("ms")?1:1e3,s=t&&t!=="none"?parseFloat(n)*o:0;return Number.isNaN(s)?0:s},Ve=(e,t)=>{let n=0;const o=new Event(C),s=K(e),r=Qe(e);if(s){const a=l=>{l.target===e&&(t.apply(e,[l]),e.removeEventListener(C,a),n=1)};e.addEventListener(C,a),setTimeout(()=>{n||I(e,o)},s+r+17)}else t.apply(e,[o])},We=(e,t)=>e.focus(t),B=e=>["true",!0].includes(e)?!0:["false",!1].includes(e)?!1:["null","",null,void 0].includes(e)?null:e!==""&&!Number.isNaN(+e)?+e:e,L=e=>Object.entries(e),Ze=(e,t,n,o)=>{if(!u(e))return t;const s={...n},r={...e.dataset},a={...t},l={},f="title";return L(r).forEach(([i,h])=>{const A=typeof i=="string"&&i.includes(o)?k(i.replace(o,"")):k(i);l[A]=B(h)}),L(s).forEach(([i,h])=>{s[i]=B(h)}),L(t).forEach(([i,h])=>{i in s?a[i]=s[i]:i in l?a[i]=l[i]:a[i]=i===f?P(e,f):h}),a},H=e=>Object.keys(e),$e=(e,t)=>{const n=new CustomEvent(e,{cancelable:!0,bubbles:!0});return E(t)&&T(n,t),n},Ie={passive:!0},Ke=e=>e.offsetHeight,Re=(e,t)=>{L(t).forEach(([n,o])=>{if(o&&N(n)&&n.includes("--"))e.style.setProperty(n,o);else{const s={};s[n]=o,T(e.style,s)}})},D=e=>E(e)&&e.constructor.name==="Map"||!1,_e=e=>typeof e=="number"||!1,g=new Map,Xe={set:(e,t,n,o)=>{u(e)&&(o&&o.length?(g.has(e)||g.set(e,new Map),g.get(e).set(o,setTimeout(t,n))):g.set(e,setTimeout(t,n)))},get:(e,t)=>{if(!u(e))return null;const n=g.get(e);return t&&n&&D(n)?n.get(t)||null:_e(n)?n:null},clear:(e,t)=>{if(!u(e))return;const n=g.get(e);t&&t.length&&D(n)?(clearTimeout(n.get(t)),n.delete(t),n.size===0&&g.delete(e)):(clearTimeout(n),g.delete(e))}},qe=e=>e.toLowerCase(),R=(e,t)=>(c(t)?t:d()).querySelectorAll(e),z=new Map;function _(e){const{shiftKey:t,code:n}=e,o=d(this),s=[...R(ve,this)].filter(l=>!V(l,"disabled")&&!P(l,O));if(!s.length)return;const r=s[0],a=s[s.length-1];n==="Tab"&&(t&&o.activeElement===r?(a.focus(),e.preventDefault()):!t&&o.activeElement===a&&(r.focus(),e.preventDefault()))}const j=e=>z.has(e)===!0,Ge=e=>{j(e)||(ze(e,"keydown",_),z.set(e,!0))},Ue=e=>{j(e)&&(je(e,"keydown",_),z.delete(e))},Je=e=>{j(e)?Ue(e):Ge(e)},M=e=>u(e)&&"offsetWidth"in e||!1,v=(e,t)=>{const{width:n,height:o,top:s,right:r,bottom:a,left:l}=e.getBoundingClientRect();let f=1,i=1;if(t&&M(e)){const{offsetWidth:h,offsetHeight:A}=e;f=h>0?Math.round(n)/h:1,i=A>0?Math.round(o)/A:1}return{width:n/f,height:o/i,top:s/i,right:r/f,bottom:a/i,left:l/f,x:l/f,y:s/i}},Ye=e=>d(e).body,x=e=>d(e).documentElement,et=e=>{const t=W(e),n=t?e.scrollX:e.scrollLeft,o=t?e.scrollY:e.scrollTop;return{x:n,y:o}},X=e=>c(e)&&e.constructor.name==="ShadowRoot"||!1,tt=e=>e.nodeName==="HTML"?e:u(e)&&e.assignedSlot||c(e)&&e.parentNode||X(e)&&e.host||x(e),nt=e=>e?Z(e)?e.defaultView:c(e)?e?.ownerDocument?.defaultView:e:window,ot=e=>c(e)&&["TABLE","TD","TH"].includes(e.nodeName)||!1,st=(e,t)=>e.matches(t),rt=e=>{if(!M(e))return!1;const{width:t,height:n}=v(e),{offsetWidth:o,offsetHeight:s}=e;return Math.round(t)!==o||Math.round(n)!==s},at=(e,t,n)=>{const o=M(t),s=v(e,o&&rt(t)),r={x:0,y:0};if(o){const a=v(t,!0);r.x=a.x+t.clientLeft,r.y=a.y+t.clientTop}return{x:s.left+n.x-r.x,y:s.top+n.y-r.y,width:s.width,height:s.height}};let S=0,F=0;const p=new Map,q=(e,t)=>{let n=t?S:F;if(t){const o=q(e),s=p.get(o)||new Map;p.has(o)||p.set(o,s),D(s)&&!s.has(t)?(s.set(t,n),S+=1):n=s.get(t)}else{const o=e.id||e;p.has(o)?n=p.get(o):(p.set(o,n),F+=1)}return n},it=e=>Array.isArray(e)||!1,lt=e=>{if(!c(e))return!1;const{top:t,bottom:n}=v(e),{clientHeight:o}=x(e);return t<=o&&n>=0},ut=e=>typeof e=="function"||!1,ct=e=>E(e)&&e.constructor.name==="NodeList"||!1,dt=e=>x(e).dir==="rtl",G=(e,t)=>!e||!t?null:e.closest(t)||G(e.getRootNode().host,t)||null,U=(e,t)=>u(e)?e:(u(t)?t:d()).querySelector(e),ft=(e,t)=>(c(t)?t:d()).getElementsByTagName(e),ht=(e,t)=>d(t).getElementById(e),gt=(e,t)=>(t&&c(t)?t:d()).getElementsByClassName(e),w={},J=e=>{const{type:t,currentTarget:n}=e;w[t].forEach((o,s)=>{n===s&&o.forEach((r,a)=>{a.apply(s,[e]),typeof r=="object"&&r.once&&Y(s,t,a,r)})})},mt=(e,t,n,o)=>{w[t]||(w[t]=new Map);const s=w[t];s.has(e)||s.set(e,new Map);const r=s.get(e),{size:a}=r;r.set(n,o),a||e.addEventListener(t,J,o)},Y=(e,t,n,o)=>{const s=w[t],r=s&&s.get(e),a=r&&r.get(n),l=a!==void 0?a:o;r&&r.has(n)&&r.delete(n),s&&(!r||!r.size)&&s.delete(e),(!s||!s.size)&&delete w[t],(!r||!r.size)&&e.removeEventListener(t,J,l)},pt="5.1.6",yt=pt;class wt{constructor(t,n){let o;try{if(u(t))o=t;else if(N(t)){if(o=U(t),!o)throw Error(`"${t}" is not a valid selector.`)}else throw Error("your target is not an instance of HTMLElement.")}catch(r){throw Error(`${this.name} Error: ${r.message}`)}const s=y.get(o,this.name);s&&s._toggleEventListeners(),this.element=o,this.options=this.defaults&&H(this.defaults).length?Ze(o,this.defaults,n||{},"bs"):{},y.set(o,this.name,this)}get version(){return yt}get name(){return"BaseComponent"}get defaults(){return{}}_toggleEventListeners=()=>{};dispose(){y.remove(this.element,this.name),H(this).forEach(t=>{delete this[t]})}}exports.Ae=q;exports.Ao=Je;exports.At=ge;exports.BaseComponent=wt;exports.Be=se;exports.Co=at;exports.Do=lt;exports.E=mt;exports.Ee=st;exports.Eo=Re;exports.Et=de;exports.Fe=oe;exports.Gn=He;exports.Ho=dt;exports.It=ye;exports.K=P;exports.Kn=Be;exports.Le=ee;exports.N=N;exports.Ne=G;exports.No=et;exports.Oe=te;exports.Ot=me;exports.Pe=ne;exports.Qn=ke;exports.Qo=ht;exports.Qt=we;exports.Se=it;exports.So=Ye;exports.T=T;exports.Te=ft;exports.Vo=ct;exports.Wo=U;exports.X=O;exports.Z=I;exports.Zn=Se;exports._n=Fe;exports.ao=We;exports.at=ae;exports.b=M;exports.be=ot;exports.bo=Ke;exports.cn=Ne;exports.ct=re;exports.d=d;exports.de=R;exports.ee=Pe;exports.f=b;exports.ft=le;exports.gn=Te;exports.gt=ue;exports.ho=Xe;exports.i=u;exports.it=ie;exports.je=be;exports.jo=gt;exports.k=tt;exports.me=X;exports.mo=$e;exports.oe=V;exports.on=Ee;exports.r=Y;exports.rn=Le;exports.se=$;exports.sn=Ae;exports.so=Ve;exports.to=Oe;exports.u=c;exports.ue=K;exports.ve=nt;exports.vo=Ie;exports.vt=ce;exports.w=x;exports.wt=he;exports.xn=Ce;exports.xo=ut;exports.y=v;exports.yo=qe;exports.yt=fe;exports.zn=De;exports.zt=pe; -//# sourceMappingURL=base-component-_c7CmBvl.js.map diff --git a/dist/components/base-component-_c7CmBvl.js.map b/dist/components/base-component-_c7CmBvl.js.map deleted file mode 100644 index 84a7e71a..00000000 --- a/dist/components/base-component-_c7CmBvl.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"base-component-_c7CmBvl.js","sources":["../../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../../node_modules/.pnpm/@thednp+event-listener@2.0.10/node_modules/@thednp/event-listener/dist/event-listener.mjs","../../src/version.ts","../../src/components/base-component.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","const g = \"2.0.10\", e = {}, f = (t) => {\n const { type: n, currentTarget: c } = t;\n e[n].forEach((a, s) => {\n c === s && a.forEach((o, i) => {\n i.apply(s, [t]), typeof o == \"object\" && o.once && r(s, n, i, o);\n });\n });\n}, E = (t, n, c, a) => {\n e[n] || (e[n] = /* @__PURE__ */ new Map());\n const s = e[n];\n s.has(t) || s.set(t, /* @__PURE__ */ new Map());\n const o = s.get(\n t\n ), { size: i } = o;\n o.set(c, a), i || t.addEventListener(\n n,\n f,\n a\n );\n}, r = (t, n, c, a) => {\n const s = e[n], o = s && s.get(t), i = o && o.get(c), d = i !== void 0 ? i : a;\n o && o.has(c) && o.delete(c), s && (!o || !o.size) && s.delete(t), (!s || !s.size) && delete e[n], (!o || !o.size) && t.removeEventListener(\n n,\n f,\n d\n );\n}, M = E, p = r;\nexport {\n E as addListener,\n f as globalListener,\n p as off,\n M as on,\n e as registry,\n r as removeListener,\n g as version\n};\n//# sourceMappingURL=event-listener.mjs.map\n","import { version } from \"../package.json\";\n\nconst Version = version;\n\nexport default Version;\n","/* Native JavaScript for Bootstrap 5 | Base Component\n----------------------------------------------------- */\nimport {\n Data,\n isElement,\n isString,\n normalizeOptions,\n ObjectKeys,\n querySelector,\n} from \"@thednp/shorty\";\n\nimport type { BaseOptions } from \"~/interface/baseComponent\";\nimport Version from \"~/version\";\n\n/** Returns a new `BaseComponent` instance. */\nexport default class BaseComponent {\n declare element: Element;\n declare options?: BaseOptions;\n\n /**\n * @param target `Element` or selector string\n * @param config component instance options\n */\n constructor(target: Element | string, config?: BaseOptions) {\n let element: Element | null;\n\n try {\n if (isElement(target)) {\n element = target as Element;\n } else if (isString(target)) {\n element = querySelector(target);\n // istanbul ignore else @preserve\n if (!element) throw Error(`\"${target}\" is not a valid selector.`);\n } else {\n throw Error(`your target is not an instance of HTMLElement.`);\n }\n } catch (e) {\n throw Error(`${this.name} Error: ${(e as Error).message}`);\n }\n\n const prevInstance = Data.get(element, this.name);\n /* istanbul ignore else @preserve */\n if (prevInstance) {\n // remove previously attached event listeners\n // to avoid memory leaks\n prevInstance._toggleEventListeners();\n }\n\n this.element = element;\n this.options = this.defaults && ObjectKeys(this.defaults).length\n ? normalizeOptions(element, this.defaults, config || {}, \"bs\")\n : /* istanbul ignore next @preserve */ {};\n\n Data.set(element, this.name, this);\n }\n\n // istanbul ignore next @preserve\n get version() {\n return Version;\n }\n\n // istanbul ignore next @preserve\n get name() {\n return \"BaseComponent\";\n }\n\n // istanbul ignore next @preserve\n get defaults() {\n return {};\n }\n\n /** just to have something to extend from */\n // istanbul ignore next @preserve coverage wise this isn't important\n _toggleEventListeners = () => {\n // do something to please linters\n };\n\n /** Removes component from target element. */\n dispose() {\n Data.remove(this.element, this.name);\n ObjectKeys(this).forEach((prop) => {\n delete this[prop];\n });\n }\n}\n"],"names":["Le","Oe","X","Pe","Fe","Be","ct","at","it","ft","gt","vt","Et","yt","wt","At","Ot","zt","It","Qt","je","Zt","on","sn","rn","cn","gn","Jt","Xt","M","R","xn","t","e","zn","ee","Q","j","K","oe","Qn","Kn","Gn","Zn","_n","v","u","i","E","L","to","P","q","G","se","Z","f","ie","ue","so","ao","F","S","uo","p","c","g","fo","mo","vo","bo","Eo","O","le","m","ho","yo","de","I","fe","pe","Ao","b","y","So","w","No","me","k","ve","be","Ee","we","Co","V","H","h","Ae","Se","Do","xo","Vo","Ho","Ne","Wo","Te","Qo","jo","n","a","o","r","d","Version","version","BaseComponent","target","config","element","isElement","isString","querySelector","prevInstance","Data","ObjectKeys","normalizeOptions","prop"],"mappings":"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","x_google_ignoreList":[0,1]} \ No newline at end of file diff --git a/dist/components/button.cjs b/dist/components/button.cjs index 1912d22e..51675f3a 100644 --- a/dist/components/button.cjs +++ b/dist/components/button.cjs @@ -1,2 +1,2 @@ -"use strict";const t=require("./base-component-_c7CmBvl.js"),i=require("./activeClass-CxJYQAGN.js"),r=require("./dataBsToggle-Dj-Ng54N.js"),l=require("./isDisabled-BI_fUUV9.js"),u="button",c="Button",g=`[${r.dataBsToggle}="${u}"]`,v=n=>t.to(n,c),b=n=>new a(n);class a extends t.BaseComponent{static selector=g;static init=b;static getInstance=v;constructor(s){super(s);const{element:e}=this;this.isActive=t._n(e,i.activeClass),t.Qn(e,t.Fe,String(!!this.isActive)),this._toggleEventListeners(!0)}get name(){return c}toggle=s=>{s&&s.preventDefault();const{element:e,isActive:o}=this;if(l.isDisabled(e))return;(o?t.Zn:t.Gn)(e,i.activeClass),t.Qn(e,t.Fe,o?"false":"true"),this.isActive=t._n(e,i.activeClass)};_toggleEventListeners=s=>{(s?t.E:t.r)(this.element,t.vt,this.toggle)};dispose(){this._toggleEventListeners(),super.dispose()}}module.exports=a; -//# sourceMappingURL=button.cjs.map +const e=require(`./base-component-LPll9cLQ.js`),t=require(`./isDisabled-VaupgHJv.js`),n=require(`./activeClass-CiLr15n0.js`),r=require(`./dataBsToggle-rqyimqAB.js`);var i=`button`,a=`Button`,o=`[${r.t}="${i}"]`,s=t=>e.pt(t,a),c=e=>new l(e),l=class extends e.t{static selector=o;static init=c;static getInstance=s;constructor(t){super(t);let{element:r}=this;this.isActive=e.R(r,n.t),e.E(r,e.p,String(!!this.isActive)),this._toggleEventListeners(!0)}get name(){return a}toggle=r=>{r&&r.preventDefault();let{element:i,isActive:a}=this;t.t(i)||((a?e.L:e.m)(i,n.t),e.E(i,e.p,a?`false`:`true`),this.isActive=e.R(i,n.t))};_toggleEventListeners=t=>{(t?e.n:e.r)(this.element,e.vt,this.toggle)};dispose(){this._toggleEventListeners(),super.dispose()}};module.exports=l; +//# sourceMappingURL=button.cjs.map \ No newline at end of file diff --git a/dist/components/button.cjs.map b/dist/components/button.cjs.map index ae71c453..bfe7d629 100644 --- a/dist/components/button.cjs.map +++ b/dist/components/button.cjs.map @@ -1 +1 @@ -{"version":3,"file":"button.cjs","sources":["../../src/strings/buttonString.ts","../../src/strings/buttonComponent.ts","../../src/components/button.ts"],"sourcesContent":["/** @type {string} */\nconst buttonString = \"button\";\nexport default buttonString;\n","/** @type {string} */\nconst buttonComponent = \"Button\";\nexport default buttonComponent;\n","/* Native JavaScript for Bootstrap 5 | Button\n---------------------------------------------*/\nimport {\n addClass,\n ariaPressed,\n getInstance,\n hasClass,\n mouseclickEvent,\n PointerEvent,\n removeClass,\n setAttribute,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport buttonString from \"~/strings/buttonString\";\nimport buttonComponent from \"~/strings/buttonComponent\";\nimport BaseComponent from \"./base-component\";\nimport isDisabled from \"~/util/isDisabled\";\n\n// BUTTON PRIVATE GC\n// =================\nconst buttonSelector = `[${dataBsToggle}=\"${buttonString}\"]`;\n\n/**\n * Static method which returns an existing `Button` instance associated\n * to a target `Element`.\n */\nconst getButtonInstance = (element: Element) =>\n getInstance'}),l=e=>n.to(e,t.popoverComponent),c=e=>new p(e);class p extends t.Tooltip{static selector=r;static init=c;static getInstance=l;static styleTip=t.styleTip;constructor(s,o){super(s,o)}get name(){return t.popoverComponent}get defaults(){return a}show=()=>{super.show();const{options:s,btn:o}=this;s.dismissible&&o&&setTimeout(()=>n.ao(o),17)}}module.exports=p; -//# sourceMappingURL=popover.cjs.map +const e=require(`./base-component-LPll9cLQ.js`),t=require(`./dataBsToggle-rqyimqAB.js`);require(`./dist-CtVym8U0.js`),require(`./popupContainer-DocKVrIM.js`);const n=require(`./tooltip-BUNhKri3.js`);var r=`[${t.t}="${n.o}"],[data-tip="${n.o}"]`,i=e.j({},n.n,{template:n.i(n.o),content:``,dismissible:!1,btnClose:``}),a=t=>e.pt(t,n.a),o=e=>new s(e),s=class extends n.t{static selector=r;static init=o;static getInstance=a;static styleTip=n.r;constructor(e,t){super(e,t)}get name(){return n.a}get defaults(){return i}show=()=>{super.show();let{options:t,btn:n}=this;t.dismissible&&n&&setTimeout(()=>e.z(n),17)}};module.exports=s; +//# sourceMappingURL=popover.cjs.map \ No newline at end of file diff --git a/dist/components/popover.cjs.map b/dist/components/popover.cjs.map index d560697c..bb0c5936 100644 --- a/dist/components/popover.cjs.map +++ b/dist/components/popover.cjs.map @@ -1 +1 @@ -{"version":3,"file":"popover.cjs","sources":["../../src/components/popover.ts"],"sourcesContent":["/* Native JavaScript for Bootstrap 5 | Popover\n---------------------------------------------- */\nimport { focus, getInstance, ObjectAssign } from \"@thednp/shorty\";\n\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport popoverString from \"~/strings/popoverString\";\nimport popoverComponent from \"~/strings/popoverComponent\";\n\nimport getTipTemplate from \"~/util/getTipTemplate\";\nimport styleTip from \"~/util/styleTip\";\nimport tooltipDefaults from \"~/util/tooltipDefaults\";\nimport Tooltip from \"./tooltip\";\n\nimport type { PopoverOptions /* , PopoverEvent */ } from \"~/interface/popover\";\n\n// POPOVER PRIVATE GC\n// ==================\nconst popoverSelector =\n `[${dataBsToggle}=\"${popoverString}\"],[data-tip=\"${popoverString}\"]`;\n\nconst popoverDefaults: PopoverOptions = ObjectAssign({}, tooltipDefaults, {\n template: getTipTemplate(popoverString),\n content: \"\",\n dismissible: false,\n btnClose:\n '',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n"],"names":["popoverSelector","dataBsToggle","popoverString","popoverDefaults","ObjectAssign","tooltipDefaults","getTipTemplate","getPopoverInstance","element","getInstance","popoverComponent","popoverInitCallback","Popover","Tooltip","styleTip","target","config","options","btn","focus"],"mappings":"wIAgBMA,EACJ,IAAIC,cAAY,KAAKC,EAAAA,aAAa,iBAAiBA,EAAAA,aAAa,KAE5DC,EAAkCC,EAAAA,EAAa,CAAA,EAAIC,kBAAiB,CACxE,SAAUC,EAAAA,eAAeJ,eAAa,EACtC,QAAS,GACT,YAAa,GACb,SACE,0FACJ,CAAC,EAGKK,EAAsBC,GAC1BC,KAAqBD,EAASE,EAAAA,gBAAgB,EAG1CC,EAAuBH,GAAqB,IAAII,EAAQJ,CAAO,EAKrE,MAAqBI,UAAgBC,EAAAA,OAAQ,CAC3C,OAAO,SAAWb,EAClB,OAAO,KAAOW,EACd,OAAO,YAAcJ,EACrB,OAAO,SAAWO,EAAAA,SAIlB,YAAYC,EAA0BC,EAAkC,CACtE,MAAMD,EAAQC,CAAM,CACtB,CAEA,IAAI,MAAO,CACT,OAAON,EAAAA,gBACT,CAEA,IAAI,UAAW,CACb,OAAOP,CACT,CAGA,KAAO,IAAM,CACX,MAAM,KAAA,EAEN,KAAM,CAAE,QAAAc,EAAS,IAAAC,CAAA,EAAQ,KAErBD,EAAQ,aAAeC,GAAK,WAAW,IAAMC,KAAMD,CAAG,EAAG,EAAE,CACjE,CACF"} \ No newline at end of file +{"version":3,"file":"popover.cjs","names":[],"sources":["../../src/components/popover.ts"],"sourcesContent":["/* Native JavaScript for Bootstrap 5 | Popover\n---------------------------------------------- */\nimport { focus, getInstance, ObjectAssign } from \"@thednp/shorty\";\n\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport popoverString from \"~/strings/popoverString\";\nimport popoverComponent from \"~/strings/popoverComponent\";\n\nimport getTipTemplate from \"~/util/getTipTemplate\";\nimport styleTip from \"~/util/styleTip\";\nimport tooltipDefaults from \"~/util/tooltipDefaults\";\nimport Tooltip from \"./tooltip\";\n\nimport type { PopoverOptions /* , PopoverEvent */ } from \"~/interface/popover\";\n\n// POPOVER PRIVATE GC\n// ==================\nconst popoverSelector =\n `[${dataBsToggle}=\"${popoverString}\"],[data-tip=\"${popoverString}\"]`;\n\nconst popoverDefaults: PopoverOptions = ObjectAssign({}, tooltipDefaults, {\n template: getTipTemplate(popoverString),\n content: \"\",\n dismissible: false,\n btnClose:\n '',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n"],"mappings":"uMAgBA,IAAM,EACN,IAAM,EAAA,EAAA,IAAgB,EAAA,EAAA,gBAAA,EAAA,EAAA,kBAGtB,SAAM,EAAA,EAAiB,EAAA,EAAiB,CACtC,QAAS,GACT,YAAW,GACX,SACA,2FACD,CAAC,CAGA,EAAA,GACA,EAAA,GAAqB,EAAQ,EAAA,EAAa,CAGtC,EAAsB,GAAmB,IAAA,EAAA,EAAA,CAK7C,EAAF,cAAE,EAAA,CAAA,CACF,OAAM,SAAA,gBAEJ,OAAC,YAAQ,EACT,OAAO,SAAW,EAAA,EAIlB,YAAY,EAAqB,EAAA,CACjC,MAAO,EAAA,EAAc,YAInB,OAAA,EAAA,EAGF,IAAE,UAAA,CACF,OAAA,EAIA,SAAW,CACT,MAAA,MAAA,CAEA,GAAM,CAAC,UAAA,OAAgB,KAEvB,EAAA,aAAA,GAAA,eAAA,EAAA,EAAA,EAAA,CAAA,GAAA"} \ No newline at end of file diff --git a/dist/components/popover.mjs b/dist/components/popover.mjs index 00d928cd..2c473165 100644 --- a/dist/components/popover.mjs +++ b/dist/components/popover.mjs @@ -1,33 +1,35 @@ -import { T as p, t as i, L as n } from "./base-component-BazRqYWL.mjs"; -import { d as l } from "./dataBsToggle-B84TS15h.mjs"; -import { g as r, t as c, T as m, p as e, s as u, a } from "./tooltip-BL2s6EHC.mjs"; -const b = `[${l}="${e}"],[data-tip="${e}"]`, d = p({}, c, { - template: r(e), - content: "", - dismissible: !1, - btnClose: '' -}), f = (t) => i(t, a), g = (t) => new T(t); -class T extends m { - static selector = b; - static init = g; - static getInstance = f; - static styleTip = u; - constructor(s, o) { - super(s, o); - } - get name() { - return a; - } - get defaults() { - return d; - } - show = () => { - super.show(); - const { options: s, btn: o } = this; - s.dismissible && o && setTimeout(() => n(o), 17); - }; -} -export { - T as default +import { j as e, pt as t, z as n } from "./base-component-Bm8KwB_I.mjs"; +import { t as r } from "./dataBsToggle-CeJMDTHb.mjs"; +import "./dist-CAr49AgA.mjs"; +import "./popupContainer-cXLEqUgV.mjs"; +import { a as i, i as a, n as o, o as s, r as c, t as l } from "./tooltip-D4dIPTdQ.mjs"; +//#region src/components/popover.ts +var u = `[${r}="${s}"],[data-tip="${s}"]`, d = e({}, o, { + template: a(s), + content: "", + dismissible: !1, + btnClose: "" +}), f = (e) => t(e, i), p = (e) => new m(e), m = class extends l { + static selector = u; + static init = p; + static getInstance = f; + static styleTip = c; + constructor(e, t) { + super(e, t); + } + get name() { + return i; + } + get defaults() { + return d; + } + show = () => { + super.show(); + let { options: e, btn: t } = this; + e.dismissible && t && setTimeout(() => n(t), 17); + }; }; -//# sourceMappingURL=popover.mjs.map +//#endregion +export { m as default }; + +//# sourceMappingURL=popover.mjs.map \ No newline at end of file diff --git a/dist/components/popover.mjs.map b/dist/components/popover.mjs.map index 80793881..4d85e0f9 100644 --- a/dist/components/popover.mjs.map +++ b/dist/components/popover.mjs.map @@ -1 +1 @@ -{"version":3,"file":"popover.mjs","sources":["../../src/components/popover.ts"],"sourcesContent":["/* Native JavaScript for Bootstrap 5 | Popover\n---------------------------------------------- */\nimport { focus, getInstance, ObjectAssign } from \"@thednp/shorty\";\n\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport popoverString from \"~/strings/popoverString\";\nimport popoverComponent from \"~/strings/popoverComponent\";\n\nimport getTipTemplate from \"~/util/getTipTemplate\";\nimport styleTip from \"~/util/styleTip\";\nimport tooltipDefaults from \"~/util/tooltipDefaults\";\nimport Tooltip from \"./tooltip\";\n\nimport type { PopoverOptions /* , PopoverEvent */ } from \"~/interface/popover\";\n\n// POPOVER PRIVATE GC\n// ==================\nconst popoverSelector =\n `[${dataBsToggle}=\"${popoverString}\"],[data-tip=\"${popoverString}\"]`;\n\nconst popoverDefaults: PopoverOptions = ObjectAssign({}, tooltipDefaults, {\n template: getTipTemplate(popoverString),\n content: \"\",\n dismissible: false,\n btnClose:\n '',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n"],"names":["popoverSelector","dataBsToggle","popoverString","popoverDefaults","ObjectAssign","tooltipDefaults","getTipTemplate","getPopoverInstance","element","getInstance","popoverComponent","popoverInitCallback","Popover","Tooltip","styleTip","target","config","options","btn","focus"],"mappings":";;;AAgBA,MAAMA,IACJ,IAAIC,CAAY,KAAKC,CAAa,iBAAiBA,CAAa,MAE5DC,IAAkCC,EAAa,CAAA,GAAIC,GAAiB;AAAA,EACxE,UAAUC,EAAeJ,CAAa;AAAA,EACtC,SAAS;AAAA,EACT,aAAa;AAAA,EACb,UACE;AACJ,CAAC,GAGKK,IAAqB,CAACC,MAC1BC,EAAqBD,GAASE,CAAgB,GAG1CC,IAAsB,CAACH,MAAqB,IAAII,EAAQJ,CAAO;AAKrE,MAAqBI,UAAgBC,EAAQ;AAAA,EAC3C,OAAO,WAAWb;AAAA,EAClB,OAAO,OAAOW;AAAA,EACd,OAAO,cAAcJ;AAAA,EACrB,OAAO,WAAWO;AAAA,EAIlB,YAAYC,GAA0BC,GAAkC;AACtE,UAAMD,GAAQC,CAAM;AAAA,EACtB;AAAA,EAEA,IAAI,OAAO;AACT,WAAON;AAAA,EACT;AAAA,EAEA,IAAI,WAAW;AACb,WAAOP;AAAA,EACT;AAAA,EAGA,OAAO,MAAM;AACX,UAAM,KAAA;AAEN,UAAM,EAAE,SAAAc,GAAS,KAAAC,EAAA,IAAQ;AAEzB,IAAID,EAAQ,eAAeC,KAAK,WAAW,MAAMC,EAAMD,CAAG,GAAG,EAAE;AAAA,EACjE;AACF;"} \ No newline at end of file +{"version":3,"file":"popover.mjs","names":[],"sources":["../../src/components/popover.ts"],"sourcesContent":["/* Native JavaScript for Bootstrap 5 | Popover\n---------------------------------------------- */\nimport { focus, getInstance, ObjectAssign } from \"@thednp/shorty\";\n\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport popoverString from \"~/strings/popoverString\";\nimport popoverComponent from \"~/strings/popoverComponent\";\n\nimport getTipTemplate from \"~/util/getTipTemplate\";\nimport styleTip from \"~/util/styleTip\";\nimport tooltipDefaults from \"~/util/tooltipDefaults\";\nimport Tooltip from \"./tooltip\";\n\nimport type { PopoverOptions /* , PopoverEvent */ } from \"~/interface/popover\";\n\n// POPOVER PRIVATE GC\n// ==================\nconst popoverSelector =\n `[${dataBsToggle}=\"${popoverString}\"],[data-tip=\"${popoverString}\"]`;\n\nconst popoverDefaults: PopoverOptions = ObjectAssign({}, tooltipDefaults, {\n template: getTipTemplate(popoverString),\n content: \"\",\n dismissible: false,\n btnClose:\n '',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n"],"mappings":";;;;;;AAgBA,IAAM,IACN,IAAM,EAAA,IAAgB,EAAA,gBAAA,EAAA;CAGtB,UAAM,EAAiB,EAAiB;CACtC,SAAS;CACT,aAAW;CACX,UACA;CACD,CAAC,EAGA,KAAA,MACA,EAAqB,GAAQ,EAAa,EAGtC,KAAsB,MAAmB,IAAA,EAAA,EAAA,EAK7C,IAAF,cAAE,EAAA;CACF,OAAM,WAAA;;CAEJ,OAAC,cAAQ;CACT,OAAO,WAAW;CAIlB,YAAY,GAAqB,GAAA;AACjC,QAAO,GAAA,EAAc;;;AAInB,SAAA;;CAGF,IAAE,WAAA;AACF,SAAA;;CAIA,aAAW;AACT,QAAA,MAAA;EAEA,IAAM,EAAC,YAAA,WAAgB;AAEvB,EAAA,EAAA,eAAA,KAAA,iBAAA,EAAA,EAAA,EAAA,GAAA"} \ No newline at end of file diff --git a/dist/components/popupContainer-Dhe1NpFt.mjs b/dist/components/popupContainer-Dhe1NpFt.mjs deleted file mode 100644 index 495637b5..00000000 --- a/dist/components/popupContainer-Dhe1NpFt.mjs +++ /dev/null @@ -1,22 +0,0 @@ -import { a6 as c, ai as s, a3 as f } from "./base-component-BazRqYWL.mjs"; -const i = "modal", v = "offcanvas", a = c({ - tagName: "div", - className: "popup-container" -}), B = (p, o) => { - const n = s(o) && o.nodeName === "BODY", e = s(o) && !n ? o : a, d = n ? o : f(p); - s(p) && (e === a && d.append(a), e.append(p)); -}, N = (p, o) => { - const n = s(o) && o.nodeName === "BODY", e = s(o) && !n ? o : a; - s(p) && (p.remove(), e === a && !a.children.length && a.remove()); -}, h = (p, o) => { - const n = s(o) && o.nodeName !== "BODY" ? o : a; - return s(p) && n.contains(p); -}; -export { - B as a, - h, - i as m, - v as o, - N as r -}; -//# sourceMappingURL=popupContainer-Dhe1NpFt.mjs.map diff --git a/dist/components/popupContainer-Dhe1NpFt.mjs.map b/dist/components/popupContainer-Dhe1NpFt.mjs.map deleted file mode 100644 index 36546ae5..00000000 --- a/dist/components/popupContainer-Dhe1NpFt.mjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"popupContainer-Dhe1NpFt.mjs","sources":["../../src/strings/modalString.ts","../../src/strings/offcanvasString.ts","../../src/util/popupContainer.ts"],"sourcesContent":["/** @type {string} */\nconst modalString = \"modal\";\nexport default modalString;\n","/** @type {string} */\nconst offcanvasString = \"offcanvas\";\nexport default offcanvasString;\n","import { createElement, getDocumentBody, isNode } from \"@thednp/shorty\";\n\n// the default container for Modal, Offcanvas, Popover and Tooltip\nconst popupContainer = createElement({\n tagName: \"div\",\n className: \"popup-container\",\n}) as HTMLElement;\n\nconst appendPopup = (target: Element, customContainer?: ParentNode) => {\n const containerIsBody = isNode(customContainer) &&\n customContainer.nodeName === \"BODY\";\n const lookup = isNode(customContainer) && !containerIsBody\n ? customContainer\n : popupContainer;\n const BODY = containerIsBody ? customContainer : getDocumentBody(target);\n\n // istanbul ignore else @preserve\n if (isNode(target)) {\n if (lookup === popupContainer) {\n BODY.append(popupContainer);\n }\n lookup.append(target);\n }\n};\n\nconst removePopup = (target: Element, customContainer?: ParentNode) => {\n const containerIsBody = isNode(customContainer) &&\n customContainer.nodeName === \"BODY\";\n const lookup = isNode(customContainer) && !containerIsBody\n ? customContainer\n : popupContainer;\n\n // istanbul ignore else @preserve\n if (isNode(target)) {\n target.remove();\n\n if (lookup === popupContainer && !popupContainer.children.length) {\n popupContainer.remove();\n }\n }\n};\n\nconst hasPopup = (target: Element, customContainer?: ParentNode) => {\n const lookup = isNode(customContainer) && customContainer.nodeName !== \"BODY\"\n ? customContainer\n : popupContainer;\n return isNode(target) && lookup.contains(target);\n};\n\nexport { appendPopup, hasPopup, popupContainer, removePopup };\n"],"names":["modalString","offcanvasString","popupContainer","createElement","appendPopup","target","customContainer","containerIsBody","isNode","lookup","BODY","getDocumentBody","removePopup","hasPopup"],"mappings":";AACA,MAAMA,IAAc,SCAdC,IAAkB,aCElBC,IAAiBC,EAAc;AAAA,EACnC,SAAS;AAAA,EACT,WAAW;AACb,CAAC,GAEKC,IAAc,CAACC,GAAiBC,MAAiC;AACrE,QAAMC,IAAkBC,EAAOF,CAAe,KAC5CA,EAAgB,aAAa,QACzBG,IAASD,EAAOF,CAAe,KAAK,CAACC,IACvCD,IACAJ,GACEQ,IAAOH,IAAkBD,IAAkBK,EAAgBN,CAAM;AAGvE,EAAIG,EAAOH,CAAM,MACXI,MAAWP,KACbQ,EAAK,OAAOR,CAAc,GAE5BO,EAAO,OAAOJ,CAAM;AAExB,GAEMO,IAAc,CAACP,GAAiBC,MAAiC;AACrE,QAAMC,IAAkBC,EAAOF,CAAe,KAC5CA,EAAgB,aAAa,QACzBG,IAASD,EAAOF,CAAe,KAAK,CAACC,IACvCD,IACAJ;AAGJ,EAAIM,EAAOH,CAAM,MACfA,EAAO,OAAA,GAEHI,MAAWP,KAAkB,CAACA,EAAe,SAAS,UACxDA,EAAe,OAAA;AAGrB,GAEMW,IAAW,CAACR,GAAiBC,MAAiC;AAClE,QAAMG,IAASD,EAAOF,CAAe,KAAKA,EAAgB,aAAa,SACnEA,IACAJ;AACJ,SAAOM,EAAOH,CAAM,KAAKI,EAAO,SAASJ,CAAM;AACjD;"} \ No newline at end of file diff --git a/dist/components/popupContainer-DocKVrIM.js b/dist/components/popupContainer-DocKVrIM.js new file mode 100644 index 00000000..fa98dfcd --- /dev/null +++ b/dist/components/popupContainer-DocKVrIM.js @@ -0,0 +1,2 @@ +const e=require(`./base-component-LPll9cLQ.js`);var t=`modal`,n=`offcanvas`,r=e.ut({tagName:`div`,className:`popup-container`}),i=(t,n)=>{let i=e.mt(n)&&n.nodeName===`BODY`,a=e.mt(n)&&!i?n:r,o=i?n:e.A(t);e.mt(t)&&(a===r&&o.append(r),a.append(t))},a=(t,n)=>{let i=e.mt(n)&&n.nodeName===`BODY`,a=e.mt(n)&&!i?n:r;e.mt(t)&&(t.remove(),a===r&&!r.children.length&&r.remove())},o=(t,n)=>{let i=e.mt(n)&&n.nodeName!==`BODY`?n:r;return e.mt(t)&&i.contains(t)};Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return t}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return i}}); +//# sourceMappingURL=popupContainer-DocKVrIM.js.map \ No newline at end of file diff --git a/dist/components/popupContainer-DocKVrIM.js.map b/dist/components/popupContainer-DocKVrIM.js.map new file mode 100644 index 00000000..fb31ef4b --- /dev/null +++ b/dist/components/popupContainer-DocKVrIM.js.map @@ -0,0 +1 @@ +{"version":3,"file":"popupContainer-DocKVrIM.js","names":[],"sources":["../../src/strings/modalString.ts","../../src/strings/offcanvasString.ts","../../src/util/popupContainer.ts"],"sourcesContent":["/** @type {string} */\nconst modalString = \"modal\";\nexport default modalString;\n","/** @type {string} */\nconst offcanvasString = \"offcanvas\";\nexport default offcanvasString;\n","import { createElement, getDocumentBody, isNode } from \"@thednp/shorty\";\n\n// the default container for Modal, Offcanvas, Popover and Tooltip\nconst popupContainer = createElement({\n tagName: \"div\",\n className: \"popup-container\",\n}) as HTMLElement;\n\nconst appendPopup = (target: Element, customContainer?: ParentNode) => {\n const containerIsBody = isNode(customContainer) &&\n customContainer.nodeName === \"BODY\";\n const lookup = isNode(customContainer) && !containerIsBody\n ? customContainer\n : popupContainer;\n const BODY = containerIsBody ? customContainer : getDocumentBody(target);\n\n // istanbul ignore else @preserve\n if (isNode(target)) {\n if (lookup === popupContainer) {\n BODY.append(popupContainer);\n }\n lookup.append(target);\n }\n};\n\nconst removePopup = (target: Element, customContainer?: ParentNode) => {\n const containerIsBody = isNode(customContainer) &&\n customContainer.nodeName === \"BODY\";\n const lookup = isNode(customContainer) && !containerIsBody\n ? customContainer\n : popupContainer;\n\n // istanbul ignore else @preserve\n if (isNode(target)) {\n target.remove();\n\n if (lookup === popupContainer && !popupContainer.children.length) {\n popupContainer.remove();\n }\n }\n};\n\nconst hasPopup = (target: Element, customContainer?: ParentNode) => {\n const lookup = isNode(customContainer) && customContainer.nodeName !== \"BODY\"\n ? customContainer\n : popupContainer;\n return isNode(target) && lookup.contains(target);\n};\n\nexport { appendPopup, hasPopup, popupContainer, removePopup };\n"],"mappings":"gDACA,IAAM,EAAc,QCAd,EAAkB,YCElB,EAAiB,EAAA,GAAc,CACnC,QAAS,MACT,UAAW,kBACZ,CAAC,CAEI,GAAe,EAAiB,IAAiC,CACrE,IAAM,EAAkB,EAAA,GAAO,EAAgB,EAC7C,EAAgB,WAAa,OACzB,EAAS,EAAA,GAAO,EAAgB,EAAI,CAAC,EACvC,EACA,EACE,EAAO,EAAkB,EAAkB,EAAA,EAAgB,EAAO,CAGpE,EAAA,GAAO,EAAO,GACZ,IAAW,GACb,EAAK,OAAO,EAAe,CAE7B,EAAO,OAAO,EAAO,GAInB,GAAe,EAAiB,IAAiC,CACrE,IAAM,EAAkB,EAAA,GAAO,EAAgB,EAC7C,EAAgB,WAAa,OACzB,EAAS,EAAA,GAAO,EAAgB,EAAI,CAAC,EACvC,EACA,EAGA,EAAA,GAAO,EAAO,GAChB,EAAO,QAAQ,CAEX,IAAW,GAAkB,CAAC,EAAe,SAAS,QACxD,EAAe,QAAQ,GAKvB,GAAY,EAAiB,IAAiC,CAClE,IAAM,EAAS,EAAA,GAAO,EAAgB,EAAI,EAAgB,WAAa,OACnE,EACA,EACJ,OAAO,EAAA,GAAO,EAAO,EAAI,EAAO,SAAS,EAAO"} \ No newline at end of file diff --git a/dist/components/popupContainer-Dxpyo8Ll.js b/dist/components/popupContainer-Dxpyo8Ll.js deleted file mode 100644 index 9f0f3ffb..00000000 --- a/dist/components/popupContainer-Dxpyo8Ll.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";const p=require("./base-component-_c7CmBvl.js"),d="modal",u="offcanvas",e=p.se({tagName:"div",className:"popup-container"}),f=(n,o)=>{const s=p.u(o)&&o.nodeName==="BODY",a=p.u(o)&&!s?o:e,c=s?o:p.So(n);p.u(n)&&(a===e&&c.append(e),a.append(n))},l=(n,o)=>{const s=p.u(o)&&o.nodeName==="BODY",a=p.u(o)&&!s?o:e;p.u(n)&&(n.remove(),a===e&&!e.children.length&&e.remove())},i=(n,o)=>{const s=p.u(o)&&o.nodeName!=="BODY"?o:e;return p.u(n)&&s.contains(n)};exports.appendPopup=f;exports.hasPopup=i;exports.modalString=d;exports.offcanvasString=u;exports.removePopup=l; -//# sourceMappingURL=popupContainer-Dxpyo8Ll.js.map diff --git a/dist/components/popupContainer-Dxpyo8Ll.js.map b/dist/components/popupContainer-Dxpyo8Ll.js.map deleted file mode 100644 index 9064f1e1..00000000 --- a/dist/components/popupContainer-Dxpyo8Ll.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"popupContainer-Dxpyo8Ll.js","sources":["../../src/strings/modalString.ts","../../src/strings/offcanvasString.ts","../../src/util/popupContainer.ts"],"sourcesContent":["/** @type {string} */\nconst modalString = \"modal\";\nexport default modalString;\n","/** @type {string} */\nconst offcanvasString = \"offcanvas\";\nexport default offcanvasString;\n","import { createElement, getDocumentBody, isNode } from \"@thednp/shorty\";\n\n// the default container for Modal, Offcanvas, Popover and Tooltip\nconst popupContainer = createElement({\n tagName: \"div\",\n className: \"popup-container\",\n}) as HTMLElement;\n\nconst appendPopup = (target: Element, customContainer?: ParentNode) => {\n const containerIsBody = isNode(customContainer) &&\n customContainer.nodeName === \"BODY\";\n const lookup = isNode(customContainer) && !containerIsBody\n ? customContainer\n : popupContainer;\n const BODY = containerIsBody ? customContainer : getDocumentBody(target);\n\n // istanbul ignore else @preserve\n if (isNode(target)) {\n if (lookup === popupContainer) {\n BODY.append(popupContainer);\n }\n lookup.append(target);\n }\n};\n\nconst removePopup = (target: Element, customContainer?: ParentNode) => {\n const containerIsBody = isNode(customContainer) &&\n customContainer.nodeName === \"BODY\";\n const lookup = isNode(customContainer) && !containerIsBody\n ? customContainer\n : popupContainer;\n\n // istanbul ignore else @preserve\n if (isNode(target)) {\n target.remove();\n\n if (lookup === popupContainer && !popupContainer.children.length) {\n popupContainer.remove();\n }\n }\n};\n\nconst hasPopup = (target: Element, customContainer?: ParentNode) => {\n const lookup = isNode(customContainer) && customContainer.nodeName !== \"BODY\"\n ? customContainer\n : popupContainer;\n return isNode(target) && lookup.contains(target);\n};\n\nexport { appendPopup, hasPopup, popupContainer, removePopup };\n"],"names":["modalString","offcanvasString","popupContainer","createElement","appendPopup","target","customContainer","containerIsBody","isNode","lookup","BODY","getDocumentBody","removePopup","hasPopup"],"mappings":"6DACMA,EAAc,QCAdC,EAAkB,YCElBC,EAAiBC,EAAAA,GAAc,CACnC,QAAS,MACT,UAAW,iBACb,CAAC,EAEKC,EAAc,CAACC,EAAiBC,IAAiC,CACrE,MAAMC,EAAkBC,EAAAA,EAAOF,CAAe,GAC5CA,EAAgB,WAAa,OACzBG,EAASD,EAAAA,EAAOF,CAAe,GAAK,CAACC,EACvCD,EACAJ,EACEQ,EAAOH,EAAkBD,EAAkBK,EAAAA,GAAgBN,CAAM,EAGnEG,EAAAA,EAAOH,CAAM,IACXI,IAAWP,GACbQ,EAAK,OAAOR,CAAc,EAE5BO,EAAO,OAAOJ,CAAM,EAExB,EAEMO,EAAc,CAACP,EAAiBC,IAAiC,CACrE,MAAMC,EAAkBC,EAAAA,EAAOF,CAAe,GAC5CA,EAAgB,WAAa,OACzBG,EAASD,EAAAA,EAAOF,CAAe,GAAK,CAACC,EACvCD,EACAJ,EAGAM,EAAAA,EAAOH,CAAM,IACfA,EAAO,OAAA,EAEHI,IAAWP,GAAkB,CAACA,EAAe,SAAS,QACxDA,EAAe,OAAA,EAGrB,EAEMW,EAAW,CAACR,EAAiBC,IAAiC,CAClE,MAAMG,EAASD,EAAAA,EAAOF,CAAe,GAAKA,EAAgB,WAAa,OACnEA,EACAJ,EACJ,OAAOM,EAAAA,EAAOH,CAAM,GAAKI,EAAO,SAASJ,CAAM,CACjD"} \ No newline at end of file diff --git a/dist/components/popupContainer-cXLEqUgV.mjs b/dist/components/popupContainer-cXLEqUgV.mjs new file mode 100644 index 00000000..44dfe58b --- /dev/null +++ b/dist/components/popupContainer-cXLEqUgV.mjs @@ -0,0 +1,19 @@ +import { A as e, mt as t, ut as n } from "./base-component-Bm8KwB_I.mjs"; +//#region src/strings/modalString.ts +var r = "modal", i = "offcanvas", a = n({ + tagName: "div", + className: "popup-container" +}), o = (n, r) => { + let i = t(r) && r.nodeName === "BODY", o = t(r) && !i ? r : a, s = i ? r : e(n); + t(n) && (o === a && s.append(a), o.append(n)); +}, s = (e, n) => { + let r = t(n) && n.nodeName === "BODY", i = t(n) && !r ? n : a; + t(e) && (e.remove(), i === a && !a.children.length && a.remove()); +}, c = (e, n) => { + let r = t(n) && n.nodeName !== "BODY" ? n : a; + return t(e) && r.contains(e); +}; +//#endregion +export { r as a, i, c as n, s as r, o as t }; + +//# sourceMappingURL=popupContainer-cXLEqUgV.mjs.map \ No newline at end of file diff --git a/dist/components/popupContainer-cXLEqUgV.mjs.map b/dist/components/popupContainer-cXLEqUgV.mjs.map new file mode 100644 index 00000000..e103a2df --- /dev/null +++ b/dist/components/popupContainer-cXLEqUgV.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"popupContainer-cXLEqUgV.mjs","names":[],"sources":["../../src/strings/modalString.ts","../../src/strings/offcanvasString.ts","../../src/util/popupContainer.ts"],"sourcesContent":["/** @type {string} */\nconst modalString = \"modal\";\nexport default modalString;\n","/** @type {string} */\nconst offcanvasString = \"offcanvas\";\nexport default offcanvasString;\n","import { createElement, getDocumentBody, isNode } from \"@thednp/shorty\";\n\n// the default container for Modal, Offcanvas, Popover and Tooltip\nconst popupContainer = createElement({\n tagName: \"div\",\n className: \"popup-container\",\n}) as HTMLElement;\n\nconst appendPopup = (target: Element, customContainer?: ParentNode) => {\n const containerIsBody = isNode(customContainer) &&\n customContainer.nodeName === \"BODY\";\n const lookup = isNode(customContainer) && !containerIsBody\n ? customContainer\n : popupContainer;\n const BODY = containerIsBody ? customContainer : getDocumentBody(target);\n\n // istanbul ignore else @preserve\n if (isNode(target)) {\n if (lookup === popupContainer) {\n BODY.append(popupContainer);\n }\n lookup.append(target);\n }\n};\n\nconst removePopup = (target: Element, customContainer?: ParentNode) => {\n const containerIsBody = isNode(customContainer) &&\n customContainer.nodeName === \"BODY\";\n const lookup = isNode(customContainer) && !containerIsBody\n ? customContainer\n : popupContainer;\n\n // istanbul ignore else @preserve\n if (isNode(target)) {\n target.remove();\n\n if (lookup === popupContainer && !popupContainer.children.length) {\n popupContainer.remove();\n }\n }\n};\n\nconst hasPopup = (target: Element, customContainer?: ParentNode) => {\n const lookup = isNode(customContainer) && customContainer.nodeName !== \"BODY\"\n ? customContainer\n : popupContainer;\n return isNode(target) && lookup.contains(target);\n};\n\nexport { appendPopup, hasPopup, popupContainer, removePopup };\n"],"mappings":";;AACA,IAAM,IAAc,SCAd,IAAkB,aCElB,IAAiB,EAAc;CACnC,SAAS;CACT,WAAW;CACZ,CAAC,EAEI,KAAe,GAAiB,MAAiC;CACrE,IAAM,IAAkB,EAAO,EAAgB,IAC7C,EAAgB,aAAa,QACzB,IAAS,EAAO,EAAgB,IAAI,CAAC,IACvC,IACA,GACE,IAAO,IAAkB,IAAkB,EAAgB,EAAO;AAGxE,CAAI,EAAO,EAAO,KACZ,MAAW,KACb,EAAK,OAAO,EAAe,EAE7B,EAAO,OAAO,EAAO;GAInB,KAAe,GAAiB,MAAiC;CACrE,IAAM,IAAkB,EAAO,EAAgB,IAC7C,EAAgB,aAAa,QACzB,IAAS,EAAO,EAAgB,IAAI,CAAC,IACvC,IACA;AAGJ,CAAI,EAAO,EAAO,KAChB,EAAO,QAAQ,EAEX,MAAW,KAAkB,CAAC,EAAe,SAAS,UACxD,EAAe,QAAQ;GAKvB,KAAY,GAAiB,MAAiC;CAClE,IAAM,IAAS,EAAO,EAAgB,IAAI,EAAgB,aAAa,SACnE,IACA;AACJ,QAAO,EAAO,EAAO,IAAI,EAAO,SAAS,EAAO"} \ No newline at end of file diff --git a/dist/components/scrollspy.cjs b/dist/components/scrollspy.cjs index 9cbfbd62..183a2cb5 100644 --- a/dist/components/scrollspy.cjs +++ b/dist/components/scrollspy.cjs @@ -1,2 +1,2 @@ -"use strict";const e=require("./base-component-_c7CmBvl.js"),E=require("./index-DgzRtWFW.js"),g=require("./activeClass-CxJYQAGN.js"),A=require("./isDisabled-BI_fUUV9.js"),w="scrollspy",T="ScrollSpy",L='[data-bs-spy="scroll"]',q="[href]",x={offset:10,target:void 0},H=r=>e.to(r,T),D=r=>new d(r),b=e.mo(`activate.bs.${w}`),O=r=>{const{target:t,_itemsLength:n,_observables:s}=r,o=e.Te("A",t),c=e.d(t);!o.length||n===s.size||(s.clear(),Array.from(o).forEach(i=>{const l=e.K(i,"href")?.slice(1),h=l?.length?c.getElementById(l):null;h&&!A.isDisabled(i)&&r._observables.set(h,i)}),r._itemsLength=r._observables.size)},y=r=>{Array.from(e.Te("A",r)).forEach(t=>{e._n(t,g.activeClass)&&e.Zn(t,g.activeClass)})},_=(r,t)=>{const{target:n,element:s}=r;y(n),r._activeItem=t,e.Gn(t,g.activeClass);let o=t;for(;o!==n;)if(o=o.parentElement,["nav","dropdown-menu","list-group"].some(c=>e._n(o,c))){const c=o.previousElementSibling;c&&!e._n(c,g.activeClass)&&e.Gn(c,g.activeClass)}b.relatedTarget=t,e.Z(s,b)},p=(r,t)=>{const{scrollTarget:n,element:s,options:o}=r;return(n!==s?e.y(t).top+n.scrollTop:t.offsetTop)-(o.offset||10)};class d extends e.BaseComponent{static selector=L;static init=D;static getInstance=H;constructor(t,n){super(t,n);const{element:s,options:o}=this,c=e.Wo(o.target,e.d(s));c&&(this.target=c,this.scrollTarget=s.clientHeight{requestAnimationFrame(()=>this.refresh())},{root:this.scrollTarget}),this._toggleEventListeners(!0))}get name(){return T}get defaults(){return x}refresh=()=>{const{target:t,scrollTarget:n}=this;if(!t||t.offsetHeight===0)return;O(this);const{_itemsLength:s,_observables:o,_activeItem:c}=this;if(!s)return;const i=o.entries().toArray(),{scrollTop:l,scrollHeight:h,clientHeight:S}=n;if(l>=h-S){const a=i[s-1]?.[1];c!==a&&_(this,a);return}const f=i[0]?.[0]?p(this,i[0][0]):null;if(f!==null&&l0){this._activeItem=null,y(t);return}for(let a=0;a=C&&(m===null||l{const n=e.Ne(t.target,q),s=n&&e.K(n,"href")?.slice(1),o=s&&e.Qo(s,this.target);o&&(this.scrollTarget.scrollTo({top:o.offsetTop,behavior:"smooth"}),t.preventDefault())};_toggleEventListeners=t=>{const{target:n,_observables:s,_observer:o,_scrollTo:c}=this;(t?e.E:e.r)(n,e.vt,c),t?s?.forEach((l,h)=>o.observe(h)):o.disconnect()};dispose(){this._toggleEventListeners(),super.dispose()}}module.exports=d; -//# sourceMappingURL=scrollspy.cjs.map +const e=require(`./base-component-LPll9cLQ.js`),t=require(`./isDisabled-VaupgHJv.js`),n=require(`./activeClass-CiLr15n0.js`),r=require(`./dist-CtVym8U0.js`);var i=`scrollspy`,a=`ScrollSpy`,o=`[data-bs-spy="scroll"]`,s=`[href]`,c={offset:10,target:void 0},l=t=>e.pt(t,a),u=e=>new g(e),d=e.ot(`activate.bs.${i}`),f=n=>{let{target:r,_itemsLength:i,_observables:a}=n,o=e.M(`A`,r),s=e.K(r);!o.length||i===a.size||(a.clear(),Array.from(o).forEach(r=>{let i=e._(r,`href`)?.slice(1),a=i?.length?s.getElementById(i):null;a&&!t.t(r)&&n._observables.set(a,r)}),n._itemsLength=n._observables.size)},p=t=>{Array.from(e.M(`A`,t)).forEach(t=>{e.R(t,`active`)&&e.L(t,n.t)})},m=(t,r)=>{let{target:i,element:a}=t;p(i),t._activeItem=r,e.m(r,n.t);let o=r;for(;o!==i;)if(o=o.parentElement,[`nav`,`dropdown-menu`,`list-group`].some(t=>e.R(o,t))){let t=o.previousElementSibling;t&&!e.R(t,`active`)&&e.m(t,n.t)}d.relatedTarget=r,e.I(a,d)},h=(t,n)=>{let{scrollTarget:r,element:i,options:a}=t;return(r===i?n.offsetTop:e.Ct(n).top+r.scrollTop)-(a.offset||10)},g=class extends e.t{static selector=o;static init=u;static getInstance=l;constructor(t,n){super(t,n);let{element:i,options:a}=this,o=e.P(a.target,e.K(i));o&&(this.target=o,this.scrollTarget=i.clientHeight{requestAnimationFrame(()=>this.refresh())},{root:this.scrollTarget}),this._toggleEventListeners(!0))}get name(){return a}get defaults(){return c}refresh=()=>{let{target:e,scrollTarget:t}=this;if(!e||e.offsetHeight===0)return;f(this);let{_itemsLength:n,_observables:r,_activeItem:i}=this;if(!n)return;let a=r.entries().toArray(),{scrollTop:o,scrollHeight:s,clientHeight:c}=t;if(o>=s-c){let e=a[n-1]?.[1];i!==e&&m(this,e);return}let l=a[0]?.[0]?h(this,a[0][0]):null;if(l!==null&&o0){this._activeItem=null,p(e);return}for(let e=0;e=r&&(c===null||o{let n=e.x(t.target,s),r=n&&e._(n,`href`)?.slice(1),i=r&&e.D(r,this.target);i&&(this.scrollTarget.scrollTo({top:i.offsetTop,behavior:`smooth`}),t.preventDefault())};_toggleEventListeners=t=>{let{target:n,_observables:r,_observer:i,_scrollTo:a}=this;(t?e.n:e.r)(n,e.vt,a),t?r?.forEach((e,t)=>i.observe(t)):i.disconnect()};dispose(){this._toggleEventListeners(),super.dispose()}};module.exports=g; +//# sourceMappingURL=scrollspy.cjs.map \ No newline at end of file diff --git a/dist/components/scrollspy.cjs.map b/dist/components/scrollspy.cjs.map index d8856495..01030f66 100644 --- a/dist/components/scrollspy.cjs.map +++ b/dist/components/scrollspy.cjs.map @@ -1 +1 @@ -{"version":3,"file":"scrollspy.cjs","sources":["../../src/strings/scrollspyString.ts","../../src/strings/scrollspyComponent.ts","../../src/components/scrollspy.ts"],"sourcesContent":["/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"names":["scrollspyString","scrollspyComponent","scrollspySelector","scrollSpyAnchorSelector","scrollspyDefaults","getScrollSpyInstance","element","getInstance","scrollspyInitCallback","ScrollSpy","activateScrollSpy","createCustomEvent","updateSpyTargets","self","target","_itemsLength","_observables","links","getElementsByTagName","doc","getDocument","link","hash","getAttribute","targetItem","isDisabled","clear","item","hasClass","activeClass","removeClass","activate","addClass","parentItem","parentLink","dispatchEvent","getOffset","scrollTarget","options","getBoundingClientRect","BaseComponent","config","spyTarget","querySelector","getDocumentElement","PositionObserver","_activeItem","entries","scrollTop","scrollHeight","clientHeight","newActiveItem","firstOffset","i","offsetTop","nextTarget","nextOffsetTop","e","closest","getElementById","add","_observer","_scrollTo","addListener","removeListener","mouseclickEvent","_"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"scrollspy.cjs","names":[],"sources":["../../src/strings/scrollspyString.ts","../../src/strings/scrollspyComponent.ts","../../src/components/scrollspy.ts"],"sourcesContent":["/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/scrollspy.mjs b/dist/components/scrollspy.mjs index 61e14fed..aed6f639 100644 --- a/dist/components/scrollspy.mjs +++ b/dist/components/scrollspy.mjs @@ -1,105 +1,95 @@ -import { B as H, t as x, W as C, d as T, P as O, N as B, K as d, a7 as D, E as P, r as k, v as z, a8 as S, G as b, _ as p, m as G, Z as N, R as W, a as Z } from "./base-component-BazRqYWL.mjs"; -import { P as q } from "./index-K6w9MeGG.mjs"; -import { a as f } from "./activeClass-iqaD75Su.mjs"; -import { i as F } from "./isDisabled-CipSDrHr.mjs"; -const K = "scrollspy", I = "ScrollSpy", M = '[data-bs-spy="scroll"]', Q = "[href]", R = { - offset: 10, - target: void 0 -}, $ = (o) => x(o, I), j = (o) => new U(o), _ = G(`activate.bs.${K}`), J = (o) => { - const { - target: t, - _itemsLength: r, - _observables: e - } = o, s = S("A", t), n = T(t); - !s.length || r === e.size || (e.clear(), Array.from(s).forEach((a) => { - const l = d(a, "href")?.slice(1), i = l?.length ? n.getElementById(l) : null; - i && !F(a) && o._observables.set(i, a); - }), o._itemsLength = o._observables.size); -}, E = (o) => { - Array.from(S("A", o)).forEach( - (t) => { - p(t, f) && Z(t, f); - } - ); -}, y = (o, t) => { - const { target: r, element: e } = o; - E(r), o._activeItem = t, b(t, f); - let s = t; - for (; s !== r; ) - if (s = s.parentElement, ["nav", "dropdown-menu", "list-group"].some( - (n) => p(s, n) - )) { - const n = s.previousElementSibling; - n && !p(n, f) && b(n, f); - } - _.relatedTarget = t, N(e, _); -}, g = (o, t) => { - const { scrollTarget: r, element: e, options: s } = o; - return (r !== e ? W(t).top + r.scrollTop : t.offsetTop) - (s.offset || 10); +import { Ct as e, D as t, I as n, K as r, L as i, M as a, P as o, R as s, _ as c, m as l, n as u, ot as d, pt as f, r as p, t as m, vt as h, x as g, yt as _ } from "./base-component-Bm8KwB_I.mjs"; +import { t as v } from "./isDisabled-CA05SUmE.mjs"; +import { t as y } from "./activeClass-LUKCeUHG.mjs"; +import { t as b } from "./dist-CAr49AgA.mjs"; +//#region src/strings/scrollspyString.ts +var x = "scrollspy", S = "ScrollSpy", C = "[data-bs-spy=\"scroll\"]", w = "[href]", T = { + offset: 10, + target: void 0 +}, E = (e) => f(e, S), D = (e) => new N(e), O = d(`activate.bs.${x}`), k = (e) => { + let { target: t, _itemsLength: n, _observables: i } = e, o = a("A", t), s = r(t); + !o.length || n === i.size || (i.clear(), Array.from(o).forEach((t) => { + let n = c(t, "href")?.slice(1), r = n?.length ? s.getElementById(n) : null; + r && !v(t) && e._observables.set(r, t); + }), e._itemsLength = e._observables.size); +}, A = (e) => { + Array.from(a("A", e)).forEach((e) => { + s(e, "active") && i(e, y); + }); +}, j = (e, t) => { + let { target: r, element: i } = e; + A(r), e._activeItem = t, l(t, y); + let a = t; + for (; a !== r;) if (a = a.parentElement, [ + "nav", + "dropdown-menu", + "list-group" + ].some((e) => s(a, e))) { + let e = a.previousElementSibling; + e && !s(e, "active") && l(e, y); + } + O.relatedTarget = t, n(i, O); +}, M = (t, n) => { + let { scrollTarget: r, element: i, options: a } = t; + return (r === i ? n.offsetTop : e(n).top + r.scrollTop) - (a.offset || 10); +}, N = class extends m { + static selector = C; + static init = D; + static getInstance = E; + constructor(e, t) { + super(e, t); + let { element: n, options: i } = this, a = o(i.target, r(n)); + a && (this.target = a, this.scrollTarget = n.clientHeight < n.scrollHeight ? n : _(n), this._observables = /* @__PURE__ */ new Map(), this.refresh(), this._observer = new b(() => { + requestAnimationFrame(() => this.refresh()); + }, { root: this.scrollTarget }), this._toggleEventListeners(!0)); + } + get name() { + return S; + } + get defaults() { + return T; + } + refresh = () => { + let { target: e, scrollTarget: t } = this; + if (!e || e.offsetHeight === 0) return; + k(this); + let { _itemsLength: n, _observables: r, _activeItem: i } = this; + if (!n) return; + let a = r.entries().toArray(), { scrollTop: o, scrollHeight: s, clientHeight: c } = t; + if (o >= s - c) { + let e = a[n - 1]?.[1]; + i !== e && j(this, e); + return; + } + let l = a[0]?.[0] ? M(this, a[0][0]) : null; + if (l !== null && o < l && l > 0) { + this._activeItem = null, A(e); + return; + } + for (let e = 0; e < n; e += 1) { + let [t, n] = a[e], r = M(this, t), s = a[e + 1]?.[0], c = s ? M(this, s) : null; + if (i !== n && o >= r && (c === null || o < c)) { + j(this, n); + break; + } + } + }; + _scrollTo = (e) => { + let n = g(e.target, w), r = n && c(n, "href")?.slice(1), i = r && t(r, this.target); + i && (this.scrollTarget.scrollTo({ + top: i.offsetTop, + behavior: "smooth" + }), e.preventDefault()); + }; + _toggleEventListeners = (e) => { + let { target: t, _observables: n, _observer: r, _scrollTo: i } = this; + (e ? u : p)(t, h, i), e ? n?.forEach((e, t) => r.observe(t)) : r.disconnect(); + }; + dispose() { + this._toggleEventListeners(), super.dispose(); + } }; -class U extends H { - static selector = M; - static init = j; - static getInstance = $; - constructor(t, r) { - super(t, r); - const { element: e, options: s } = this, n = C( - s.target, - T(e) - ); - n && (this.target = n, this.scrollTarget = e.clientHeight < e.scrollHeight ? e : O(e), this._observables = /* @__PURE__ */ new Map(), this.refresh(), this._observer = new q(() => { - requestAnimationFrame(() => this.refresh()); - }, { - root: this.scrollTarget - }), this._toggleEventListeners(!0)); - } - get name() { - return I; - } - get defaults() { - return R; - } - refresh = () => { - const { target: t, scrollTarget: r } = this; - if (!t || t.offsetHeight === 0) return; - J(this); - const { _itemsLength: e, _observables: s, _activeItem: n } = this; - if (!e) return; - const a = s.entries().toArray(), { scrollTop: l, scrollHeight: i, clientHeight: A } = r; - if (l >= i - A) { - const c = a[e - 1]?.[1]; - n !== c && y(this, c); - return; - } - const h = a[0]?.[0] ? g(this, a[0][0]) : null; - if (h !== null && l < h && h > 0) { - this._activeItem = null, E(t); - return; - } - for (let c = 0; c < e; c += 1) { - const [w, m] = a[c], L = g(this, w), u = a[c + 1]?.[0], v = u ? g(this, u) : null; - if (n !== m && l >= L && (v === null || l < v)) { - y(this, m); - break; - } - } - }; - _scrollTo = (t) => { - const r = B(t.target, Q), e = r && d(r, "href")?.slice(1), s = e && D(e, this.target); - s && (this.scrollTarget.scrollTo({ - top: s.offsetTop, - behavior: "smooth" - }), t.preventDefault()); - }; - _toggleEventListeners = (t) => { - const { target: r, _observables: e, _observer: s, _scrollTo: n } = this; - (t ? P : k)(r, z, n), t ? e?.forEach((l, i) => s.observe(i)) : s.disconnect(); - }; - dispose() { - this._toggleEventListeners(), super.dispose(); - } -} -export { - U as default -}; -//# sourceMappingURL=scrollspy.mjs.map +//#endregion +export { N as default }; + +//# sourceMappingURL=scrollspy.mjs.map \ No newline at end of file diff --git a/dist/components/scrollspy.mjs.map b/dist/components/scrollspy.mjs.map index feea9d79..432361de 100644 --- a/dist/components/scrollspy.mjs.map +++ b/dist/components/scrollspy.mjs.map @@ -1 +1 @@ -{"version":3,"file":"scrollspy.mjs","sources":["../../src/strings/scrollspyString.ts","../../src/strings/scrollspyComponent.ts","../../src/components/scrollspy.ts"],"sourcesContent":["/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"names":["scrollspyString","scrollspyComponent","scrollspySelector","scrollSpyAnchorSelector","scrollspyDefaults","getScrollSpyInstance","element","getInstance","scrollspyInitCallback","ScrollSpy","activateScrollSpy","createCustomEvent","updateSpyTargets","self","target","_itemsLength","_observables","links","getElementsByTagName","doc","getDocument","link","hash","getAttribute","targetItem","isDisabled","clear","item","hasClass","activeClass","removeClass","activate","addClass","parentItem","c","parentLink","dispatchEvent","getOffset","scrollTarget","options","getBoundingClientRect","BaseComponent","config","spyTarget","querySelector","getDocumentElement","PositionObserver","_activeItem","entries","scrollTop","scrollHeight","clientHeight","newActiveItem","firstOffset","i","offsetTop","nextTarget","nextOffsetTop","e","closest","getElementById","add","_observer","_scrollTo","addListener","removeListener","mouseclickEvent","_"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"scrollspy.mjs","names":[],"sources":["../../src/strings/scrollspyString.ts","../../src/strings/scrollspyComponent.ts","../../src/components/scrollspy.ts"],"sourcesContent":["/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/showClass-C8hdJfjQ.mjs b/dist/components/showClass-C8hdJfjQ.mjs deleted file mode 100644 index f81fdd6f..00000000 --- a/dist/components/showClass-C8hdJfjQ.mjs +++ /dev/null @@ -1,5 +0,0 @@ -const s = "show"; -export { - s -}; -//# sourceMappingURL=showClass-C8hdJfjQ.mjs.map diff --git a/dist/components/showClass-C8hdJfjQ.mjs.map b/dist/components/showClass-C8hdJfjQ.mjs.map deleted file mode 100644 index 82c51e40..00000000 --- a/dist/components/showClass-C8hdJfjQ.mjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"showClass-C8hdJfjQ.mjs","sources":["../../src/strings/showClass.ts"],"sourcesContent":["/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n"],"names":["showClass"],"mappings":"AACA,MAAMA,IAAY;"} \ No newline at end of file diff --git a/dist/components/showClass-CH6sh0pm.mjs b/dist/components/showClass-CH6sh0pm.mjs new file mode 100644 index 00000000..e045f9c5 --- /dev/null +++ b/dist/components/showClass-CH6sh0pm.mjs @@ -0,0 +1,6 @@ +//#region src/strings/showClass.ts +var e = "show"; +//#endregion +export { e as t }; + +//# sourceMappingURL=showClass-CH6sh0pm.mjs.map \ No newline at end of file diff --git a/dist/components/showClass-CH6sh0pm.mjs.map b/dist/components/showClass-CH6sh0pm.mjs.map new file mode 100644 index 00000000..b66b712c --- /dev/null +++ b/dist/components/showClass-CH6sh0pm.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"showClass-CH6sh0pm.mjs","names":[],"sources":["../../src/strings/showClass.ts"],"sourcesContent":["/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n"],"mappings":";AACA,IAAG,IAAO"} \ No newline at end of file diff --git a/dist/components/showClass-CR_WzH06.js b/dist/components/showClass-CR_WzH06.js new file mode 100644 index 00000000..f9820218 --- /dev/null +++ b/dist/components/showClass-CR_WzH06.js @@ -0,0 +1,2 @@ +var e=`show`;Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return e}}); +//# sourceMappingURL=showClass-CR_WzH06.js.map \ No newline at end of file diff --git a/dist/components/showClass-CR_WzH06.js.map b/dist/components/showClass-CR_WzH06.js.map new file mode 100644 index 00000000..8a5f742e --- /dev/null +++ b/dist/components/showClass-CR_WzH06.js.map @@ -0,0 +1 @@ +{"version":3,"file":"showClass-CR_WzH06.js","names":[],"sources":["../../src/strings/showClass.ts"],"sourcesContent":["/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n"],"mappings":"AACA,IAAG,EAAO"} \ No newline at end of file diff --git a/dist/components/showClass-D_Ms1FgG.js b/dist/components/showClass-D_Ms1FgG.js deleted file mode 100644 index f9b9ef86..00000000 --- a/dist/components/showClass-D_Ms1FgG.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";const s="show";exports.showClass=s; -//# sourceMappingURL=showClass-D_Ms1FgG.js.map diff --git a/dist/components/showClass-D_Ms1FgG.js.map b/dist/components/showClass-D_Ms1FgG.js.map deleted file mode 100644 index dd5dea27..00000000 --- a/dist/components/showClass-D_Ms1FgG.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"showClass-D_Ms1FgG.js","sources":["../../src/strings/showClass.ts"],"sourcesContent":["/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n"],"names":["showClass"],"mappings":"aACA,MAAMA,EAAY"} \ No newline at end of file diff --git a/dist/components/tab.cjs b/dist/components/tab.cjs index 81807373..44f6f8e4 100644 --- a/dist/components/tab.cjs +++ b/dist/components/tab.cjs @@ -1,2 +1,2 @@ -"use strict";const t=require("./base-component-_c7CmBvl.js"),v=require("./collapsingClass-CLblascz.js"),c=require("./activeClass-CxJYQAGN.js"),h=require("./fadeClass-Co6nOzNJ.js"),f=require("./showClass-D_Ms1FgG.js"),T=require("./dropdownClasses-CnEyz_iw.js"),N=require("./dataBsToggle-Dj-Ng54N.js"),p=require("./getTargetElement-BZ3GCU7c.js"),d="tab",q="Tab",w=`[${N.dataBsToggle}="${d}"]`,B=o=>t.to(o,q),P=o=>new M(o),u=t.mo(`show.bs.${d}`),E=t.mo(`shown.bs.${d}`),C=t.mo(`hide.bs.${d}`),_=t.mo(`hidden.bs.${d}`),b=new Map,H=o=>{const{tabContent:n,nav:e}=o;n&&t._n(n,v.collapsingClass)&&(n.style.height="",t.Zn(n,v.collapsingClass)),e&&t.ho.clear(e)},x=o=>{const{element:n,tabContent:e,content:s,nav:l}=o,{tab:a}=t.b(l)&&b.get(l)||{tab:null};if(e&&s&&t._n(s,h.fadeClass)){const{currentHeight:i,nextHeight:r}=b.get(n)||{currentHeight:0,nextHeight:0};i!==r?setTimeout(()=>{e.style.height=`${r}px`,t.bo(e),t.so(e,()=>H(o))},50):H(o)}else l&&t.ho.clear(l);E.relatedTarget=a,t.Z(n,E)},G=o=>{const{element:n,content:e,tabContent:s,nav:l}=o,{tab:a,content:i}=l&&b.get(l)||{tab:null,content:null};let r=0;if(s&&e&&t._n(e,h.fadeClass)&&([i,e].forEach(g=>{g&&t.Gn(g,"overflow-hidden")}),r=i?i.scrollHeight:0),u.relatedTarget=a,_.relatedTarget=n,t.Z(n,u),!u.defaultPrevented){if(e&&t.Gn(e,c.activeClass),i&&t.Zn(i,c.activeClass),s&&e&&t._n(e,h.fadeClass)){const g=e.scrollHeight;b.set(n,{currentHeight:r,nextHeight:g,tab:null,content:null}),t.Gn(s,v.collapsingClass),s.style.height=`${r}px`,t.bo(s),[i,e].forEach(m=>{m&&t.Zn(m,"overflow-hidden")})}e&&e&&t._n(e,h.fadeClass)?setTimeout(()=>{t.Gn(e,f.showClass),t.so(e,()=>{x(o)})},1):(e&&t.Gn(e,f.showClass),x(o)),a&&t.Z(a,_)}},Z=o=>{const{nav:n}=o;if(!t.b(n))return{tab:null,content:null};const e=t.jo(c.activeClass,n);let s=null;e.length===1&&!T.dropdownMenuClasses.some(a=>t._n(e[0].parentElement,a))?[s]=e:e.length>1&&(s=e[e.length-1]);const l=t.b(s)?p.getTargetElement(s):null;return{tab:s,content:l}},$=o=>{if(!t.b(o))return null;const n=t.Ne(o,`.${T.dropdownMenuClasses.join(",.")}`);return n?t.Wo(`.${T.dropdownMenuClasses[0]}-toggle`,n):null},y=o=>{const n=t.Ne(o.target,w),e=n&&B(n);e&&(o.preventDefault(),e.show())};class M extends t.BaseComponent{static selector=w;static init=P;static getInstance=B;constructor(n){super(n);const{element:e}=this,s=p.getTargetElement(e);if(!s)return;const l=t.Ne(e,".nav"),a=t.Ne(s,".tab-content");this.nav=l,this.content=s,this.tabContent=a,this.dropdown=$(e);const{tab:i}=Z(this);if(l&&!i){const r=t.Wo(w,l),g=r&&p.getTargetElement(r);g&&(t.Gn(r,c.activeClass),t.Gn(g,f.showClass),t.Gn(g,c.activeClass),t.Qn(e,t.Be,"true"))}this._toggleEventListeners(!0)}get name(){return q}show(){const{element:n,content:e,nav:s,dropdown:l}=this;if(s&&t.ho.get(s)||t._n(n,c.activeClass))return;const{tab:a,content:i}=Z(this);if(s&&a&&b.set(s,{tab:a,content:i,currentHeight:0,nextHeight:0}),C.relatedTarget=n,!t.b(a)||(t.Z(a,C),C.defaultPrevented))return;t.Gn(n,c.activeClass),t.Qn(n,t.Be,"true");const r=t.b(a)&&$(a);if(r&&t._n(r,c.activeClass)&&t.Zn(r,c.activeClass),s){const g=()=>{a&&(t.Zn(a,c.activeClass),t.Qn(a,t.Be,"false")),l&&!t._n(l,c.activeClass)&&t.Gn(l,c.activeClass)};i&&(t._n(i,h.fadeClass)||e&&t._n(e,h.fadeClass))?t.ho.set(s,g,1):g()}i&&(t.Zn(i,f.showClass),t._n(i,h.fadeClass)?t.so(i,()=>G(this)):G(this))}_toggleEventListeners=n=>{(n?t.E:t.r)(this.element,t.vt,y)};dispose(){this._toggleEventListeners(),super.dispose()}}module.exports=M; -//# sourceMappingURL=tab.cjs.map +const e=require(`./base-component-LPll9cLQ.js`);require(`./fadeClass-DAfX8y06.js`);const t=require(`./showClass-CR_WzH06.js`),n=require(`./activeClass-CiLr15n0.js`),r=require(`./dataBsToggle-rqyimqAB.js`),i=require(`./getTargetElement-C5FGBrqE.js`),a=require(`./collapsingClass-D_kpczLT.js`),o=require(`./dropdownClasses-D0wJUlik.js`);var s=`[${r.t}="tab"]`,c=t=>e.pt(t,`Tab`),l=e=>new x(e),u=e.ot(`show.bs.tab`),d=e.ot(`shown.bs.tab`),f=e.ot(`hide.bs.tab`),p=e.ot(`hidden.bs.tab`),m=new Map,h=t=>{let{tabContent:n,nav:r}=t;n&&e.R(n,`collapsing`)&&(n.style.height=``,e.L(n,a.t)),r&&e.$.clear(r)},g=t=>{let{element:n,tabContent:r,content:i,nav:a}=t,{tab:o}=e.V(a)&&m.get(a)||{tab:null};if(r&&i&&e.R(i,`fade`)){let{currentHeight:i,nextHeight:a}=m.get(n)||{currentHeight:0,nextHeight:0};i===a?h(t):setTimeout(()=>{r.style.height=`${a}px`,e.U(r),e.ft(r,()=>h(t))},50)}else a&&e.$.clear(a);d.relatedTarget=o,e.I(n,d)},_=r=>{let{element:i,content:o,tabContent:s,nav:c}=r,{tab:l,content:d}=c&&m.get(c)||{tab:null,content:null},f=0;if(s&&o&&e.R(o,`fade`)&&([d,o].forEach(t=>{t&&e.m(t,`overflow-hidden`)}),f=d?d.scrollHeight:0),u.relatedTarget=l,p.relatedTarget=i,e.I(i,u),!u.defaultPrevented){if(o&&e.m(o,n.t),d&&e.L(d,n.t),s&&o&&e.R(o,`fade`)){let t=o.scrollHeight;m.set(i,{currentHeight:f,nextHeight:t,tab:null,content:null}),e.m(s,a.t),s.style.height=`${f}px`,e.U(s),[d,o].forEach(t=>{t&&e.L(t,`overflow-hidden`)})}o&&o&&e.R(o,`fade`)?setTimeout(()=>{e.m(o,t.t),e.ft(o,()=>{g(r)})},1):(o&&e.m(o,t.t),g(r)),l&&e.I(l,p)}},v=t=>{let{nav:r}=t;if(!e.V(r))return{tab:null,content:null};let a=e.rt(n.t,r),s=null;a.length===1&&!o.t.some(t=>e.R(a[0].parentElement,t))?[s]=a:a.length>1&&(s=a[a.length-1]);let c=e.V(s)?i.t(s):null;return{tab:s,content:c}},y=t=>{if(!e.V(t))return null;let n=e.x(t,`.${o.t.join(`,.`)}`);return n?e.P(`.${o.t[0]}-toggle`,n):null},b=t=>{let n=e.x(t.target,s),r=n&&c(n);r&&(t.preventDefault(),r.show())},x=class extends e.t{static selector=s;static init=l;static getInstance=c;constructor(r){super(r);let{element:a}=this,o=i.t(a);if(!o)return;let c=e.x(a,`.nav`),l=e.x(o,`.tab-content`);this.nav=c,this.content=o,this.tabContent=l,this.dropdown=y(a);let{tab:u}=v(this);if(c&&!u){let r=e.P(s,c),o=r&&i.t(r);o&&(e.m(r,n.t),e.m(o,t.t),e.m(o,n.t),e.E(a,e.s,`true`))}this._toggleEventListeners(!0)}get name(){return`Tab`}show(){let{element:r,content:i,nav:a,dropdown:o}=this;if(a&&e.$.get(a)||e.R(r,`active`))return;let{tab:s,content:c}=v(this);if(a&&s&&m.set(a,{tab:s,content:c,currentHeight:0,nextHeight:0}),f.relatedTarget=r,!e.V(s)||(e.I(s,f),f.defaultPrevented))return;e.m(r,n.t),e.E(r,e.s,`true`);let l=e.V(s)&&y(s);if(l&&e.R(l,`active`)&&e.L(l,n.t),a){let t=()=>{s&&(e.L(s,n.t),e.E(s,e.s,`false`)),o&&!e.R(o,`active`)&&e.m(o,n.t)};c&&(e.R(c,`fade`)||i&&e.R(i,`fade`))?e.$.set(a,t,1):t()}c&&(e.L(c,t.t),e.R(c,`fade`)?e.ft(c,()=>_(this)):_(this))}_toggleEventListeners=t=>{(t?e.n:e.r)(this.element,e.vt,b)};dispose(){this._toggleEventListeners(),super.dispose()}};module.exports=x; +//# sourceMappingURL=tab.cjs.map \ No newline at end of file diff --git a/dist/components/tab.cjs.map b/dist/components/tab.cjs.map index f72b6e89..d6df2c32 100644 --- a/dist/components/tab.cjs.map +++ b/dist/components/tab.cjs.map @@ -1 +1 @@ -{"version":3,"file":"tab.cjs","sources":["../../src/strings/tabString.ts","../../src/strings/tabComponent.ts","../../src/components/tab.ts"],"sourcesContent":["/** @type {string} */\nconst tabString = \"tab\";\nexport default tabString;\n","/** @type {string} */\nconst tabComponent = \"Tab\";\nexport default tabComponent;\n","/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"names":["tabString","tabComponent","tabSelector","dataBsToggle","getTabInstance","element","getInstance","tabInitCallback","Tab","showTabEvent","createCustomEvent","shownTabEvent","hideTabEvent","hiddenTabEvent","tabPrivate","triggerTabEnd","self","tabContent","nav","hasClass","collapsingClass","removeClass","Timer","triggerTabShow","nextContent","tab","isHTMLElement","fadeClass","currentHeight","nextHeight","reflow","emulateTransitionEnd","dispatchEvent","triggerTabHide","content","c","addClass","activeClass","showClass","getActiveTab","activeTabs","getElementsByClassName","dropdownClasses","getTargetElement","getParentDropdown","dropdown","closest","querySelector","tabClickHandler","e","BaseComponent","target","container","firstTab","firstTabContent","setAttribute","ariaSelected","activeDropdown","toggleTab","add","addListener","removeListener","mouseclickEvent"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"tab.cjs","names":[],"sources":["../../src/components/tab.ts"],"sourcesContent":["/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/tab.mjs b/dist/components/tab.mjs index 0efcb343..196a9989 100644 --- a/dist/components/tab.mjs +++ b/dist/components/tab.mjs @@ -1,122 +1,120 @@ -import { B as q, t as z, N as p, W as Q, G as g, Q as E, h as v, _ as l, m as C, o as d, Z as T, a as b, s as y, E as F, r as J, a9 as H, v as K, j as O, f as W } from "./base-component-BazRqYWL.mjs"; -import { c as _ } from "./collapsingClass-BxKtDBMH.mjs"; -import { a as c } from "./activeClass-iqaD75Su.mjs"; -import { f as h } from "./fadeClass-CLIYI_zn.mjs"; -import { s as w } from "./showClass-C8hdJfjQ.mjs"; -import { d as B } from "./dropdownClasses-CdCdZ-PX.mjs"; -import { d as R } from "./dataBsToggle-B84TS15h.mjs"; -import { g as P } from "./getTargetElement-DX_B2QXD.mjs"; -const m = "tab", Z = "Tab", j = `[${R}="${m}"]`, A = (s) => z(s, Z), U = (s) => new X(s), x = C( - `show.bs.${m}` -), I = C( - `shown.bs.${m}` -), $ = C( - `hide.bs.${m}` -), L = C( - `hidden.bs.${m}` -), u = /* @__PURE__ */ new Map(), S = (s) => { - const { tabContent: e, nav: t } = s; - e && l(e, _) && (e.style.height = "", b(e, _)), t && v.clear(t); -}, k = (s) => { - const { element: e, tabContent: t, content: n, nav: i } = s, { tab: o } = d(i) && u.get(i) || { tab: null }; - if (t && n && l(n, h)) { - const { currentHeight: a, nextHeight: r } = u.get(e) || { currentHeight: 0, nextHeight: 0 }; - a !== r ? setTimeout(() => { - t.style.height = `${r}px`, W(t), y(t, () => S(s)); - }, 50) : S(s); - } else i && v.clear(i); - I.relatedTarget = o, T(e, I); -}, G = (s) => { - const { element: e, content: t, tabContent: n, nav: i } = s, { tab: o, content: a } = i && u.get(i) || { tab: null, content: null }; - let r = 0; - if (n && t && l(t, h) && ([a, t].forEach((f) => { - f && g(f, "overflow-hidden"); - }), r = a ? a.scrollHeight : 0), x.relatedTarget = o, L.relatedTarget = e, T(e, x), !x.defaultPrevented) { - if (t && g(t, c), a && b(a, c), n && t && l(t, h)) { - const f = t.scrollHeight; - u.set(e, { - currentHeight: r, - nextHeight: f, - tab: null, - content: null - }), g(n, _), n.style.height = `${r}px`, W(n), [a, t].forEach((D) => { - D && b(D, "overflow-hidden"); - }); - } - t && t && l(t, h) ? setTimeout(() => { - g(t, w), y(t, () => { - k(s); - }); - }, 1) : (t && g(t, w), k(s)), o && T(o, L); - } -}, M = (s) => { - const { nav: e } = s; - if (!d(e)) - return { tab: null, content: null }; - const t = O( - c, - e - ); - let n = null; - t.length === 1 && !B.some( - (o) => l(t[0].parentElement, o) - ) ? [n] = t : t.length > 1 && (n = t[t.length - 1]); - const i = d(n) ? P(n) : null; - return { tab: n, content: i }; -}, N = (s) => { - if (!d(s)) return null; - const e = p(s, `.${B.join(",.")}`); - return e ? Q(`.${B[0]}-toggle`, e) : null; -}, V = (s) => { - const e = p(s.target, j), t = e && A(e); - t && (s.preventDefault(), t.show()); +import { $ as e, E as t, I as n, L as r, P as i, R as a, U as o, V as s, ft as c, m as l, n as u, ot as d, pt as f, r as p, rt as m, s as h, t as g, vt as _, x as v } from "./base-component-Bm8KwB_I.mjs"; +import "./fadeClass-Bzjdr13Y.mjs"; +import { t as y } from "./showClass-CH6sh0pm.mjs"; +import { t as b } from "./activeClass-LUKCeUHG.mjs"; +import { t as x } from "./dataBsToggle-CeJMDTHb.mjs"; +import { t as S } from "./getTargetElement-CNLJ8Fpo.mjs"; +import { t as C } from "./collapsingClass-uyOZrepn.mjs"; +import { t as w } from "./dropdownClasses-DJ-0Bzzu.mjs"; +//#region src/components/tab.ts +var T = `[${x}="tab"]`, E = (e) => f(e, "Tab"), D = (e) => new z(e), O = d("show.bs.tab"), k = d("shown.bs.tab"), A = d("hide.bs.tab"), j = d("hidden.bs.tab"), M = /* @__PURE__ */ new Map(), N = (t) => { + let { tabContent: n, nav: i } = t; + n && a(n, "collapsing") && (n.style.height = "", r(n, C)), i && e.clear(i); +}, P = (t) => { + let { element: r, tabContent: i, content: l, nav: u } = t, { tab: d } = s(u) && M.get(u) || { tab: null }; + if (i && l && a(l, "fade")) { + let { currentHeight: e, nextHeight: n } = M.get(r) || { + currentHeight: 0, + nextHeight: 0 + }; + e === n ? N(t) : setTimeout(() => { + i.style.height = `${n}px`, o(i), c(i, () => N(t)); + }, 50); + } else u && e.clear(u); + k.relatedTarget = d, n(r, k); +}, F = (e) => { + let { element: t, content: i, tabContent: s, nav: u } = e, { tab: d, content: f } = u && M.get(u) || { + tab: null, + content: null + }, p = 0; + if (s && i && a(i, "fade") && ([f, i].forEach((e) => { + e && l(e, "overflow-hidden"); + }), p = f ? f.scrollHeight : 0), O.relatedTarget = d, j.relatedTarget = t, n(t, O), !O.defaultPrevented) { + if (i && l(i, b), f && r(f, b), s && i && a(i, "fade")) { + let e = i.scrollHeight; + M.set(t, { + currentHeight: p, + nextHeight: e, + tab: null, + content: null + }), l(s, C), s.style.height = `${p}px`, o(s), [f, i].forEach((e) => { + e && r(e, "overflow-hidden"); + }); + } + i && i && a(i, "fade") ? setTimeout(() => { + l(i, y), c(i, () => { + P(e); + }); + }, 1) : (i && l(i, y), P(e)), d && n(d, j); + } +}, I = (e) => { + let { nav: t } = e; + if (!s(t)) return { + tab: null, + content: null + }; + let n = m(b, t), r = null; + n.length === 1 && !w.some((e) => a(n[0].parentElement, e)) ? [r] = n : n.length > 1 && (r = n[n.length - 1]); + let i = s(r) ? S(r) : null; + return { + tab: r, + content: i + }; +}, L = (e) => { + if (!s(e)) return null; + let t = v(e, `.${w.join(",.")}`); + return t ? i(`.${w[0]}-toggle`, t) : null; +}, R = (e) => { + let t = v(e.target, T), n = t && E(t); + n && (e.preventDefault(), n.show()); +}, z = class extends g { + static selector = T; + static init = D; + static getInstance = E; + constructor(e) { + super(e); + let { element: n } = this, r = S(n); + if (!r) return; + let a = v(n, ".nav"), o = v(r, ".tab-content"); + this.nav = a, this.content = r, this.tabContent = o, this.dropdown = L(n); + let { tab: s } = I(this); + if (a && !s) { + let e = i(T, a), r = e && S(e); + r && (l(e, b), l(r, y), l(r, b), t(n, h, "true")); + } + this._toggleEventListeners(!0); + } + get name() { + return "Tab"; + } + show() { + let { element: i, content: o, nav: u, dropdown: d } = this; + if (u && e.get(u) || a(i, "active")) return; + let { tab: f, content: p } = I(this); + if (u && f && M.set(u, { + tab: f, + content: p, + currentHeight: 0, + nextHeight: 0 + }), A.relatedTarget = i, !s(f) || (n(f, A), A.defaultPrevented)) return; + l(i, b), t(i, h, "true"); + let m = s(f) && L(f); + if (m && a(m, "active") && r(m, b), u) { + let n = () => { + f && (r(f, b), t(f, h, "false")), d && !a(d, "active") && l(d, b); + }; + p && (a(p, "fade") || o && a(o, "fade")) ? e.set(u, n, 1) : n(); + } + p && (r(p, y), a(p, "fade") ? c(p, () => F(this)) : F(this)); + } + _toggleEventListeners = (e) => { + (e ? u : p)(this.element, _, R); + }; + dispose() { + this._toggleEventListeners(), super.dispose(); + } }; -class X extends q { - static selector = j; - static init = U; - static getInstance = A; - constructor(e) { - super(e); - const { element: t } = this, n = P(t); - if (!n) return; - const i = p(t, ".nav"), o = p( - n, - ".tab-content" - ); - this.nav = i, this.content = n, this.tabContent = o, this.dropdown = N(t); - const { tab: a } = M(this); - if (i && !a) { - const r = Q(j, i), f = r && P(r); - f && (g(r, c), g(f, w), g(f, c), E(t, H, "true")); - } - this._toggleEventListeners(!0); - } - get name() { - return Z; - } - show() { - const { element: e, content: t, nav: n, dropdown: i } = this; - if (n && v.get(n) || l(e, c)) return; - const { tab: o, content: a } = M(this); - if (n && o && u.set(n, { tab: o, content: a, currentHeight: 0, nextHeight: 0 }), $.relatedTarget = e, !d(o) || (T(o, $), $.defaultPrevented)) return; - g(e, c), E(e, H, "true"); - const r = d(o) && N(o); - if (r && l(r, c) && b(r, c), n) { - const f = () => { - o && (b(o, c), E(o, H, "false")), i && !l(i, c) && g(i, c); - }; - a && (l(a, h) || t && l(t, h)) ? v.set(n, f, 1) : f(); - } - a && (b(a, w), l(a, h) ? y(a, () => G(this)) : G(this)); - } - _toggleEventListeners = (e) => { - (e ? F : J)(this.element, K, V); - }; - dispose() { - this._toggleEventListeners(), super.dispose(); - } -} -export { - X as default -}; -//# sourceMappingURL=tab.mjs.map +//#endregion +export { z as default }; + +//# sourceMappingURL=tab.mjs.map \ No newline at end of file diff --git a/dist/components/tab.mjs.map b/dist/components/tab.mjs.map index 7e0b0d34..0baf822c 100644 --- a/dist/components/tab.mjs.map +++ b/dist/components/tab.mjs.map @@ -1 +1 @@ -{"version":3,"file":"tab.mjs","sources":["../../src/strings/tabString.ts","../../src/strings/tabComponent.ts","../../src/components/tab.ts"],"sourcesContent":["/** @type {string} */\nconst tabString = \"tab\";\nexport default tabString;\n","/** @type {string} */\nconst tabComponent = \"Tab\";\nexport default tabComponent;\n","/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"names":["tabString","tabComponent","tabSelector","dataBsToggle","getTabInstance","element","getInstance","tabInitCallback","Tab","showTabEvent","createCustomEvent","shownTabEvent","hideTabEvent","hiddenTabEvent","tabPrivate","triggerTabEnd","self","tabContent","nav","hasClass","collapsingClass","removeClass","Timer","triggerTabShow","nextContent","tab","isHTMLElement","fadeClass","currentHeight","nextHeight","reflow","emulateTransitionEnd","dispatchEvent","triggerTabHide","content","c","addClass","activeClass","showClass","getActiveTab","activeTabs","getElementsByClassName","dropdownClasses","getTargetElement","getParentDropdown","dropdown","closest","querySelector","tabClickHandler","e","BaseComponent","target","container","firstTab","firstTabContent","setAttribute","ariaSelected","activeDropdown","toggleTab","add","addListener","removeListener","mouseclickEvent"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"tab.mjs","names":[],"sources":["../../src/components/tab.ts"],"sourcesContent":["/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/toast.cjs b/dist/components/toast.cjs index 80d64d51..2080fc67 100644 --- a/dist/components/toast.cjs +++ b/dist/components/toast.cjs @@ -1,2 +1,2 @@ -"use strict";const t=require("./base-component-_c7CmBvl.js"),l=require("./fadeClass-Co6nOzNJ.js"),h=require("./showClass-D_Ms1FgG.js"),Z=require("./dataBsDismiss-CMHF7If_.js"),$=require("./dataBsToggle-Dj-Ng54N.js"),T=require("./getTargetElement-BZ3GCU7c.js"),S=require("./isDisabled-BI_fUUV9.js"),n="toast",C="Toast",q=`.${n}`,D=`[${Z.dataBsDismiss}="${n}"]`,_=`[${$.dataBsToggle}="${n}"]`,r="showing",p="hide",B={animation:!0,autohide:!0,delay:5e3},m=o=>t.to(o,C),G=o=>new v(o),g=t.mo(`show.bs.${n}`),y=t.mo(`shown.bs.${n}`),u=t.mo(`hide.bs.${n}`),I=t.mo(`hidden.bs.${n}`),f=o=>{const{element:e,options:s}=o;t.Zn(e,r),t.ho.clear(e,r),t.Z(e,y),s.autohide&&t.ho.set(e,()=>o.hide(),s.delay,n)},w=o=>{const{element:e}=o;t.Zn(e,r),t.Zn(e,h.showClass),t.Gn(e,p),t.ho.clear(e,n),t.Z(e,I)},L=o=>{const{element:e,options:s}=o;t.Gn(e,r),s.animation?(t.bo(e),t.so(e,()=>w(o))):w(o)},k=o=>{const{element:e,options:s}=o;t.ho.set(e,()=>{t.Zn(e,p),t.bo(e),t.Gn(e,h.showClass),t.Gn(e,r),s.animation?t.so(e,()=>f(o)):f(o)},17,r)};function x(o){const e=T.getTargetElement(this),s=e&&m(e);S.isDisabled(this)||s&&(this.tagName==="A"&&o.preventDefault(),s.relatedTarget=this,s.show())}const A=o=>{const e=o.target,s=m(e),{type:i,relatedTarget:a}=o;!s||e===a||e.contains(a)||([t.wt,t.at].includes(i)?t.ho.clear(e,n):t.ho.set(e,()=>s.hide(),s.options.delay,n))};class v extends t.BaseComponent{static selector=q;static init=G;static getInstance=m;constructor(e,s){super(e,s);const{element:i,options:a}=this;a.animation&&!t._n(i,l.fadeClass)?t.Gn(i,l.fadeClass):!a.animation&&t._n(i,l.fadeClass)&&t.Zn(i,l.fadeClass),this.dismiss=t.Wo(D,i),this.triggers=[...t.de(_,t.d(i))].filter(c=>T.getTargetElement(c)===i),this._toggleEventListeners(!0)}get name(){return C}get defaults(){return B}get isShown(){return t._n(this.element,h.showClass)}show=()=>{const{element:e,isShown:s}=this;!e||s||(t.Z(e,g),g.defaultPrevented||k(this))};hide=()=>{const{element:e,isShown:s}=this;!e||!s||(t.Z(e,u),u.defaultPrevented||L(this))};_toggleEventListeners=e=>{const s=e?t.E:t.r,{element:i,triggers:a,dismiss:c,options:E,hide:b}=this;c&&s(c,t.vt,b),E.autohide&&[t.at,t.it,t.wt,t.At].forEach(d=>s(i,d,A)),a.length&&a.forEach(d=>{s(d,t.vt,x)})};dispose(){const{element:e,isShown:s}=this;this._toggleEventListeners(),t.ho.clear(e,n),s&&t.Zn(e,h.showClass),super.dispose()}}module.exports=v; -//# sourceMappingURL=toast.cjs.map +const e=require(`./base-component-LPll9cLQ.js`),t=require(`./fadeClass-DAfX8y06.js`),n=require(`./showClass-CR_WzH06.js`),r=require(`./dataBsDismiss-gvZhVct3.js`),i=require(`./isDisabled-VaupgHJv.js`),a=require(`./dataBsToggle-rqyimqAB.js`),o=require(`./getTargetElement-C5FGBrqE.js`);var s=`toast`,c=`Toast`,l=`.${s}`,u=`[${r.t}="${s}"]`,d=`[${a.t}="${s}"]`,f=`showing`,p=`hide`,m={animation:!0,autohide:!0,delay:5e3},h=t=>e.pt(t,c),g=e=>new D(e),_=e.ot(`show.bs.${s}`),v=e.ot(`shown.bs.${s}`),y=e.ot(`hide.bs.${s}`),b=e.ot(`hidden.bs.${s}`),x=t=>{let{element:n,options:r}=t;e.L(n,f),e.$.clear(n,f),e.I(n,v),r.autohide&&e.$.set(n,()=>t.hide(),r.delay,s)},S=t=>{let{element:r}=t;e.L(r,f),e.L(r,n.t),e.m(r,p),e.$.clear(r,s),e.I(r,b)},C=t=>{let{element:n,options:r}=t;e.m(n,f),r.animation?(e.U(n),e.ft(n,()=>S(t))):S(t)},w=t=>{let{element:r,options:i}=t;e.$.set(r,()=>{e.L(r,p),e.U(r),e.m(r,n.t),e.m(r,f),i.animation?e.ft(r,()=>x(t)):x(t)},17,f)};function T(e){let t=o.t(this),n=t&&h(t);i.t(this)||n&&(this.tagName===`A`&&e.preventDefault(),n.relatedTarget=this,n.show())}var E=t=>{let n=t.target,r=h(n),{type:i,relatedTarget:a}=t;!r||n===a||n.contains(a)||([`mouseenter`,`focusin`].includes(i)?e.$.clear(n,s):e.$.set(n,()=>r.hide(),r.options.delay,s))},D=class extends e.t{static selector=l;static init=g;static getInstance=h;constructor(n,r){super(n,r);let{element:i,options:a}=this;a.animation&&!e.R(i,`fade`)?e.m(i,t.t):!a.animation&&e.R(i,`fade`)&&e.L(i,t.t),this.dismiss=e.P(u,i),this.triggers=[...e.q(d,e.K(i))].filter(e=>o.t(e)===i),this._toggleEventListeners(!0)}get name(){return c}get defaults(){return m}get isShown(){return e.R(this.element,n.t)}show=()=>{let{element:t,isShown:n}=this;!t||n||(e.I(t,_),_.defaultPrevented||w(this))};hide=()=>{let{element:t,isShown:n}=this;!t||!n||(e.I(t,y),y.defaultPrevented||C(this))};_toggleEventListeners=t=>{let n=t?e.n:e.r,{element:r,triggers:i,dismiss:a,options:o,hide:s}=this;a&&n(a,e.vt,s),o.autohide&&[e.B,e.tt,e.bt,e.o].forEach(e=>n(r,e,E)),i.length&&i.forEach(t=>{n(t,e.vt,T)})};dispose(){let{element:t,isShown:r}=this;this._toggleEventListeners(),e.$.clear(t,s),r&&e.L(t,n.t),super.dispose()}};module.exports=D; +//# sourceMappingURL=toast.cjs.map \ No newline at end of file diff --git a/dist/components/toast.cjs.map b/dist/components/toast.cjs.map index 11690005..5c123586 100644 --- a/dist/components/toast.cjs.map +++ b/dist/components/toast.cjs.map @@ -1 +1 @@ -{"version":3,"file":"toast.cjs","sources":["../../src/strings/toastString.ts","../../src/strings/toastComponent.ts","../../src/components/toast.ts"],"sourcesContent":["/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n"],"names":["toastString","toastComponent","toastSelector","toastDismissSelector","dataBsDismiss","toastToggleSelector","dataBsToggle","showingClass","hideClass","toastDefaults","getToastInstance","element","getInstance","toastInitCallback","Toast","showToastEvent","createCustomEvent","shownToastEvent","hideToastEvent","hiddenToastEvent","showToastComplete","self","options","removeClass","Timer","dispatchEvent","hideToastComplete","showClass","addClass","hideToast","reflow","emulateTransitionEnd","showToast","toastClickHandler","e","getTargetElement","isDisabled","interactiveToastHandler","type","relatedTarget","mouseenterEvent","focusinEvent","BaseComponent","target","config","hasClass","fadeClass","querySelector","querySelectorAll","getDocument","btn","isShown","add","action","addListener","removeListener","triggers","dismiss","hide","mouseclickEvent","focusoutEvent","mouseleaveEvent"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"toast.cjs","names":[],"sources":["../../src/strings/toastString.ts","../../src/strings/toastComponent.ts","../../src/components/toast.ts"],"sourcesContent":["/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/toast.mjs b/dist/components/toast.mjs index ec54e06b..8a27f94b 100644 --- a/dist/components/toast.mjs +++ b/dist/components/toast.mjs @@ -1,97 +1,80 @@ -import { B as k, t as x, _ as p, G as l, a as r, W as G, e as H, d as P, Z as m, m as g, E as W, r as Z, aa as b, ab as N, w as S, A as j, h as a, v as T, f as D, s as _ } from "./base-component-BazRqYWL.mjs"; -import { f as d } from "./fadeClass-CLIYI_zn.mjs"; -import { s as f } from "./showClass-C8hdJfjQ.mjs"; -import { d as q } from "./dataBsDismiss-DdNPQYa-.mjs"; -import { d as z } from "./dataBsToggle-B84TS15h.mjs"; -import { g as y } from "./getTargetElement-DX_B2QXD.mjs"; -import { i as F } from "./isDisabled-CipSDrHr.mjs"; -const o = "toast", B = "Toast", J = `.${o}`, K = `[${q}="${o}"]`, M = `[${z}="${o}"]`, c = "showing", A = "hide", O = { - animation: !0, - autohide: !0, - delay: 5e3 -}, w = (e) => x(e, B), Q = (e) => new st(e), v = g( - `show.bs.${o}` -), R = g( - `shown.bs.${o}` -), E = g( - `hide.bs.${o}` -), U = g( - `hidden.bs.${o}` -), C = (e) => { - const { element: t, options: s } = e; - r(t, c), a.clear(t, c), m(t, R), s.autohide && a.set(t, () => e.hide(), s.delay, o); -}, $ = (e) => { - const { element: t } = e; - r(t, c), r(t, f), l(t, A), a.clear(t, o), m(t, U); -}, V = (e) => { - const { element: t, options: s } = e; - l(t, c), s.animation ? (D(t), _(t, () => $(e))) : $(e); -}, X = (e) => { - const { element: t, options: s } = e; - a.set( - t, - () => { - r(t, A), D(t), l(t, f), l(t, c), s.animation ? _(t, () => C(e)) : C(e); - }, - 17, - c - ); +import { $ as e, B as t, I as n, K as r, L as i, P as a, R as o, U as s, bt as c, ft as l, m as u, n as d, o as f, ot as p, pt as m, q as h, r as g, t as _, tt as v, vt as y } from "./base-component-Bm8KwB_I.mjs"; +import { t as b } from "./fadeClass-Bzjdr13Y.mjs"; +import { t as x } from "./showClass-CH6sh0pm.mjs"; +import { t as S } from "./dataBsDismiss-D_m2Bp4t.mjs"; +import { t as C } from "./isDisabled-CA05SUmE.mjs"; +import { t as w } from "./dataBsToggle-CeJMDTHb.mjs"; +import { t as T } from "./getTargetElement-CNLJ8Fpo.mjs"; +//#region src/strings/toastString.ts +var E = "toast", D = "Toast", O = `.${E}`, k = `[${S}="${E}"]`, A = `[${w}="${E}"]`, j = "showing", M = "hide", N = { + animation: !0, + autohide: !0, + delay: 5e3 +}, P = (e) => m(e, D), F = (e) => new K(e), I = p(`show.bs.${E}`), L = p(`shown.bs.${E}`), R = p(`hide.bs.${E}`), z = p(`hidden.bs.${E}`), B = (t) => { + let { element: r, options: a } = t; + i(r, j), e.clear(r, j), n(r, L), a.autohide && e.set(r, () => t.hide(), a.delay, E); +}, V = (t) => { + let { element: r } = t; + i(r, j), i(r, x), u(r, M), e.clear(r, E), n(r, z); +}, H = (e) => { + let { element: t, options: n } = e; + u(t, j), n.animation ? (s(t), l(t, () => V(e))) : V(e); +}, U = (t) => { + let { element: n, options: r } = t; + e.set(n, () => { + i(n, M), s(n), u(n, x), u(n, j), r.animation ? l(n, () => B(t)) : B(t); + }, 17, j); }; -function Y(e) { - const t = y(this), s = t && w(t); - F(this) || s && (this.tagName === "A" && e.preventDefault(), s.relatedTarget = this, s.show()); +function W(e) { + let t = T(this), n = t && P(t); + C(this) || n && (this.tagName === "A" && e.preventDefault(), n.relatedTarget = this, n.show()); } -const tt = (e) => { - const t = e.target, s = w(t), { type: n, relatedTarget: i } = e; - !s || t === i || t.contains(i) || ([S, b].includes(n) ? a.clear(t, o) : a.set(t, () => s.hide(), s.options.delay, o)); +var G = (t) => { + let n = t.target, r = P(n), { type: i, relatedTarget: a } = t; + !r || n === a || n.contains(a) || (["mouseenter", "focusin"].includes(i) ? e.clear(n, E) : e.set(n, () => r.hide(), r.options.delay, E)); +}, K = class extends _ { + static selector = O; + static init = F; + static getInstance = P; + constructor(e, t) { + super(e, t); + let { element: n, options: s } = this; + s.animation && !o(n, "fade") ? u(n, b) : !s.animation && o(n, "fade") && i(n, b), this.dismiss = a(k, n), this.triggers = [...h(A, r(n))].filter((e) => T(e) === n), this._toggleEventListeners(!0); + } + get name() { + return D; + } + get defaults() { + return N; + } + get isShown() { + return o(this.element, x); + } + show = () => { + let { element: e, isShown: t } = this; + !e || t || (n(e, I), I.defaultPrevented || U(this)); + }; + hide = () => { + let { element: e, isShown: t } = this; + !e || !t || (n(e, R), R.defaultPrevented || H(this)); + }; + _toggleEventListeners = (e) => { + let n = e ? d : g, { element: r, triggers: i, dismiss: a, options: o, hide: s } = this; + a && n(a, y, s), o.autohide && [ + t, + v, + c, + f + ].forEach((e) => n(r, e, G)), i.length && i.forEach((e) => { + n(e, y, W); + }); + }; + dispose() { + let { element: t, isShown: n } = this; + this._toggleEventListeners(), e.clear(t, E), n && i(t, x), super.dispose(); + } }; -class st extends k { - static selector = J; - static init = Q; - static getInstance = w; - constructor(t, s) { - super(t, s); - const { element: n, options: i } = this; - i.animation && !p(n, d) ? l(n, d) : !i.animation && p(n, d) && r(n, d), this.dismiss = G(K, n), this.triggers = [ - ...H( - M, - P(n) - ) - ].filter( - (h) => y(h) === n - ), this._toggleEventListeners(!0); - } - get name() { - return B; - } - get defaults() { - return O; - } - get isShown() { - return p(this.element, f); - } - show = () => { - const { element: t, isShown: s } = this; - !t || s || (m(t, v), v.defaultPrevented || X(this)); - }; - hide = () => { - const { element: t, isShown: s } = this; - !t || !s || (m(t, E), E.defaultPrevented || V(this)); - }; - _toggleEventListeners = (t) => { - const s = t ? W : Z, { element: n, triggers: i, dismiss: h, options: I, hide: L } = this; - h && s(h, T, L), I.autohide && [b, N, S, j].forEach( - (u) => s(n, u, tt) - ), i.length && i.forEach((u) => { - s(u, T, Y); - }); - }; - dispose() { - const { element: t, isShown: s } = this; - this._toggleEventListeners(), a.clear(t, o), s && r(t, f), super.dispose(); - } -} -export { - st as default -}; -//# sourceMappingURL=toast.mjs.map +//#endregion +export { K as default }; + +//# sourceMappingURL=toast.mjs.map \ No newline at end of file diff --git a/dist/components/toast.mjs.map b/dist/components/toast.mjs.map index 30079ef3..3870ad1e 100644 --- a/dist/components/toast.mjs.map +++ b/dist/components/toast.mjs.map @@ -1 +1 @@ -{"version":3,"file":"toast.mjs","sources":["../../src/strings/toastString.ts","../../src/strings/toastComponent.ts","../../src/components/toast.ts"],"sourcesContent":["/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n"],"names":["toastString","toastComponent","toastSelector","toastDismissSelector","dataBsDismiss","toastToggleSelector","dataBsToggle","showingClass","hideClass","toastDefaults","getToastInstance","element","getInstance","toastInitCallback","Toast","showToastEvent","createCustomEvent","shownToastEvent","hideToastEvent","hiddenToastEvent","showToastComplete","self","options","removeClass","Timer","dispatchEvent","hideToastComplete","showClass","addClass","hideToast","reflow","emulateTransitionEnd","showToast","toastClickHandler","getTargetElement","isDisabled","interactiveToastHandler","type","relatedTarget","mouseenterEvent","focusinEvent","BaseComponent","target","config","hasClass","fadeClass","querySelector","querySelectorAll","getDocument","btn","isShown","add","action","addListener","removeListener","triggers","dismiss","hide","mouseclickEvent","focusoutEvent","mouseleaveEvent","e"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"toast.mjs","names":[],"sources":["../../src/strings/toastString.ts","../../src/strings/toastComponent.ts","../../src/components/toast.ts"],"sourcesContent":["/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/tooltip-BL2s6EHC.mjs b/dist/components/tooltip-BL2s6EHC.mjs deleted file mode 100644 index ee79a893..00000000 --- a/dist/components/tooltip-BL2s6EHC.mjs +++ /dev/null @@ -1,301 +0,0 @@ -import { H as xt, ac as Dt, y as ct, P as jt, M as Q, R as zt, ad as It, o as C, m as G, ae as K, Z as V, p as Qt, af as Gt, ag as Kt, ah as Vt, ai as Zt, a6 as j, Q as st, W as et, G as S, _ as I, aj as qt, ak as Jt, al as Yt, d as ft, B as Ut, t as Ht, am as Xt, T as te, J as Nt, a5 as ee, L as oe, h as W, s as ht, a as se, an as ie, E as mt, r as ut, V as ne, w as ae, A as le, b as St, v as dt, S as re, aa as ce, ab as he, ao as de, ap as Wt, g as Lt, K as pe, a0 as At, N as gt } from "./base-component-BazRqYWL.mjs"; -import { P as fe } from "./index-K6w9MeGG.mjs"; -import { d as me } from "./dataBsToggle-B84TS15h.mjs"; -import { s as pt } from "./showClass-C8hdJfjQ.mjs"; -import { a as ue, h as ge, m as bt, o as vt, r as be } from "./popupContainer-Dhe1NpFt.mjs"; -import { f as $t } from "./fadeClass-CLIYI_zn.mjs"; -const ot = "popover", ve = "Popover", v = "tooltip", $e = (s) => { - const t = s === v, e = t ? `${s}-inner` : `${s}-body`, o = t ? "" : `

`, n = `
`, a = `
`; - return `
${o + n + a}
`; -}, Ot = { - top: "top", - bottom: "bottom", - left: "start", - right: "end" -}, wt = (s) => { - requestAnimationFrame(() => { - const t = /\b(top|bottom|start|end)+/, { element: e, tooltip: o, container: n, offsetParent: a, options: h, arrow: r } = s; - if (!o) return; - const p = xt(e), { x: $, y: c } = Dt(a); - ct(o, { - top: "", - left: "", - right: "", - bottom: "" - }); - const { offsetWidth: m, offsetHeight: f } = o, { clientWidth: u, clientHeight: E, offsetWidth: _ } = jt(e); - let { placement: i } = h; - const { clientWidth: g, offsetWidth: Z } = n, d = Q( - n, - "position" - ) === "fixed", q = Math.abs(d ? g - Z : u - _), x = p && d ? q : 0, w = u - (p ? 0 : q) - 1, it = s._observer.getEntry(e), { - width: l, - height: b, - left: J, - right: kt, - top: Y - } = it?.boundingClientRect || zt(e, !0), { - x: U, - y: A - } = It( - e, - a, - { x: $, y: c } - ); - ct(r, { - top: "", - left: "", - right: "", - bottom: "" - }); - let H = 0, R = "", T = 0, nt = "", O = "", X = "", at = ""; - const N = r.offsetWidth || 0, y = r.offsetHeight || 0, lt = N / 2; - let M = Y - f - y < 0, k = Y + f + b + y >= E, F = J - m - N < x, D = J + m + l + N >= w; - const tt = ["left", "right"], rt = ["top", "bottom"]; - M = tt.includes(i) ? Y + b / 2 - f / 2 - y < 0 : M, k = tt.includes(i) ? Y + f / 2 + b / 2 + y >= E : k, F = rt.includes(i) ? J + l / 2 - m / 2 < x : F, D = rt.includes(i) ? J + m / 2 + l / 2 >= w : D, i = tt.includes(i) && F && D ? "top" : i, i = i === "top" && M ? "bottom" : i, i = i === "bottom" && k ? "top" : i, i = i === "left" && F ? "right" : i, i = i === "right" && D ? "left" : i, o.className.includes(i) || (o.className = o.className.replace( - t, - Ot[i] - )), tt.includes(i) ? (i === "left" ? T = U - m - N : T = U + l + N, M && k ? (H = 0, R = 0, O = A + b / 2 - y / 2) : M ? (H = A, R = "", O = b / 2 - N) : k ? (H = A - f + b, R = "", O = f - b / 2 - N) : (H = A - f / 2 + b / 2, O = f / 2 - y / 2)) : rt.includes(i) && (i === "top" ? H = A - f - y : H = A + b + y, F ? (T = 0, X = U + l / 2 - lt) : D ? (T = "auto", nt = 0, at = l / 2 + w - kt - lt) : (T = U - m / 2 + l / 2, X = m / 2 - lt)), ct(o, { - top: `${H}px`, - bottom: R === "" ? "" : `${R}px`, - left: T === "auto" ? T : `${T}px`, - right: nt !== "" ? `${nt}px` : "" - }), C(r) && (O !== "" && (r.style.top = `${O}px`), X !== "" ? r.style.left = `${X}px` : at !== "" && (r.style.right = `${at}px`)); - const Ft = G( - `updated.bs.${K(s.name)}` - ); - V(e, Ft); - }); -}, Tt = { - template: $e(v), - title: "", - customClass: "", - trigger: "hover focus", - placement: "top", - sanitizeFn: void 0, - animation: !0, - delay: 200, - container: document.body, - content: "", - dismissible: !1, - btnClose: "" -}, _t = "data-original-title", L = "Tooltip", P = (s, t, e) => { - if (Qt(t) && t.length) { - let o = t.trim(); - Gt(e) && (o = e(o)); - const a = new DOMParser().parseFromString(o, "text/html"); - s.append(...a.body.childNodes); - } else C(t) ? s.append(t) : (Kt(t) || Vt(t) && t.every(Zt)) && s.append(...t); -}, we = (s) => { - const t = s.name === L, { id: e, element: o, options: n } = s, { - title: a, - placement: h, - template: r, - animation: p, - customClass: $, - sanitizeFn: c, - dismissible: m, - content: f, - btnClose: u - } = n, E = t ? v : ot, _ = { ...Ot }; - let i = [], g = []; - xt(o) && (_.left = "end", _.right = "start"); - const Z = `bs-${E}-${_[h]}`; - let B; - if (C(r)) - B = r; - else { - const l = j("div"); - P(l, r, c), B = l.firstChild; - } - if (!C(B)) return; - s.tooltip = B.cloneNode(!0); - const { tooltip: d } = s; - st(d, "id", e), st(d, "role", v); - const q = t ? `${v}-inner` : `${ot}-body`, x = t ? null : et(`.${ot}-header`, d), w = et(`.${q}`, d); - s.arrow = et( - `.${E}-arrow`, - d - ); - const { arrow: it } = s; - if (C(a)) i = [a.cloneNode(!0)]; - else { - const l = j("div"); - P(l, a, c), i = [...l.childNodes]; - } - if (C(f)) g = [f.cloneNode(!0)]; - else { - const l = j("div"); - P(l, f, c), g = [...l.childNodes]; - } - if (m) - if (a) - if (C(u)) - i = [...i, u.cloneNode(!0)]; - else { - const l = j("div"); - P(l, u, c), i = [...i, l.firstChild]; - } - else if (x && x.remove(), C(u)) - g = [...g, u.cloneNode(!0)]; - else { - const l = j("div"); - P(l, u, c), g = [...g, l.firstChild]; - } - t ? a && w && P(w, a, c) : (a && x && P(x, i, c), f && w && P(w, g, c), s.btn = et(".btn-close", d) || void 0), S(d, "position-absolute"), S(it, "position-absolute"), I(d, E) || S(d, E), p && !I(d, $t) && S(d, $t), $ && !I(d, $) && S(d, $), I(d, Z) || S(d, Z); -}, Te = (s) => { - const t = ["HTML", "BODY"], e = []; - let { parentNode: o } = s; - for (; o && !t.includes(o.nodeName); ) - o = qt(o), Jt(o) || Yt(o) || e.push(o); - return e.find((n, a) => (Q(n, "position") !== "relative" || Q(n, "position") === "relative" && n.offsetHeight !== n.scrollHeight) && e.slice(a + 1).every( - (h) => Q(h, "position") === "static" - ) ? n : null) || ft(s).body; -}, ye = `[${me}="${v}"],[data-tip="${v}"]`, Bt = "title"; -let yt = (s) => Ht(s, L); -const Pe = (s) => new xe(s), Ce = (s) => { - const { element: t, tooltip: e, container: o } = s; - At(t, Wt), be( - e, - o - ); -}, z = (s) => { - const { tooltip: t, container: e } = s; - return t && ge(t, e); -}, Ee = (s, t) => { - const { element: e } = s; - s._toggleEventListeners(), Nt(e, _t) && s.name === L && Mt(s), t && t(); -}, Rt = (s, t) => { - const e = t ? mt : ut, { element: o } = s; - e( - ft(o), - St, - s.handleTouch, - Lt - ); -}, Pt = (s) => { - const { element: t } = s, e = G( - `shown.bs.${K(s.name)}` - ); - Rt(s, !0), V(t, e), W.clear(t, "in"); -}, Ct = (s) => { - const { element: t } = s, e = G( - `hidden.bs.${K(s.name)}` - ); - Rt(s), Ce(s), V(t, e), W.clear(t, "out"); -}, Et = (s, t) => { - const e = t ? mt : ut, { element: o, tooltip: n } = s, a = gt(o, `.${bt}`), h = gt(o, `.${vt}`); - t ? [o, n].forEach((r) => s._observer.observe(r)) : s._observer.disconnect(), a && e(a, `hide.bs.${bt}`, s.handleHide), h && e(h, `hide.bs.${vt}`, s.handleHide); -}, Mt = (s, t) => { - const e = [_t, Bt], { element: o } = s; - st( - o, - e[t ? 0 : 1], - t || pe(o, e[0]) || "" - ), At(o, e[t ? 1 : 0]); -}; -class xe extends Ut { - static selector = ye; - static init = Pe; - static getInstance = yt; - static styleTip = wt; - constructor(t, e) { - super(t, e); - const { element: o } = this, n = this.name === L, a = n ? v : ot, h = n ? L : ve; - yt = (c) => Ht(c, h), this.enabled = !0, this.id = `${a}-${Xt(o, a)}`; - const { options: r } = this; - if (!r.title && n || !n && !r.content) - return; - te(Tt, { titleAttr: "" }), Nt(o, Bt) && n && typeof r.title == "string" && Mt(this, r.title); - const p = Te(o), $ = ["sticky", "fixed", "relative"].some( - (c) => Q(p, "position") === c - ) ? p : ee(o); - this.container = p, this.offsetParent = $, we(this), this.tooltip && (this._observer = new fe(() => this.update()), this._toggleEventListeners(!0)); - } - get name() { - return L; - } - get defaults() { - return Tt; - } - handleFocus = () => oe(this.element); - handleShow = () => this.show(); - show() { - const { options: t, tooltip: e, element: o, container: n, id: a } = this, { animation: h } = t, r = W.get(o, "out"); - W.clear(o, "out"), e && !r && !z(this) && W.set( - o, - () => { - const p = G( - `show.bs.${K(this.name)}` - ); - V(o, p), p.defaultPrevented || (ue(e, n), st(o, Wt, `#${a}`), this.update(), Et(this, !0), I(e, pt) || S(e, pt), h ? ht(e, () => Pt(this)) : Pt(this)); - }, - 17, - "in" - ); - } - handleHide = () => this.hide(); - hide() { - const { options: t, tooltip: e, element: o } = this, { animation: n, delay: a } = t; - W.clear(o, "in"), e && z(this) && W.set( - o, - () => { - const h = G( - `hide.bs.${K(this.name)}` - ); - V(o, h), h.defaultPrevented || (this.update(), se(e, pt), Et(this), n ? ht(e, () => Ct(this)) : Ct(this)); - }, - a + 17, - "out" - ); - } - update = () => { - wt(this); - }; - toggle = () => { - const { tooltip: t } = this; - t && !z(this) ? this.show() : this.hide(); - }; - enable() { - const { enabled: t } = this; - t || (this._toggleEventListeners(!0), this.enabled = !t); - } - disable() { - const { tooltip: t, enabled: e } = this; - e && (t && z(this) && this.hide(), this._toggleEventListeners(), this.enabled = !e); - } - toggleEnabled() { - this.enabled ? this.disable() : this.enable(); - } - handleTouch = ({ target: t }) => { - const { tooltip: e, element: o } = this; - e && e.contains(t) || t === o || t && o.contains(t) || this.hide(); - }; - _toggleEventListeners = (t) => { - const e = t ? mt : ut, { element: o, options: n, btn: a } = this, { trigger: h } = n, p = !!(this.name !== L && n.dismissible); - h.includes("manual") || (this.enabled = !!t, h.split(" ").forEach((c) => { - c === ie ? (e(o, ne, this.handleShow), e(o, ae, this.handleShow), p || (e(o, le, this.handleHide), e( - ft(o), - St, - this.handleTouch, - Lt - ))) : c === dt ? e(o, c, p ? this.handleShow : this.toggle) : c === re && (e(o, ce, this.handleShow), p || e(o, he, this.handleHide), de() && e(o, dt, this.handleFocus)), p && a && e(a, dt, this.handleHide); - })); - }; - dispose() { - const { tooltip: t, options: e } = this, o = { ...this, name: this.name }, n = () => setTimeout( - () => Ee(o, () => super.dispose()), - 17 - ); - e.animation && z(o) ? (this.options.delay = 0, this.hide(), ht(t, n)) : n(); - } -} -export { - xe as T, - ve as a, - $e as g, - ot as p, - wt as s, - Tt as t -}; -//# sourceMappingURL=tooltip-BL2s6EHC.mjs.map diff --git a/dist/components/tooltip-BL2s6EHC.mjs.map b/dist/components/tooltip-BL2s6EHC.mjs.map deleted file mode 100644 index 5054f184..00000000 --- a/dist/components/tooltip-BL2s6EHC.mjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tooltip-BL2s6EHC.mjs","sources":["../../src/strings/popoverString.ts","../../src/strings/popoverComponent.ts","../../src/strings/tooltipString.ts","../../src/util/getTipTemplate.ts","../../src/util/tipClassPositions.ts","../../src/util/styleTip.ts","../../src/util/tooltipDefaults.ts","../../src/strings/dataOriginalTitle.ts","../../src/strings/tooltipComponent.ts","../../src/util/setHtml.ts","../../src/util/createTip.ts","../../src/util/getElementContainer.ts","../../src/components/tooltip.ts"],"sourcesContent":["/** @type {string} */\nconst popoverString = \"popover\";\nexport default popoverString;\n","/** @type {string} */\nconst popoverComponent = \"Popover\";\nexport default popoverComponent;\n","/** @type {string} */\nconst tooltipString = \"tooltip\";\nexport default tooltipString;\n","import tooltipString from \"../strings/tooltipString\";\n\n/**\n * Returns a template for Popover / Tooltip.\n *\n * @param tipType the expected markup type\n * @returns the template markup\n */\nconst getTipTemplate = (tipType: string) => {\n const isTooltip = tipType === tooltipString;\n const bodyClass = isTooltip ? `${tipType}-inner` : `${tipType}-body`;\n const header = !isTooltip ? `

` : \"\";\n const arrow = `
`;\n const body = `
`;\n return `
${\n header + arrow + body\n }
`;\n};\n\nexport default getTipTemplate;\n","const tipClassPositions = {\n top: \"top\",\n bottom: \"bottom\",\n left: \"start\",\n right: \"end\",\n};\n\nexport default tipClassPositions;\n","import {\n createCustomEvent,\n dispatchEvent,\n getBoundingClientRect,\n getDocumentElement,\n getElementStyle,\n getNodeScroll,\n getRectRelativeToOffsetParent,\n isHTMLElement,\n isRTL,\n setElementStyle,\n toLowerCase,\n} from \"@thednp/shorty\";\n\nimport tipClassPositions from \"./tipClassPositions\";\nimport Tooltip from \"../components/tooltip\";\nimport type { TooltipEvent } from \"../interface/tooltip\";\nimport type { PopoverEvent } from \"../interface/popover\";\n\n/**\n * Style popovers and tooltips.\n *\n * @param self the `Popover` / `Tooltip` instance\n */\nconst styleTip = (self: Tooltip) => {\n requestAnimationFrame(() => {\n const tipClasses = /\\b(top|bottom|start|end)+/;\n const { element, tooltip, container, offsetParent, options, arrow } = self;\n\n // istanbul ignore if @preserve\n if (!tooltip) return;\n const RTL = isRTL(element);\n const { x: scrollLeft, y: scrollTop } = getNodeScroll(offsetParent);\n\n // reset tooltip style (top: 0, left: 0 works best)\n setElementStyle(tooltip, {\n top: \"\",\n left: \"\",\n right: \"\",\n bottom: \"\",\n });\n const { offsetWidth: tipWidth, offsetHeight: tipHeight } = tooltip;\n const { clientWidth: htmlcw, clientHeight: htmlch, offsetWidth: htmlow } =\n getDocumentElement(element);\n let { placement } = options;\n const { clientWidth: parentCWidth, offsetWidth: parentOWidth } = container;\n const parentPosition = getElementStyle(\n container,\n \"position\",\n );\n const fixedParent = parentPosition === \"fixed\";\n const scrollbarWidth = fixedParent\n ? Math.abs(parentCWidth - parentOWidth)\n : Math.abs(htmlcw - htmlow);\n const leftBoundry = RTL && fixedParent\n ? /* istanbul ignore next @preserve */ scrollbarWidth\n : 0;\n const rightBoundry = htmlcw - (!RTL ? scrollbarWidth : 0) - 1;\n\n // reuse observer entry bounding box\n const observerEntry = self._observer.getEntry(element);\n const {\n width: elemWidth,\n height: elemHeight,\n left: elemRectLeft,\n right: elemRectRight,\n top: elemRectTop,\n } = observerEntry?.boundingClientRect ||\n getBoundingClientRect(element, true);\n\n const {\n x: elemOffsetLeft,\n y: elemOffsetTop,\n } = getRectRelativeToOffsetParent(\n element,\n offsetParent,\n { x: scrollLeft, y: scrollTop },\n );\n\n // reset arrow style\n setElementStyle(arrow as HTMLElement, {\n top: \"\",\n left: \"\",\n right: \"\",\n bottom: \"\",\n });\n let topPosition: number | string = 0;\n let bottomPosition: number | string = \"\";\n let leftPosition: number | string = 0;\n let rightPosition: number | string = \"\";\n let arrowTop: number | string = \"\";\n let arrowLeft: number | string = \"\";\n let arrowRight: number | string = \"\";\n\n const arrowWidth = arrow.offsetWidth || 0;\n const arrowHeight = arrow.offsetHeight || 0;\n const arrowAdjust = arrowWidth / 2;\n\n // check placement\n let topExceed = elemRectTop - tipHeight - arrowHeight < 0;\n let bottomExceed =\n elemRectTop + tipHeight + elemHeight + arrowHeight >= htmlch;\n let leftExceed = elemRectLeft - tipWidth - arrowWidth < leftBoundry;\n let rightExceed =\n elemRectLeft + tipWidth + elemWidth + arrowWidth >= rightBoundry;\n\n const horizontals = [\"left\", \"right\"];\n const verticals = [\"top\", \"bottom\"];\n\n topExceed = horizontals.includes(placement)\n ? elemRectTop + elemHeight / 2 - tipHeight / 2 - arrowHeight < 0\n : topExceed;\n bottomExceed = horizontals.includes(placement)\n ? elemRectTop + tipHeight / 2 + elemHeight / 2 + arrowHeight >= htmlch\n : bottomExceed;\n leftExceed = verticals.includes(placement)\n ? elemRectLeft + elemWidth / 2 - tipWidth / 2 < leftBoundry\n : leftExceed;\n rightExceed = verticals.includes(placement)\n ? elemRectLeft + tipWidth / 2 + elemWidth / 2 >= rightBoundry\n : rightExceed;\n\n // first remove side positions if both left and right limits are exceeded\n // we usually fall back to top|bottom\n placement = horizontals.includes(placement) && leftExceed && rightExceed\n ? \"top\"\n : placement;\n // recompute placement\n placement = placement === \"top\" && topExceed ? \"bottom\" : placement;\n placement = placement === \"bottom\" && bottomExceed ? \"top\" : placement;\n placement = placement === \"left\" && leftExceed ? \"right\" : placement;\n placement = placement === \"right\" && rightExceed\n ? \"left\"\n // istanbul ignore next @preserve\n : placement;\n\n // update tooltip/popover class\n // istanbul ignore else @preserve\n if (!tooltip.className.includes(placement)) {\n tooltip.className = tooltip.className.replace(\n tipClasses,\n tipClassPositions[placement],\n );\n }\n\n // compute tooltip / popover coordinates\n // istanbul ignore else @preserve\n if (horizontals.includes(placement)) {\n // secondary|side positions\n if (placement === \"left\") {\n // LEFT\n leftPosition = elemOffsetLeft - tipWidth - arrowWidth;\n } else {\n // RIGHT\n leftPosition = elemOffsetLeft + elemWidth + arrowWidth;\n }\n\n // adjust top and arrow\n if (topExceed && bottomExceed) {\n topPosition = 0;\n bottomPosition = 0;\n arrowTop = elemOffsetTop + elemHeight / 2 - arrowHeight / 2;\n } else if (topExceed) {\n topPosition = elemOffsetTop;\n bottomPosition = \"\";\n arrowTop = elemHeight / 2 - arrowWidth;\n } else if (bottomExceed) {\n topPosition = elemOffsetTop - tipHeight + elemHeight;\n bottomPosition = \"\";\n arrowTop = tipHeight - elemHeight / 2 - arrowWidth;\n } else {\n topPosition = elemOffsetTop - tipHeight / 2 + elemHeight / 2;\n arrowTop = tipHeight / 2 - arrowHeight / 2;\n }\n } else if (verticals.includes(placement)) {\n if (placement === \"top\") {\n topPosition = elemOffsetTop - tipHeight - arrowHeight;\n } else {\n // BOTTOM\n topPosition = elemOffsetTop + elemHeight + arrowHeight;\n }\n\n // adjust left | right and also the arrow\n if (leftExceed) {\n leftPosition = 0;\n arrowLeft = elemOffsetLeft + elemWidth / 2 - arrowAdjust;\n } else if (rightExceed) {\n leftPosition = \"auto\";\n rightPosition = 0;\n arrowRight = elemWidth / 2 + rightBoundry - elemRectRight - arrowAdjust;\n } else {\n leftPosition = elemOffsetLeft - tipWidth / 2 + elemWidth / 2;\n arrowLeft = tipWidth / 2 - arrowAdjust;\n }\n }\n\n // apply style to tooltip/popover\n setElementStyle(tooltip, {\n top: `${topPosition}px`,\n bottom: bottomPosition === \"\" ? \"\" : `${bottomPosition}px`,\n left: leftPosition === \"auto\" ? leftPosition : `${leftPosition}px`,\n right: rightPosition !== \"\" ? `${rightPosition}px` : \"\",\n });\n\n // update arrow placement\n // istanbul ignore else @preserve\n if (isHTMLElement(arrow)) {\n if (arrowTop !== \"\") {\n arrow.style.top = `${arrowTop}px`;\n }\n if (arrowLeft !== \"\") {\n arrow.style.left = `${arrowLeft}px`;\n } else if (arrowRight !== \"\") {\n arrow.style.right = `${arrowRight}px`;\n }\n }\n const updatedTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `updated.bs.${toLowerCase(self.name)}`,\n );\n dispatchEvent(element, updatedTooltipEvent);\n });\n};\n\nexport default styleTip;\n","import getTipTemplate from \"./getTipTemplate\";\nimport tooltipString from \"../strings/tooltipString\";\nimport { TooltipOptions } from \"../interface/tooltip\";\n\nconst tooltipDefaults: TooltipOptions = {\n template: getTipTemplate(tooltipString),\n title: \"\",\n customClass: \"\",\n trigger: \"hover focus\",\n placement: \"top\",\n sanitizeFn: undefined,\n animation: true,\n delay: 200,\n container: document.body,\n content: \"\",\n dismissible: false,\n btnClose: \"\",\n};\nexport default tooltipDefaults;\n","/**\n * Global namespace for `data-bs-title` attribute.\n */\nconst dataOriginalTitle = \"data-original-title\";\nexport default dataOriginalTitle;\n","/** @type {string} */\nconst tooltipComponent = \"Tooltip\";\nexport default tooltipComponent;\n","import {\n isArray,\n isFunction,\n isHTMLElement,\n isNode,\n isNodeList,\n isString,\n} from \"@thednp/shorty\";\n\n/**\n * Append an existing `Element` to Popover / Tooltip component or HTML\n * markup string to be parsed & sanitized to be used as popover / tooltip content.\n *\n * @param element target\n * @param content the `Element` to append / string\n * @param sanitizeFn a function to sanitize string content\n */\nconst setHtml = (\n element: HTMLElement,\n content: Node[] | Node | string,\n sanitizeFn?: (s: string) => string,\n) => {\n // istanbul ignore else @preserve\n if (isString(content) && content.length) {\n let dirty = content.trim(); // fixing #233\n if (isFunction(sanitizeFn)) dirty = sanitizeFn(dirty);\n\n const domParser = new DOMParser();\n const tempDocument = domParser.parseFromString(dirty, \"text/html\");\n element.append(...[...tempDocument.body.childNodes]);\n } else if (isHTMLElement(content)) {\n element.append(content);\n } else if (\n isNodeList(content) || (isArray(content) && content.every(isNode))\n ) {\n element.append(...[...content]);\n }\n};\nexport default setHtml;\n","import {\n addClass,\n createElement,\n hasClass,\n isHTMLElement,\n isRTL,\n querySelector,\n setAttribute,\n} from \"@thednp/shorty\";\n\nimport tooltipComponent from \"../strings/tooltipComponent\";\nimport tooltipString from \"../strings/tooltipString\";\nimport popoverString from \"../strings/popoverString\";\nimport fadeClass from \"../strings/fadeClass\";\nimport tipClassPositions from \"./tipClassPositions\";\nimport setHtml from \"./setHtml\";\nimport Tooltip from \"../components/tooltip\";\nimport Popover from \"../components/popover\";\n\n/**\n * Creates a new tooltip / popover.\n *\n * @param self the `Tooltip` / `Popover` instance\n */\nconst createTip = (self: Tooltip | Popover) => {\n const isTooltip = self.name === tooltipComponent;\n\n const { id, element, options } = self;\n const {\n title,\n placement,\n template,\n animation,\n customClass,\n sanitizeFn,\n dismissible,\n content,\n btnClose,\n } = options;\n const tipString = isTooltip ? tooltipString : popoverString;\n const tipPositions = { ...tipClassPositions };\n let titleParts: Node[] = [];\n let contentParts: Node[] = [];\n\n if (isRTL(element)) {\n tipPositions.left = \"end\";\n tipPositions.right = \"start\";\n }\n\n // set initial popover class\n const placementClass = `bs-${tipString}-${tipPositions[placement]}`;\n\n // load template\n let tooltipTemplate: Node | string;\n if (isHTMLElement(template)) {\n tooltipTemplate = template;\n } else {\n const htmlMarkup = createElement(\"div\") as HTMLElement;\n setHtml(htmlMarkup, template, sanitizeFn);\n tooltipTemplate = htmlMarkup.firstChild as HTMLElement;\n }\n\n /* istanbul ignore if @preserve */\n if (!isHTMLElement(tooltipTemplate)) return;\n\n // set popover markup\n self.tooltip = tooltipTemplate.cloneNode(true) as HTMLElement;\n const { tooltip } = self;\n\n // set id and role attributes\n setAttribute(tooltip, \"id\", id);\n setAttribute(tooltip, \"role\", tooltipString);\n\n const bodyClass = isTooltip\n ? `${tooltipString}-inner`\n : `${popoverString}-body`;\n const tooltipHeader = isTooltip\n ? null\n : querySelector(`.${popoverString}-header`, tooltip);\n const tooltipBody = querySelector(`.${bodyClass}`, tooltip);\n\n // set arrow and enable access for styleTip\n self.arrow = querySelector(\n `.${tipString}-arrow`,\n tooltip,\n ) as HTMLElement;\n const { arrow } = self;\n\n if (isHTMLElement(title)) titleParts = [title.cloneNode(true)];\n else {\n const tempTitle = createElement(\"div\") as HTMLElement;\n setHtml(tempTitle, title, sanitizeFn);\n titleParts = [...[...tempTitle.childNodes]];\n }\n\n if (isHTMLElement(content)) contentParts = [content.cloneNode(true)];\n else {\n const tempContent = createElement(\"div\") as HTMLElement;\n setHtml(tempContent, content, sanitizeFn);\n contentParts = [...[...tempContent.childNodes]];\n }\n\n // set dismissible button\n if (dismissible) {\n if (title) {\n if (isHTMLElement(btnClose)) {\n titleParts = [...titleParts, btnClose.cloneNode(true)];\n } else {\n const tempBtn = createElement(\"div\") as HTMLElement;\n setHtml(tempBtn, btnClose, sanitizeFn);\n titleParts = [...titleParts, tempBtn.firstChild as Node];\n }\n } else {\n // istanbul ignore else @preserve\n if (tooltipHeader) tooltipHeader.remove();\n if (isHTMLElement(btnClose)) {\n contentParts = [...contentParts, btnClose.cloneNode(true)];\n } else {\n const tempBtn = createElement(\"div\") as HTMLElement;\n setHtml(tempBtn, btnClose, sanitizeFn);\n contentParts = [...contentParts, tempBtn.firstChild as Node];\n }\n }\n }\n\n // fill the template with content from options / data attributes\n // also sanitize title && content\n // istanbul ignore else @preserve\n if (!isTooltip) {\n // istanbul ignore else @preserve\n if (title && tooltipHeader) {\n setHtml(tooltipHeader, titleParts, sanitizeFn);\n }\n // istanbul ignore else @preserve\n if (content && tooltipBody) {\n setHtml(tooltipBody, contentParts, sanitizeFn);\n }\n // set btn\n self.btn = querySelector(\".btn-close\", tooltip) ||\n undefined;\n } else if (title && tooltipBody) setHtml(tooltipBody, title, sanitizeFn);\n\n // Bootstrap 5.2.x\n addClass(tooltip, \"position-absolute\");\n addClass(arrow, \"position-absolute\");\n\n // set popover animation and placement\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, tipString)) addClass(tooltip, tipString);\n // istanbul ignore else @preserve\n if (animation && !hasClass(tooltip, fadeClass)) {\n addClass(tooltip, fadeClass);\n }\n // istanbul ignore else @preserve\n if (customClass && !hasClass(tooltip, customClass)) {\n addClass(tooltip, customClass);\n }\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, placementClass)) addClass(tooltip, placementClass);\n};\n\nexport default createTip;\n","import {\n getDocument,\n getElementStyle,\n getParentNode,\n isShadowRoot,\n isTableElement,\n} from \"@thednp/shorty\";\n\n/**\n * Returns an `HTMLElement` to be used as default value for *options.container*\n * for `Tooltip` / `Popover` components.\n *\n * @see https://github.com/floating-ui/floating-ui\n *\n * @param element the target\n * @returns the query result\n */\nconst getElementContainer = (element: Element) => {\n const majorBlockTags = [\"HTML\", \"BODY\"];\n const containers: HTMLElement[] = [];\n let { parentNode } = element;\n\n while (parentNode && !majorBlockTags.includes(parentNode.nodeName)) {\n parentNode = getParentNode(parentNode) as HTMLElement;\n // istanbul ignore else @preserve\n if (!(isShadowRoot(parentNode) || isTableElement(parentNode))) {\n containers.push(parentNode as HTMLElement);\n }\n }\n\n return (\n containers.find((c, i) => {\n if (\n ((getElementStyle(c, \"position\") !== \"relative\" ||\n getElementStyle(c, \"position\") === \"relative\" &&\n c.offsetHeight !== c.scrollHeight) &&\n containers.slice(i + 1).every((r) =>\n getElementStyle(r, \"position\") === \"static\"\n ))\n ) {\n return c;\n }\n return null;\n }) ||\n /* istanbul ignore next: optional guard */\n getDocument(element).body\n );\n};\n\nexport default getElementContainer;\n","/* Native JavaScript for Bootstrap 5 | Tooltip\n---------------------------------------------- */\nimport {\n addClass,\n ariaDescribedBy,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focus,\n focusEvent,\n focusinEvent,\n focusoutEvent,\n getAttribute,\n getDocument,\n getElementStyle,\n getInstance,\n getUID,\n getWindow,\n hasAttribute,\n hasClass,\n isApple,\n mouseclickEvent,\n mousedownEvent,\n mouseenterEvent,\n mousehoverEvent,\n mouseleaveEvent,\n ObjectAssign,\n passiveHandler,\n removeAttribute,\n removeClass,\n setAttribute,\n Timer,\n toLowerCase,\n TouchEvent,\n touchstartEvent,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\nimport PositionObserver from \"@thednp/position-observer\";\n\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport dataOriginalTitle from \"~/strings/dataOriginalTitle\";\nimport showClass from \"~/strings/showClass\";\nimport tooltipString from \"~/strings/tooltipString\";\nimport tooltipComponent from \"~/strings/tooltipComponent\";\nimport popoverString from \"~/strings/popoverString\";\nimport popoverComponent from \"~/strings/popoverComponent\";\nimport modalString from \"~/strings/modalString\";\nimport offcanvasString from \"~/strings/offcanvasString\";\n\nimport styleTip from \"~/util/styleTip\";\nimport createTip from \"~/util/createTip\";\nimport { appendPopup, hasPopup, removePopup } from \"~/util/popupContainer\";\nimport getElementContainer from \"~/util/getElementContainer\";\nimport tooltipDefaults from \"~/util/tooltipDefaults\";\nimport BaseComponent from \"./base-component\";\nimport type { TooltipEvent, TooltipOptions } from \"~/interface/tooltip\";\nimport type { PopoverEvent, PopoverOptions } from \"~/interface/popover\";\n\n// TOOLTIP PRIVATE GC\n// ==================\nconst tooltipSelector =\n `[${dataBsToggle}=\"${tooltipString}\"],[data-tip=\"${tooltipString}\"]`;\nconst titleAttr = \"title\";\n\n/**\n * Static method which returns an existing `Tooltip` instance associated\n * to a target `Element`.\n */\nlet getTooltipInstance = (element: Element) =>\n getInstance(element, tooltipComponent);\n\n/**\n * A `Tooltip` initialization callback.\n */\nconst tooltipInitCallback = (element: Element) => new Tooltip(element);\n\n// TOOLTIP PRIVATE METHODS\n// =======================\n/**\n * Removes the tooltip from the DOM.\n *\n * @param self the `Tooltip` instance\n */\nconst removeTooltip = (self: Tooltip) => {\n const { element, tooltip, container } = self;\n removeAttribute(element, ariaDescribedBy);\n removePopup(\n tooltip,\n container,\n );\n};\n\n/**\n * Check if container contains the tooltip.\n *\n * @param self Tooltip\n */\nconst hasTip = (self: Tooltip): boolean | undefined => {\n const { tooltip, container } = self;\n\n return tooltip &&\n hasPopup(tooltip, container);\n};\n\n/**\n * Executes after the instance has been disposed.\n *\n * @param self the `Tooltip` instance\n * @param callback the parent dispose callback\n */\nconst disposeTooltipComplete = (self: Tooltip, callback?: () => void) => {\n const { element } = self;\n self._toggleEventListeners();\n\n // istanbul ignore else @preserve\n if (\n hasAttribute(element, dataOriginalTitle) && self.name === tooltipComponent\n ) {\n toggleTooltipTitle(self);\n }\n // istanbul ignore else @preserve\n if (callback) callback();\n};\n\n/**\n * Toggles on/off the special `Tooltip` event listeners.\n *\n * @param self the `Tooltip` instance\n * @param add when `true`, event listeners are added\n */\nconst toggleTooltipAction = (self: Tooltip, add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element } = self;\n\n action(\n getDocument(element),\n touchstartEvent,\n self.handleTouch,\n passiveHandler,\n );\n};\n\n/**\n * Executes after the tooltip was shown to the user.\n *\n * @param self the `Tooltip` instance\n */\nconst tooltipShownAction = (self: Tooltip) => {\n const { element } = self;\n const shownTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `shown.bs.${toLowerCase(self.name)}`,\n );\n\n toggleTooltipAction(self, true);\n dispatchEvent(element, shownTooltipEvent);\n Timer.clear(element, \"in\");\n};\n\n/**\n * Executes after the tooltip was hidden to the user.\n *\n * @param self the `Tooltip` instance\n */\nconst tooltipHiddenAction = (self: Tooltip) => {\n const { element } = self;\n const hiddenTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `hidden.bs.${toLowerCase(self.name)}`,\n );\n\n toggleTooltipAction(self);\n removeTooltip(self);\n dispatchEvent(element, hiddenTooltipEvent);\n\n Timer.clear(element, \"out\");\n};\n\n/**\n * Toggles on/off the `Tooltip` event listeners that hide/update the tooltip.\n *\n * @param self the `Tooltip` instance\n * @param add when `true`, event listeners are added\n */\nconst toggleTooltipOpenHandlers = (self: Tooltip, add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, tooltip } = self;\n const parentModal = closest(element, `.${modalString}`);\n const parentOffcanvas = closest(element, `.${offcanvasString}`);\n\n if (add) {\n [element, tooltip]\n .forEach((target) => self._observer.observe(target));\n } else self._observer.disconnect();\n\n // dismiss tooltips inside modal / offcanvas\n if (parentModal) {\n action(parentModal, `hide.bs.${modalString}`, self.handleHide);\n }\n if (parentOffcanvas) {\n action(parentOffcanvas, `hide.bs.${offcanvasString}`, self.handleHide);\n }\n};\n\n/**\n * Toggles the `title` and `data-original-title` attributes.\n *\n * @param self the `Tooltip` instance\n * @param content when `true`, event listeners are added\n */\nconst toggleTooltipTitle = (self: Tooltip, content?: string) => {\n // [0 - add, 1 - remove] | [0 - remove, 1 - add]\n const titleAtt = [dataOriginalTitle, titleAttr];\n const { element } = self;\n\n setAttribute(\n element,\n titleAtt[content ? 0 : 1],\n content ||\n getAttribute(element, titleAtt[0]) ||\n // istanbul ignore next @preserve\n \"\",\n );\n removeAttribute(element, titleAtt[content ? 1 : 0]);\n};\n\n// TOOLTIP DEFINITION\n// ==================\n/** Creates a new `Tooltip` instance. */\nexport default class Tooltip extends BaseComponent {\n static selector = tooltipSelector;\n static init = tooltipInitCallback;\n static getInstance = getTooltipInstance;\n static styleTip = styleTip;\n declare element: Element & HTMLOrSVGElement;\n declare options: TooltipOptions;\n declare btn?: HTMLElement;\n declare tooltip: HTMLElement;\n declare container: HTMLElement;\n declare offsetParent: Element | Window;\n declare arrow: HTMLElement;\n declare enabled: boolean;\n declare id: string;\n declare _observer: PositionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n\n const { element } = this;\n const isTooltip = this.name === tooltipComponent;\n const tipString = isTooltip ? tooltipString : popoverString;\n const tipComponent = isTooltip ? tooltipComponent : popoverComponent;\n\n // istanbul ignore next @preserve: this is to set Popover too\n getTooltipInstance = (elem: Element) =>\n getInstance(elem, tipComponent);\n\n // additional properties\n this.enabled = true;\n /** Set unique ID for `aria-describedby`. */\n this.id = `${tipString}-${getUID(element, tipString)}`;\n\n // instance options\n const { options } = this;\n\n // invalidate\n // istanbul ignore else @preserve\n if (((!options.title && isTooltip) || (!isTooltip && !options.content))) {\n return;\n }\n\n // reset default options\n ObjectAssign(tooltipDefaults, { titleAttr: \"\" });\n\n // set title attributes and add event listeners\n // istanbul ignore else @preserve\n if (\n hasAttribute(element, titleAttr) && isTooltip &&\n typeof options.title === \"string\"\n ) {\n toggleTooltipTitle(this, options.title);\n }\n\n // set containers\n const container = getElementContainer(element);\n const offsetParent = [\"sticky\", \"fixed\", \"relative\"].some(\n (position) =>\n getElementStyle(container, \"position\") ===\n position,\n )\n ? container\n : getWindow(element);\n\n this.container = container;\n this.offsetParent = offsetParent;\n\n // create tooltip here\n createTip(this);\n\n /* istanbul ignore if @preserve */\n if (!this.tooltip) return;\n\n // create observer\n this._observer = new PositionObserver(() => this.update());\n\n // attach events\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tooltipComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return tooltipDefaults;\n }\n\n // TOOLTIP PUBLIC METHODS\n // ======================\n /** Handles the focus event on iOS. */\n // istanbul ignore next @preserve - impossible to test without Apple device\n handleFocus = () => focus(this.element as HTMLElement);\n /** Shows the tooltip. */\n handleShow = () => this.show();\n show() {\n const { options, tooltip, element, container, id } = this;\n const { animation } = options;\n const outTimer = Timer.get(element, \"out\");\n\n Timer.clear(element, \"out\");\n\n if (tooltip && !outTimer && !hasTip(this)) {\n Timer.set(\n element,\n () => {\n const showTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `show.bs.${toLowerCase(this.name)}`,\n );\n dispatchEvent(element, showTooltipEvent);\n\n // istanbul ignore else @preserve\n if (!showTooltipEvent.defaultPrevented) {\n // append to container\n appendPopup(tooltip, container);\n\n setAttribute(element, ariaDescribedBy, `#${id}`);\n\n this.update();\n toggleTooltipOpenHandlers(this, true);\n\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, showClass)) addClass(tooltip, showClass);\n // istanbul ignore else @preserve\n if (animation) {\n emulateTransitionEnd(tooltip, () => tooltipShownAction(this));\n } else tooltipShownAction(this);\n }\n },\n 17,\n \"in\",\n );\n }\n }\n\n /** Hides the tooltip. */\n handleHide = () => this.hide();\n hide() {\n const { options, tooltip, element } = this;\n const { animation, delay } = options;\n\n Timer.clear(element, \"in\");\n\n // istanbul ignore else @preserve\n if (tooltip && hasTip(this)) {\n Timer.set(\n element,\n () => {\n const hideTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `hide.bs.${toLowerCase(this.name)}`,\n );\n dispatchEvent(element, hideTooltipEvent);\n\n // istanbul ignore else @preserve\n if (!hideTooltipEvent.defaultPrevented) {\n this.update();\n removeClass(tooltip, showClass);\n toggleTooltipOpenHandlers(this);\n\n // istanbul ignore else @preserve\n if (animation) {\n emulateTransitionEnd(tooltip, () => tooltipHiddenAction(this));\n } else tooltipHiddenAction(this);\n }\n },\n delay + 17,\n \"out\",\n );\n }\n }\n\n /** Updates the tooltip position. */\n update = () => {\n styleTip(this);\n };\n\n /** Toggles the tooltip visibility. */\n toggle = () => {\n const { tooltip } = this;\n\n if (tooltip && !hasTip(this)) this.show();\n else this.hide();\n };\n\n /** Enables the tooltip. */\n enable() {\n const { enabled } = this;\n // istanbul ignore else @preserve\n if (!enabled) {\n this._toggleEventListeners(true);\n this.enabled = !enabled;\n }\n }\n\n /** Disables the tooltip. */\n disable() {\n const { tooltip, enabled } = this;\n // istanbul ignore else @preserve\n if (enabled) {\n if (tooltip && hasTip(this)) this.hide();\n this._toggleEventListeners();\n this.enabled = !enabled;\n }\n }\n\n /** Toggles the `disabled` property. */\n toggleEnabled() {\n if (!this.enabled) this.enable();\n else this.disable();\n }\n\n /**\n * Handles the `touchstart` event listener for `Tooltip`\n *\n * @this {Tooltip}\n * @param {TouchEvent} e the `Event` object\n */\n handleTouch = ({ target }: TouchEvent) => {\n const { tooltip, element } = this;\n\n // istanbul ignore if @preserve\n if (\n (tooltip && tooltip.contains(target)) ||\n target === element ||\n (target && element.contains(target))\n ) {\n // smile for ESLint\n } else {\n this.hide();\n }\n };\n\n /**\n * Toggles on/off the `Tooltip` event listeners.\n *\n * @param add when `true`, event listeners are added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n // btn is only for dismissible popover\n const { element, options, btn } = this;\n const { trigger } = options;\n const isPopover = this.name !== tooltipComponent;\n const dismissible = isPopover && (options as PopoverOptions).dismissible\n ? true\n : false;\n\n // istanbul ignore else @preserve\n if (!trigger.includes(\"manual\")) {\n this.enabled = !!add;\n\n const triggerOptions = trigger.split(\" \");\n\n triggerOptions.forEach((tr) => {\n // istanbul ignore else @preserve\n if (tr === mousehoverEvent) {\n action(element, mousedownEvent, this.handleShow);\n action(element, mouseenterEvent, this.handleShow);\n\n // istanbul ignore else @preserve\n if (!dismissible) {\n action(element, mouseleaveEvent, this.handleHide);\n action(\n getDocument(element),\n touchstartEvent,\n this.handleTouch,\n passiveHandler,\n );\n }\n } else if (tr === mouseclickEvent) {\n action(element, tr, !dismissible ? this.toggle : this.handleShow);\n } else if (tr === focusEvent) {\n action(element, focusinEvent, this.handleShow);\n // istanbul ignore else @preserve\n if (!dismissible) action(element, focusoutEvent, this.handleHide);\n // istanbul ignore else @preserve\n if (isApple()) {\n action(element, mouseclickEvent, this.handleFocus);\n }\n }\n // istanbul ignore else @preserve\n if (dismissible && btn) {\n action(btn, mouseclickEvent, this.handleHide);\n }\n });\n }\n };\n\n /** Removes the `Tooltip` from the target element. */\n dispose() {\n const { tooltip, options } = this;\n const clone = { ...this, name: this.name };\n const callback = () =>\n setTimeout(\n () => disposeTooltipComplete(clone, () => super.dispose()),\n 17,\n );\n\n if (options.animation && hasTip(clone)) {\n this.options.delay = 0; // reset delay\n this.hide();\n emulateTransitionEnd(tooltip, callback);\n } else {\n callback();\n }\n }\n}\n"],"names":["popoverString","popoverComponent","tooltipString","getTipTemplate","tipType","isTooltip","bodyClass","header","arrow","body","tipClassPositions","styleTip","self","tipClasses","element","tooltip","container","offsetParent","options","RTL","isRTL","scrollLeft","scrollTop","getNodeScroll","setElementStyle","tipWidth","tipHeight","htmlcw","htmlch","htmlow","getDocumentElement","placement","parentCWidth","parentOWidth","fixedParent","getElementStyle","scrollbarWidth","leftBoundry","rightBoundry","observerEntry","elemWidth","elemHeight","elemRectLeft","elemRectRight","elemRectTop","getBoundingClientRect","elemOffsetLeft","elemOffsetTop","getRectRelativeToOffsetParent","topPosition","bottomPosition","leftPosition","rightPosition","arrowTop","arrowLeft","arrowRight","arrowWidth","arrowHeight","arrowAdjust","topExceed","bottomExceed","leftExceed","rightExceed","horizontals","verticals","isHTMLElement","updatedTooltipEvent","createCustomEvent","toLowerCase","dispatchEvent","tooltipDefaults","dataOriginalTitle","tooltipComponent","setHtml","content","sanitizeFn","isString","dirty","isFunction","tempDocument","isNodeList","isArray","isNode","createTip","id","title","template","animation","customClass","dismissible","btnClose","tipString","tipPositions","titleParts","contentParts","placementClass","tooltipTemplate","htmlMarkup","createElement","setAttribute","tooltipHeader","querySelector","tooltipBody","tempTitle","tempContent","tempBtn","addClass","hasClass","fadeClass","getElementContainer","majorBlockTags","containers","parentNode","getParentNode","isShadowRoot","isTableElement","c","i","r","getDocument","tooltipSelector","dataBsToggle","titleAttr","getTooltipInstance","getInstance","tooltipInitCallback","Tooltip","removeTooltip","removeAttribute","ariaDescribedBy","removePopup","hasTip","hasPopup","disposeTooltipComplete","callback","hasAttribute","toggleTooltipTitle","toggleTooltipAction","add","action","addListener","removeListener","touchstartEvent","passiveHandler","tooltipShownAction","shownTooltipEvent","Timer","tooltipHiddenAction","hiddenTooltipEvent","toggleTooltipOpenHandlers","parentModal","closest","modalString","parentOffcanvas","offcanvasString","target","titleAtt","getAttribute","BaseComponent","config","tipComponent","elem","getUID","ObjectAssign","position","getWindow","PositionObserver","focus","outTimer","showTooltipEvent","appendPopup","showClass","emulateTransitionEnd","delay","hideTooltipEvent","removeClass","enabled","btn","trigger","tr","mousehoverEvent","mousedownEvent","mouseenterEvent","mouseleaveEvent","mouseclickEvent","focusEvent","focusinEvent","focusoutEvent","isApple","clone"],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/tooltip-BUNhKri3.js b/dist/components/tooltip-BUNhKri3.js new file mode 100644 index 00000000..b29b6a0d --- /dev/null +++ b/dist/components/tooltip-BUNhKri3.js @@ -0,0 +1,2 @@ +const e=require(`./base-component-LPll9cLQ.js`),t=require(`./fadeClass-DAfX8y06.js`),n=require(`./showClass-CR_WzH06.js`),r=require(`./dataBsToggle-rqyimqAB.js`),i=require(`./dist-CtVym8U0.js`),a=require(`./popupContainer-DocKVrIM.js`);var o=`popover`,s=`Popover`,c=`tooltip`,l=e=>{let t=e===c,n=t?`${e}-inner`:`${e}-body`,r=t?``:`

`,i=`
`,a=`
`;return`
${r+i+a}
`},u={top:`top`,bottom:`bottom`,left:`start`,right:`end`},d=t=>{requestAnimationFrame(()=>{let n=/\b(top|bottom|start|end)+/,{element:r,tooltip:i,container:a,offsetParent:o,options:s,arrow:c}=t;if(!i)return;let l=e.h(r),{x:d,y:f}=e.S(o);e.d(i,{top:``,left:``,right:``,bottom:``});let{offsetWidth:p,offsetHeight:m}=i,{clientWidth:h,clientHeight:g,offsetWidth:_}=e.yt(r),{placement:v}=s,{clientWidth:y,offsetWidth:b}=a,x=e.Y(a,`position`)===`fixed`,S=x?Math.abs(y-b):Math.abs(h-_),C=l&&x?S:0,w=h-(l?0:S)-1,{width:T,height:E,left:D,right:O,top:k}=t._observer.getEntry(r)?.boundingClientRect||e.Ct(r,!0),{x:A,y:j}=e.c(r,o,{x:d,y:f});e.d(c,{top:``,left:``,right:``,bottom:``});let M=0,N=``,P=0,F=``,I=``,L=``,R=``,z=c.offsetWidth||0,B=c.offsetHeight||0,V=z/2,H=k-m-B<0,U=k+m+E+B>=g,W=D-p-z=w,K=[`left`,`right`],q=[`top`,`bottom`];H=K.includes(v)?k+E/2-m/2-B<0:H,U=K.includes(v)?k+m/2+E/2+B>=g:U,W=q.includes(v)?D+T/2-p/2=w:G,v=K.includes(v)&&W&&G?`top`:v,v=v===`top`&&H?`bottom`:v,v=v===`bottom`&&U?`top`:v,v=v===`left`&&W?`right`:v,v=v===`right`&&G?`left`:v,i.className.includes(v)||(i.className=i.className.replace(n,u[v])),K.includes(v)?(P=v===`left`?A-p-z:A+T+z,H&&U?(M=0,N=0,I=j+E/2-B/2):H?(M=j,N=``,I=E/2-z):U?(M=j-m+E,N=``,I=m-E/2-z):(M=j-m/2+E/2,I=m/2-B/2)):q.includes(v)&&(M=v===`top`?j-m-B:j+E+B,W?(P=0,L=A+T/2-V):G?(P=`auto`,F=0,R=T/2+w-O-V):(P=A-p/2+T/2,L=p/2-V)),e.d(i,{top:`${M}px`,bottom:N===``?``:`${N}px`,left:P===`auto`?P:`${P}px`,right:F===``?``:`${F}px`}),e.V(c)&&(I!==``&&(c.style.top=`${I}px`),L===``?R!==``&&(c.style.right=`${R}px`):c.style.left=`${L}px`),e.I(r,e.ot(`updated.bs.${e.wt(t.name)}`))})},f={template:l(c),title:``,customClass:``,trigger:`hover focus`,placement:`top`,sanitizeFn:void 0,animation:!0,delay:200,container:document.body,content:``,dismissible:!1,btnClose:``},p=`data-original-title`,m=`Tooltip`,h=(t,n,r)=>{if(e.b(n)&&n.length){let i=n.trim();e.St(r)&&(i=r(i));let a=new DOMParser().parseFromString(i,`text/html`);t.append(...a.body.childNodes)}else e.V(n)?t.append(n):(e.N(n)||e.k(n)&&n.every(e.mt))&&t.append(...n)},g=n=>{let r=n.name===m,{id:i,element:a,options:s}=n,{title:l,placement:d,template:f,animation:p,customClass:g,sanitizeFn:_,dismissible:v,content:y,btnClose:b}=s,x=r?c:o,S={...u},C=[],w=[];e.h(a)&&(S.left=`end`,S.right=`start`);let T=`bs-${x}-${S[d]}`,E;if(e.V(f))E=f;else{let t=e.ut(`div`);h(t,f,_),E=t.firstChild}if(!e.V(E))return;n.tooltip=E.cloneNode(!0);let{tooltip:D}=n;e.E(D,`id`,i),e.E(D,`role`,c);let O=r?`${c}-inner`:`${o}-body`,k=r?null:e.P(`.${o}-header`,D),A=e.P(`.${O}`,D);n.arrow=e.P(`.${x}-arrow`,D);let{arrow:j}=n;if(e.V(l))C=[l.cloneNode(!0)];else{let t=e.ut(`div`);h(t,l,_),C=[...[...t.childNodes]]}if(e.V(y))w=[y.cloneNode(!0)];else{let t=e.ut(`div`);h(t,y,_),w=[...[...t.childNodes]]}if(v)if(l)if(e.V(b))C=[...C,b.cloneNode(!0)];else{let t=e.ut(`div`);h(t,b,_),C=[...C,t.firstChild]}else if(k&&k.remove(),e.V(b))w=[...w,b.cloneNode(!0)];else{let t=e.ut(`div`);h(t,b,_),w=[...w,t.firstChild]}r?l&&A&&h(A,l,_):(l&&k&&h(k,C,_),y&&A&&h(A,w,_),n.btn=e.P(`.btn-close`,D)||void 0),e.m(D,`position-absolute`),e.m(j,`position-absolute`),e.R(D,x)||e.m(D,x),p&&!e.R(D,`fade`)&&e.m(D,t.t),g&&!e.R(D,g)&&e.m(D,g),e.R(D,T)||e.m(D,T)},_=t=>{let n=[`HTML`,`BODY`],r=[],{parentNode:i}=t;for(;i&&!n.includes(i.nodeName);)i=e.it(i),e.at(i)||e.H(i)||r.push(i);return r.find((t,n)=>(e.Y(t,`position`)!==`relative`||e.Y(t,`position`)===`relative`&&t.offsetHeight!==t.scrollHeight)&&r.slice(n+1).every(t=>e.Y(t,`position`)===`static`)?t:null)||e.K(t).body},v=`[${r.t}="${c}"],[data-tip="${c}"]`,y=`title`,b=t=>e.pt(t,m),x=e=>new A(e),S=t=>{let{element:n,tooltip:r,container:i}=t;e.v(n,e.y),a.r(r,i)},C=e=>{let{tooltip:t,container:n}=e;return t&&a.n(t,n)},w=(t,n)=>{let{element:r}=t;t._toggleEventListeners(),e.st(r,`data-original-title`)&&t.name===`Tooltip`&&k(t),n&&n()},T=(t,n)=>{let r=n?e.n:e.r,{element:i}=t;r(e.K(i),e.O,t.handleTouch,e._t)},E=t=>{let{element:n}=t,r=e.ot(`shown.bs.${e.wt(t.name)}`);T(t,!0),e.I(n,r),e.$.clear(n,`in`)},D=t=>{let{element:n}=t,r=e.ot(`hidden.bs.${e.wt(t.name)}`);T(t),S(t),e.I(n,r),e.$.clear(n,`out`)},O=(t,n)=>{let r=n?e.n:e.r,{element:i,tooltip:o}=t,s=e.x(i,`.${a.a}`),c=e.x(i,`.${a.i}`);n?[i,o].forEach(e=>t._observer.observe(e)):t._observer.disconnect(),s&&r(s,`hide.bs.${a.a}`,t.handleHide),c&&r(c,`hide.bs.${a.i}`,t.handleHide)},k=(t,n)=>{let r=[p,y],{element:i}=t;e.E(i,r[n?0:1],n||e._(i,r[0])||``),e.v(i,r[n?1:0])},A=class extends e.t{static selector=v;static init=x;static getInstance=b;static styleTip=d;constructor(t,n){super(t,n);let{element:r}=this,a=this.name===m,l=a?c:o,u=a?m:s;b=t=>e.pt(t,u),this.enabled=!0,this.id=`${l}-${e.i(r,l)}`;let{options:d}=this;if(!d.title&&a||!a&&!d.content)return;e.j(f,{titleAttr:``}),e.st(r,y)&&a&&typeof d.title==`string`&&k(this,d.title);let p=_(r),h=[`sticky`,`fixed`,`relative`].some(t=>e.Y(p,`position`)===t)?p:e.gt(r);this.container=p,this.offsetParent=h,g(this),this.tooltip&&(this._observer=new i.t(()=>this.update()),this._toggleEventListeners(!0))}get name(){return m}get defaults(){return f}handleFocus=()=>e.z(this.element);handleShow=()=>this.show();show(){let{options:t,tooltip:r,element:i,container:o,id:s}=this,{animation:c}=t,l=e.$.get(i,`out`);e.$.clear(i,`out`),r&&!l&&!C(this)&&e.$.set(i,()=>{let t=e.ot(`show.bs.${e.wt(this.name)}`);e.I(i,t),t.defaultPrevented||(a.t(r,o),e.E(i,e.y,`#${s}`),this.update(),O(this,!0),e.R(r,`show`)||e.m(r,n.t),c?e.ft(r,()=>E(this)):E(this))},17,`in`)}handleHide=()=>this.hide();hide(){let{options:t,tooltip:r,element:i}=this,{animation:a,delay:o}=t;e.$.clear(i,`in`),r&&C(this)&&e.$.set(i,()=>{let t=e.ot(`hide.bs.${e.wt(this.name)}`);e.I(i,t),t.defaultPrevented||(this.update(),e.L(r,n.t),O(this),a?e.ft(r,()=>D(this)):D(this))},o+17,`out`)}update=()=>{d(this)};toggle=()=>{let{tooltip:e}=this;e&&!C(this)?this.show():this.hide()};enable(){let{enabled:e}=this;e||(this._toggleEventListeners(!0),this.enabled=!e)}disable(){let{tooltip:e,enabled:t}=this;t&&(e&&C(this)&&this.hide(),this._toggleEventListeners(),this.enabled=!t)}toggleEnabled(){this.enabled?this.disable():this.enable()}handleTouch=({target:e})=>{let{tooltip:t,element:n}=this;t&&t.contains(e)||e===n||e&&n.contains(e)||this.hide()};_toggleEventListeners=t=>{let n=t?e.n:e.r,{element:r,options:i,btn:a}=this,{trigger:o}=i,s=!!(this.name!==`Tooltip`&&i.dismissible);o.includes(`manual`)||(this.enabled=!!t,o.split(` `).forEach(t=>{t===`hover`?(n(r,e.f,this.handleShow),n(r,e.bt,this.handleShow),s||(n(r,e.o,this.handleHide),n(e.K(r),e.O,this.handleTouch,e._t))):t===`click`?n(r,t,s?this.handleShow:this.toggle):t===`focus`&&(n(r,e.B,this.handleShow),s||n(r,e.tt,this.handleHide),e.Et()&&n(r,e.vt,this.handleFocus)),s&&a&&n(a,e.vt,this.handleHide)}))};dispose(){let{tooltip:t,options:n}=this,r={...this,name:this.name},i=()=>setTimeout(()=>w(r,()=>super.dispose()),17);n.animation&&C(r)?(this.options.delay=0,this.hide(),e.ft(t,i)):i()}};Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return A}}); +//# sourceMappingURL=tooltip-BUNhKri3.js.map \ No newline at end of file diff --git a/dist/components/tooltip-BUNhKri3.js.map b/dist/components/tooltip-BUNhKri3.js.map new file mode 100644 index 00000000..2de5fbc9 --- /dev/null +++ b/dist/components/tooltip-BUNhKri3.js.map @@ -0,0 +1 @@ +{"version":3,"file":"tooltip-BUNhKri3.js","names":[],"sources":["../../src/strings/popoverString.ts","../../src/strings/popoverComponent.ts","../../src/strings/tooltipString.ts","../../src/util/getTipTemplate.ts","../../src/util/tipClassPositions.ts","../../src/util/styleTip.ts","../../src/util/tooltipDefaults.ts","../../src/strings/dataOriginalTitle.ts","../../src/strings/tooltipComponent.ts","../../src/util/setHtml.ts","../../src/util/createTip.ts","../../src/util/getElementContainer.ts","../../src/components/tooltip.ts"],"sourcesContent":["/** @type {string} */\nconst popoverString = \"popover\";\nexport default popoverString;\n","/** @type {string} */\nconst popoverComponent = \"Popover\";\nexport default popoverComponent;\n","/** @type {string} */\nconst tooltipString = \"tooltip\";\nexport default tooltipString;\n","import tooltipString from \"../strings/tooltipString\";\n\n/**\n * Returns a template for Popover / Tooltip.\n *\n * @param tipType the expected markup type\n * @returns the template markup\n */\nconst getTipTemplate = (tipType: string) => {\n const isTooltip = tipType === tooltipString;\n const bodyClass = isTooltip ? `${tipType}-inner` : `${tipType}-body`;\n const header = !isTooltip ? `

` : \"\";\n const arrow = `
`;\n const body = `
`;\n return `
${\n header + arrow + body\n }
`;\n};\n\nexport default getTipTemplate;\n","const tipClassPositions = {\n top: \"top\",\n bottom: \"bottom\",\n left: \"start\",\n right: \"end\",\n};\n\nexport default tipClassPositions;\n","import {\n createCustomEvent,\n dispatchEvent,\n getBoundingClientRect,\n getDocumentElement,\n getElementStyle,\n getNodeScroll,\n getRectRelativeToOffsetParent,\n isHTMLElement,\n isRTL,\n setElementStyle,\n toLowerCase,\n} from \"@thednp/shorty\";\n\nimport tipClassPositions from \"./tipClassPositions\";\nimport Tooltip from \"../components/tooltip\";\nimport type { TooltipEvent } from \"../interface/tooltip\";\nimport type { PopoverEvent } from \"../interface/popover\";\n\n/**\n * Style popovers and tooltips.\n *\n * @param self the `Popover` / `Tooltip` instance\n */\nconst styleTip = (self: Tooltip) => {\n requestAnimationFrame(() => {\n const tipClasses = /\\b(top|bottom|start|end)+/;\n const { element, tooltip, container, offsetParent, options, arrow } = self;\n\n // istanbul ignore if @preserve\n if (!tooltip) return;\n const RTL = isRTL(element);\n const { x: scrollLeft, y: scrollTop } = getNodeScroll(offsetParent);\n\n // reset tooltip style (top: 0, left: 0 works best)\n setElementStyle(tooltip, {\n top: \"\",\n left: \"\",\n right: \"\",\n bottom: \"\",\n });\n const { offsetWidth: tipWidth, offsetHeight: tipHeight } = tooltip;\n const { clientWidth: htmlcw, clientHeight: htmlch, offsetWidth: htmlow } =\n getDocumentElement(element);\n let { placement } = options;\n const { clientWidth: parentCWidth, offsetWidth: parentOWidth } = container;\n const parentPosition = getElementStyle(\n container,\n \"position\",\n );\n const fixedParent = parentPosition === \"fixed\";\n const scrollbarWidth = fixedParent\n ? Math.abs(parentCWidth - parentOWidth)\n : Math.abs(htmlcw - htmlow);\n const leftBoundry = RTL && fixedParent\n ? /* istanbul ignore next @preserve */ scrollbarWidth\n : 0;\n const rightBoundry = htmlcw - (!RTL ? scrollbarWidth : 0) - 1;\n\n // reuse observer entry bounding box\n const observerEntry = self._observer.getEntry(element);\n const {\n width: elemWidth,\n height: elemHeight,\n left: elemRectLeft,\n right: elemRectRight,\n top: elemRectTop,\n } = observerEntry?.boundingClientRect ||\n getBoundingClientRect(element, true);\n\n const {\n x: elemOffsetLeft,\n y: elemOffsetTop,\n } = getRectRelativeToOffsetParent(\n element,\n offsetParent,\n { x: scrollLeft, y: scrollTop },\n );\n\n // reset arrow style\n setElementStyle(arrow as HTMLElement, {\n top: \"\",\n left: \"\",\n right: \"\",\n bottom: \"\",\n });\n let topPosition: number | string = 0;\n let bottomPosition: number | string = \"\";\n let leftPosition: number | string = 0;\n let rightPosition: number | string = \"\";\n let arrowTop: number | string = \"\";\n let arrowLeft: number | string = \"\";\n let arrowRight: number | string = \"\";\n\n const arrowWidth = arrow.offsetWidth || 0;\n const arrowHeight = arrow.offsetHeight || 0;\n const arrowAdjust = arrowWidth / 2;\n\n // check placement\n let topExceed = elemRectTop - tipHeight - arrowHeight < 0;\n let bottomExceed =\n elemRectTop + tipHeight + elemHeight + arrowHeight >= htmlch;\n let leftExceed = elemRectLeft - tipWidth - arrowWidth < leftBoundry;\n let rightExceed =\n elemRectLeft + tipWidth + elemWidth + arrowWidth >= rightBoundry;\n\n const horizontals = [\"left\", \"right\"];\n const verticals = [\"top\", \"bottom\"];\n\n topExceed = horizontals.includes(placement)\n ? elemRectTop + elemHeight / 2 - tipHeight / 2 - arrowHeight < 0\n : topExceed;\n bottomExceed = horizontals.includes(placement)\n ? elemRectTop + tipHeight / 2 + elemHeight / 2 + arrowHeight >= htmlch\n : bottomExceed;\n leftExceed = verticals.includes(placement)\n ? elemRectLeft + elemWidth / 2 - tipWidth / 2 < leftBoundry\n : leftExceed;\n rightExceed = verticals.includes(placement)\n ? elemRectLeft + tipWidth / 2 + elemWidth / 2 >= rightBoundry\n : rightExceed;\n\n // first remove side positions if both left and right limits are exceeded\n // we usually fall back to top|bottom\n placement = horizontals.includes(placement) && leftExceed && rightExceed\n ? \"top\"\n : placement;\n // recompute placement\n placement = placement === \"top\" && topExceed ? \"bottom\" : placement;\n placement = placement === \"bottom\" && bottomExceed ? \"top\" : placement;\n placement = placement === \"left\" && leftExceed ? \"right\" : placement;\n placement = placement === \"right\" && rightExceed\n ? \"left\"\n // istanbul ignore next @preserve\n : placement;\n\n // update tooltip/popover class\n // istanbul ignore else @preserve\n if (!tooltip.className.includes(placement)) {\n tooltip.className = tooltip.className.replace(\n tipClasses,\n tipClassPositions[placement],\n );\n }\n\n // compute tooltip / popover coordinates\n // istanbul ignore else @preserve\n if (horizontals.includes(placement)) {\n // secondary|side positions\n if (placement === \"left\") {\n // LEFT\n leftPosition = elemOffsetLeft - tipWidth - arrowWidth;\n } else {\n // RIGHT\n leftPosition = elemOffsetLeft + elemWidth + arrowWidth;\n }\n\n // adjust top and arrow\n if (topExceed && bottomExceed) {\n topPosition = 0;\n bottomPosition = 0;\n arrowTop = elemOffsetTop + elemHeight / 2 - arrowHeight / 2;\n } else if (topExceed) {\n topPosition = elemOffsetTop;\n bottomPosition = \"\";\n arrowTop = elemHeight / 2 - arrowWidth;\n } else if (bottomExceed) {\n topPosition = elemOffsetTop - tipHeight + elemHeight;\n bottomPosition = \"\";\n arrowTop = tipHeight - elemHeight / 2 - arrowWidth;\n } else {\n topPosition = elemOffsetTop - tipHeight / 2 + elemHeight / 2;\n arrowTop = tipHeight / 2 - arrowHeight / 2;\n }\n } else if (verticals.includes(placement)) {\n if (placement === \"top\") {\n topPosition = elemOffsetTop - tipHeight - arrowHeight;\n } else {\n // BOTTOM\n topPosition = elemOffsetTop + elemHeight + arrowHeight;\n }\n\n // adjust left | right and also the arrow\n if (leftExceed) {\n leftPosition = 0;\n arrowLeft = elemOffsetLeft + elemWidth / 2 - arrowAdjust;\n } else if (rightExceed) {\n leftPosition = \"auto\";\n rightPosition = 0;\n arrowRight = elemWidth / 2 + rightBoundry - elemRectRight - arrowAdjust;\n } else {\n leftPosition = elemOffsetLeft - tipWidth / 2 + elemWidth / 2;\n arrowLeft = tipWidth / 2 - arrowAdjust;\n }\n }\n\n // apply style to tooltip/popover\n setElementStyle(tooltip, {\n top: `${topPosition}px`,\n bottom: bottomPosition === \"\" ? \"\" : `${bottomPosition}px`,\n left: leftPosition === \"auto\" ? leftPosition : `${leftPosition}px`,\n right: rightPosition !== \"\" ? `${rightPosition}px` : \"\",\n });\n\n // update arrow placement\n // istanbul ignore else @preserve\n if (isHTMLElement(arrow)) {\n if (arrowTop !== \"\") {\n arrow.style.top = `${arrowTop}px`;\n }\n if (arrowLeft !== \"\") {\n arrow.style.left = `${arrowLeft}px`;\n } else if (arrowRight !== \"\") {\n arrow.style.right = `${arrowRight}px`;\n }\n }\n const updatedTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `updated.bs.${toLowerCase(self.name)}`,\n );\n dispatchEvent(element, updatedTooltipEvent);\n });\n};\n\nexport default styleTip;\n","import getTipTemplate from \"./getTipTemplate\";\nimport tooltipString from \"../strings/tooltipString\";\nimport { TooltipOptions } from \"../interface/tooltip\";\n\nconst tooltipDefaults: TooltipOptions = {\n template: getTipTemplate(tooltipString),\n title: \"\",\n customClass: \"\",\n trigger: \"hover focus\",\n placement: \"top\",\n sanitizeFn: undefined,\n animation: true,\n delay: 200,\n container: document.body,\n content: \"\",\n dismissible: false,\n btnClose: \"\",\n};\nexport default tooltipDefaults;\n","/**\n * Global namespace for `data-bs-title` attribute.\n */\nconst dataOriginalTitle = \"data-original-title\";\nexport default dataOriginalTitle;\n","/** @type {string} */\nconst tooltipComponent = \"Tooltip\";\nexport default tooltipComponent;\n","import {\n isArray,\n isFunction,\n isHTMLElement,\n isNode,\n isNodeList,\n isString,\n} from \"@thednp/shorty\";\n\n/**\n * Append an existing `Element` to Popover / Tooltip component or HTML\n * markup string to be parsed & sanitized to be used as popover / tooltip content.\n *\n * @param element target\n * @param content the `Element` to append / string\n * @param sanitizeFn a function to sanitize string content\n */\nconst setHtml = (\n element: HTMLElement,\n content: Node[] | Node | string,\n sanitizeFn?: (s: string) => string,\n) => {\n // istanbul ignore else @preserve\n if (isString(content) && content.length) {\n let dirty = content.trim(); // fixing #233\n if (isFunction(sanitizeFn)) dirty = sanitizeFn(dirty);\n\n const domParser = new DOMParser();\n const tempDocument = domParser.parseFromString(dirty, \"text/html\");\n element.append(...[...tempDocument.body.childNodes]);\n } else if (isHTMLElement(content)) {\n element.append(content);\n } else if (\n isNodeList(content) || (isArray(content) && content.every(isNode))\n ) {\n element.append(...[...content]);\n }\n};\nexport default setHtml;\n","import {\n addClass,\n createElement,\n hasClass,\n isHTMLElement,\n isRTL,\n querySelector,\n setAttribute,\n} from \"@thednp/shorty\";\n\nimport tooltipComponent from \"../strings/tooltipComponent\";\nimport tooltipString from \"../strings/tooltipString\";\nimport popoverString from \"../strings/popoverString\";\nimport fadeClass from \"../strings/fadeClass\";\nimport tipClassPositions from \"./tipClassPositions\";\nimport setHtml from \"./setHtml\";\nimport Tooltip from \"../components/tooltip\";\nimport Popover from \"../components/popover\";\n\n/**\n * Creates a new tooltip / popover.\n *\n * @param self the `Tooltip` / `Popover` instance\n */\nconst createTip = (self: Tooltip | Popover) => {\n const isTooltip = self.name === tooltipComponent;\n\n const { id, element, options } = self;\n const {\n title,\n placement,\n template,\n animation,\n customClass,\n sanitizeFn,\n dismissible,\n content,\n btnClose,\n } = options;\n const tipString = isTooltip ? tooltipString : popoverString;\n const tipPositions = { ...tipClassPositions };\n let titleParts: Node[] = [];\n let contentParts: Node[] = [];\n\n if (isRTL(element)) {\n tipPositions.left = \"end\";\n tipPositions.right = \"start\";\n }\n\n // set initial popover class\n const placementClass = `bs-${tipString}-${tipPositions[placement]}`;\n\n // load template\n let tooltipTemplate: Node | string;\n if (isHTMLElement(template)) {\n tooltipTemplate = template;\n } else {\n const htmlMarkup = createElement(\"div\") as HTMLElement;\n setHtml(htmlMarkup, template, sanitizeFn);\n tooltipTemplate = htmlMarkup.firstChild as HTMLElement;\n }\n\n /* istanbul ignore if @preserve */\n if (!isHTMLElement(tooltipTemplate)) return;\n\n // set popover markup\n self.tooltip = tooltipTemplate.cloneNode(true) as HTMLElement;\n const { tooltip } = self;\n\n // set id and role attributes\n setAttribute(tooltip, \"id\", id);\n setAttribute(tooltip, \"role\", tooltipString);\n\n const bodyClass = isTooltip\n ? `${tooltipString}-inner`\n : `${popoverString}-body`;\n const tooltipHeader = isTooltip\n ? null\n : querySelector(`.${popoverString}-header`, tooltip);\n const tooltipBody = querySelector(`.${bodyClass}`, tooltip);\n\n // set arrow and enable access for styleTip\n self.arrow = querySelector(\n `.${tipString}-arrow`,\n tooltip,\n ) as HTMLElement;\n const { arrow } = self;\n\n if (isHTMLElement(title)) titleParts = [title.cloneNode(true)];\n else {\n const tempTitle = createElement(\"div\") as HTMLElement;\n setHtml(tempTitle, title, sanitizeFn);\n titleParts = [...[...tempTitle.childNodes]];\n }\n\n if (isHTMLElement(content)) contentParts = [content.cloneNode(true)];\n else {\n const tempContent = createElement(\"div\") as HTMLElement;\n setHtml(tempContent, content, sanitizeFn);\n contentParts = [...[...tempContent.childNodes]];\n }\n\n // set dismissible button\n if (dismissible) {\n if (title) {\n if (isHTMLElement(btnClose)) {\n titleParts = [...titleParts, btnClose.cloneNode(true)];\n } else {\n const tempBtn = createElement(\"div\") as HTMLElement;\n setHtml(tempBtn, btnClose, sanitizeFn);\n titleParts = [...titleParts, tempBtn.firstChild as Node];\n }\n } else {\n // istanbul ignore else @preserve\n if (tooltipHeader) tooltipHeader.remove();\n if (isHTMLElement(btnClose)) {\n contentParts = [...contentParts, btnClose.cloneNode(true)];\n } else {\n const tempBtn = createElement(\"div\") as HTMLElement;\n setHtml(tempBtn, btnClose, sanitizeFn);\n contentParts = [...contentParts, tempBtn.firstChild as Node];\n }\n }\n }\n\n // fill the template with content from options / data attributes\n // also sanitize title && content\n // istanbul ignore else @preserve\n if (!isTooltip) {\n // istanbul ignore else @preserve\n if (title && tooltipHeader) {\n setHtml(tooltipHeader, titleParts, sanitizeFn);\n }\n // istanbul ignore else @preserve\n if (content && tooltipBody) {\n setHtml(tooltipBody, contentParts, sanitizeFn);\n }\n // set btn\n self.btn = querySelector(\".btn-close\", tooltip) ||\n undefined;\n } else if (title && tooltipBody) setHtml(tooltipBody, title, sanitizeFn);\n\n // Bootstrap 5.2.x\n addClass(tooltip, \"position-absolute\");\n addClass(arrow, \"position-absolute\");\n\n // set popover animation and placement\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, tipString)) addClass(tooltip, tipString);\n // istanbul ignore else @preserve\n if (animation && !hasClass(tooltip, fadeClass)) {\n addClass(tooltip, fadeClass);\n }\n // istanbul ignore else @preserve\n if (customClass && !hasClass(tooltip, customClass)) {\n addClass(tooltip, customClass);\n }\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, placementClass)) addClass(tooltip, placementClass);\n};\n\nexport default createTip;\n","import {\n getDocument,\n getElementStyle,\n getParentNode,\n isShadowRoot,\n isTableElement,\n} from \"@thednp/shorty\";\n\n/**\n * Returns an `HTMLElement` to be used as default value for *options.container*\n * for `Tooltip` / `Popover` components.\n *\n * @see https://github.com/floating-ui/floating-ui\n *\n * @param element the target\n * @returns the query result\n */\nconst getElementContainer = (element: Element) => {\n const majorBlockTags = [\"HTML\", \"BODY\"];\n const containers: HTMLElement[] = [];\n let { parentNode } = element;\n\n while (parentNode && !majorBlockTags.includes(parentNode.nodeName)) {\n parentNode = getParentNode(parentNode) as HTMLElement;\n // istanbul ignore else @preserve\n if (!(isShadowRoot(parentNode) || isTableElement(parentNode))) {\n containers.push(parentNode as HTMLElement);\n }\n }\n\n return (\n containers.find((c, i) => {\n if (\n ((getElementStyle(c, \"position\") !== \"relative\" ||\n getElementStyle(c, \"position\") === \"relative\" &&\n c.offsetHeight !== c.scrollHeight) &&\n containers.slice(i + 1).every((r) =>\n getElementStyle(r, \"position\") === \"static\"\n ))\n ) {\n return c;\n }\n return null;\n }) ||\n /* istanbul ignore next: optional guard */\n getDocument(element).body\n );\n};\n\nexport default getElementContainer;\n","/* Native JavaScript for Bootstrap 5 | Tooltip\n---------------------------------------------- */\nimport {\n addClass,\n ariaDescribedBy,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focus,\n focusEvent,\n focusinEvent,\n focusoutEvent,\n getAttribute,\n getDocument,\n getElementStyle,\n getInstance,\n getUID,\n getWindow,\n hasAttribute,\n hasClass,\n isApple,\n mouseclickEvent,\n mousedownEvent,\n mouseenterEvent,\n mousehoverEvent,\n mouseleaveEvent,\n ObjectAssign,\n passiveHandler,\n removeAttribute,\n removeClass,\n setAttribute,\n Timer,\n toLowerCase,\n TouchEvent,\n touchstartEvent,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\nimport PositionObserver from \"@thednp/position-observer\";\n\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport dataOriginalTitle from \"~/strings/dataOriginalTitle\";\nimport showClass from \"~/strings/showClass\";\nimport tooltipString from \"~/strings/tooltipString\";\nimport tooltipComponent from \"~/strings/tooltipComponent\";\nimport popoverString from \"~/strings/popoverString\";\nimport popoverComponent from \"~/strings/popoverComponent\";\nimport modalString from \"~/strings/modalString\";\nimport offcanvasString from \"~/strings/offcanvasString\";\n\nimport styleTip from \"~/util/styleTip\";\nimport createTip from \"~/util/createTip\";\nimport { appendPopup, hasPopup, removePopup } from \"~/util/popupContainer\";\nimport getElementContainer from \"~/util/getElementContainer\";\nimport tooltipDefaults from \"~/util/tooltipDefaults\";\nimport BaseComponent from \"./base-component\";\nimport type { TooltipEvent, TooltipOptions } from \"~/interface/tooltip\";\nimport type { PopoverEvent, PopoverOptions } from \"~/interface/popover\";\n\n// TOOLTIP PRIVATE GC\n// ==================\nconst tooltipSelector =\n `[${dataBsToggle}=\"${tooltipString}\"],[data-tip=\"${tooltipString}\"]`;\nconst titleAttr = \"title\";\n\n/**\n * Static method which returns an existing `Tooltip` instance associated\n * to a target `Element`.\n */\nlet getTooltipInstance = (element: Element) =>\n getInstance(element, tooltipComponent);\n\n/**\n * A `Tooltip` initialization callback.\n */\nconst tooltipInitCallback = (element: Element) => new Tooltip(element);\n\n// TOOLTIP PRIVATE METHODS\n// =======================\n/**\n * Removes the tooltip from the DOM.\n *\n * @param self the `Tooltip` instance\n */\nconst removeTooltip = (self: Tooltip) => {\n const { element, tooltip, container } = self;\n removeAttribute(element, ariaDescribedBy);\n removePopup(\n tooltip,\n container,\n );\n};\n\n/**\n * Check if container contains the tooltip.\n *\n * @param self Tooltip\n */\nconst hasTip = (self: Tooltip): boolean | undefined => {\n const { tooltip, container } = self;\n\n return tooltip &&\n hasPopup(tooltip, container);\n};\n\n/**\n * Executes after the instance has been disposed.\n *\n * @param self the `Tooltip` instance\n * @param callback the parent dispose callback\n */\nconst disposeTooltipComplete = (self: Tooltip, callback?: () => void) => {\n const { element } = self;\n self._toggleEventListeners();\n\n // istanbul ignore else @preserve\n if (\n hasAttribute(element, dataOriginalTitle) && self.name === tooltipComponent\n ) {\n toggleTooltipTitle(self);\n }\n // istanbul ignore else @preserve\n if (callback) callback();\n};\n\n/**\n * Toggles on/off the special `Tooltip` event listeners.\n *\n * @param self the `Tooltip` instance\n * @param add when `true`, event listeners are added\n */\nconst toggleTooltipAction = (self: Tooltip, add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element } = self;\n\n action(\n getDocument(element),\n touchstartEvent,\n self.handleTouch,\n passiveHandler,\n );\n};\n\n/**\n * Executes after the tooltip was shown to the user.\n *\n * @param self the `Tooltip` instance\n */\nconst tooltipShownAction = (self: Tooltip) => {\n const { element } = self;\n const shownTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `shown.bs.${toLowerCase(self.name)}`,\n );\n\n toggleTooltipAction(self, true);\n dispatchEvent(element, shownTooltipEvent);\n Timer.clear(element, \"in\");\n};\n\n/**\n * Executes after the tooltip was hidden to the user.\n *\n * @param self the `Tooltip` instance\n */\nconst tooltipHiddenAction = (self: Tooltip) => {\n const { element } = self;\n const hiddenTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `hidden.bs.${toLowerCase(self.name)}`,\n );\n\n toggleTooltipAction(self);\n removeTooltip(self);\n dispatchEvent(element, hiddenTooltipEvent);\n\n Timer.clear(element, \"out\");\n};\n\n/**\n * Toggles on/off the `Tooltip` event listeners that hide/update the tooltip.\n *\n * @param self the `Tooltip` instance\n * @param add when `true`, event listeners are added\n */\nconst toggleTooltipOpenHandlers = (self: Tooltip, add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, tooltip } = self;\n const parentModal = closest(element, `.${modalString}`);\n const parentOffcanvas = closest(element, `.${offcanvasString}`);\n\n if (add) {\n [element, tooltip]\n .forEach((target) => self._observer.observe(target));\n } else self._observer.disconnect();\n\n // dismiss tooltips inside modal / offcanvas\n if (parentModal) {\n action(parentModal, `hide.bs.${modalString}`, self.handleHide);\n }\n if (parentOffcanvas) {\n action(parentOffcanvas, `hide.bs.${offcanvasString}`, self.handleHide);\n }\n};\n\n/**\n * Toggles the `title` and `data-original-title` attributes.\n *\n * @param self the `Tooltip` instance\n * @param content when `true`, event listeners are added\n */\nconst toggleTooltipTitle = (self: Tooltip, content?: string) => {\n // [0 - add, 1 - remove] | [0 - remove, 1 - add]\n const titleAtt = [dataOriginalTitle, titleAttr];\n const { element } = self;\n\n setAttribute(\n element,\n titleAtt[content ? 0 : 1],\n content ||\n getAttribute(element, titleAtt[0]) ||\n // istanbul ignore next @preserve\n \"\",\n );\n removeAttribute(element, titleAtt[content ? 1 : 0]);\n};\n\n// TOOLTIP DEFINITION\n// ==================\n/** Creates a new `Tooltip` instance. */\nexport default class Tooltip extends BaseComponent {\n static selector = tooltipSelector;\n static init = tooltipInitCallback;\n static getInstance = getTooltipInstance;\n static styleTip = styleTip;\n declare element: Element & HTMLOrSVGElement;\n declare options: TooltipOptions;\n declare btn?: HTMLElement;\n declare tooltip: HTMLElement;\n declare container: HTMLElement;\n declare offsetParent: Element | Window;\n declare arrow: HTMLElement;\n declare enabled: boolean;\n declare id: string;\n declare _observer: PositionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n\n const { element } = this;\n const isTooltip = this.name === tooltipComponent;\n const tipString = isTooltip ? tooltipString : popoverString;\n const tipComponent = isTooltip ? tooltipComponent : popoverComponent;\n\n // istanbul ignore next @preserve: this is to set Popover too\n getTooltipInstance = (elem: Element) =>\n getInstance(elem, tipComponent);\n\n // additional properties\n this.enabled = true;\n /** Set unique ID for `aria-describedby`. */\n this.id = `${tipString}-${getUID(element, tipString)}`;\n\n // instance options\n const { options } = this;\n\n // invalidate\n // istanbul ignore else @preserve\n if (((!options.title && isTooltip) || (!isTooltip && !options.content))) {\n return;\n }\n\n // reset default options\n ObjectAssign(tooltipDefaults, { titleAttr: \"\" });\n\n // set title attributes and add event listeners\n // istanbul ignore else @preserve\n if (\n hasAttribute(element, titleAttr) && isTooltip &&\n typeof options.title === \"string\"\n ) {\n toggleTooltipTitle(this, options.title);\n }\n\n // set containers\n const container = getElementContainer(element);\n const offsetParent = [\"sticky\", \"fixed\", \"relative\"].some(\n (position) =>\n getElementStyle(container, \"position\") ===\n position,\n )\n ? container\n : getWindow(element);\n\n this.container = container;\n this.offsetParent = offsetParent;\n\n // create tooltip here\n createTip(this);\n\n /* istanbul ignore if @preserve */\n if (!this.tooltip) return;\n\n // create observer\n this._observer = new PositionObserver(() => this.update());\n\n // attach events\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tooltipComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return tooltipDefaults;\n }\n\n // TOOLTIP PUBLIC METHODS\n // ======================\n /** Handles the focus event on iOS. */\n // istanbul ignore next @preserve - impossible to test without Apple device\n handleFocus = () => focus(this.element as HTMLElement);\n /** Shows the tooltip. */\n handleShow = () => this.show();\n show() {\n const { options, tooltip, element, container, id } = this;\n const { animation } = options;\n const outTimer = Timer.get(element, \"out\");\n\n Timer.clear(element, \"out\");\n\n if (tooltip && !outTimer && !hasTip(this)) {\n Timer.set(\n element,\n () => {\n const showTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `show.bs.${toLowerCase(this.name)}`,\n );\n dispatchEvent(element, showTooltipEvent);\n\n // istanbul ignore else @preserve\n if (!showTooltipEvent.defaultPrevented) {\n // append to container\n appendPopup(tooltip, container);\n\n setAttribute(element, ariaDescribedBy, `#${id}`);\n\n this.update();\n toggleTooltipOpenHandlers(this, true);\n\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, showClass)) addClass(tooltip, showClass);\n // istanbul ignore else @preserve\n if (animation) {\n emulateTransitionEnd(tooltip, () => tooltipShownAction(this));\n } else tooltipShownAction(this);\n }\n },\n 17,\n \"in\",\n );\n }\n }\n\n /** Hides the tooltip. */\n handleHide = () => this.hide();\n hide() {\n const { options, tooltip, element } = this;\n const { animation, delay } = options;\n\n Timer.clear(element, \"in\");\n\n // istanbul ignore else @preserve\n if (tooltip && hasTip(this)) {\n Timer.set(\n element,\n () => {\n const hideTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `hide.bs.${toLowerCase(this.name)}`,\n );\n dispatchEvent(element, hideTooltipEvent);\n\n // istanbul ignore else @preserve\n if (!hideTooltipEvent.defaultPrevented) {\n this.update();\n removeClass(tooltip, showClass);\n toggleTooltipOpenHandlers(this);\n\n // istanbul ignore else @preserve\n if (animation) {\n emulateTransitionEnd(tooltip, () => tooltipHiddenAction(this));\n } else tooltipHiddenAction(this);\n }\n },\n delay + 17,\n \"out\",\n );\n }\n }\n\n /** Updates the tooltip position. */\n update = () => {\n styleTip(this);\n };\n\n /** Toggles the tooltip visibility. */\n toggle = () => {\n const { tooltip } = this;\n\n if (tooltip && !hasTip(this)) this.show();\n else this.hide();\n };\n\n /** Enables the tooltip. */\n enable() {\n const { enabled } = this;\n // istanbul ignore else @preserve\n if (!enabled) {\n this._toggleEventListeners(true);\n this.enabled = !enabled;\n }\n }\n\n /** Disables the tooltip. */\n disable() {\n const { tooltip, enabled } = this;\n // istanbul ignore else @preserve\n if (enabled) {\n if (tooltip && hasTip(this)) this.hide();\n this._toggleEventListeners();\n this.enabled = !enabled;\n }\n }\n\n /** Toggles the `disabled` property. */\n toggleEnabled() {\n if (!this.enabled) this.enable();\n else this.disable();\n }\n\n /**\n * Handles the `touchstart` event listener for `Tooltip`\n *\n * @this {Tooltip}\n * @param {TouchEvent} e the `Event` object\n */\n handleTouch = ({ target }: TouchEvent) => {\n const { tooltip, element } = this;\n\n // istanbul ignore if @preserve\n if (\n (tooltip && tooltip.contains(target)) ||\n target === element ||\n (target && element.contains(target))\n ) {\n // smile for ESLint\n } else {\n this.hide();\n }\n };\n\n /**\n * Toggles on/off the `Tooltip` event listeners.\n *\n * @param add when `true`, event listeners are added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n // btn is only for dismissible popover\n const { element, options, btn } = this;\n const { trigger } = options;\n const isPopover = this.name !== tooltipComponent;\n const dismissible = isPopover && (options as PopoverOptions).dismissible\n ? true\n : false;\n\n // istanbul ignore else @preserve\n if (!trigger.includes(\"manual\")) {\n this.enabled = !!add;\n\n const triggerOptions = trigger.split(\" \");\n\n triggerOptions.forEach((tr) => {\n // istanbul ignore else @preserve\n if (tr === mousehoverEvent) {\n action(element, mousedownEvent, this.handleShow);\n action(element, mouseenterEvent, this.handleShow);\n\n // istanbul ignore else @preserve\n if (!dismissible) {\n action(element, mouseleaveEvent, this.handleHide);\n action(\n getDocument(element),\n touchstartEvent,\n this.handleTouch,\n passiveHandler,\n );\n }\n } else if (tr === mouseclickEvent) {\n action(element, tr, !dismissible ? this.toggle : this.handleShow);\n } else if (tr === focusEvent) {\n action(element, focusinEvent, this.handleShow);\n // istanbul ignore else @preserve\n if (!dismissible) action(element, focusoutEvent, this.handleHide);\n // istanbul ignore else @preserve\n if (isApple()) {\n action(element, mouseclickEvent, this.handleFocus);\n }\n }\n // istanbul ignore else @preserve\n if (dismissible && btn) {\n action(btn, mouseclickEvent, this.handleHide);\n }\n });\n }\n };\n\n /** Removes the `Tooltip` from the target element. */\n dispose() {\n const { tooltip, options } = this;\n const clone = { ...this, name: this.name };\n const callback = () =>\n setTimeout(\n () => disposeTooltipComplete(clone, () => super.dispose()),\n 17,\n );\n\n if (options.animation && hasTip(clone)) {\n this.options.delay = 0; // reset delay\n this.hide();\n emulateTransitionEnd(tooltip, callback);\n } else {\n callback();\n }\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/tooltip-D4dIPTdQ.mjs b/dist/components/tooltip-D4dIPTdQ.mjs new file mode 100644 index 00000000..646ec5e6 --- /dev/null +++ b/dist/components/tooltip-D4dIPTdQ.mjs @@ -0,0 +1,211 @@ +import { $ as e, B as t, Ct as n, E as r, Et as i, H as a, I as o, K as s, L as c, N as l, O as u, P as d, R as f, S as p, St as m, V as h, Y as g, _, _t as v, at as y, b, bt as x, c as ee, d as S, f as C, ft as w, gt as T, h as te, i as E, it as ne, j as re, k as D, m as O, mt as k, n as ie, o as A, ot as j, pt as M, r as N, st as P, t as F, tt as I, ut as L, v as R, vt as z, wt as B, x as V, y as H, yt as ae, z as U } from "./base-component-Bm8KwB_I.mjs"; +import { t as oe } from "./fadeClass-Bzjdr13Y.mjs"; +import { t as W } from "./showClass-CH6sh0pm.mjs"; +import { t as G } from "./dataBsToggle-CeJMDTHb.mjs"; +import { t as K } from "./dist-CAr49AgA.mjs"; +import { a as q, i as J, n as se, r as ce, t as le } from "./popupContainer-cXLEqUgV.mjs"; +//#region src/strings/popoverString.ts +var Y = "popover", ue = "Popover", X = "tooltip", de = (e) => { + let t = e === X, n = t ? `${e}-inner` : `${e}-body`, r = t ? "" : `

`, i = `
`, a = `
`; + return `
${r + i + a}
`; +}, fe = { + top: "top", + bottom: "bottom", + left: "start", + right: "end" +}, pe = (e) => { + requestAnimationFrame(() => { + let t = /\b(top|bottom|start|end)+/, { element: r, tooltip: i, container: a, offsetParent: s, options: c, arrow: l } = e; + if (!i) return; + let u = te(r), { x: d, y: f } = p(s); + S(i, { + top: "", + left: "", + right: "", + bottom: "" + }); + let { offsetWidth: m, offsetHeight: _ } = i, { clientWidth: v, clientHeight: y, offsetWidth: b } = ae(r), { placement: x } = c, { clientWidth: C, offsetWidth: w } = a, T = g(a, "position") === "fixed", E = T ? Math.abs(C - w) : Math.abs(v - b), ne = u && T ? E : 0, re = v - (u ? 0 : E) - 1, { width: D, height: O, left: k, right: ie, top: A } = e._observer.getEntry(r)?.boundingClientRect || n(r, !0), { x: M, y: N } = ee(r, s, { + x: d, + y: f + }); + S(l, { + top: "", + left: "", + right: "", + bottom: "" + }); + let P = 0, F = "", I = 0, L = "", R = "", z = "", V = "", H = l.offsetWidth || 0, U = l.offsetHeight || 0, oe = H / 2, W = A - _ - U < 0, G = A + _ + O + U >= y, K = k - m - H < ne, q = k + m + D + H >= re, J = ["left", "right"], se = ["top", "bottom"]; + W = J.includes(x) ? A + O / 2 - _ / 2 - U < 0 : W, G = J.includes(x) ? A + _ / 2 + O / 2 + U >= y : G, K = se.includes(x) ? k + D / 2 - m / 2 < ne : K, q = se.includes(x) ? k + m / 2 + D / 2 >= re : q, x = J.includes(x) && K && q ? "top" : x, x = x === "top" && W ? "bottom" : x, x = x === "bottom" && G ? "top" : x, x = x === "left" && K ? "right" : x, x = x === "right" && q ? "left" : x, i.className.includes(x) || (i.className = i.className.replace(t, fe[x])), J.includes(x) ? (I = x === "left" ? M - m - H : M + D + H, W && G ? (P = 0, F = 0, R = N + O / 2 - U / 2) : W ? (P = N, F = "", R = O / 2 - H) : G ? (P = N - _ + O, F = "", R = _ - O / 2 - H) : (P = N - _ / 2 + O / 2, R = _ / 2 - U / 2)) : se.includes(x) && (P = x === "top" ? N - _ - U : N + O + U, K ? (I = 0, z = M + D / 2 - oe) : q ? (I = "auto", L = 0, V = D / 2 + re - ie - oe) : (I = M - m / 2 + D / 2, z = m / 2 - oe)), S(i, { + top: `${P}px`, + bottom: F === "" ? "" : `${F}px`, + left: I === "auto" ? I : `${I}px`, + right: L === "" ? "" : `${L}px` + }), h(l) && (R !== "" && (l.style.top = `${R}px`), z === "" ? V !== "" && (l.style.right = `${V}px`) : l.style.left = `${z}px`), o(r, j(`updated.bs.${B(e.name)}`)); + }); +}, me = { + template: de(X), + title: "", + customClass: "", + trigger: "hover focus", + placement: "top", + sanitizeFn: void 0, + animation: !0, + delay: 200, + container: document.body, + content: "", + dismissible: !1, + btnClose: "" +}, he = "data-original-title", Z = "Tooltip", Q = (e, t, n) => { + if (b(t) && t.length) { + let r = t.trim(); + m(n) && (r = n(r)); + let i = new DOMParser().parseFromString(r, "text/html"); + e.append(...i.body.childNodes); + } else h(t) ? e.append(t) : (l(t) || D(t) && t.every(k)) && e.append(...t); +}, ge = (e) => { + let t = e.name === Z, { id: n, element: i, options: a } = e, { title: o, placement: s, template: c, animation: l, customClass: u, sanitizeFn: p, dismissible: m, content: g, btnClose: _ } = a, v = t ? X : Y, y = { ...fe }, b = [], x = []; + te(i) && (y.left = "end", y.right = "start"); + let ee = `bs-${v}-${y[s]}`, S; + if (h(c)) S = c; + else { + let e = L("div"); + Q(e, c, p), S = e.firstChild; + } + if (!h(S)) return; + e.tooltip = S.cloneNode(!0); + let { tooltip: C } = e; + r(C, "id", n), r(C, "role", X); + let w = t ? `${X}-inner` : `${Y}-body`, T = t ? null : d(`.${Y}-header`, C), E = d(`.${w}`, C); + e.arrow = d(`.${v}-arrow`, C); + let { arrow: ne } = e; + if (h(o)) b = [o.cloneNode(!0)]; + else { + let e = L("div"); + Q(e, o, p), b = [...[...e.childNodes]]; + } + if (h(g)) x = [g.cloneNode(!0)]; + else { + let e = L("div"); + Q(e, g, p), x = [...[...e.childNodes]]; + } + if (m) if (o) if (h(_)) b = [...b, _.cloneNode(!0)]; + else { + let e = L("div"); + Q(e, _, p), b = [...b, e.firstChild]; + } + else if (T && T.remove(), h(_)) x = [...x, _.cloneNode(!0)]; + else { + let e = L("div"); + Q(e, _, p), x = [...x, e.firstChild]; + } + t ? o && E && Q(E, o, p) : (o && T && Q(T, b, p), g && E && Q(E, x, p), e.btn = d(".btn-close", C) || void 0), O(C, "position-absolute"), O(ne, "position-absolute"), f(C, v) || O(C, v), l && !f(C, "fade") && O(C, oe), u && !f(C, u) && O(C, u), f(C, ee) || O(C, ee); +}, _e = (e) => { + let t = ["HTML", "BODY"], n = [], { parentNode: r } = e; + for (; r && !t.includes(r.nodeName);) r = ne(r), y(r) || a(r) || n.push(r); + return n.find((e, t) => (g(e, "position") !== "relative" || g(e, "position") === "relative" && e.offsetHeight !== e.scrollHeight) && n.slice(t + 1).every((e) => g(e, "position") === "static") ? e : null) || s(e).body; +}, ve = `[${G}="${X}"],[data-tip="${X}"]`, ye = "title", be = (e) => M(e, Z), xe = (e) => new ke(e), Se = (e) => { + let { element: t, tooltip: n, container: r } = e; + R(t, H), ce(n, r); +}, $ = (e) => { + let { tooltip: t, container: n } = e; + return t && se(t, n); +}, Ce = (e, t) => { + let { element: n } = e; + e._toggleEventListeners(), P(n, "data-original-title") && e.name === "Tooltip" && Oe(e), t && t(); +}, we = (e, t) => { + let n = t ? ie : N, { element: r } = e; + n(s(r), u, e.handleTouch, v); +}, Te = (t) => { + let { element: n } = t, r = j(`shown.bs.${B(t.name)}`); + we(t, !0), o(n, r), e.clear(n, "in"); +}, Ee = (t) => { + let { element: n } = t, r = j(`hidden.bs.${B(t.name)}`); + we(t), Se(t), o(n, r), e.clear(n, "out"); +}, De = (e, t) => { + let n = t ? ie : N, { element: r, tooltip: i } = e, a = V(r, `.${q}`), o = V(r, `.${J}`); + t ? [r, i].forEach((t) => e._observer.observe(t)) : e._observer.disconnect(), a && n(a, `hide.bs.${q}`, e.handleHide), o && n(o, `hide.bs.${J}`, e.handleHide); +}, Oe = (e, t) => { + let n = [he, ye], { element: i } = e; + r(i, n[t ? 0 : 1], t || _(i, n[0]) || ""), R(i, n[t ? 1 : 0]); +}, ke = class extends F { + static selector = ve; + static init = xe; + static getInstance = be; + static styleTip = pe; + constructor(e, t) { + super(e, t); + let { element: n } = this, r = this.name === Z, i = r ? X : Y, a = r ? Z : ue; + be = (e) => M(e, a), this.enabled = !0, this.id = `${i}-${E(n, i)}`; + let { options: o } = this; + if (!o.title && r || !r && !o.content) return; + re(me, { titleAttr: "" }), P(n, ye) && r && typeof o.title == "string" && Oe(this, o.title); + let s = _e(n), c = [ + "sticky", + "fixed", + "relative" + ].some((e) => g(s, "position") === e) ? s : T(n); + this.container = s, this.offsetParent = c, ge(this), this.tooltip && (this._observer = new K(() => this.update()), this._toggleEventListeners(!0)); + } + get name() { + return Z; + } + get defaults() { + return me; + } + handleFocus = () => U(this.element); + handleShow = () => this.show(); + show() { + let { options: t, tooltip: n, element: i, container: a, id: s } = this, { animation: c } = t, l = e.get(i, "out"); + e.clear(i, "out"), n && !l && !$(this) && e.set(i, () => { + let e = j(`show.bs.${B(this.name)}`); + o(i, e), e.defaultPrevented || (le(n, a), r(i, H, `#${s}`), this.update(), De(this, !0), f(n, "show") || O(n, W), c ? w(n, () => Te(this)) : Te(this)); + }, 17, "in"); + } + handleHide = () => this.hide(); + hide() { + let { options: t, tooltip: n, element: r } = this, { animation: i, delay: a } = t; + e.clear(r, "in"), n && $(this) && e.set(r, () => { + let e = j(`hide.bs.${B(this.name)}`); + o(r, e), e.defaultPrevented || (this.update(), c(n, W), De(this), i ? w(n, () => Ee(this)) : Ee(this)); + }, a + 17, "out"); + } + update = () => { + pe(this); + }; + toggle = () => { + let { tooltip: e } = this; + e && !$(this) ? this.show() : this.hide(); + }; + enable() { + let { enabled: e } = this; + e || (this._toggleEventListeners(!0), this.enabled = !e); + } + disable() { + let { tooltip: e, enabled: t } = this; + t && (e && $(this) && this.hide(), this._toggleEventListeners(), this.enabled = !t); + } + toggleEnabled() { + this.enabled ? this.disable() : this.enable(); + } + handleTouch = ({ target: e }) => { + let { tooltip: t, element: n } = this; + t && t.contains(e) || e === n || e && n.contains(e) || this.hide(); + }; + _toggleEventListeners = (e) => { + let n = e ? ie : N, { element: r, options: a, btn: o } = this, { trigger: c } = a, l = !!(this.name !== "Tooltip" && a.dismissible); + c.includes("manual") || (this.enabled = !!e, c.split(" ").forEach((e) => { + e === "hover" ? (n(r, C, this.handleShow), n(r, x, this.handleShow), l || (n(r, A, this.handleHide), n(s(r), u, this.handleTouch, v))) : e === "click" ? n(r, e, l ? this.handleShow : this.toggle) : e === "focus" && (n(r, t, this.handleShow), l || n(r, I, this.handleHide), i() && n(r, z, this.handleFocus)), l && o && n(o, z, this.handleHide); + })); + }; + dispose() { + let { tooltip: e, options: t } = this, n = { + ...this, + name: this.name + }, r = () => setTimeout(() => Ce(n, () => super.dispose()), 17); + t.animation && $(n) ? (this.options.delay = 0, this.hide(), w(e, r)) : r(); + } +}; +//#endregion +export { ue as a, de as i, me as n, Y as o, pe as r, ke as t }; + +//# sourceMappingURL=tooltip-D4dIPTdQ.mjs.map \ No newline at end of file diff --git a/dist/components/tooltip-D4dIPTdQ.mjs.map b/dist/components/tooltip-D4dIPTdQ.mjs.map new file mode 100644 index 00000000..1a00734f --- /dev/null +++ b/dist/components/tooltip-D4dIPTdQ.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"tooltip-D4dIPTdQ.mjs","names":[],"sources":["../../src/strings/popoverString.ts","../../src/strings/popoverComponent.ts","../../src/strings/tooltipString.ts","../../src/util/getTipTemplate.ts","../../src/util/tipClassPositions.ts","../../src/util/styleTip.ts","../../src/util/tooltipDefaults.ts","../../src/strings/dataOriginalTitle.ts","../../src/strings/tooltipComponent.ts","../../src/util/setHtml.ts","../../src/util/createTip.ts","../../src/util/getElementContainer.ts","../../src/components/tooltip.ts"],"sourcesContent":["/** @type {string} */\nconst popoverString = \"popover\";\nexport default popoverString;\n","/** @type {string} */\nconst popoverComponent = \"Popover\";\nexport default popoverComponent;\n","/** @type {string} */\nconst tooltipString = \"tooltip\";\nexport default tooltipString;\n","import tooltipString from \"../strings/tooltipString\";\n\n/**\n * Returns a template for Popover / Tooltip.\n *\n * @param tipType the expected markup type\n * @returns the template markup\n */\nconst getTipTemplate = (tipType: string) => {\n const isTooltip = tipType === tooltipString;\n const bodyClass = isTooltip ? `${tipType}-inner` : `${tipType}-body`;\n const header = !isTooltip ? `

` : \"\";\n const arrow = `
`;\n const body = `
`;\n return `
${\n header + arrow + body\n }
`;\n};\n\nexport default getTipTemplate;\n","const tipClassPositions = {\n top: \"top\",\n bottom: \"bottom\",\n left: \"start\",\n right: \"end\",\n};\n\nexport default tipClassPositions;\n","import {\n createCustomEvent,\n dispatchEvent,\n getBoundingClientRect,\n getDocumentElement,\n getElementStyle,\n getNodeScroll,\n getRectRelativeToOffsetParent,\n isHTMLElement,\n isRTL,\n setElementStyle,\n toLowerCase,\n} from \"@thednp/shorty\";\n\nimport tipClassPositions from \"./tipClassPositions\";\nimport Tooltip from \"../components/tooltip\";\nimport type { TooltipEvent } from \"../interface/tooltip\";\nimport type { PopoverEvent } from \"../interface/popover\";\n\n/**\n * Style popovers and tooltips.\n *\n * @param self the `Popover` / `Tooltip` instance\n */\nconst styleTip = (self: Tooltip) => {\n requestAnimationFrame(() => {\n const tipClasses = /\\b(top|bottom|start|end)+/;\n const { element, tooltip, container, offsetParent, options, arrow } = self;\n\n // istanbul ignore if @preserve\n if (!tooltip) return;\n const RTL = isRTL(element);\n const { x: scrollLeft, y: scrollTop } = getNodeScroll(offsetParent);\n\n // reset tooltip style (top: 0, left: 0 works best)\n setElementStyle(tooltip, {\n top: \"\",\n left: \"\",\n right: \"\",\n bottom: \"\",\n });\n const { offsetWidth: tipWidth, offsetHeight: tipHeight } = tooltip;\n const { clientWidth: htmlcw, clientHeight: htmlch, offsetWidth: htmlow } =\n getDocumentElement(element);\n let { placement } = options;\n const { clientWidth: parentCWidth, offsetWidth: parentOWidth } = container;\n const parentPosition = getElementStyle(\n container,\n \"position\",\n );\n const fixedParent = parentPosition === \"fixed\";\n const scrollbarWidth = fixedParent\n ? Math.abs(parentCWidth - parentOWidth)\n : Math.abs(htmlcw - htmlow);\n const leftBoundry = RTL && fixedParent\n ? /* istanbul ignore next @preserve */ scrollbarWidth\n : 0;\n const rightBoundry = htmlcw - (!RTL ? scrollbarWidth : 0) - 1;\n\n // reuse observer entry bounding box\n const observerEntry = self._observer.getEntry(element);\n const {\n width: elemWidth,\n height: elemHeight,\n left: elemRectLeft,\n right: elemRectRight,\n top: elemRectTop,\n } = observerEntry?.boundingClientRect ||\n getBoundingClientRect(element, true);\n\n const {\n x: elemOffsetLeft,\n y: elemOffsetTop,\n } = getRectRelativeToOffsetParent(\n element,\n offsetParent,\n { x: scrollLeft, y: scrollTop },\n );\n\n // reset arrow style\n setElementStyle(arrow as HTMLElement, {\n top: \"\",\n left: \"\",\n right: \"\",\n bottom: \"\",\n });\n let topPosition: number | string = 0;\n let bottomPosition: number | string = \"\";\n let leftPosition: number | string = 0;\n let rightPosition: number | string = \"\";\n let arrowTop: number | string = \"\";\n let arrowLeft: number | string = \"\";\n let arrowRight: number | string = \"\";\n\n const arrowWidth = arrow.offsetWidth || 0;\n const arrowHeight = arrow.offsetHeight || 0;\n const arrowAdjust = arrowWidth / 2;\n\n // check placement\n let topExceed = elemRectTop - tipHeight - arrowHeight < 0;\n let bottomExceed =\n elemRectTop + tipHeight + elemHeight + arrowHeight >= htmlch;\n let leftExceed = elemRectLeft - tipWidth - arrowWidth < leftBoundry;\n let rightExceed =\n elemRectLeft + tipWidth + elemWidth + arrowWidth >= rightBoundry;\n\n const horizontals = [\"left\", \"right\"];\n const verticals = [\"top\", \"bottom\"];\n\n topExceed = horizontals.includes(placement)\n ? elemRectTop + elemHeight / 2 - tipHeight / 2 - arrowHeight < 0\n : topExceed;\n bottomExceed = horizontals.includes(placement)\n ? elemRectTop + tipHeight / 2 + elemHeight / 2 + arrowHeight >= htmlch\n : bottomExceed;\n leftExceed = verticals.includes(placement)\n ? elemRectLeft + elemWidth / 2 - tipWidth / 2 < leftBoundry\n : leftExceed;\n rightExceed = verticals.includes(placement)\n ? elemRectLeft + tipWidth / 2 + elemWidth / 2 >= rightBoundry\n : rightExceed;\n\n // first remove side positions if both left and right limits are exceeded\n // we usually fall back to top|bottom\n placement = horizontals.includes(placement) && leftExceed && rightExceed\n ? \"top\"\n : placement;\n // recompute placement\n placement = placement === \"top\" && topExceed ? \"bottom\" : placement;\n placement = placement === \"bottom\" && bottomExceed ? \"top\" : placement;\n placement = placement === \"left\" && leftExceed ? \"right\" : placement;\n placement = placement === \"right\" && rightExceed\n ? \"left\"\n // istanbul ignore next @preserve\n : placement;\n\n // update tooltip/popover class\n // istanbul ignore else @preserve\n if (!tooltip.className.includes(placement)) {\n tooltip.className = tooltip.className.replace(\n tipClasses,\n tipClassPositions[placement],\n );\n }\n\n // compute tooltip / popover coordinates\n // istanbul ignore else @preserve\n if (horizontals.includes(placement)) {\n // secondary|side positions\n if (placement === \"left\") {\n // LEFT\n leftPosition = elemOffsetLeft - tipWidth - arrowWidth;\n } else {\n // RIGHT\n leftPosition = elemOffsetLeft + elemWidth + arrowWidth;\n }\n\n // adjust top and arrow\n if (topExceed && bottomExceed) {\n topPosition = 0;\n bottomPosition = 0;\n arrowTop = elemOffsetTop + elemHeight / 2 - arrowHeight / 2;\n } else if (topExceed) {\n topPosition = elemOffsetTop;\n bottomPosition = \"\";\n arrowTop = elemHeight / 2 - arrowWidth;\n } else if (bottomExceed) {\n topPosition = elemOffsetTop - tipHeight + elemHeight;\n bottomPosition = \"\";\n arrowTop = tipHeight - elemHeight / 2 - arrowWidth;\n } else {\n topPosition = elemOffsetTop - tipHeight / 2 + elemHeight / 2;\n arrowTop = tipHeight / 2 - arrowHeight / 2;\n }\n } else if (verticals.includes(placement)) {\n if (placement === \"top\") {\n topPosition = elemOffsetTop - tipHeight - arrowHeight;\n } else {\n // BOTTOM\n topPosition = elemOffsetTop + elemHeight + arrowHeight;\n }\n\n // adjust left | right and also the arrow\n if (leftExceed) {\n leftPosition = 0;\n arrowLeft = elemOffsetLeft + elemWidth / 2 - arrowAdjust;\n } else if (rightExceed) {\n leftPosition = \"auto\";\n rightPosition = 0;\n arrowRight = elemWidth / 2 + rightBoundry - elemRectRight - arrowAdjust;\n } else {\n leftPosition = elemOffsetLeft - tipWidth / 2 + elemWidth / 2;\n arrowLeft = tipWidth / 2 - arrowAdjust;\n }\n }\n\n // apply style to tooltip/popover\n setElementStyle(tooltip, {\n top: `${topPosition}px`,\n bottom: bottomPosition === \"\" ? \"\" : `${bottomPosition}px`,\n left: leftPosition === \"auto\" ? leftPosition : `${leftPosition}px`,\n right: rightPosition !== \"\" ? `${rightPosition}px` : \"\",\n });\n\n // update arrow placement\n // istanbul ignore else @preserve\n if (isHTMLElement(arrow)) {\n if (arrowTop !== \"\") {\n arrow.style.top = `${arrowTop}px`;\n }\n if (arrowLeft !== \"\") {\n arrow.style.left = `${arrowLeft}px`;\n } else if (arrowRight !== \"\") {\n arrow.style.right = `${arrowRight}px`;\n }\n }\n const updatedTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `updated.bs.${toLowerCase(self.name)}`,\n );\n dispatchEvent(element, updatedTooltipEvent);\n });\n};\n\nexport default styleTip;\n","import getTipTemplate from \"./getTipTemplate\";\nimport tooltipString from \"../strings/tooltipString\";\nimport { TooltipOptions } from \"../interface/tooltip\";\n\nconst tooltipDefaults: TooltipOptions = {\n template: getTipTemplate(tooltipString),\n title: \"\",\n customClass: \"\",\n trigger: \"hover focus\",\n placement: \"top\",\n sanitizeFn: undefined,\n animation: true,\n delay: 200,\n container: document.body,\n content: \"\",\n dismissible: false,\n btnClose: \"\",\n};\nexport default tooltipDefaults;\n","/**\n * Global namespace for `data-bs-title` attribute.\n */\nconst dataOriginalTitle = \"data-original-title\";\nexport default dataOriginalTitle;\n","/** @type {string} */\nconst tooltipComponent = \"Tooltip\";\nexport default tooltipComponent;\n","import {\n isArray,\n isFunction,\n isHTMLElement,\n isNode,\n isNodeList,\n isString,\n} from \"@thednp/shorty\";\n\n/**\n * Append an existing `Element` to Popover / Tooltip component or HTML\n * markup string to be parsed & sanitized to be used as popover / tooltip content.\n *\n * @param element target\n * @param content the `Element` to append / string\n * @param sanitizeFn a function to sanitize string content\n */\nconst setHtml = (\n element: HTMLElement,\n content: Node[] | Node | string,\n sanitizeFn?: (s: string) => string,\n) => {\n // istanbul ignore else @preserve\n if (isString(content) && content.length) {\n let dirty = content.trim(); // fixing #233\n if (isFunction(sanitizeFn)) dirty = sanitizeFn(dirty);\n\n const domParser = new DOMParser();\n const tempDocument = domParser.parseFromString(dirty, \"text/html\");\n element.append(...[...tempDocument.body.childNodes]);\n } else if (isHTMLElement(content)) {\n element.append(content);\n } else if (\n isNodeList(content) || (isArray(content) && content.every(isNode))\n ) {\n element.append(...[...content]);\n }\n};\nexport default setHtml;\n","import {\n addClass,\n createElement,\n hasClass,\n isHTMLElement,\n isRTL,\n querySelector,\n setAttribute,\n} from \"@thednp/shorty\";\n\nimport tooltipComponent from \"../strings/tooltipComponent\";\nimport tooltipString from \"../strings/tooltipString\";\nimport popoverString from \"../strings/popoverString\";\nimport fadeClass from \"../strings/fadeClass\";\nimport tipClassPositions from \"./tipClassPositions\";\nimport setHtml from \"./setHtml\";\nimport Tooltip from \"../components/tooltip\";\nimport Popover from \"../components/popover\";\n\n/**\n * Creates a new tooltip / popover.\n *\n * @param self the `Tooltip` / `Popover` instance\n */\nconst createTip = (self: Tooltip | Popover) => {\n const isTooltip = self.name === tooltipComponent;\n\n const { id, element, options } = self;\n const {\n title,\n placement,\n template,\n animation,\n customClass,\n sanitizeFn,\n dismissible,\n content,\n btnClose,\n } = options;\n const tipString = isTooltip ? tooltipString : popoverString;\n const tipPositions = { ...tipClassPositions };\n let titleParts: Node[] = [];\n let contentParts: Node[] = [];\n\n if (isRTL(element)) {\n tipPositions.left = \"end\";\n tipPositions.right = \"start\";\n }\n\n // set initial popover class\n const placementClass = `bs-${tipString}-${tipPositions[placement]}`;\n\n // load template\n let tooltipTemplate: Node | string;\n if (isHTMLElement(template)) {\n tooltipTemplate = template;\n } else {\n const htmlMarkup = createElement(\"div\") as HTMLElement;\n setHtml(htmlMarkup, template, sanitizeFn);\n tooltipTemplate = htmlMarkup.firstChild as HTMLElement;\n }\n\n /* istanbul ignore if @preserve */\n if (!isHTMLElement(tooltipTemplate)) return;\n\n // set popover markup\n self.tooltip = tooltipTemplate.cloneNode(true) as HTMLElement;\n const { tooltip } = self;\n\n // set id and role attributes\n setAttribute(tooltip, \"id\", id);\n setAttribute(tooltip, \"role\", tooltipString);\n\n const bodyClass = isTooltip\n ? `${tooltipString}-inner`\n : `${popoverString}-body`;\n const tooltipHeader = isTooltip\n ? null\n : querySelector(`.${popoverString}-header`, tooltip);\n const tooltipBody = querySelector(`.${bodyClass}`, tooltip);\n\n // set arrow and enable access for styleTip\n self.arrow = querySelector(\n `.${tipString}-arrow`,\n tooltip,\n ) as HTMLElement;\n const { arrow } = self;\n\n if (isHTMLElement(title)) titleParts = [title.cloneNode(true)];\n else {\n const tempTitle = createElement(\"div\") as HTMLElement;\n setHtml(tempTitle, title, sanitizeFn);\n titleParts = [...[...tempTitle.childNodes]];\n }\n\n if (isHTMLElement(content)) contentParts = [content.cloneNode(true)];\n else {\n const tempContent = createElement(\"div\") as HTMLElement;\n setHtml(tempContent, content, sanitizeFn);\n contentParts = [...[...tempContent.childNodes]];\n }\n\n // set dismissible button\n if (dismissible) {\n if (title) {\n if (isHTMLElement(btnClose)) {\n titleParts = [...titleParts, btnClose.cloneNode(true)];\n } else {\n const tempBtn = createElement(\"div\") as HTMLElement;\n setHtml(tempBtn, btnClose, sanitizeFn);\n titleParts = [...titleParts, tempBtn.firstChild as Node];\n }\n } else {\n // istanbul ignore else @preserve\n if (tooltipHeader) tooltipHeader.remove();\n if (isHTMLElement(btnClose)) {\n contentParts = [...contentParts, btnClose.cloneNode(true)];\n } else {\n const tempBtn = createElement(\"div\") as HTMLElement;\n setHtml(tempBtn, btnClose, sanitizeFn);\n contentParts = [...contentParts, tempBtn.firstChild as Node];\n }\n }\n }\n\n // fill the template with content from options / data attributes\n // also sanitize title && content\n // istanbul ignore else @preserve\n if (!isTooltip) {\n // istanbul ignore else @preserve\n if (title && tooltipHeader) {\n setHtml(tooltipHeader, titleParts, sanitizeFn);\n }\n // istanbul ignore else @preserve\n if (content && tooltipBody) {\n setHtml(tooltipBody, contentParts, sanitizeFn);\n }\n // set btn\n self.btn = querySelector(\".btn-close\", tooltip) ||\n undefined;\n } else if (title && tooltipBody) setHtml(tooltipBody, title, sanitizeFn);\n\n // Bootstrap 5.2.x\n addClass(tooltip, \"position-absolute\");\n addClass(arrow, \"position-absolute\");\n\n // set popover animation and placement\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, tipString)) addClass(tooltip, tipString);\n // istanbul ignore else @preserve\n if (animation && !hasClass(tooltip, fadeClass)) {\n addClass(tooltip, fadeClass);\n }\n // istanbul ignore else @preserve\n if (customClass && !hasClass(tooltip, customClass)) {\n addClass(tooltip, customClass);\n }\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, placementClass)) addClass(tooltip, placementClass);\n};\n\nexport default createTip;\n","import {\n getDocument,\n getElementStyle,\n getParentNode,\n isShadowRoot,\n isTableElement,\n} from \"@thednp/shorty\";\n\n/**\n * Returns an `HTMLElement` to be used as default value for *options.container*\n * for `Tooltip` / `Popover` components.\n *\n * @see https://github.com/floating-ui/floating-ui\n *\n * @param element the target\n * @returns the query result\n */\nconst getElementContainer = (element: Element) => {\n const majorBlockTags = [\"HTML\", \"BODY\"];\n const containers: HTMLElement[] = [];\n let { parentNode } = element;\n\n while (parentNode && !majorBlockTags.includes(parentNode.nodeName)) {\n parentNode = getParentNode(parentNode) as HTMLElement;\n // istanbul ignore else @preserve\n if (!(isShadowRoot(parentNode) || isTableElement(parentNode))) {\n containers.push(parentNode as HTMLElement);\n }\n }\n\n return (\n containers.find((c, i) => {\n if (\n ((getElementStyle(c, \"position\") !== \"relative\" ||\n getElementStyle(c, \"position\") === \"relative\" &&\n c.offsetHeight !== c.scrollHeight) &&\n containers.slice(i + 1).every((r) =>\n getElementStyle(r, \"position\") === \"static\"\n ))\n ) {\n return c;\n }\n return null;\n }) ||\n /* istanbul ignore next: optional guard */\n getDocument(element).body\n );\n};\n\nexport default getElementContainer;\n","/* Native JavaScript for Bootstrap 5 | Tooltip\n---------------------------------------------- */\nimport {\n addClass,\n ariaDescribedBy,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focus,\n focusEvent,\n focusinEvent,\n focusoutEvent,\n getAttribute,\n getDocument,\n getElementStyle,\n getInstance,\n getUID,\n getWindow,\n hasAttribute,\n hasClass,\n isApple,\n mouseclickEvent,\n mousedownEvent,\n mouseenterEvent,\n mousehoverEvent,\n mouseleaveEvent,\n ObjectAssign,\n passiveHandler,\n removeAttribute,\n removeClass,\n setAttribute,\n Timer,\n toLowerCase,\n TouchEvent,\n touchstartEvent,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\nimport PositionObserver from \"@thednp/position-observer\";\n\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport dataOriginalTitle from \"~/strings/dataOriginalTitle\";\nimport showClass from \"~/strings/showClass\";\nimport tooltipString from \"~/strings/tooltipString\";\nimport tooltipComponent from \"~/strings/tooltipComponent\";\nimport popoverString from \"~/strings/popoverString\";\nimport popoverComponent from \"~/strings/popoverComponent\";\nimport modalString from \"~/strings/modalString\";\nimport offcanvasString from \"~/strings/offcanvasString\";\n\nimport styleTip from \"~/util/styleTip\";\nimport createTip from \"~/util/createTip\";\nimport { appendPopup, hasPopup, removePopup } from \"~/util/popupContainer\";\nimport getElementContainer from \"~/util/getElementContainer\";\nimport tooltipDefaults from \"~/util/tooltipDefaults\";\nimport BaseComponent from \"./base-component\";\nimport type { TooltipEvent, TooltipOptions } from \"~/interface/tooltip\";\nimport type { PopoverEvent, PopoverOptions } from \"~/interface/popover\";\n\n// TOOLTIP PRIVATE GC\n// ==================\nconst tooltipSelector =\n `[${dataBsToggle}=\"${tooltipString}\"],[data-tip=\"${tooltipString}\"]`;\nconst titleAttr = \"title\";\n\n/**\n * Static method which returns an existing `Tooltip` instance associated\n * to a target `Element`.\n */\nlet getTooltipInstance = (element: Element) =>\n getInstance(element, tooltipComponent);\n\n/**\n * A `Tooltip` initialization callback.\n */\nconst tooltipInitCallback = (element: Element) => new Tooltip(element);\n\n// TOOLTIP PRIVATE METHODS\n// =======================\n/**\n * Removes the tooltip from the DOM.\n *\n * @param self the `Tooltip` instance\n */\nconst removeTooltip = (self: Tooltip) => {\n const { element, tooltip, container } = self;\n removeAttribute(element, ariaDescribedBy);\n removePopup(\n tooltip,\n container,\n );\n};\n\n/**\n * Check if container contains the tooltip.\n *\n * @param self Tooltip\n */\nconst hasTip = (self: Tooltip): boolean | undefined => {\n const { tooltip, container } = self;\n\n return tooltip &&\n hasPopup(tooltip, container);\n};\n\n/**\n * Executes after the instance has been disposed.\n *\n * @param self the `Tooltip` instance\n * @param callback the parent dispose callback\n */\nconst disposeTooltipComplete = (self: Tooltip, callback?: () => void) => {\n const { element } = self;\n self._toggleEventListeners();\n\n // istanbul ignore else @preserve\n if (\n hasAttribute(element, dataOriginalTitle) && self.name === tooltipComponent\n ) {\n toggleTooltipTitle(self);\n }\n // istanbul ignore else @preserve\n if (callback) callback();\n};\n\n/**\n * Toggles on/off the special `Tooltip` event listeners.\n *\n * @param self the `Tooltip` instance\n * @param add when `true`, event listeners are added\n */\nconst toggleTooltipAction = (self: Tooltip, add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element } = self;\n\n action(\n getDocument(element),\n touchstartEvent,\n self.handleTouch,\n passiveHandler,\n );\n};\n\n/**\n * Executes after the tooltip was shown to the user.\n *\n * @param self the `Tooltip` instance\n */\nconst tooltipShownAction = (self: Tooltip) => {\n const { element } = self;\n const shownTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `shown.bs.${toLowerCase(self.name)}`,\n );\n\n toggleTooltipAction(self, true);\n dispatchEvent(element, shownTooltipEvent);\n Timer.clear(element, \"in\");\n};\n\n/**\n * Executes after the tooltip was hidden to the user.\n *\n * @param self the `Tooltip` instance\n */\nconst tooltipHiddenAction = (self: Tooltip) => {\n const { element } = self;\n const hiddenTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `hidden.bs.${toLowerCase(self.name)}`,\n );\n\n toggleTooltipAction(self);\n removeTooltip(self);\n dispatchEvent(element, hiddenTooltipEvent);\n\n Timer.clear(element, \"out\");\n};\n\n/**\n * Toggles on/off the `Tooltip` event listeners that hide/update the tooltip.\n *\n * @param self the `Tooltip` instance\n * @param add when `true`, event listeners are added\n */\nconst toggleTooltipOpenHandlers = (self: Tooltip, add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, tooltip } = self;\n const parentModal = closest(element, `.${modalString}`);\n const parentOffcanvas = closest(element, `.${offcanvasString}`);\n\n if (add) {\n [element, tooltip]\n .forEach((target) => self._observer.observe(target));\n } else self._observer.disconnect();\n\n // dismiss tooltips inside modal / offcanvas\n if (parentModal) {\n action(parentModal, `hide.bs.${modalString}`, self.handleHide);\n }\n if (parentOffcanvas) {\n action(parentOffcanvas, `hide.bs.${offcanvasString}`, self.handleHide);\n }\n};\n\n/**\n * Toggles the `title` and `data-original-title` attributes.\n *\n * @param self the `Tooltip` instance\n * @param content when `true`, event listeners are added\n */\nconst toggleTooltipTitle = (self: Tooltip, content?: string) => {\n // [0 - add, 1 - remove] | [0 - remove, 1 - add]\n const titleAtt = [dataOriginalTitle, titleAttr];\n const { element } = self;\n\n setAttribute(\n element,\n titleAtt[content ? 0 : 1],\n content ||\n getAttribute(element, titleAtt[0]) ||\n // istanbul ignore next @preserve\n \"\",\n );\n removeAttribute(element, titleAtt[content ? 1 : 0]);\n};\n\n// TOOLTIP DEFINITION\n// ==================\n/** Creates a new `Tooltip` instance. */\nexport default class Tooltip extends BaseComponent {\n static selector = tooltipSelector;\n static init = tooltipInitCallback;\n static getInstance = getTooltipInstance;\n static styleTip = styleTip;\n declare element: Element & HTMLOrSVGElement;\n declare options: TooltipOptions;\n declare btn?: HTMLElement;\n declare tooltip: HTMLElement;\n declare container: HTMLElement;\n declare offsetParent: Element | Window;\n declare arrow: HTMLElement;\n declare enabled: boolean;\n declare id: string;\n declare _observer: PositionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n\n const { element } = this;\n const isTooltip = this.name === tooltipComponent;\n const tipString = isTooltip ? tooltipString : popoverString;\n const tipComponent = isTooltip ? tooltipComponent : popoverComponent;\n\n // istanbul ignore next @preserve: this is to set Popover too\n getTooltipInstance = (elem: Element) =>\n getInstance(elem, tipComponent);\n\n // additional properties\n this.enabled = true;\n /** Set unique ID for `aria-describedby`. */\n this.id = `${tipString}-${getUID(element, tipString)}`;\n\n // instance options\n const { options } = this;\n\n // invalidate\n // istanbul ignore else @preserve\n if (((!options.title && isTooltip) || (!isTooltip && !options.content))) {\n return;\n }\n\n // reset default options\n ObjectAssign(tooltipDefaults, { titleAttr: \"\" });\n\n // set title attributes and add event listeners\n // istanbul ignore else @preserve\n if (\n hasAttribute(element, titleAttr) && isTooltip &&\n typeof options.title === \"string\"\n ) {\n toggleTooltipTitle(this, options.title);\n }\n\n // set containers\n const container = getElementContainer(element);\n const offsetParent = [\"sticky\", \"fixed\", \"relative\"].some(\n (position) =>\n getElementStyle(container, \"position\") ===\n position,\n )\n ? container\n : getWindow(element);\n\n this.container = container;\n this.offsetParent = offsetParent;\n\n // create tooltip here\n createTip(this);\n\n /* istanbul ignore if @preserve */\n if (!this.tooltip) return;\n\n // create observer\n this._observer = new PositionObserver(() => this.update());\n\n // attach events\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tooltipComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return tooltipDefaults;\n }\n\n // TOOLTIP PUBLIC METHODS\n // ======================\n /** Handles the focus event on iOS. */\n // istanbul ignore next @preserve - impossible to test without Apple device\n handleFocus = () => focus(this.element as HTMLElement);\n /** Shows the tooltip. */\n handleShow = () => this.show();\n show() {\n const { options, tooltip, element, container, id } = this;\n const { animation } = options;\n const outTimer = Timer.get(element, \"out\");\n\n Timer.clear(element, \"out\");\n\n if (tooltip && !outTimer && !hasTip(this)) {\n Timer.set(\n element,\n () => {\n const showTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `show.bs.${toLowerCase(this.name)}`,\n );\n dispatchEvent(element, showTooltipEvent);\n\n // istanbul ignore else @preserve\n if (!showTooltipEvent.defaultPrevented) {\n // append to container\n appendPopup(tooltip, container);\n\n setAttribute(element, ariaDescribedBy, `#${id}`);\n\n this.update();\n toggleTooltipOpenHandlers(this, true);\n\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, showClass)) addClass(tooltip, showClass);\n // istanbul ignore else @preserve\n if (animation) {\n emulateTransitionEnd(tooltip, () => tooltipShownAction(this));\n } else tooltipShownAction(this);\n }\n },\n 17,\n \"in\",\n );\n }\n }\n\n /** Hides the tooltip. */\n handleHide = () => this.hide();\n hide() {\n const { options, tooltip, element } = this;\n const { animation, delay } = options;\n\n Timer.clear(element, \"in\");\n\n // istanbul ignore else @preserve\n if (tooltip && hasTip(this)) {\n Timer.set(\n element,\n () => {\n const hideTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `hide.bs.${toLowerCase(this.name)}`,\n );\n dispatchEvent(element, hideTooltipEvent);\n\n // istanbul ignore else @preserve\n if (!hideTooltipEvent.defaultPrevented) {\n this.update();\n removeClass(tooltip, showClass);\n toggleTooltipOpenHandlers(this);\n\n // istanbul ignore else @preserve\n if (animation) {\n emulateTransitionEnd(tooltip, () => tooltipHiddenAction(this));\n } else tooltipHiddenAction(this);\n }\n },\n delay + 17,\n \"out\",\n );\n }\n }\n\n /** Updates the tooltip position. */\n update = () => {\n styleTip(this);\n };\n\n /** Toggles the tooltip visibility. */\n toggle = () => {\n const { tooltip } = this;\n\n if (tooltip && !hasTip(this)) this.show();\n else this.hide();\n };\n\n /** Enables the tooltip. */\n enable() {\n const { enabled } = this;\n // istanbul ignore else @preserve\n if (!enabled) {\n this._toggleEventListeners(true);\n this.enabled = !enabled;\n }\n }\n\n /** Disables the tooltip. */\n disable() {\n const { tooltip, enabled } = this;\n // istanbul ignore else @preserve\n if (enabled) {\n if (tooltip && hasTip(this)) this.hide();\n this._toggleEventListeners();\n this.enabled = !enabled;\n }\n }\n\n /** Toggles the `disabled` property. */\n toggleEnabled() {\n if (!this.enabled) this.enable();\n else this.disable();\n }\n\n /**\n * Handles the `touchstart` event listener for `Tooltip`\n *\n * @this {Tooltip}\n * @param {TouchEvent} e the `Event` object\n */\n handleTouch = ({ target }: TouchEvent) => {\n const { tooltip, element } = this;\n\n // istanbul ignore if @preserve\n if (\n (tooltip && tooltip.contains(target)) ||\n target === element ||\n (target && element.contains(target))\n ) {\n // smile for ESLint\n } else {\n this.hide();\n }\n };\n\n /**\n * Toggles on/off the `Tooltip` event listeners.\n *\n * @param add when `true`, event listeners are added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n // btn is only for dismissible popover\n const { element, options, btn } = this;\n const { trigger } = options;\n const isPopover = this.name !== tooltipComponent;\n const dismissible = isPopover && (options as PopoverOptions).dismissible\n ? true\n : false;\n\n // istanbul ignore else @preserve\n if (!trigger.includes(\"manual\")) {\n this.enabled = !!add;\n\n const triggerOptions = trigger.split(\" \");\n\n triggerOptions.forEach((tr) => {\n // istanbul ignore else @preserve\n if (tr === mousehoverEvent) {\n action(element, mousedownEvent, this.handleShow);\n action(element, mouseenterEvent, this.handleShow);\n\n // istanbul ignore else @preserve\n if (!dismissible) {\n action(element, mouseleaveEvent, this.handleHide);\n action(\n getDocument(element),\n touchstartEvent,\n this.handleTouch,\n passiveHandler,\n );\n }\n } else if (tr === mouseclickEvent) {\n action(element, tr, !dismissible ? this.toggle : this.handleShow);\n } else if (tr === focusEvent) {\n action(element, focusinEvent, this.handleShow);\n // istanbul ignore else @preserve\n if (!dismissible) action(element, focusoutEvent, this.handleHide);\n // istanbul ignore else @preserve\n if (isApple()) {\n action(element, mouseclickEvent, this.handleFocus);\n }\n }\n // istanbul ignore else @preserve\n if (dismissible && btn) {\n action(btn, mouseclickEvent, this.handleHide);\n }\n });\n }\n };\n\n /** Removes the `Tooltip` from the target element. */\n dispose() {\n const { tooltip, options } = this;\n const clone = { ...this, name: this.name };\n const callback = () =>\n setTimeout(\n () => disposeTooltipComplete(clone, () => super.dispose()),\n 17,\n );\n\n if (options.animation && hasTip(clone)) {\n this.options.delay = 0; // reset delay\n this.hide();\n emulateTransitionEnd(tooltip, callback);\n } else {\n callback();\n }\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/tooltip-Dh4nNEki.js b/dist/components/tooltip-Dh4nNEki.js deleted file mode 100644 index 5b162b51..00000000 --- a/dist/components/tooltip-Dh4nNEki.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";const t=require("./base-component-_c7CmBvl.js"),vt=require("./index-DgzRtWFW.js"),Tt=require("./dataBsToggle-Dj-Ng54N.js"),tt=require("./showClass-D_Ms1FgG.js"),N=require("./popupContainer-Dxpyo8Ll.js"),it=require("./fadeClass-Co6nOzNJ.js"),Z="popover",rt="Popover",T="tooltip",ct=s=>{const e=s===T,o=e?`${s}-inner`:`${s}-body`,i=e?"":`

`,l=`
`,a=`
`;return`
${i+l+a}
`},ht={top:"top",bottom:"bottom",left:"start",right:"end"},et=s=>{requestAnimationFrame(()=>{const e=/\b(top|bottom|start|end)+/,{element:o,tooltip:i,container:l,offsetParent:a,options:d,arrow:c}=s;if(!i)return;const f=t.Ho(o),{x:w,y:h}=t.No(a);t.Eo(i,{top:"",left:"",right:"",bottom:""});const{offsetWidth:u,offsetHeight:m}=i,{clientWidth:g,clientHeight:P,offsetWidth:O}=t.w(o);let{placement:n}=d;const{clientWidth:b,offsetWidth:k}=l,p=t.f(l,"position")==="fixed",D=Math.abs(p?b-k:g-O),x=f&&p?D:0,$=g-(f?0:D)-1,V=s._observer.getEntry(o),{width:r,height:v,left:F,right:gt,top:z}=V?.boundingClientRect||t.y(o,!0),{x:I,y:_}=t.Co(o,a,{x:w,y:h});t.Eo(c,{top:"",left:"",right:"",bottom:""});let H=0,B="",C=0,Y="",L="",K="",J="";const S=c.offsetWidth||0,y=c.offsetHeight||0,U=S/2;let q=z-m-y<0,G=z+m+v+y>=P,R=F-u-S=$;const j=["left","right"],X=["top","bottom"];q=j.includes(n)?z+v/2-m/2-y<0:q,G=j.includes(n)?z+m/2+v/2+y>=P:G,R=X.includes(n)?F+r/2-u/2=$:M,n=j.includes(n)&&R&&M?"top":n,n=n==="top"&&q?"bottom":n,n=n==="bottom"&&G?"top":n,n=n==="left"&&R?"right":n,n=n==="right"&&M?"left":n,i.className.includes(n)||(i.className=i.className.replace(e,ht[n])),j.includes(n)?(n==="left"?C=I-u-S:C=I+r+S,q&&G?(H=0,B=0,L=_+v/2-y/2):q?(H=_,B="",L=v/2-S):G?(H=_-m+v,B="",L=m-v/2-S):(H=_-m/2+v/2,L=m/2-y/2)):X.includes(n)&&(n==="top"?H=_-m-y:H=_+v+y,R?(C=0,K=I+r/2-U):M?(C="auto",Y=0,J=r/2+$-gt-U):(C=I-u/2+r/2,K=u/2-U)),t.Eo(i,{top:`${H}px`,bottom:B===""?"":`${B}px`,left:C==="auto"?C:`${C}px`,right:Y!==""?`${Y}px`:""}),t.b(c)&&(L!==""&&(c.style.top=`${L}px`),K!==""?c.style.left=`${K}px`:J!==""&&(c.style.right=`${J}px`));const bt=t.mo(`updated.bs.${t.yo(s.name)}`);t.Z(o,bt)})},ot={template:ct(T),title:"",customClass:"",trigger:"hover focus",placement:"top",sanitizeFn:void 0,animation:!0,delay:200,container:document.body,content:"",dismissible:!1,btnClose:""},dt="data-original-title",W="Tooltip",E=(s,e,o)=>{if(t.N(e)&&e.length){let i=e.trim();t.xo(o)&&(i=o(i));const a=new DOMParser().parseFromString(i,"text/html");s.append(...a.body.childNodes)}else t.b(e)?s.append(e):(t.Vo(e)||t.Se(e)&&e.every(t.u))&&s.append(...e)},wt=s=>{const e=s.name===W,{id:o,element:i,options:l}=s,{title:a,placement:d,template:c,animation:f,customClass:w,sanitizeFn:h,dismissible:u,content:m,btnClose:g}=l,P=e?T:Z,O={...ht};let n=[],b=[];t.Ho(i)&&(O.left="end",O.right="start");const k=`bs-${P}-${O[d]}`;let A;if(t.b(c))A=c;else{const r=t.se("div");E(r,c,h),A=r.firstChild}if(!t.b(A))return;s.tooltip=A.cloneNode(!0);const{tooltip:p}=s;t.Qn(p,"id",o),t.Qn(p,"role",T);const D=e?`${T}-inner`:`${Z}-body`,x=e?null:t.Wo(`.${Z}-header`,p),$=t.Wo(`.${D}`,p);s.arrow=t.Wo(`.${P}-arrow`,p);const{arrow:V}=s;if(t.b(a))n=[a.cloneNode(!0)];else{const r=t.se("div");E(r,a,h),n=[...r.childNodes]}if(t.b(m))b=[m.cloneNode(!0)];else{const r=t.se("div");E(r,m,h),b=[...r.childNodes]}if(u)if(a)if(t.b(g))n=[...n,g.cloneNode(!0)];else{const r=t.se("div");E(r,g,h),n=[...n,r.firstChild]}else if(x&&x.remove(),t.b(g))b=[...b,g.cloneNode(!0)];else{const r=t.se("div");E(r,g,h),b=[...b,r.firstChild]}e?a&&$&&E($,a,h):(a&&x&&E(x,n,h),m&&$&&E($,b,h),s.btn=t.Wo(".btn-close",p)||void 0),t.Gn(p,"position-absolute"),t.Gn(V,"position-absolute"),t._n(p,P)||t.Gn(p,P),f&&!t._n(p,it.fadeClass)&&t.Gn(p,it.fadeClass),w&&!t._n(p,w)&&t.Gn(p,w),t._n(p,k)||t.Gn(p,k)},$t=s=>{const e=["HTML","BODY"],o=[];let{parentNode:i}=s;for(;i&&!e.includes(i.nodeName);)i=t.k(i),t.me(i)||t.be(i)||o.push(i);return o.find((l,a)=>(t.f(l,"position")!=="relative"||t.f(l,"position")==="relative"&&l.offsetHeight!==l.scrollHeight)&&o.slice(a+1).every(d=>t.f(d,"position")==="static")?l:null)||t.d(s).body},Ct=`[${Tt.dataBsToggle}="${T}"],[data-tip="${T}"]`,pt="title";let st=s=>t.to(s,W);const yt=s=>new ut(s),Et=s=>{const{element:e,tooltip:o,container:i}=s;t.Kn(e,t.Le),N.removePopup(o,i)},Q=s=>{const{tooltip:e,container:o}=s;return e&&N.hasPopup(e,o)},Pt=(s,e)=>{const{element:o}=s;s._toggleEventListeners(),t.oe(o,dt)&&s.name===W&&mt(s),e&&e()},ft=(s,e)=>{const o=e?t.E:t.r,{element:i}=s;o(t.d(i),t.Qt,s.handleTouch,t.vo)},nt=s=>{const{element:e}=s,o=t.mo(`shown.bs.${t.yo(s.name)}`);ft(s,!0),t.Z(e,o),t.ho.clear(e,"in")},lt=s=>{const{element:e}=s,o=t.mo(`hidden.bs.${t.yo(s.name)}`);ft(s),Et(s),t.Z(e,o),t.ho.clear(e,"out")},at=(s,e)=>{const o=e?t.E:t.r,{element:i,tooltip:l}=s,a=t.Ne(i,`.${N.modalString}`),d=t.Ne(i,`.${N.offcanvasString}`);e?[i,l].forEach(c=>s._observer.observe(c)):s._observer.disconnect(),a&&o(a,`hide.bs.${N.modalString}`,s.handleHide),d&&o(d,`hide.bs.${N.offcanvasString}`,s.handleHide)},mt=(s,e)=>{const o=[dt,pt],{element:i}=s;t.Qn(i,o[e?0:1],e||t.K(i,o[0])||""),t.Kn(i,o[e?1:0])};class ut extends t.BaseComponent{static selector=Ct;static init=yt;static getInstance=st;static styleTip=et;constructor(e,o){super(e,o);const{element:i}=this,l=this.name===W,a=l?T:Z,d=l?W:rt;st=h=>t.to(h,d),this.enabled=!0,this.id=`${a}-${t.Ae(i,a)}`;const{options:c}=this;if(!c.title&&l||!l&&!c.content)return;t.T(ot,{titleAttr:""}),t.oe(i,pt)&&l&&typeof c.title=="string"&&mt(this,c.title);const f=$t(i),w=["sticky","fixed","relative"].some(h=>t.f(f,"position")===h)?f:t.ve(i);this.container=f,this.offsetParent=w,wt(this),this.tooltip&&(this._observer=new vt.PositionObserver(()=>this.update()),this._toggleEventListeners(!0))}get name(){return W}get defaults(){return ot}handleFocus=()=>t.ao(this.element);handleShow=()=>this.show();show(){const{options:e,tooltip:o,element:i,container:l,id:a}=this,{animation:d}=e,c=t.ho.get(i,"out");t.ho.clear(i,"out"),o&&!c&&!Q(this)&&t.ho.set(i,()=>{const f=t.mo(`show.bs.${t.yo(this.name)}`);t.Z(i,f),f.defaultPrevented||(N.appendPopup(o,l),t.Qn(i,t.Le,`#${a}`),this.update(),at(this,!0),t._n(o,tt.showClass)||t.Gn(o,tt.showClass),d?t.so(o,()=>nt(this)):nt(this))},17,"in")}handleHide=()=>this.hide();hide(){const{options:e,tooltip:o,element:i}=this,{animation:l,delay:a}=e;t.ho.clear(i,"in"),o&&Q(this)&&t.ho.set(i,()=>{const d=t.mo(`hide.bs.${t.yo(this.name)}`);t.Z(i,d),d.defaultPrevented||(this.update(),t.Zn(o,tt.showClass),at(this),l?t.so(o,()=>lt(this)):lt(this))},a+17,"out")}update=()=>{et(this)};toggle=()=>{const{tooltip:e}=this;e&&!Q(this)?this.show():this.hide()};enable(){const{enabled:e}=this;e||(this._toggleEventListeners(!0),this.enabled=!e)}disable(){const{tooltip:e,enabled:o}=this;o&&(e&&Q(this)&&this.hide(),this._toggleEventListeners(),this.enabled=!o)}toggleEnabled(){this.enabled?this.disable():this.enable()}handleTouch=({target:e})=>{const{tooltip:o,element:i}=this;o&&o.contains(e)||e===i||e&&i.contains(e)||this.hide()};_toggleEventListeners=e=>{const o=e?t.E:t.r,{element:i,options:l,btn:a}=this,{trigger:d}=l,f=!!(this.name!==W&&l.dismissible);d.includes("manual")||(this.enabled=!!e,d.split(" ").forEach(h=>{h===t.yt?(o(i,t.Et,this.handleShow),o(i,t.wt,this.handleShow),f||(o(i,t.At,this.handleHide),o(t.d(i),t.Qt,this.handleTouch,t.vo))):h===t.vt?o(i,h,f?this.handleShow:this.toggle):h===t.ct&&(o(i,t.at,this.handleShow),f||o(i,t.it,this.handleHide),t.zn()&&o(i,t.vt,this.handleFocus)),f&&a&&o(a,t.vt,this.handleHide)}))};dispose(){const{tooltip:e,options:o}=this,i={...this,name:this.name},l=()=>setTimeout(()=>Pt(i,()=>super.dispose()),17);o.animation&&Q(i)?(this.options.delay=0,this.hide(),t.so(e,l)):l()}}exports.Tooltip=ut;exports.getTipTemplate=ct;exports.popoverComponent=rt;exports.popoverString=Z;exports.styleTip=et;exports.tooltipDefaults=ot; -//# sourceMappingURL=tooltip-Dh4nNEki.js.map diff --git a/dist/components/tooltip-Dh4nNEki.js.map b/dist/components/tooltip-Dh4nNEki.js.map deleted file mode 100644 index c50551f9..00000000 --- a/dist/components/tooltip-Dh4nNEki.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tooltip-Dh4nNEki.js","sources":["../../src/strings/popoverString.ts","../../src/strings/popoverComponent.ts","../../src/strings/tooltipString.ts","../../src/util/getTipTemplate.ts","../../src/util/tipClassPositions.ts","../../src/util/styleTip.ts","../../src/util/tooltipDefaults.ts","../../src/strings/dataOriginalTitle.ts","../../src/strings/tooltipComponent.ts","../../src/util/setHtml.ts","../../src/util/createTip.ts","../../src/util/getElementContainer.ts","../../src/components/tooltip.ts"],"sourcesContent":["/** @type {string} */\nconst popoverString = \"popover\";\nexport default popoverString;\n","/** @type {string} */\nconst popoverComponent = \"Popover\";\nexport default popoverComponent;\n","/** @type {string} */\nconst tooltipString = \"tooltip\";\nexport default tooltipString;\n","import tooltipString from \"../strings/tooltipString\";\n\n/**\n * Returns a template for Popover / Tooltip.\n *\n * @param tipType the expected markup type\n * @returns the template markup\n */\nconst getTipTemplate = (tipType: string) => {\n const isTooltip = tipType === tooltipString;\n const bodyClass = isTooltip ? `${tipType}-inner` : `${tipType}-body`;\n const header = !isTooltip ? `

` : \"\";\n const arrow = `
`;\n const body = `
`;\n return `
${\n header + arrow + body\n }
`;\n};\n\nexport default getTipTemplate;\n","const tipClassPositions = {\n top: \"top\",\n bottom: \"bottom\",\n left: \"start\",\n right: \"end\",\n};\n\nexport default tipClassPositions;\n","import {\n createCustomEvent,\n dispatchEvent,\n getBoundingClientRect,\n getDocumentElement,\n getElementStyle,\n getNodeScroll,\n getRectRelativeToOffsetParent,\n isHTMLElement,\n isRTL,\n setElementStyle,\n toLowerCase,\n} from \"@thednp/shorty\";\n\nimport tipClassPositions from \"./tipClassPositions\";\nimport Tooltip from \"../components/tooltip\";\nimport type { TooltipEvent } from \"../interface/tooltip\";\nimport type { PopoverEvent } from \"../interface/popover\";\n\n/**\n * Style popovers and tooltips.\n *\n * @param self the `Popover` / `Tooltip` instance\n */\nconst styleTip = (self: Tooltip) => {\n requestAnimationFrame(() => {\n const tipClasses = /\\b(top|bottom|start|end)+/;\n const { element, tooltip, container, offsetParent, options, arrow } = self;\n\n // istanbul ignore if @preserve\n if (!tooltip) return;\n const RTL = isRTL(element);\n const { x: scrollLeft, y: scrollTop } = getNodeScroll(offsetParent);\n\n // reset tooltip style (top: 0, left: 0 works best)\n setElementStyle(tooltip, {\n top: \"\",\n left: \"\",\n right: \"\",\n bottom: \"\",\n });\n const { offsetWidth: tipWidth, offsetHeight: tipHeight } = tooltip;\n const { clientWidth: htmlcw, clientHeight: htmlch, offsetWidth: htmlow } =\n getDocumentElement(element);\n let { placement } = options;\n const { clientWidth: parentCWidth, offsetWidth: parentOWidth } = container;\n const parentPosition = getElementStyle(\n container,\n \"position\",\n );\n const fixedParent = parentPosition === \"fixed\";\n const scrollbarWidth = fixedParent\n ? Math.abs(parentCWidth - parentOWidth)\n : Math.abs(htmlcw - htmlow);\n const leftBoundry = RTL && fixedParent\n ? /* istanbul ignore next @preserve */ scrollbarWidth\n : 0;\n const rightBoundry = htmlcw - (!RTL ? scrollbarWidth : 0) - 1;\n\n // reuse observer entry bounding box\n const observerEntry = self._observer.getEntry(element);\n const {\n width: elemWidth,\n height: elemHeight,\n left: elemRectLeft,\n right: elemRectRight,\n top: elemRectTop,\n } = observerEntry?.boundingClientRect ||\n getBoundingClientRect(element, true);\n\n const {\n x: elemOffsetLeft,\n y: elemOffsetTop,\n } = getRectRelativeToOffsetParent(\n element,\n offsetParent,\n { x: scrollLeft, y: scrollTop },\n );\n\n // reset arrow style\n setElementStyle(arrow as HTMLElement, {\n top: \"\",\n left: \"\",\n right: \"\",\n bottom: \"\",\n });\n let topPosition: number | string = 0;\n let bottomPosition: number | string = \"\";\n let leftPosition: number | string = 0;\n let rightPosition: number | string = \"\";\n let arrowTop: number | string = \"\";\n let arrowLeft: number | string = \"\";\n let arrowRight: number | string = \"\";\n\n const arrowWidth = arrow.offsetWidth || 0;\n const arrowHeight = arrow.offsetHeight || 0;\n const arrowAdjust = arrowWidth / 2;\n\n // check placement\n let topExceed = elemRectTop - tipHeight - arrowHeight < 0;\n let bottomExceed =\n elemRectTop + tipHeight + elemHeight + arrowHeight >= htmlch;\n let leftExceed = elemRectLeft - tipWidth - arrowWidth < leftBoundry;\n let rightExceed =\n elemRectLeft + tipWidth + elemWidth + arrowWidth >= rightBoundry;\n\n const horizontals = [\"left\", \"right\"];\n const verticals = [\"top\", \"bottom\"];\n\n topExceed = horizontals.includes(placement)\n ? elemRectTop + elemHeight / 2 - tipHeight / 2 - arrowHeight < 0\n : topExceed;\n bottomExceed = horizontals.includes(placement)\n ? elemRectTop + tipHeight / 2 + elemHeight / 2 + arrowHeight >= htmlch\n : bottomExceed;\n leftExceed = verticals.includes(placement)\n ? elemRectLeft + elemWidth / 2 - tipWidth / 2 < leftBoundry\n : leftExceed;\n rightExceed = verticals.includes(placement)\n ? elemRectLeft + tipWidth / 2 + elemWidth / 2 >= rightBoundry\n : rightExceed;\n\n // first remove side positions if both left and right limits are exceeded\n // we usually fall back to top|bottom\n placement = horizontals.includes(placement) && leftExceed && rightExceed\n ? \"top\"\n : placement;\n // recompute placement\n placement = placement === \"top\" && topExceed ? \"bottom\" : placement;\n placement = placement === \"bottom\" && bottomExceed ? \"top\" : placement;\n placement = placement === \"left\" && leftExceed ? \"right\" : placement;\n placement = placement === \"right\" && rightExceed\n ? \"left\"\n // istanbul ignore next @preserve\n : placement;\n\n // update tooltip/popover class\n // istanbul ignore else @preserve\n if (!tooltip.className.includes(placement)) {\n tooltip.className = tooltip.className.replace(\n tipClasses,\n tipClassPositions[placement],\n );\n }\n\n // compute tooltip / popover coordinates\n // istanbul ignore else @preserve\n if (horizontals.includes(placement)) {\n // secondary|side positions\n if (placement === \"left\") {\n // LEFT\n leftPosition = elemOffsetLeft - tipWidth - arrowWidth;\n } else {\n // RIGHT\n leftPosition = elemOffsetLeft + elemWidth + arrowWidth;\n }\n\n // adjust top and arrow\n if (topExceed && bottomExceed) {\n topPosition = 0;\n bottomPosition = 0;\n arrowTop = elemOffsetTop + elemHeight / 2 - arrowHeight / 2;\n } else if (topExceed) {\n topPosition = elemOffsetTop;\n bottomPosition = \"\";\n arrowTop = elemHeight / 2 - arrowWidth;\n } else if (bottomExceed) {\n topPosition = elemOffsetTop - tipHeight + elemHeight;\n bottomPosition = \"\";\n arrowTop = tipHeight - elemHeight / 2 - arrowWidth;\n } else {\n topPosition = elemOffsetTop - tipHeight / 2 + elemHeight / 2;\n arrowTop = tipHeight / 2 - arrowHeight / 2;\n }\n } else if (verticals.includes(placement)) {\n if (placement === \"top\") {\n topPosition = elemOffsetTop - tipHeight - arrowHeight;\n } else {\n // BOTTOM\n topPosition = elemOffsetTop + elemHeight + arrowHeight;\n }\n\n // adjust left | right and also the arrow\n if (leftExceed) {\n leftPosition = 0;\n arrowLeft = elemOffsetLeft + elemWidth / 2 - arrowAdjust;\n } else if (rightExceed) {\n leftPosition = \"auto\";\n rightPosition = 0;\n arrowRight = elemWidth / 2 + rightBoundry - elemRectRight - arrowAdjust;\n } else {\n leftPosition = elemOffsetLeft - tipWidth / 2 + elemWidth / 2;\n arrowLeft = tipWidth / 2 - arrowAdjust;\n }\n }\n\n // apply style to tooltip/popover\n setElementStyle(tooltip, {\n top: `${topPosition}px`,\n bottom: bottomPosition === \"\" ? \"\" : `${bottomPosition}px`,\n left: leftPosition === \"auto\" ? leftPosition : `${leftPosition}px`,\n right: rightPosition !== \"\" ? `${rightPosition}px` : \"\",\n });\n\n // update arrow placement\n // istanbul ignore else @preserve\n if (isHTMLElement(arrow)) {\n if (arrowTop !== \"\") {\n arrow.style.top = `${arrowTop}px`;\n }\n if (arrowLeft !== \"\") {\n arrow.style.left = `${arrowLeft}px`;\n } else if (arrowRight !== \"\") {\n arrow.style.right = `${arrowRight}px`;\n }\n }\n const updatedTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `updated.bs.${toLowerCase(self.name)}`,\n );\n dispatchEvent(element, updatedTooltipEvent);\n });\n};\n\nexport default styleTip;\n","import getTipTemplate from \"./getTipTemplate\";\nimport tooltipString from \"../strings/tooltipString\";\nimport { TooltipOptions } from \"../interface/tooltip\";\n\nconst tooltipDefaults: TooltipOptions = {\n template: getTipTemplate(tooltipString),\n title: \"\",\n customClass: \"\",\n trigger: \"hover focus\",\n placement: \"top\",\n sanitizeFn: undefined,\n animation: true,\n delay: 200,\n container: document.body,\n content: \"\",\n dismissible: false,\n btnClose: \"\",\n};\nexport default tooltipDefaults;\n","/**\n * Global namespace for `data-bs-title` attribute.\n */\nconst dataOriginalTitle = \"data-original-title\";\nexport default dataOriginalTitle;\n","/** @type {string} */\nconst tooltipComponent = \"Tooltip\";\nexport default tooltipComponent;\n","import {\n isArray,\n isFunction,\n isHTMLElement,\n isNode,\n isNodeList,\n isString,\n} from \"@thednp/shorty\";\n\n/**\n * Append an existing `Element` to Popover / Tooltip component or HTML\n * markup string to be parsed & sanitized to be used as popover / tooltip content.\n *\n * @param element target\n * @param content the `Element` to append / string\n * @param sanitizeFn a function to sanitize string content\n */\nconst setHtml = (\n element: HTMLElement,\n content: Node[] | Node | string,\n sanitizeFn?: (s: string) => string,\n) => {\n // istanbul ignore else @preserve\n if (isString(content) && content.length) {\n let dirty = content.trim(); // fixing #233\n if (isFunction(sanitizeFn)) dirty = sanitizeFn(dirty);\n\n const domParser = new DOMParser();\n const tempDocument = domParser.parseFromString(dirty, \"text/html\");\n element.append(...[...tempDocument.body.childNodes]);\n } else if (isHTMLElement(content)) {\n element.append(content);\n } else if (\n isNodeList(content) || (isArray(content) && content.every(isNode))\n ) {\n element.append(...[...content]);\n }\n};\nexport default setHtml;\n","import {\n addClass,\n createElement,\n hasClass,\n isHTMLElement,\n isRTL,\n querySelector,\n setAttribute,\n} from \"@thednp/shorty\";\n\nimport tooltipComponent from \"../strings/tooltipComponent\";\nimport tooltipString from \"../strings/tooltipString\";\nimport popoverString from \"../strings/popoverString\";\nimport fadeClass from \"../strings/fadeClass\";\nimport tipClassPositions from \"./tipClassPositions\";\nimport setHtml from \"./setHtml\";\nimport Tooltip from \"../components/tooltip\";\nimport Popover from \"../components/popover\";\n\n/**\n * Creates a new tooltip / popover.\n *\n * @param self the `Tooltip` / `Popover` instance\n */\nconst createTip = (self: Tooltip | Popover) => {\n const isTooltip = self.name === tooltipComponent;\n\n const { id, element, options } = self;\n const {\n title,\n placement,\n template,\n animation,\n customClass,\n sanitizeFn,\n dismissible,\n content,\n btnClose,\n } = options;\n const tipString = isTooltip ? tooltipString : popoverString;\n const tipPositions = { ...tipClassPositions };\n let titleParts: Node[] = [];\n let contentParts: Node[] = [];\n\n if (isRTL(element)) {\n tipPositions.left = \"end\";\n tipPositions.right = \"start\";\n }\n\n // set initial popover class\n const placementClass = `bs-${tipString}-${tipPositions[placement]}`;\n\n // load template\n let tooltipTemplate: Node | string;\n if (isHTMLElement(template)) {\n tooltipTemplate = template;\n } else {\n const htmlMarkup = createElement(\"div\") as HTMLElement;\n setHtml(htmlMarkup, template, sanitizeFn);\n tooltipTemplate = htmlMarkup.firstChild as HTMLElement;\n }\n\n /* istanbul ignore if @preserve */\n if (!isHTMLElement(tooltipTemplate)) return;\n\n // set popover markup\n self.tooltip = tooltipTemplate.cloneNode(true) as HTMLElement;\n const { tooltip } = self;\n\n // set id and role attributes\n setAttribute(tooltip, \"id\", id);\n setAttribute(tooltip, \"role\", tooltipString);\n\n const bodyClass = isTooltip\n ? `${tooltipString}-inner`\n : `${popoverString}-body`;\n const tooltipHeader = isTooltip\n ? null\n : querySelector(`.${popoverString}-header`, tooltip);\n const tooltipBody = querySelector(`.${bodyClass}`, tooltip);\n\n // set arrow and enable access for styleTip\n self.arrow = querySelector(\n `.${tipString}-arrow`,\n tooltip,\n ) as HTMLElement;\n const { arrow } = self;\n\n if (isHTMLElement(title)) titleParts = [title.cloneNode(true)];\n else {\n const tempTitle = createElement(\"div\") as HTMLElement;\n setHtml(tempTitle, title, sanitizeFn);\n titleParts = [...[...tempTitle.childNodes]];\n }\n\n if (isHTMLElement(content)) contentParts = [content.cloneNode(true)];\n else {\n const tempContent = createElement(\"div\") as HTMLElement;\n setHtml(tempContent, content, sanitizeFn);\n contentParts = [...[...tempContent.childNodes]];\n }\n\n // set dismissible button\n if (dismissible) {\n if (title) {\n if (isHTMLElement(btnClose)) {\n titleParts = [...titleParts, btnClose.cloneNode(true)];\n } else {\n const tempBtn = createElement(\"div\") as HTMLElement;\n setHtml(tempBtn, btnClose, sanitizeFn);\n titleParts = [...titleParts, tempBtn.firstChild as Node];\n }\n } else {\n // istanbul ignore else @preserve\n if (tooltipHeader) tooltipHeader.remove();\n if (isHTMLElement(btnClose)) {\n contentParts = [...contentParts, btnClose.cloneNode(true)];\n } else {\n const tempBtn = createElement(\"div\") as HTMLElement;\n setHtml(tempBtn, btnClose, sanitizeFn);\n contentParts = [...contentParts, tempBtn.firstChild as Node];\n }\n }\n }\n\n // fill the template with content from options / data attributes\n // also sanitize title && content\n // istanbul ignore else @preserve\n if (!isTooltip) {\n // istanbul ignore else @preserve\n if (title && tooltipHeader) {\n setHtml(tooltipHeader, titleParts, sanitizeFn);\n }\n // istanbul ignore else @preserve\n if (content && tooltipBody) {\n setHtml(tooltipBody, contentParts, sanitizeFn);\n }\n // set btn\n self.btn = querySelector(\".btn-close\", tooltip) ||\n undefined;\n } else if (title && tooltipBody) setHtml(tooltipBody, title, sanitizeFn);\n\n // Bootstrap 5.2.x\n addClass(tooltip, \"position-absolute\");\n addClass(arrow, \"position-absolute\");\n\n // set popover animation and placement\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, tipString)) addClass(tooltip, tipString);\n // istanbul ignore else @preserve\n if (animation && !hasClass(tooltip, fadeClass)) {\n addClass(tooltip, fadeClass);\n }\n // istanbul ignore else @preserve\n if (customClass && !hasClass(tooltip, customClass)) {\n addClass(tooltip, customClass);\n }\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, placementClass)) addClass(tooltip, placementClass);\n};\n\nexport default createTip;\n","import {\n getDocument,\n getElementStyle,\n getParentNode,\n isShadowRoot,\n isTableElement,\n} from \"@thednp/shorty\";\n\n/**\n * Returns an `HTMLElement` to be used as default value for *options.container*\n * for `Tooltip` / `Popover` components.\n *\n * @see https://github.com/floating-ui/floating-ui\n *\n * @param element the target\n * @returns the query result\n */\nconst getElementContainer = (element: Element) => {\n const majorBlockTags = [\"HTML\", \"BODY\"];\n const containers: HTMLElement[] = [];\n let { parentNode } = element;\n\n while (parentNode && !majorBlockTags.includes(parentNode.nodeName)) {\n parentNode = getParentNode(parentNode) as HTMLElement;\n // istanbul ignore else @preserve\n if (!(isShadowRoot(parentNode) || isTableElement(parentNode))) {\n containers.push(parentNode as HTMLElement);\n }\n }\n\n return (\n containers.find((c, i) => {\n if (\n ((getElementStyle(c, \"position\") !== \"relative\" ||\n getElementStyle(c, \"position\") === \"relative\" &&\n c.offsetHeight !== c.scrollHeight) &&\n containers.slice(i + 1).every((r) =>\n getElementStyle(r, \"position\") === \"static\"\n ))\n ) {\n return c;\n }\n return null;\n }) ||\n /* istanbul ignore next: optional guard */\n getDocument(element).body\n );\n};\n\nexport default getElementContainer;\n","/* Native JavaScript for Bootstrap 5 | Tooltip\n---------------------------------------------- */\nimport {\n addClass,\n ariaDescribedBy,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focus,\n focusEvent,\n focusinEvent,\n focusoutEvent,\n getAttribute,\n getDocument,\n getElementStyle,\n getInstance,\n getUID,\n getWindow,\n hasAttribute,\n hasClass,\n isApple,\n mouseclickEvent,\n mousedownEvent,\n mouseenterEvent,\n mousehoverEvent,\n mouseleaveEvent,\n ObjectAssign,\n passiveHandler,\n removeAttribute,\n removeClass,\n setAttribute,\n Timer,\n toLowerCase,\n TouchEvent,\n touchstartEvent,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\nimport PositionObserver from \"@thednp/position-observer\";\n\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport dataOriginalTitle from \"~/strings/dataOriginalTitle\";\nimport showClass from \"~/strings/showClass\";\nimport tooltipString from \"~/strings/tooltipString\";\nimport tooltipComponent from \"~/strings/tooltipComponent\";\nimport popoverString from \"~/strings/popoverString\";\nimport popoverComponent from \"~/strings/popoverComponent\";\nimport modalString from \"~/strings/modalString\";\nimport offcanvasString from \"~/strings/offcanvasString\";\n\nimport styleTip from \"~/util/styleTip\";\nimport createTip from \"~/util/createTip\";\nimport { appendPopup, hasPopup, removePopup } from \"~/util/popupContainer\";\nimport getElementContainer from \"~/util/getElementContainer\";\nimport tooltipDefaults from \"~/util/tooltipDefaults\";\nimport BaseComponent from \"./base-component\";\nimport type { TooltipEvent, TooltipOptions } from \"~/interface/tooltip\";\nimport type { PopoverEvent, PopoverOptions } from \"~/interface/popover\";\n\n// TOOLTIP PRIVATE GC\n// ==================\nconst tooltipSelector =\n `[${dataBsToggle}=\"${tooltipString}\"],[data-tip=\"${tooltipString}\"]`;\nconst titleAttr = \"title\";\n\n/**\n * Static method which returns an existing `Tooltip` instance associated\n * to a target `Element`.\n */\nlet getTooltipInstance = (element: Element) =>\n getInstance(element, tooltipComponent);\n\n/**\n * A `Tooltip` initialization callback.\n */\nconst tooltipInitCallback = (element: Element) => new Tooltip(element);\n\n// TOOLTIP PRIVATE METHODS\n// =======================\n/**\n * Removes the tooltip from the DOM.\n *\n * @param self the `Tooltip` instance\n */\nconst removeTooltip = (self: Tooltip) => {\n const { element, tooltip, container } = self;\n removeAttribute(element, ariaDescribedBy);\n removePopup(\n tooltip,\n container,\n );\n};\n\n/**\n * Check if container contains the tooltip.\n *\n * @param self Tooltip\n */\nconst hasTip = (self: Tooltip): boolean | undefined => {\n const { tooltip, container } = self;\n\n return tooltip &&\n hasPopup(tooltip, container);\n};\n\n/**\n * Executes after the instance has been disposed.\n *\n * @param self the `Tooltip` instance\n * @param callback the parent dispose callback\n */\nconst disposeTooltipComplete = (self: Tooltip, callback?: () => void) => {\n const { element } = self;\n self._toggleEventListeners();\n\n // istanbul ignore else @preserve\n if (\n hasAttribute(element, dataOriginalTitle) && self.name === tooltipComponent\n ) {\n toggleTooltipTitle(self);\n }\n // istanbul ignore else @preserve\n if (callback) callback();\n};\n\n/**\n * Toggles on/off the special `Tooltip` event listeners.\n *\n * @param self the `Tooltip` instance\n * @param add when `true`, event listeners are added\n */\nconst toggleTooltipAction = (self: Tooltip, add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element } = self;\n\n action(\n getDocument(element),\n touchstartEvent,\n self.handleTouch,\n passiveHandler,\n );\n};\n\n/**\n * Executes after the tooltip was shown to the user.\n *\n * @param self the `Tooltip` instance\n */\nconst tooltipShownAction = (self: Tooltip) => {\n const { element } = self;\n const shownTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `shown.bs.${toLowerCase(self.name)}`,\n );\n\n toggleTooltipAction(self, true);\n dispatchEvent(element, shownTooltipEvent);\n Timer.clear(element, \"in\");\n};\n\n/**\n * Executes after the tooltip was hidden to the user.\n *\n * @param self the `Tooltip` instance\n */\nconst tooltipHiddenAction = (self: Tooltip) => {\n const { element } = self;\n const hiddenTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `hidden.bs.${toLowerCase(self.name)}`,\n );\n\n toggleTooltipAction(self);\n removeTooltip(self);\n dispatchEvent(element, hiddenTooltipEvent);\n\n Timer.clear(element, \"out\");\n};\n\n/**\n * Toggles on/off the `Tooltip` event listeners that hide/update the tooltip.\n *\n * @param self the `Tooltip` instance\n * @param add when `true`, event listeners are added\n */\nconst toggleTooltipOpenHandlers = (self: Tooltip, add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, tooltip } = self;\n const parentModal = closest(element, `.${modalString}`);\n const parentOffcanvas = closest(element, `.${offcanvasString}`);\n\n if (add) {\n [element, tooltip]\n .forEach((target) => self._observer.observe(target));\n } else self._observer.disconnect();\n\n // dismiss tooltips inside modal / offcanvas\n if (parentModal) {\n action(parentModal, `hide.bs.${modalString}`, self.handleHide);\n }\n if (parentOffcanvas) {\n action(parentOffcanvas, `hide.bs.${offcanvasString}`, self.handleHide);\n }\n};\n\n/**\n * Toggles the `title` and `data-original-title` attributes.\n *\n * @param self the `Tooltip` instance\n * @param content when `true`, event listeners are added\n */\nconst toggleTooltipTitle = (self: Tooltip, content?: string) => {\n // [0 - add, 1 - remove] | [0 - remove, 1 - add]\n const titleAtt = [dataOriginalTitle, titleAttr];\n const { element } = self;\n\n setAttribute(\n element,\n titleAtt[content ? 0 : 1],\n content ||\n getAttribute(element, titleAtt[0]) ||\n // istanbul ignore next @preserve\n \"\",\n );\n removeAttribute(element, titleAtt[content ? 1 : 0]);\n};\n\n// TOOLTIP DEFINITION\n// ==================\n/** Creates a new `Tooltip` instance. */\nexport default class Tooltip extends BaseComponent {\n static selector = tooltipSelector;\n static init = tooltipInitCallback;\n static getInstance = getTooltipInstance;\n static styleTip = styleTip;\n declare element: Element & HTMLOrSVGElement;\n declare options: TooltipOptions;\n declare btn?: HTMLElement;\n declare tooltip: HTMLElement;\n declare container: HTMLElement;\n declare offsetParent: Element | Window;\n declare arrow: HTMLElement;\n declare enabled: boolean;\n declare id: string;\n declare _observer: PositionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n\n const { element } = this;\n const isTooltip = this.name === tooltipComponent;\n const tipString = isTooltip ? tooltipString : popoverString;\n const tipComponent = isTooltip ? tooltipComponent : popoverComponent;\n\n // istanbul ignore next @preserve: this is to set Popover too\n getTooltipInstance = (elem: Element) =>\n getInstance(elem, tipComponent);\n\n // additional properties\n this.enabled = true;\n /** Set unique ID for `aria-describedby`. */\n this.id = `${tipString}-${getUID(element, tipString)}`;\n\n // instance options\n const { options } = this;\n\n // invalidate\n // istanbul ignore else @preserve\n if (((!options.title && isTooltip) || (!isTooltip && !options.content))) {\n return;\n }\n\n // reset default options\n ObjectAssign(tooltipDefaults, { titleAttr: \"\" });\n\n // set title attributes and add event listeners\n // istanbul ignore else @preserve\n if (\n hasAttribute(element, titleAttr) && isTooltip &&\n typeof options.title === \"string\"\n ) {\n toggleTooltipTitle(this, options.title);\n }\n\n // set containers\n const container = getElementContainer(element);\n const offsetParent = [\"sticky\", \"fixed\", \"relative\"].some(\n (position) =>\n getElementStyle(container, \"position\") ===\n position,\n )\n ? container\n : getWindow(element);\n\n this.container = container;\n this.offsetParent = offsetParent;\n\n // create tooltip here\n createTip(this);\n\n /* istanbul ignore if @preserve */\n if (!this.tooltip) return;\n\n // create observer\n this._observer = new PositionObserver(() => this.update());\n\n // attach events\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tooltipComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return tooltipDefaults;\n }\n\n // TOOLTIP PUBLIC METHODS\n // ======================\n /** Handles the focus event on iOS. */\n // istanbul ignore next @preserve - impossible to test without Apple device\n handleFocus = () => focus(this.element as HTMLElement);\n /** Shows the tooltip. */\n handleShow = () => this.show();\n show() {\n const { options, tooltip, element, container, id } = this;\n const { animation } = options;\n const outTimer = Timer.get(element, \"out\");\n\n Timer.clear(element, \"out\");\n\n if (tooltip && !outTimer && !hasTip(this)) {\n Timer.set(\n element,\n () => {\n const showTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `show.bs.${toLowerCase(this.name)}`,\n );\n dispatchEvent(element, showTooltipEvent);\n\n // istanbul ignore else @preserve\n if (!showTooltipEvent.defaultPrevented) {\n // append to container\n appendPopup(tooltip, container);\n\n setAttribute(element, ariaDescribedBy, `#${id}`);\n\n this.update();\n toggleTooltipOpenHandlers(this, true);\n\n // istanbul ignore else @preserve\n if (!hasClass(tooltip, showClass)) addClass(tooltip, showClass);\n // istanbul ignore else @preserve\n if (animation) {\n emulateTransitionEnd(tooltip, () => tooltipShownAction(this));\n } else tooltipShownAction(this);\n }\n },\n 17,\n \"in\",\n );\n }\n }\n\n /** Hides the tooltip. */\n handleHide = () => this.hide();\n hide() {\n const { options, tooltip, element } = this;\n const { animation, delay } = options;\n\n Timer.clear(element, \"in\");\n\n // istanbul ignore else @preserve\n if (tooltip && hasTip(this)) {\n Timer.set(\n element,\n () => {\n const hideTooltipEvent = createCustomEvent<\n Record,\n TooltipEvent | PopoverEvent\n >(\n `hide.bs.${toLowerCase(this.name)}`,\n );\n dispatchEvent(element, hideTooltipEvent);\n\n // istanbul ignore else @preserve\n if (!hideTooltipEvent.defaultPrevented) {\n this.update();\n removeClass(tooltip, showClass);\n toggleTooltipOpenHandlers(this);\n\n // istanbul ignore else @preserve\n if (animation) {\n emulateTransitionEnd(tooltip, () => tooltipHiddenAction(this));\n } else tooltipHiddenAction(this);\n }\n },\n delay + 17,\n \"out\",\n );\n }\n }\n\n /** Updates the tooltip position. */\n update = () => {\n styleTip(this);\n };\n\n /** Toggles the tooltip visibility. */\n toggle = () => {\n const { tooltip } = this;\n\n if (tooltip && !hasTip(this)) this.show();\n else this.hide();\n };\n\n /** Enables the tooltip. */\n enable() {\n const { enabled } = this;\n // istanbul ignore else @preserve\n if (!enabled) {\n this._toggleEventListeners(true);\n this.enabled = !enabled;\n }\n }\n\n /** Disables the tooltip. */\n disable() {\n const { tooltip, enabled } = this;\n // istanbul ignore else @preserve\n if (enabled) {\n if (tooltip && hasTip(this)) this.hide();\n this._toggleEventListeners();\n this.enabled = !enabled;\n }\n }\n\n /** Toggles the `disabled` property. */\n toggleEnabled() {\n if (!this.enabled) this.enable();\n else this.disable();\n }\n\n /**\n * Handles the `touchstart` event listener for `Tooltip`\n *\n * @this {Tooltip}\n * @param {TouchEvent} e the `Event` object\n */\n handleTouch = ({ target }: TouchEvent) => {\n const { tooltip, element } = this;\n\n // istanbul ignore if @preserve\n if (\n (tooltip && tooltip.contains(target)) ||\n target === element ||\n (target && element.contains(target))\n ) {\n // smile for ESLint\n } else {\n this.hide();\n }\n };\n\n /**\n * Toggles on/off the `Tooltip` event listeners.\n *\n * @param add when `true`, event listeners are added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n // btn is only for dismissible popover\n const { element, options, btn } = this;\n const { trigger } = options;\n const isPopover = this.name !== tooltipComponent;\n const dismissible = isPopover && (options as PopoverOptions).dismissible\n ? true\n : false;\n\n // istanbul ignore else @preserve\n if (!trigger.includes(\"manual\")) {\n this.enabled = !!add;\n\n const triggerOptions = trigger.split(\" \");\n\n triggerOptions.forEach((tr) => {\n // istanbul ignore else @preserve\n if (tr === mousehoverEvent) {\n action(element, mousedownEvent, this.handleShow);\n action(element, mouseenterEvent, this.handleShow);\n\n // istanbul ignore else @preserve\n if (!dismissible) {\n action(element, mouseleaveEvent, this.handleHide);\n action(\n getDocument(element),\n touchstartEvent,\n this.handleTouch,\n passiveHandler,\n );\n }\n } else if (tr === mouseclickEvent) {\n action(element, tr, !dismissible ? this.toggle : this.handleShow);\n } else if (tr === focusEvent) {\n action(element, focusinEvent, this.handleShow);\n // istanbul ignore else @preserve\n if (!dismissible) action(element, focusoutEvent, this.handleHide);\n // istanbul ignore else @preserve\n if (isApple()) {\n action(element, mouseclickEvent, this.handleFocus);\n }\n }\n // istanbul ignore else @preserve\n if (dismissible && btn) {\n action(btn, mouseclickEvent, this.handleHide);\n }\n });\n }\n };\n\n /** Removes the `Tooltip` from the target element. */\n dispose() {\n const { tooltip, options } = this;\n const clone = { ...this, name: this.name };\n const callback = () =>\n setTimeout(\n () => disposeTooltipComplete(clone, () => super.dispose()),\n 17,\n );\n\n if (options.animation && hasTip(clone)) {\n this.options.delay = 0; // reset delay\n this.hide();\n emulateTransitionEnd(tooltip, callback);\n } else {\n callback();\n }\n }\n}\n"],"names":["popoverString","popoverComponent","tooltipString","getTipTemplate","tipType","isTooltip","bodyClass","header","arrow","body","tipClassPositions","styleTip","self","tipClasses","element","tooltip","container","offsetParent","options","RTL","isRTL","scrollLeft","scrollTop","getNodeScroll","setElementStyle","tipWidth","tipHeight","htmlcw","htmlch","htmlow","getDocumentElement","placement","parentCWidth","parentOWidth","fixedParent","getElementStyle","scrollbarWidth","leftBoundry","rightBoundry","observerEntry","elemWidth","elemHeight","elemRectLeft","elemRectRight","elemRectTop","getBoundingClientRect","elemOffsetLeft","elemOffsetTop","getRectRelativeToOffsetParent","topPosition","bottomPosition","leftPosition","rightPosition","arrowTop","arrowLeft","arrowRight","arrowWidth","arrowHeight","arrowAdjust","topExceed","bottomExceed","leftExceed","rightExceed","horizontals","verticals","isHTMLElement","updatedTooltipEvent","createCustomEvent","toLowerCase","dispatchEvent","tooltipDefaults","dataOriginalTitle","tooltipComponent","setHtml","content","sanitizeFn","isString","dirty","isFunction","tempDocument","isNodeList","isArray","isNode","createTip","id","title","template","animation","customClass","dismissible","btnClose","tipString","tipPositions","titleParts","contentParts","placementClass","tooltipTemplate","htmlMarkup","createElement","setAttribute","tooltipHeader","querySelector","tooltipBody","tempTitle","tempContent","tempBtn","addClass","hasClass","fadeClass","getElementContainer","majorBlockTags","containers","parentNode","getParentNode","isShadowRoot","isTableElement","c","i","r","getDocument","tooltipSelector","dataBsToggle","titleAttr","getTooltipInstance","getInstance","tooltipInitCallback","Tooltip","removeTooltip","removeAttribute","ariaDescribedBy","removePopup","hasTip","hasPopup","disposeTooltipComplete","callback","hasAttribute","toggleTooltipTitle","toggleTooltipAction","add","action","addListener","removeListener","touchstartEvent","passiveHandler","tooltipShownAction","shownTooltipEvent","Timer","tooltipHiddenAction","hiddenTooltipEvent","toggleTooltipOpenHandlers","parentModal","closest","modalString","parentOffcanvas","offcanvasString","target","titleAtt","getAttribute","BaseComponent","config","tipComponent","elem","getUID","ObjectAssign","position","getWindow","PositionObserver","focus","outTimer","showTooltipEvent","appendPopup","showClass","emulateTransitionEnd","delay","hideTooltipEvent","removeClass","enabled","btn","trigger","tr","mousehoverEvent","mousedownEvent","mouseenterEvent","mouseleaveEvent","mouseclickEvent","focusEvent","focusinEvent","focusoutEvent","isApple","clone"],"mappings":"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"} \ No newline at end of file diff --git a/dist/components/tooltip.cjs b/dist/components/tooltip.cjs index 1ecff0b1..f5aa1b66 100644 --- a/dist/components/tooltip.cjs +++ b/dist/components/tooltip.cjs @@ -1,2 +1 @@ -"use strict";require("./base-component-_c7CmBvl.js");require("./index-DgzRtWFW.js");require("./dataBsToggle-Dj-Ng54N.js");const e=require("./tooltip-Dh4nNEki.js");require("./showClass-D_Ms1FgG.js");require("./popupContainer-Dxpyo8Ll.js");module.exports=e.Tooltip; -//# sourceMappingURL=tooltip.cjs.map +require(`./base-component-LPll9cLQ.js`),require(`./dist-CtVym8U0.js`),require(`./popupContainer-DocKVrIM.js`);const e=require(`./tooltip-BUNhKri3.js`);module.exports=e.t; \ No newline at end of file diff --git a/dist/components/tooltip.cjs.map b/dist/components/tooltip.cjs.map deleted file mode 100644 index 3241007b..00000000 --- a/dist/components/tooltip.cjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tooltip.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""} \ No newline at end of file diff --git a/dist/components/tooltip.mjs b/dist/components/tooltip.mjs index 230645d4..8e5ef789 100644 --- a/dist/components/tooltip.mjs +++ b/dist/components/tooltip.mjs @@ -1,10 +1,5 @@ -import "./base-component-BazRqYWL.mjs"; -import "./index-K6w9MeGG.mjs"; -import "./dataBsToggle-B84TS15h.mjs"; -import { T as e } from "./tooltip-BL2s6EHC.mjs"; -import "./showClass-C8hdJfjQ.mjs"; -import "./popupContainer-Dhe1NpFt.mjs"; -export { - e as default -}; -//# sourceMappingURL=tooltip.mjs.map +import "./base-component-Bm8KwB_I.mjs"; +import "./dist-CAr49AgA.mjs"; +import "./popupContainer-cXLEqUgV.mjs"; +import { t as e } from "./tooltip-D4dIPTdQ.mjs"; +export { e as default }; diff --git a/dist/components/tooltip.mjs.map b/dist/components/tooltip.mjs.map deleted file mode 100644 index 05174b08..00000000 --- a/dist/components/tooltip.mjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tooltip.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"} \ No newline at end of file diff --git a/docs/assets/js/bootstrap-native.js b/docs/assets/js/bootstrap-native.js index ac797c06..83d0aed7 100755 --- a/docs/assets/js/bootstrap-native.js +++ b/docs/assets/js/bootstrap-native.js @@ -1,2 +1,2 @@ -var BSN=(function(N){"use strict";const Ms="aria-describedby",ue="aria-expanded",qt="aria-hidden",ge="aria-modal",Bs="aria-pressed",Le="aria-selected",Oe="focus",ke="focusin",Rs="focusout",pe="keydown",Wo="keyup",D="click",Fs="mousedown",jo="hover",me="mouseenter",Ne="mouseleave",Ws="pointerdown",zo="pointermove",Ko="pointerup",ve="touchstart",Vo="dragstart",Xo='a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]',Me="ArrowDown",Be="ArrowUp",js="ArrowLeft",zs="ArrowRight",Re="Escape",qo="transitionDuration",Uo="transitionDelay",Fe="transitionend",Ks="transitionProperty",Vs=()=>{const e=/iPhone|iPad|iPod|Android/i;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},Yo=()=>{const e=/(iPhone|iPod|iPad)/;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},be=()=>{},Zo=(e,t,s,n)=>{e.addEventListener(t,s,!1)},Qo=(e,t,s,n)=>{e.removeEventListener(t,s,!1)},U=(e,t)=>e.getAttribute(t),Ut=(e,t)=>e.hasAttribute(t),I=(e,t,s)=>e.setAttribute(t,s),yt=(e,t)=>e.removeAttribute(t),d=(e,...t)=>{e.classList.add(...t)},v=(e,...t)=>{e.classList.remove(...t)},h=(e,t)=>e.classList.contains(t),Yt=e=>e!=null&&typeof e=="object"||!1,P=e=>Yt(e)&&typeof e.nodeType=="number"&&[1,2,3,4,5,6,7,8,9,10,11].some(t=>e.nodeType===t)||!1,j=e=>P(e)&&e.nodeType===1||!1,Rt=new Map,Ct={data:Rt,set:(e,t,s)=>{j(e)&&(Rt.has(t)||Rt.set(t,new Map),Rt.get(t).set(e,s))},getAllFor:e=>Rt.get(e)||null,get:(e,t)=>{if(!j(e)||!t)return null;const s=Ct.getAllFor(t);return e&&s&&s.get(e)||null},remove:(e,t)=>{const s=Ct.getAllFor(t);!s||!j(e)||(s.delete(e),s.size===0&&Rt.delete(t))}},R=(e,t)=>Ct.get(e,t),Xs=e=>e?.trim().replace(/(?:^\w|[A-Z]|\b\w)/g,(t,s)=>s===0?t.toLowerCase():t.toUpperCase()).replace(/\s+/g,""),Zt=e=>typeof e=="string"||!1,qs=e=>Yt(e)&&e.constructor.name==="Window"||!1,Us=e=>P(e)&&e.nodeType===9||!1,b=e=>Us(e)?e:P(e)?e.ownerDocument:qs(e)?e.document:globalThis.document,rt=(e,...t)=>Object.assign(e,...t),ut=e=>{if(!e)return;if(Zt(e))return b().createElement(e);const{tagName:t}=e,s=ut(t);if(!s)return;const n={...e};return delete n.tagName,rt(s,n)},w=(e,t)=>e.dispatchEvent(t),F=(e,t,s)=>{const n=getComputedStyle(e,s),o=t.replace("webkit","Webkit").replace(/([A-Z])/g,"-$1").toLowerCase();return n.getPropertyValue(o)},Go=e=>{const t=F(e,Ks),s=F(e,Uo),n=s.includes("ms")?1:1e3,o=t&&t!=="none"?parseFloat(s)*n:0;return Number.isNaN(o)?0:o},Qt=e=>{const t=F(e,Ks),s=F(e,qo),n=s.includes("ms")?1:1e3,o=t&&t!=="none"?parseFloat(s)*n:0;return Number.isNaN(o)?0:o},_=(e,t)=>{let s=0;const n=new Event(Fe),o=Qt(e),i=Go(e);if(o){const r=a=>{a.target===e&&(t.apply(e,[a]),e.removeEventListener(Fe,r),s=1)};e.addEventListener(Fe,r),setTimeout(()=>{s||w(e,n)},o+i+17)}else t.apply(e,[n])},at=(e,t)=>e.focus(t),Ys=e=>["true",!0].includes(e)?!0:["false",!1].includes(e)?!1:["null","",null,void 0].includes(e)?null:e!==""&&!Number.isNaN(+e)?+e:e,we=e=>Object.entries(e),Jo=(e,t,s,n)=>{if(!j(e))return t;const o={...s},i={...e.dataset},r={...t},a={},c="title";return we(i).forEach(([l,f])=>{const p=typeof l=="string"&&l.includes(n)?Xs(l.replace(n,"")):Xs(l);a[p]=Ys(f)}),we(o).forEach(([l,f])=>{o[l]=Ys(f)}),we(t).forEach(([l,f])=>{l in o?r[l]=o[l]:l in a?r[l]=a[l]:r[l]=l===c?U(e,c):f}),r},Zs=e=>Object.keys(e),E=(e,t)=>{const s=new CustomEvent(e,{cancelable:!0,bubbles:!0});return Yt(t)&&rt(s,t),s},Gt={passive:!0},_t=e=>e.offsetHeight,S=(e,t)=>{we(t).forEach(([s,n])=>{if(n&&Zt(s)&&s.includes("--"))e.style.setProperty(s,n);else{const o={};o[s]=n,rt(e.style,o)}})},We=e=>Yt(e)&&e.constructor.name==="Map"||!1,ti=e=>typeof e=="number"||!1,gt=new Map,u={set:(e,t,s,n)=>{j(e)&&(n&&n.length?(gt.has(e)||gt.set(e,new Map),gt.get(e).set(n,setTimeout(t,s))):gt.set(e,setTimeout(t,s)))},get:(e,t)=>{if(!j(e))return null;const s=gt.get(e);return t&&s&&We(s)?s.get(t)||null:ti(s)?s:null},clear:(e,t)=>{if(!j(e))return;const s=gt.get(e);t&&t.length&&We(s)?(clearTimeout(s.get(t)),s.delete(t),s.size===0&>.delete(e)):(clearTimeout(s),gt.delete(e))}},Jt=e=>e.toLowerCase(),Y=(e,t)=>(P(t)?t:b()).querySelectorAll(e),je=new Map;function Qs(e){const{shiftKey:t,code:s}=e,n=b(this),o=[...Y(Xo,this)].filter(a=>!Ut(a,"disabled")&&!U(a,qt));if(!o.length)return;const i=o[0],r=o[o.length-1];s==="Tab"&&(t&&n.activeElement===i?(r.focus(),e.preventDefault()):!t&&n.activeElement===r&&(i.focus(),e.preventDefault()))}const ze=e=>je.has(e)===!0,ei=e=>{ze(e)||(Zo(e,"keydown",Qs),je.set(e,!0))},si=e=>{ze(e)&&(Qo(e,"keydown",Qs),je.delete(e))},Ee=e=>{ze(e)?si(e):ei(e)},H=e=>j(e)&&"offsetWidth"in e||!1,St=(e,t)=>{const{width:s,height:n,top:o,right:i,bottom:r,left:a}=e.getBoundingClientRect();let c=1,l=1;if(t&&H(e)){const{offsetWidth:f,offsetHeight:p}=e;c=f>0?Math.round(s)/f:1,l=p>0?Math.round(n)/p:1}return{width:s/c,height:n/l,top:o/l,right:i/c,bottom:r/l,left:a/c,x:a/c,y:o/l}},At=e=>b(e).body,ct=e=>b(e).documentElement,ni=e=>{const t=qs(e),s=t?e.scrollX:e.scrollLeft,n=t?e.scrollY:e.scrollTop;return{x:s,y:n}},Gs=e=>P(e)&&e.constructor.name==="ShadowRoot"||!1,oi=e=>e.nodeName==="HTML"?e:j(e)&&e.assignedSlot||P(e)&&e.parentNode||Gs(e)&&e.host||ct(e),Js=e=>e?Us(e)?e.defaultView:P(e)?e?.ownerDocument?.defaultView:e:window,ii=e=>P(e)&&["TABLE","TD","TH"].includes(e.nodeName)||!1,tn=(e,t)=>e.matches(t),ri=e=>{if(!H(e))return!1;const{width:t,height:s}=St(e),{offsetWidth:n,offsetHeight:o}=e;return Math.round(t)!==n||Math.round(s)!==o},ai=(e,t,s)=>{const n=H(t),o=St(e,n&&ri(t)),i={x:0,y:0};if(n){const r=St(t,!0);i.x=r.x+t.clientLeft,i.y=r.y+t.clientTop}return{x:o.left+s.x-i.x,y:o.top+s.y-i.y,width:o.width,height:o.height}};let en=0,sn=0;const Ft=new Map,nn=(e,t)=>{let s=t?en:sn;if(t){const n=nn(e),o=Ft.get(n)||new Map;Ft.has(n)||Ft.set(n,o),We(o)&&!o.has(t)?(o.set(t,s),en+=1):s=o.get(t)}else{const n=e.id||e;Ft.has(n)?s=Ft.get(n):(Ft.set(n,s),sn+=1)}return s},ci=e=>Array.isArray(e)||!1,on=e=>{if(!P(e))return!1;const{top:t,bottom:s}=St(e),{clientHeight:n}=ct(e);return t<=n&&s>=0},rn=e=>typeof e=="function"||!1,li=e=>Yt(e)&&e.constructor.name==="NodeList"||!1,pt=e=>ct(e).dir==="rtl",M=(e,t)=>!e||!t?null:e.closest(t)||M(e.getRootNode().host,t)||null,A=(e,t)=>j(e)?e:(j(t)?t:b()).querySelector(e),Ke=(e,t)=>(P(t)?t:b()).getElementsByTagName(e),di=(e,t)=>b(t).getElementById(e),lt=(e,t)=>(t&&P(t)?t:b()).getElementsByClassName(e),Wt={},an=e=>{const{type:t,currentTarget:s}=e;Wt[t].forEach((n,o)=>{s===o&&n.forEach((i,r)=>{r.apply(o,[e]),typeof i=="object"&&i.once&&O(o,t,r,i)})})},L=(e,t,s,n)=>{Wt[t]||(Wt[t]=new Map);const o=Wt[t];o.has(e)||o.set(e,new Map);const i=o.get(e),{size:r}=i;i.set(s,n),r||e.addEventListener(t,an,n)},O=(e,t,s,n)=>{const o=Wt[t],i=o&&o.get(e),r=i&&i.get(s),a=r!==void 0?r:n;i&&i.has(s)&&i.delete(s),o&&(!i||!i.size)&&o.delete(e),(!o||!o.size)&&delete Wt[t],(!i||!i.size)&&e.removeEventListener(t,an,a)},k="fade",g="show",Te="data-bs-dismiss",$e="alert",cn="Alert",ot=e=>h(e,"disabled")||U(e,"disabled")==="true",hi="5.1.6";class J{constructor(t,s){let n;try{if(j(t))n=t;else if(Zt(t)){if(n=A(t),!n)throw Error(`"${t}" is not a valid selector.`)}else throw Error("your target is not an instance of HTMLElement.")}catch(i){throw Error(`${this.name} Error: ${i.message}`)}const o=Ct.get(n,this.name);o&&o._toggleEventListeners(),this.element=n,this.options=this.defaults&&Zs(this.defaults).length?Jo(n,this.defaults,s||{},"bs"):{},Ct.set(n,this.name,this)}get version(){return hi}get name(){return"BaseComponent"}get defaults(){return{}}_toggleEventListeners=()=>{};dispose(){Ct.remove(this.element,this.name),Zs(this).forEach(t=>{delete this[t]})}}const fi=`.${$e}`,ui=`[${Te}="${$e}"]`,gi=e=>R(e,cn),pi=e=>new Ve(e),ln=E(`close.bs.${$e}`),mi=E(`closed.bs.${$e}`),dn=e=>{const{element:t}=e;w(t,mi),e._toggleEventListeners(),e.dispose(),t.remove()};class Ve extends J{static selector=fi;static init=pi;static getInstance=gi;dismiss;constructor(t){super(t),this.dismiss=A(ui,this.element),this._toggleEventListeners(!0)}get name(){return cn}close=t=>{const{element:s,dismiss:n}=this;!s||!h(s,g)||t&&n&&ot(n)||(w(s,ln),!ln.defaultPrevented&&(v(s,g),h(s,k)?_(s,()=>dn(this)):dn(this)))};_toggleEventListeners=t=>{const s=t?L:O,{dismiss:n,close:o}=this;n&&s(n,D,o)};dispose(){this._toggleEventListeners(),super.dispose()}}const T="active",it="data-bs-toggle",vi="button",hn="Button",bi=`[${it}="${vi}"]`,wi=e=>R(e,hn),Ei=e=>new Xe(e);class Xe extends J{static selector=bi;static init=Ei;static getInstance=wi;constructor(t){super(t);const{element:s}=this;this.isActive=h(s,T),I(s,Bs,String(!!this.isActive)),this._toggleEventListeners(!0)}get name(){return hn}toggle=t=>{t&&t.preventDefault();const{element:s,isActive:n}=this;if(ot(s))return;(n?v:d)(s,T),I(s,Bs,n?"false":"true"),this.isActive=h(s,T)};_toggleEventListeners=t=>{(t?L:O)(this.element,D,this.toggle)};dispose(){this._toggleEventListeners(),super.dispose()}}const qe="data-bs-target",Pt="carousel",fn="Carousel",un="data-bs-parent",Ti="data-bs-container",z=e=>{const t=[qe,un,Ti,"href"],s=b(e);return t.map(n=>{const o=U(e,n);return o?n===un?M(e,o):A(o,s):null}).filter(n=>n)[0]},te=`[data-bs-ride="${Pt}"]`,tt=`${Pt}-item`,Ue="data-bs-slide-to",mt="data-bs-slide",vt="paused",$i=Vs()?ve:Ws;console.log({isMobile:Vs(),touchEvent:$i});const gn={pause:"hover",keyboard:!1,touch:!0,interval:5e3},dt=e=>R(e,fn),yi=e=>new ts(e);let ee=0,ye=0,Ye=0;const Ze=E(`slide.bs.${Pt}`),Qe=E(`slid.bs.${Pt}`),pn=e=>{const{index:t,direction:s,element:n,slides:o,options:i}=e;if(e.isAnimating){const r=Je(e),a=s==="left"?"next":"prev",c=s==="left"?"start":"end";d(o[t],T),v(o[t],`${tt}-${a}`),v(o[t],`${tt}-${c}`),v(o[r],T),v(o[r],`${tt}-${c}`),w(n,Qe),u.clear(n,mt),e.cycle&&!b(n).hidden&&i.interval&&!e.isPaused&&e.cycle()}};function Ci(){const e=dt(this);e&&!e.isPaused&&!u.get(this,vt)&&d(this,vt)}function _i(){const e=dt(this);e&&e.isPaused&&!u.get(this,vt)&&e.cycle()}function Si(e){e.preventDefault();const t=M(this,te)||z(this),s=t&&dt(t);if(ot(this)||!s||s.isAnimating)return;const n=+(U(this,Ue)||0);this&&!h(this,T)&&!Number.isNaN(n)&&s.to(n)}function Ai(e){e.preventDefault();const t=M(this,te)||z(this),s=t&&dt(t);if(ot(this)||!s||s.isAnimating)return;const n=U(this,mt);n==="next"?s.next():n==="prev"&&s.prev()}const Pi=({code:e,target:t})=>{const s=b(t),[n]=[...Y(te,s)].filter(c=>on(c)),o=dt(n);if(!o||o.isAnimating||/textarea|input|select/i.test(t.nodeName))return;const i=pt(n);e===(i?zs:js)?o.prev():e===(i?js:zs)&&o.next()};function mn(e){const{target:t}=e,s=dt(this);s&&s.isTouch&&!s.controls.includes(t)&&!s.controls.includes(t?.parentElement)&&(!s.indicator||!s.indicator.contains(t))&&e.preventDefault()}function Hi(e){const{target:t}=e,s=dt(this);if(!s||s.isAnimating||s.isTouch)return;const{controls:n,indicator:o}=s;![...n,o].every(i=>i&&(i===t||i.contains(t)))&&this.contains(t)&&(ee=e.pageX,s.isTouch=!0,vn(s,!0))}const xi=e=>{ye=e.pageX},Di=e=>{const{target:t}=e,s=b(t),n=[...Y(te,s)].map(a=>dt(a)).find(a=>a.isTouch);if(!n)return;const{element:o,index:i}=n,r=pt(o);Ye=e.pageX,n.isTouch=!1,vn(n),!s.getSelection()?.toString().length&&o.contains(t)&&Math.abs(ee-Ye)>120&&(yeee&&n.to(i+(r?1:-1))),ee=0,ye=0,Ye=0},Ge=(e,t)=>{const{indicators:s}=e;[...s].forEach(n=>v(n,T)),e.indicators[t]&&d(s[t],T)},vn=(e,t)=>{const{element:s}=e,n=t?L:O;n(b(s),zo,xi,Gt),n(b(s),Ko,Di,Gt)},Je=e=>{const{slides:t,element:s}=e,n=A(`.${tt}.${T}`,s);return n?[...t].indexOf(n):-1};class ts extends J{static selector=te;static init=yi;static getInstance=dt;constructor(t,s){super(t,s);const{element:n}=this;this.direction=pt(n)?"right":"left",this.isTouch=!1,this.slides=lt(tt,n);const{slides:o}=this;if(o.length<2)return;const i=Je(this),r=[...o].find(l=>tn(l,`.${tt}-next`));this.index=i;const a=b(n);this.controls=[...Y(`[${mt}]`,n),...Y(`[${mt}][${qe}="#${n.id}"]`,a)].filter((l,f,p)=>f===p.indexOf(l)),this.indicator=A(`.${Pt}-indicators`,n),this.indicators=[...this.indicator?Y(`[${Ue}]`,this.indicator):[],...Y(`[${Ue}][${qe}="#${n.id}"]`,a)].filter((l,f,p)=>f===p.indexOf(l));const{options:c}=this;this.options.interval=c.interval===!0?gn.interval:c.interval,r?this.index=[...o].indexOf(r):i<0&&(this.index=0,d(o[0],T),this.indicators.length&&Ge(this,0)),this.indicators.length&&Ge(this,this.index),this._toggleEventListeners(!0),c.interval&&this.cycle()}get name(){return fn}get defaults(){return gn}get isPaused(){return h(this.element,vt)}get isAnimating(){return A(`.${tt}-next,.${tt}-prev`,this.element)!==null}cycle(){const{element:t,options:s,isPaused:n,index:o}=this;u.clear(t,Pt),n&&(u.clear(t,vt),v(t,vt)),u.set(t,()=>{this.element&&!this.isPaused&&!this.isTouch&&on(t)&&this.to(o+1)},s.interval,Pt)}pause(){const{element:t,options:s}=this;this.isPaused||!s.interval||(d(t,vt),u.set(t,()=>{},1,vt))}next(){this.isAnimating||this.to(this.index+1)}prev(){this.isAnimating||this.to(this.index-1)}to(t){const{element:s,slides:n,options:o}=this,i=Je(this),r=pt(s);let a=t;if(this.isAnimating||i===a||u.get(s,mt))return;ia||i===n.length-1&&a===0)&&(this.direction=r?"left":"right");const{direction:c}=this;a<0?a=n.length-1:a>=n.length&&(a=0);const l=c==="left"?"next":"prev",f=c==="left"?"start":"end",p={relatedTarget:n[a],from:i,to:a,direction:c};rt(Ze,p),rt(Qe,p),w(s,Ze),!Ze.defaultPrevented&&(this.index=a,Ge(this,a),Qt(n[a])&&h(s,"slide")?u.set(s,()=>{d(n[a],`${tt}-${l}`),_t(n[a]),d(n[a],`${tt}-${f}`),d(n[i],`${tt}-${f}`),_(n[a],()=>this.slides&&this.slides.length&&pn(this))},0,mt):(d(n[a],T),v(n[i],T),u.set(s,()=>{u.clear(s,mt),s&&o.interval&&!this.isPaused&&this.cycle(),w(s,Qe)},0,mt)))}_toggleEventListeners=t=>{const{element:s,options:n,slides:o,controls:i,indicators:r}=this,{touch:a,pause:c,interval:l,keyboard:f}=n,p=t?L:O;c&&l&&(p(s,me,Ci),p(s,Ne,_i)),a&&o.length>2&&(p(s,Ws,Hi,Gt),p(s,ve,mn,{passive:!1}),p(s,Vo,mn,{passive:!1})),i.length&&i.forEach(y=>{p(y,D,Ai)}),r.length&&r.forEach(y=>{p(y,D,Si)}),f&&p(b(s),pe,Pi)};dispose(){const{isAnimating:t}=this,s={...this,isAnimating:t};this._toggleEventListeners(),super.dispose(),s.isAnimating&&_(s.slides[s.index],()=>{pn(s)})}}const Ht="collapsing",K="collapse",bn="Collapse",Ii=`.${K}`,wn=`[${it}="${K}"]`,Li={parent:null},Ce=e=>R(e,bn),Oi=e=>new es(e),En=E(`show.bs.${K}`),ki=E(`shown.bs.${K}`),Tn=E(`hide.bs.${K}`),Ni=E(`hidden.bs.${K}`),Mi=e=>{const{element:t,parent:s,triggers:n}=e;w(t,En),En.defaultPrevented||(u.set(t,be,17),s&&u.set(s,be,17),d(t,Ht),v(t,K),S(t,{height:`${t.scrollHeight}px`}),_(t,()=>{u.clear(t),s&&u.clear(s),n.forEach(o=>I(o,ue,"true")),v(t,Ht),d(t,K),d(t,g),S(t,{height:""}),w(t,ki)}))},$n=e=>{const{element:t,parent:s,triggers:n}=e;w(t,Tn),Tn.defaultPrevented||(u.set(t,be,17),s&&u.set(s,be,17),S(t,{height:`${t.scrollHeight}px`}),v(t,K),v(t,g),d(t,Ht),_t(t),S(t,{height:"0px"}),_(t,()=>{u.clear(t),s&&u.clear(s),n.forEach(o=>I(o,ue,"false")),v(t,Ht),d(t,K),S(t,{height:""}),w(t,Ni)}))},Bi=e=>{const{target:t}=e,s=t&&M(t,wn),n=s&&z(s),o=n&&Ce(n);s&&ot(s)||o&&(o.toggle(),s?.tagName==="A"&&e.preventDefault())};class es extends J{static selector=Ii;static init=Oi;static getInstance=Ce;constructor(t,s){super(t,s);const{element:n,options:o}=this,i=b(n);this.triggers=[...Y(wn,i)].filter(r=>z(r)===n),this.parent=H(o.parent)?o.parent:Zt(o.parent)?z(n)||A(o.parent,i):null,this._toggleEventListeners(!0)}get name(){return bn}get defaults(){return Li}hide(){const{triggers:t,element:s}=this;u.get(s)||($n(this),t.length&&t.forEach(n=>d(n,`${K}d`)))}show(){const{element:t,parent:s,triggers:n}=this;let o,i;s&&(o=[...Y(`.${K}.${g}`,s)].find(r=>Ce(r)),i=o&&Ce(o)),(!s||!u.get(s))&&!u.get(t)&&(i&&o!==t&&($n(i),i.triggers.forEach(r=>{d(r,`${K}d`)})),Mi(this),n.length&&n.forEach(r=>v(r,`${K}d`)))}toggle(){h(this.element,g)?this.hide():this.show()}_toggleEventListeners=t=>{const s=t?L:O,{triggers:n}=this;n.length&&n.forEach(o=>{s(o,D,Bi)})};dispose(){this._toggleEventListeners(),super.dispose()}}var Ri="1.1.0";const Fi=["all","intersecting","update"],yn="PositionObserver Error";var ss=class{entries;static version=Ri;_t;_r;_cm;_w;_h;_rm;_th;_c;constructor(e,t){if(!rn(e))throw new Error(`${yn}: ${e} is not a function.`);this.entries=new Map,this._c=e,this._t=0;const s=j(t?.root)?t.root:document?.documentElement;this._r=s,this._rm=t?.rootMargin,this._th=t?.threshold;this._cm=Fi.indexOf(t?.callbackMode||"intersecting"),this._w=s.clientWidth,this._h=s.clientHeight}observe=e=>{if(!j(e))throw new Error(`${yn}: ${e} is not an instance of Element.`);this._r.contains(e)&&this._n(e).then(t=>{t.boundingClientRect&&!this.getEntry(e)&&this.entries.set(e,t);this._t||(this._t=requestAnimationFrame(this._rc))})};unobserve=e=>{this.entries.has(e)&&this.entries.delete(e)};_rc=()=>{if(!this.entries.size){this._t=0;return}const{clientWidth:e,clientHeight:t}=this._r,s=new Promise(n=>{const o=[];this.entries.forEach(({target:i,boundingClientRect:r,isIntersecting:a})=>{this._r.contains(i)&&this._n(i).then(c=>{if(!c.isIntersecting){if(this._cm===1)return;if(this._cm===2){a&&(this.entries.set(i,c),o.push(c));return}}const{left:l,top:f}=c.boundingClientRect;(r.top!==f||r.left!==l||this._w!==e||this._h!==t)&&(this.entries.set(i,c),o.push(c))})}),this._w=e,this._h=t,n(o)});this._t=requestAnimationFrame(async()=>{const n=await s;n.length&&this._c(n,this),this._rc()})};_n=e=>new Promise(t=>{new IntersectionObserver(([n],o)=>{o.disconnect(),t(n)},{threshold:this._th,rootMargin:this._rm}).observe(e)});getEntry=e=>this.entries.get(e);disconnect=()=>{cancelAnimationFrame(this._t),this.entries.clear(),this._t=0}};const xt=["dropdown","dropup","dropstart","dropend"],Cn="Dropdown",_n="dropdown-menu",Sn=e=>{const t=M(e,"A");return e.tagName==="A"&&Ut(e,"href")&&U(e,"href")?.slice(-1)==="#"||t&&Ut(t,"href")&&U(t,"href")?.slice(-1)==="#"},[et,ns,os,is]=xt,Wi=`[${it}="${et}"]`,se=e=>R(e,Cn),ji=e=>new ls(e),zi=`${_n}-end`,An=[et,ns],Pn=[os,is],Hn=["A","BUTTON"],Ki={offset:5,display:"dynamic"},rs=E(`show.bs.${et}`),xn=E(`shown.bs.${et}`),as=E(`hide.bs.${et}`),Dn=E(`hidden.bs.${et}`),In=E(`updated.bs.${et}`),Ln=e=>{const{element:t,menu:s,parentElement:n,options:o}=e,{offset:i}=o;if(F(s,"position")==="static")return;const r=pt(t),a=h(s,zi);["margin","top","bottom","left","right"].forEach(W=>{const Nt={};Nt[W]="",S(s,Nt)});let l=xt.find(W=>h(n,W))||et;const f={dropdown:[i,0,0],dropup:[0,0,i],dropstart:r?[-1,0,0,i]:[-1,i,0],dropend:r?[-1,i,0]:[-1,0,0,i]},p={dropdown:{top:"100%"},dropup:{top:"auto",bottom:"100%"},dropstart:r?{left:"100%",right:"auto"}:{left:"auto",right:"100%"},dropend:r?{left:"auto",right:"100%"}:{left:"100%",right:"auto"},menuStart:r?{right:"0",left:"auto"}:{right:"auto",left:"0"},menuEnd:r?{right:"auto",left:"0"}:{right:"0",left:"auto"}},{offsetWidth:y,offsetHeight:B}=s,{clientWidth:G,clientHeight:st}=ct(t),{left:m,top:q,width:Ot,height:kt}=St(t),C=m-y-i<0,Et=m+y+Ot+i>=G,ft=q+B+i>=st,nt=q+B+kt+i>=st,zt=q-B-i<0,$=(!r&&a||r&&!a)&&m+Ot-y<0,V=(r&&a||!r&&!a)&&m+y>=G;if(Pn.includes(l)&&C&&Et&&(l=et),l===os&&(r?Et:C)&&(l=is),l===is&&(r?C:Et)&&(l=os),l===ns&&zt&&!nt&&(l=et),l===et&&nt&&!zt&&(l=ns),Pn.includes(l)&&ft&&rt(p[l],{top:"auto",bottom:0}),An.includes(l)&&($||V)){let W={left:"auto",right:"auto"};!$&&V&&!r&&(W={left:"auto",right:0}),$&&!V&&r&&(W={left:0,right:"auto"}),W&&rt(p[l],W)}const Kt=f[l];S(s,{...p[l],margin:`${Kt.map(W=>W&&`${W}px`).join(" ")}`}),An.includes(l)&&a&&a&&S(s,p[!r&&$||r&&V?"menuStart":"menuEnd"]),w(n,In)},Vi=e=>Array.from(e.children).map(t=>{if(t&&Hn.includes(t.tagName))return t;const{firstElementChild:s}=t;return s&&Hn.includes(s.tagName)?s:null}).filter(t=>t),On=e=>{const{element:t,options:s,menu:n}=e,o=e.open?L:O,i=b(t);o(i,D,kn),o(i,Oe,kn),o(i,pe,qi),o(i,Wo,Ui),s.display==="dynamic"&&(e.open?e._observer.observe(n):e._observer.disconnect())},cs=e=>{const t=[...xt,"btn-group","input-group"].map(s=>lt(`${s} ${g}`,b(e))).find(s=>s.length);if(t&&t.length)return[...t[0].children].find(s=>xt.some(n=>n===U(s,it)))},kn=e=>{const{target:t,type:s}=e;if(!H(t))return;const n=cs(t),o=n&&se(n);if(!o)return;const{parentElement:i,menu:r}=o,a=i&&i.contains(t)&&(t.tagName==="form"||M(t,"form")!==null);[D,Fs].includes(s)&&Sn(t)&&e.preventDefault(),!a&&s!==Oe&&t!==n&&t!==r&&o.hide()};function Xi(e){const t=se(this);ot(this)||t&&(e.stopPropagation(),t.toggle(),Sn(this)&&e.preventDefault())}const qi=e=>{[Me,Be].includes(e.code)&&e.preventDefault()};function Ui(e){const{code:t}=e,s=cs(this);if(!s)return;const n=se(s),{activeElement:o}=b(s);if(!n||!o)return;const{menu:i,open:r}=n,a=Vi(i);if(a&&a.length&&[Me,Be].includes(t)){let c=a.indexOf(o);o===s?c=0:t===Be?c=c>1?c-1:0:t===Me&&(c=cLn(this)),this._toggleEventListeners(!0))}get name(){return Cn}get defaults(){return Ki}toggle(){this.open?this.hide():this.show()}show(){const{element:t,open:s,menu:n,parentElement:o}=this;if(s)return;const i=cs(t),r=i&&se(i);r&&r.hide(),[rs,xn,In].forEach(a=>{a.relatedTarget=t}),w(o,rs),!rs.defaultPrevented&&(d(n,g),d(o,g),I(t,ue,"true"),Ln(this),this.open=!s,at(t),On(this),w(o,xn))}hide(){const{element:t,open:s,menu:n,parentElement:o}=this;s&&([as,Dn].forEach(i=>{i.relatedTarget=t}),w(o,as),!as.defaultPrevented&&(v(n,g),v(o,g),I(t,ue,"false"),this.open=!s,On(this),w(o,Dn)))}_toggleEventListeners=t=>{(t?L:O)(this.element,D,Xi)};dispose(){this.open&&this.hide(),this._toggleEventListeners(),super.dispose()}}const X="modal",ds="Modal",hs="Offcanvas",Yi="fixed-top",Zi="fixed-bottom",Nn="sticky-top",Mn="position-sticky",Bn=e=>[...lt(Yi,e),...lt(Zi,e),...lt(Nn,e),...lt(Mn,e),...lt("is-fixed",e)],Qi=e=>{const t=At(e);S(t,{paddingRight:"",overflow:""});const s=Bn(t);s.length&&s.forEach(n=>{S(n,{paddingRight:"",marginRight:""})})},Rn=e=>{const{clientWidth:t}=ct(e),{innerWidth:s}=Js(e);return Math.abs(s-t)},Fn=(e,t)=>{const s=At(e),n=parseInt(F(s,"paddingRight"),10),i=F(s,"overflow")==="hidden"&&n?0:Rn(e),r=Bn(s);t&&(S(s,{overflow:"hidden",paddingRight:`${n+i}px`}),r.length&&r.forEach(a=>{const c=F(a,"paddingRight");if(a.style.paddingRight=`${parseInt(c,10)+i}px`,[Nn,Mn].some(l=>h(a,l))){const l=F(a,"marginRight");a.style.marginRight=`${parseInt(l,10)-i}px`}}))},Z="offcanvas",bt=ut({tagName:"div",className:"popup-container"}),Wn=(e,t)=>{const s=P(t)&&t.nodeName==="BODY",n=P(t)&&!s?t:bt,o=s?t:At(e);P(e)&&(n===bt&&o.append(bt),n.append(e))},jn=(e,t)=>{const s=P(t)&&t.nodeName==="BODY",n=P(t)&&!s?t:bt;P(e)&&(e.remove(),n===bt&&!bt.children.length&&bt.remove())},fs=(e,t)=>{const s=P(t)&&t.nodeName!=="BODY"?t:bt;return P(e)&&s.contains(e)},zn="backdrop",Kn=`${X}-${zn}`,Vn=`${Z}-${zn}`,Xn=`.${X}.${g}`,us=`.${Z}.${g}`,x=ut("div"),Dt=e=>A(`${Xn},${us}`,b(e)),gs=e=>{const t=e?Kn:Vn;[Kn,Vn].forEach(s=>{v(x,s)}),d(x,t)},qn=(e,t,s)=>{gs(s),Wn(x,At(e)),t&&d(x,k)},Un=()=>{h(x,g)||(d(x,g),_t(x))},_e=()=>{v(x,g)},Yn=e=>{Dt(e)||(v(x,k),jn(x,At(e)),Qi(e))},Zn=e=>H(e)&&F(e,"visibility")!=="hidden"&&e.offsetParent!==null,Gi=`.${X}`,Ji=`[${it}="${X}"]`,tr=`[${Te}="${X}"]`,Qn=`${X}-static`,er={backdrop:!0,keyboard:!0},ne=e=>R(e,ds),sr=e=>new ms(e),Se=E(`show.bs.${X}`),Gn=E(`shown.bs.${X}`),ps=E(`hide.bs.${X}`),Jn=E(`hidden.bs.${X}`),to=e=>{const{element:t}=e,s=Rn(t),{clientHeight:n,scrollHeight:o}=ct(t),{clientHeight:i,scrollHeight:r}=t,a=i!==r;if(!a&&s){const l={[pt(t)?"paddingLeft":"paddingRight"]:`${s}px`};S(t,l)}Fn(t,a||n!==o)},eo=(e,t)=>{const s=t?L:O,{element:n}=e;s(n,D,ir),s(b(n),pe,or),t?e._observer.observe(n):e._observer.disconnect()},so=e=>{const{triggers:t,element:s,relatedTarget:n}=e;Yn(s),S(s,{paddingRight:"",display:""}),eo(e);const o=Se.relatedTarget||t.find(Zn);o&&at(o),Jn.relatedTarget=n||void 0,w(s,Jn),Ee(s)},no=e=>{const{element:t,relatedTarget:s}=e;at(t),eo(e,!0),Gn.relatedTarget=s||void 0,w(t,Gn),Ee(t)},oo=e=>{const{element:t,hasFade:s}=e;S(t,{display:"block"}),to(e),Dt(t)||S(At(t),{overflow:"hidden"}),d(t,g),yt(t,qt),I(t,ge,"true"),s?_(t,()=>no(e)):no(e)},io=e=>{const{element:t,options:s,hasFade:n}=e;s.backdrop&&n&&h(x,g)&&!Dt(t)?(_e(),_(x,()=>so(e))):so(e)};function nr(e){const t=z(this),s=t&&ne(t);ot(this)||s&&(this.tagName==="A"&&e.preventDefault(),s.relatedTarget=this,s.toggle())}const or=({code:e,target:t})=>{const s=A(Xn,b(t)),n=s&&ne(s);if(!n)return;const{options:o}=n;o.keyboard&&e===Re&&h(s,g)&&(n.relatedTarget=null,n.hide())},ir=e=>{const{currentTarget:t}=e,s=t&&ne(t);if(!s||!t||u.get(t))return;const{options:n,isStatic:o,modalDialog:i}=s,{backdrop:r}=n,{target:a}=e,c=b(t)?.getSelection()?.toString().length,l=i.contains(a),f=a&&M(a,tr);o&&!l?u.set(t,()=>{d(t,Qn),_(i,()=>rr(s))},17):(f||!c&&!o&&!l&&r)&&(s.relatedTarget=f||null,s.hide(),e.preventDefault())},rr=e=>{const{element:t,modalDialog:s}=e,n=(Qt(s)||0)+17;v(t,Qn),u.set(t,()=>u.clear(t),n)};class ms extends J{static selector=Gi;static init=sr;static getInstance=ne;constructor(t,s){super(t,s);const{element:n}=this,o=A(`.${X}-dialog`,n);o&&(this.modalDialog=o,this.triggers=[...Y(Ji,b(n))].filter(i=>z(i)===n),this.isStatic=this.options.backdrop==="static",this.hasFade=h(n,k),this.relatedTarget=null,this._observer=new ResizeObserver(()=>this.update()),this._toggleEventListeners(!0))}get name(){return ds}get defaults(){return er}toggle(){h(this.element,g)?this.hide():this.show()}show(){const{element:t,options:s,hasFade:n,relatedTarget:o}=this,{backdrop:i}=s;let r=0;if(h(t,g)||(Se.relatedTarget=o||void 0,w(t,Se),Se.defaultPrevented))return;const a=Dt(t);if(a&&a!==t){const c=ne(a)||R(a,hs);c&&c.hide()}i?(fs(x)?gs(!0):qn(t,n,!0),r=Qt(x),Un(),setTimeout(()=>oo(this),r)):(oo(this),a&&h(x,g)&&_e())}hide(){const{element:t,hasFade:s,relatedTarget:n}=this;h(t,g)&&(ps.relatedTarget=n||void 0,w(t,ps),!ps.defaultPrevented&&(v(t,g),I(t,qt,"true"),yt(t,ge),s?_(t,()=>io(this)):io(this)))}update=()=>{h(this.element,g)&&to(this)};_toggleEventListeners=t=>{const s=t?L:O,{triggers:n}=this;n.length&&n.forEach(o=>{s(o,D,nr)})};dispose(){const t={...this},{modalDialog:s,hasFade:n}=t,o=()=>setTimeout(()=>super.dispose(),17);this.hide(),this._toggleEventListeners(),n?_(s,o):o()}}const ar=`.${Z}`,ro=`[${it}="${Z}"]`,cr=`[${Te}="${Z}"]`,Ae=`${Z}-toggling`,lr={backdrop:!0,keyboard:!0,scroll:!1},oe=e=>R(e,hs),dr=e=>new bs(e),Pe=E(`show.bs.${Z}`),ao=E(`shown.bs.${Z}`),vs=E(`hide.bs.${Z}`),co=E(`hidden.bs.${Z}`),hr=e=>{const{element:t}=e,{clientHeight:s,scrollHeight:n}=ct(t);Fn(t,s!==n)},lo=(e,t)=>{const s=t?L:O,n=b(e.element);s(n,pe,pr),s(n,D,gr)},ho=e=>{const{element:t,options:s}=e;s.scroll||(hr(e),S(At(t),{overflow:"hidden"})),d(t,Ae),d(t,g),S(t,{visibility:"visible"}),_(t,()=>mr(e))},fr=e=>{const{element:t,options:s}=e,n=Dt(t);t.blur(),!n&&s.backdrop&&h(x,g)&&_e(),_(t,()=>vr(e))};function ur(e){const t=z(this),s=t&&oe(t);ot(this)||s&&(s.relatedTarget=this,s.toggle(),this.tagName==="A"&&e.preventDefault())}const gr=e=>{const{target:t}=e,s=A(us,b(t));if(!s)return;const n=A(cr,s),o=oe(s);if(!o)return;const{options:i,triggers:r}=o,{backdrop:a}=i,c=M(t,ro),l=b(s).getSelection();x.contains(t)&&a==="static"||(!(l&&l.toString().length)&&(!s.contains(t)&&a&&(!c||r.includes(t))||n&&n.contains(t))&&(o.relatedTarget=n&&n.contains(t)?n:void 0,o.hide()),c&&c.tagName==="A"&&e.preventDefault())},pr=({code:e,target:t})=>{const s=A(us,b(t)),n=s&&oe(s);n&&n.options.keyboard&&e===Re&&(n.relatedTarget=void 0,n.hide())},mr=e=>{const{element:t}=e;v(t,Ae),yt(t,qt),I(t,ge,"true"),I(t,"role","dialog"),w(t,ao),lo(e,!0),at(t),Ee(t)},vr=e=>{const{element:t,triggers:s}=e;I(t,qt,"true"),yt(t,ge),yt(t,"role"),S(t,{visibility:""});const n=Pe.relatedTarget||s.find(Zn);n&&at(n),Yn(t),w(t,co),v(t,Ae),Ee(t),Dt(t)||lo(e)};class bs extends J{static selector=ar;static init=dr;static getInstance=oe;constructor(t,s){super(t,s);const{element:n}=this;this.triggers=[...Y(ro,b(n))].filter(o=>z(o)===n),this.relatedTarget=void 0,this._toggleEventListeners(!0)}get name(){return hs}get defaults(){return lr}toggle(){h(this.element,g)?this.hide():this.show()}show(){const{element:t,options:s,relatedTarget:n}=this;let o=0;if(h(t,g)||(Pe.relatedTarget=n||void 0,ao.relatedTarget=n||void 0,w(t,Pe),Pe.defaultPrevented))return;const i=Dt(t);if(i&&i!==t){const r=oe(i)||R(i,ds);r&&r.hide()}s.backdrop?(fs(x)?gs():qn(t,!0),o=Qt(x),Un(),setTimeout(()=>ho(this),o)):(ho(this),i&&h(x,g)&&_e())}hide(){const{element:t,relatedTarget:s}=this;h(t,g)&&(vs.relatedTarget=s||void 0,co.relatedTarget=s||void 0,w(t,vs),!vs.defaultPrevented&&(d(t,Ae),v(t,g),fr(this)))}_toggleEventListeners=t=>{const s=t?L:O;this.triggers.forEach(n=>{s(n,D,ur)})};dispose(){const{element:t}=this,s=h(t,g),n=()=>setTimeout(()=>super.dispose(),1);this.hide(),this._toggleEventListeners(),s?_(t,n):n()}}const It="popover",ws="Popover",ht="tooltip",fo=e=>{const t=e===ht,s=t?`${e}-inner`:`${e}-body`,n=t?"":`

`,o=`
`,i=`
`;return`
${n+o+i}
`},uo={top:"top",bottom:"bottom",left:"start",right:"end"},Es=e=>{requestAnimationFrame(()=>{const t=/\b(top|bottom|start|end)+/,{element:s,tooltip:n,container:o,offsetParent:i,options:r,arrow:a}=e;if(!n)return;const c=pt(s),{x:l,y:f}=ni(i);S(n,{top:"",left:"",right:"",bottom:""});const{offsetWidth:p,offsetHeight:y}=n,{clientWidth:B,clientHeight:G,offsetWidth:st}=ct(s);let{placement:m}=r;const{clientWidth:q,offsetWidth:Ot}=o,C=F(o,"position")==="fixed",Et=Math.abs(C?q-Ot:B-st),ft=c&&C?Et:0,nt=B-(c?0:Et)-1,zt=e._observer.getEntry(s),{width:$,height:V,left:Kt,right:W,top:Nt}=zt?.boundingClientRect||St(s,!0),{x:xe,y:Vt}=ai(s,i,{x:l,y:f});S(a,{top:"",left:"",right:"",bottom:""});let Mt=0,ce="",Tt=0,Ls="",Xt="",De="",Os="";const Bt=a.offsetWidth||0,$t=a.offsetHeight||0,ks=Bt/2;let le=Nt-y-$t<0,de=Nt+y+V+$t>=G,he=Kt-p-Bt=nt;const Ie=["left","right"],Ns=["top","bottom"];le=Ie.includes(m)?Nt+V/2-y/2-$t<0:le,de=Ie.includes(m)?Nt+y/2+V/2+$t>=G:de,he=Ns.includes(m)?Kt+$/2-p/2=nt:fe,m=Ie.includes(m)&&he&&fe?"top":m,m=m==="top"&&le?"bottom":m,m=m==="bottom"&&de?"top":m,m=m==="left"&&he?"right":m,m=m==="right"&&fe?"left":m,n.className.includes(m)||(n.className=n.className.replace(t,uo[m])),Ie.includes(m)?(m==="left"?Tt=xe-p-Bt:Tt=xe+$+Bt,le&&de?(Mt=0,ce=0,Xt=Vt+V/2-$t/2):le?(Mt=Vt,ce="",Xt=V/2-Bt):de?(Mt=Vt-y+V,ce="",Xt=y-V/2-Bt):(Mt=Vt-y/2+V/2,Xt=y/2-$t/2)):Ns.includes(m)&&(m==="top"?Mt=Vt-y-$t:Mt=Vt+V+$t,he?(Tt=0,De=xe+$/2-ks):fe?(Tt="auto",Ls=0,Os=$/2+nt-W-ks):(Tt=xe-p/2+$/2,De=p/2-ks)),S(n,{top:`${Mt}px`,bottom:ce===""?"":`${ce}px`,left:Tt==="auto"?Tt:`${Tt}px`,right:Ls!==""?`${Ls}px`:""}),H(a)&&(Xt!==""&&(a.style.top=`${Xt}px`),De!==""?a.style.left=`${De}px`:Os!==""&&(a.style.right=`${Os}px`));const Qr=E(`updated.bs.${Jt(e.name)}`);w(s,Qr)})},Ts={template:fo(ht),title:"",customClass:"",trigger:"hover focus",placement:"top",sanitizeFn:void 0,animation:!0,delay:200,container:document.body,content:"",dismissible:!1,btnClose:""},go="data-original-title",Lt="Tooltip",wt=(e,t,s)=>{if(Zt(t)&&t.length){let n=t.trim();rn(s)&&(n=s(n));const i=new DOMParser().parseFromString(n,"text/html");e.append(...i.body.childNodes)}else H(t)?e.append(t):(li(t)||ci(t)&&t.every(P))&&e.append(...t)},br=e=>{const t=e.name===Lt,{id:s,element:n,options:o}=e,{title:i,placement:r,template:a,animation:c,customClass:l,sanitizeFn:f,dismissible:p,content:y,btnClose:B}=o,G=t?ht:It,st={...uo};let m=[],q=[];pt(n)&&(st.left="end",st.right="start");const Ot=`bs-${G}-${st[r]}`;let kt;if(H(a))kt=a;else{const $=ut("div");wt($,a,f),kt=$.firstChild}if(!H(kt))return;e.tooltip=kt.cloneNode(!0);const{tooltip:C}=e;I(C,"id",s),I(C,"role",ht);const Et=t?`${ht}-inner`:`${It}-body`,ft=t?null:A(`.${It}-header`,C),nt=A(`.${Et}`,C);e.arrow=A(`.${G}-arrow`,C);const{arrow:zt}=e;if(H(i))m=[i.cloneNode(!0)];else{const $=ut("div");wt($,i,f),m=[...$.childNodes]}if(H(y))q=[y.cloneNode(!0)];else{const $=ut("div");wt($,y,f),q=[...$.childNodes]}if(p)if(i)if(H(B))m=[...m,B.cloneNode(!0)];else{const $=ut("div");wt($,B,f),m=[...m,$.firstChild]}else if(ft&&ft.remove(),H(B))q=[...q,B.cloneNode(!0)];else{const $=ut("div");wt($,B,f),q=[...q,$.firstChild]}t?i&&nt&&wt(nt,i,f):(i&&ft&&wt(ft,m,f),y&&nt&&wt(nt,q,f),e.btn=A(".btn-close",C)||void 0),d(C,"position-absolute"),d(zt,"position-absolute"),h(C,G)||d(C,G),c&&!h(C,k)&&d(C,k),l&&!h(C,l)&&d(C,l),h(C,Ot)||d(C,Ot)},wr=e=>{const t=["HTML","BODY"],s=[];let{parentNode:n}=e;for(;n&&!t.includes(n.nodeName);)n=oi(n),Gs(n)||ii(n)||s.push(n);return s.find((o,i)=>(F(o,"position")!=="relative"||F(o,"position")==="relative"&&o.offsetHeight!==o.scrollHeight)&&s.slice(i+1).every(r=>F(r,"position")==="static")?o:null)||b(e).body},Er=`[${it}="${ht}"],[data-tip="${ht}"]`,po="title";let mo=e=>R(e,Lt);const Tr=e=>new He(e),$r=e=>{const{element:t,tooltip:s,container:n}=e;yt(t,Ms),jn(s,n)},ie=e=>{const{tooltip:t,container:s}=e;return t&&fs(t,s)},yr=(e,t)=>{const{element:s}=e;e._toggleEventListeners(),Ut(s,go)&&e.name===Lt&&To(e),t&&t()},vo=(e,t)=>{const s=t?L:O,{element:n}=e;s(b(n),ve,e.handleTouch,Gt)},bo=e=>{const{element:t}=e,s=E(`shown.bs.${Jt(e.name)}`);vo(e,!0),w(t,s),u.clear(t,"in")},wo=e=>{const{element:t}=e,s=E(`hidden.bs.${Jt(e.name)}`);vo(e),$r(e),w(t,s),u.clear(t,"out")},Eo=(e,t)=>{const s=t?L:O,{element:n,tooltip:o}=e,i=M(n,`.${X}`),r=M(n,`.${Z}`);t?[n,o].forEach(a=>e._observer.observe(a)):e._observer.disconnect(),i&&s(i,`hide.bs.${X}`,e.handleHide),r&&s(r,`hide.bs.${Z}`,e.handleHide)},To=(e,t)=>{const s=[go,po],{element:n}=e;I(n,s[t?0:1],t||U(n,s[0])||""),yt(n,s[t?1:0])};class He extends J{static selector=Er;static init=Tr;static getInstance=mo;static styleTip=Es;constructor(t,s){super(t,s);const{element:n}=this,o=this.name===Lt,i=o?ht:It,r=o?Lt:ws;mo=f=>R(f,r),this.enabled=!0,this.id=`${i}-${nn(n,i)}`;const{options:a}=this;if(!a.title&&o||!o&&!a.content)return;rt(Ts,{titleAttr:""}),Ut(n,po)&&o&&typeof a.title=="string"&&To(this,a.title);const c=wr(n),l=["sticky","fixed","relative"].some(f=>F(c,"position")===f)?c:Js(n);this.container=c,this.offsetParent=l,br(this),this.tooltip&&(this._observer=new ss(()=>this.update()),this._toggleEventListeners(!0))}get name(){return Lt}get defaults(){return Ts}handleFocus=()=>at(this.element);handleShow=()=>this.show();show(){const{options:t,tooltip:s,element:n,container:o,id:i}=this,{animation:r}=t,a=u.get(n,"out");u.clear(n,"out"),s&&!a&&!ie(this)&&u.set(n,()=>{const c=E(`show.bs.${Jt(this.name)}`);w(n,c),c.defaultPrevented||(Wn(s,o),I(n,Ms,`#${i}`),this.update(),Eo(this,!0),h(s,g)||d(s,g),r?_(s,()=>bo(this)):bo(this))},17,"in")}handleHide=()=>this.hide();hide(){const{options:t,tooltip:s,element:n}=this,{animation:o,delay:i}=t;u.clear(n,"in"),s&&ie(this)&&u.set(n,()=>{const r=E(`hide.bs.${Jt(this.name)}`);w(n,r),r.defaultPrevented||(this.update(),v(s,g),Eo(this),o?_(s,()=>wo(this)):wo(this))},i+17,"out")}update=()=>{Es(this)};toggle=()=>{const{tooltip:t}=this;t&&!ie(this)?this.show():this.hide()};enable(){const{enabled:t}=this;t||(this._toggleEventListeners(!0),this.enabled=!t)}disable(){const{tooltip:t,enabled:s}=this;s&&(t&&ie(this)&&this.hide(),this._toggleEventListeners(),this.enabled=!s)}toggleEnabled(){this.enabled?this.disable():this.enable()}handleTouch=({target:t})=>{const{tooltip:s,element:n}=this;s&&s.contains(t)||t===n||t&&n.contains(t)||this.hide()};_toggleEventListeners=t=>{const s=t?L:O,{element:n,options:o,btn:i}=this,{trigger:r}=o,c=!!(this.name!==Lt&&o.dismissible);r.includes("manual")||(this.enabled=!!t,r.split(" ").forEach(f=>{f===jo?(s(n,Fs,this.handleShow),s(n,me,this.handleShow),c||(s(n,Ne,this.handleHide),s(b(n),ve,this.handleTouch,Gt))):f===D?s(n,f,c?this.handleShow:this.toggle):f===Oe&&(s(n,ke,this.handleShow),c||s(n,Rs,this.handleHide),Yo()&&s(n,D,this.handleFocus)),c&&i&&s(i,D,this.handleHide)}))};dispose(){const{tooltip:t,options:s}=this,n={...this,name:this.name},o=()=>setTimeout(()=>yr(n,()=>super.dispose()),17);s.animation&&ie(n)?(this.options.delay=0,this.hide(),_(t,o)):o()}}const Cr=`[${it}="${It}"],[data-tip="${It}"]`,_r=rt({},Ts,{template:fo(It),content:"",dismissible:!1,btnClose:''}),Sr=e=>R(e,ws),Ar=e=>new $s(e);class $s extends He{static selector=Cr;static init=Ar;static getInstance=Sr;static styleTip=Es;constructor(t,s){super(t,s)}get name(){return ws}get defaults(){return _r}show=()=>{super.show();const{options:t,btn:s}=this;t.dismissible&&s&&setTimeout(()=>at(s),17)}}const Pr="scrollspy",$o="ScrollSpy",Hr='[data-bs-spy="scroll"]',xr="[href]",Dr={offset:10,target:void 0},Ir=e=>R(e,$o),Lr=e=>new Cs(e),yo=E(`activate.bs.${Pr}`),Or=e=>{const{target:t,_itemsLength:s,_observables:n}=e,o=Ke("A",t),i=b(t);!o.length||s===n.size||(n.clear(),Array.from(o).forEach(r=>{const a=U(r,"href")?.slice(1),c=a?.length?i.getElementById(a):null;c&&!ot(r)&&e._observables.set(c,r)}),e._itemsLength=e._observables.size)},Co=e=>{Array.from(Ke("A",e)).forEach(t=>{h(t,T)&&v(t,T)})},_o=(e,t)=>{const{target:s,element:n}=e;Co(s),e._activeItem=t,d(t,T);let o=t;for(;o!==s;)if(o=o.parentElement,["nav","dropdown-menu","list-group"].some(i=>h(o,i))){const i=o.previousElementSibling;i&&!h(i,T)&&d(i,T)}yo.relatedTarget=t,w(n,yo)},ys=(e,t)=>{const{scrollTarget:s,element:n,options:o}=e;return(s!==n?St(t).top+s.scrollTop:t.offsetTop)-(o.offset||10)};class Cs extends J{static selector=Hr;static init=Lr;static getInstance=Ir;constructor(t,s){super(t,s);const{element:n,options:o}=this,i=A(o.target,b(n));i&&(this.target=i,this.scrollTarget=n.clientHeight{requestAnimationFrame(()=>this.refresh())},{root:this.scrollTarget}),this._toggleEventListeners(!0))}get name(){return $o}get defaults(){return Dr}refresh=()=>{const{target:t,scrollTarget:s}=this;if(!t||t.offsetHeight===0)return;Or(this);const{_itemsLength:n,_observables:o,_activeItem:i}=this;if(!n)return;const r=o.entries().toArray(),{scrollTop:a,scrollHeight:c,clientHeight:l}=s;if(a>=c-l){const p=r[n-1]?.[1];i!==p&&_o(this,p);return}const f=r[0]?.[0]?ys(this,r[0][0]):null;if(f!==null&&a0){this._activeItem=null,Co(t);return}for(let p=0;p=G&&(m===null||a{const s=M(t.target,xr),n=s&&U(s,"href")?.slice(1),o=n&&di(n,this.target);o&&(this.scrollTarget.scrollTo({top:o.offsetTop,behavior:"smooth"}),t.preventDefault())};_toggleEventListeners=t=>{const{target:s,_observables:n,_observer:o,_scrollTo:i}=this;(t?L:O)(s,D,i),t?n?.forEach((a,c)=>o.observe(c)):o.disconnect()};dispose(){this._toggleEventListeners(),super.dispose()}}const re="tab",So="Tab",_s=`[${it}="${re}"]`,Ao=e=>R(e,So),kr=e=>new Ps(e),Ss=E(`show.bs.${re}`),Po=E(`shown.bs.${re}`),As=E(`hide.bs.${re}`),Ho=E(`hidden.bs.${re}`),ae=new Map,xo=e=>{const{tabContent:t,nav:s}=e;t&&h(t,Ht)&&(t.style.height="",v(t,Ht)),s&&u.clear(s)},Do=e=>{const{element:t,tabContent:s,content:n,nav:o}=e,{tab:i}=H(o)&&ae.get(o)||{tab:null};if(s&&n&&h(n,k)){const{currentHeight:r,nextHeight:a}=ae.get(t)||{currentHeight:0,nextHeight:0};r!==a?setTimeout(()=>{s.style.height=`${a}px`,_t(s),_(s,()=>xo(e))},50):xo(e)}else o&&u.clear(o);Po.relatedTarget=i,w(t,Po)},Io=e=>{const{element:t,content:s,tabContent:n,nav:o}=e,{tab:i,content:r}=o&&ae.get(o)||{tab:null,content:null};let a=0;if(n&&s&&h(s,k)&&([r,s].forEach(c=>{c&&d(c,"overflow-hidden")}),a=r?r.scrollHeight:0),Ss.relatedTarget=i,Ho.relatedTarget=t,w(t,Ss),!Ss.defaultPrevented){if(s&&d(s,T),r&&v(r,T),n&&s&&h(s,k)){const c=s.scrollHeight;ae.set(t,{currentHeight:a,nextHeight:c,tab:null,content:null}),d(n,Ht),n.style.height=`${a}px`,_t(n),[r,s].forEach(l=>{l&&v(l,"overflow-hidden")})}s&&s&&h(s,k)?setTimeout(()=>{d(s,g),_(s,()=>{Do(e)})},1):(s&&d(s,g),Do(e)),i&&w(i,Ho)}},Lo=e=>{const{nav:t}=e;if(!H(t))return{tab:null,content:null};const s=lt(T,t);let n=null;s.length===1&&!xt.some(i=>h(s[0].parentElement,i))?[n]=s:s.length>1&&(n=s[s.length-1]);const o=H(n)?z(n):null;return{tab:n,content:o}},Oo=e=>{if(!H(e))return null;const t=M(e,`.${xt.join(",.")}`);return t?A(`.${xt[0]}-toggle`,t):null},Nr=e=>{const t=M(e.target,_s),s=t&&Ao(t);s&&(e.preventDefault(),s.show())};class Ps extends J{static selector=_s;static init=kr;static getInstance=Ao;constructor(t){super(t);const{element:s}=this,n=z(s);if(!n)return;const o=M(s,".nav"),i=M(n,".tab-content");this.nav=o,this.content=n,this.tabContent=i,this.dropdown=Oo(s);const{tab:r}=Lo(this);if(o&&!r){const a=A(_s,o),c=a&&z(a);c&&(d(a,T),d(c,g),d(c,T),I(s,Le,"true"))}this._toggleEventListeners(!0)}get name(){return So}show(){const{element:t,content:s,nav:n,dropdown:o}=this;if(n&&u.get(n)||h(t,T))return;const{tab:i,content:r}=Lo(this);if(n&&i&&ae.set(n,{tab:i,content:r,currentHeight:0,nextHeight:0}),As.relatedTarget=t,!H(i)||(w(i,As),As.defaultPrevented))return;d(t,T),I(t,Le,"true");const a=H(i)&&Oo(i);if(a&&h(a,T)&&v(a,T),n){const c=()=>{i&&(v(i,T),I(i,Le,"false")),o&&!h(o,T)&&d(o,T)};r&&(h(r,k)||s&&h(s,k))?u.set(n,c,1):c()}r&&(v(r,g),h(r,k)?_(r,()=>Io(this)):Io(this))}_toggleEventListeners=t=>{(t?L:O)(this.element,D,Nr)};dispose(){this._toggleEventListeners(),super.dispose()}}const Q="toast",ko="Toast",Mr=`.${Q}`,Br=`[${Te}="${Q}"]`,Rr=`[${it}="${Q}"]`,jt="showing",No="hide",Fr={animation:!0,autohide:!0,delay:5e3},Hs=e=>R(e,ko),Wr=e=>new xs(e),Mo=E(`show.bs.${Q}`),jr=E(`shown.bs.${Q}`),Bo=E(`hide.bs.${Q}`),zr=E(`hidden.bs.${Q}`),Ro=e=>{const{element:t,options:s}=e;v(t,jt),u.clear(t,jt),w(t,jr),s.autohide&&u.set(t,()=>e.hide(),s.delay,Q)},Fo=e=>{const{element:t}=e;v(t,jt),v(t,g),d(t,No),u.clear(t,Q),w(t,zr)},Kr=e=>{const{element:t,options:s}=e;d(t,jt),s.animation?(_t(t),_(t,()=>Fo(e))):Fo(e)},Vr=e=>{const{element:t,options:s}=e;u.set(t,()=>{v(t,No),_t(t),d(t,g),d(t,jt),s.animation?_(t,()=>Ro(e)):Ro(e)},17,jt)};function Xr(e){const t=z(this),s=t&&Hs(t);ot(this)||s&&(this.tagName==="A"&&e.preventDefault(),s.relatedTarget=this,s.show())}const qr=e=>{const t=e.target,s=Hs(t),{type:n,relatedTarget:o}=e;!s||t===o||t.contains(o)||([me,ke].includes(n)?u.clear(t,Q):u.set(t,()=>s.hide(),s.options.delay,Q))};class xs extends J{static selector=Mr;static init=Wr;static getInstance=Hs;constructor(t,s){super(t,s);const{element:n,options:o}=this;o.animation&&!h(n,k)?d(n,k):!o.animation&&h(n,k)&&v(n,k),this.dismiss=A(Br,n),this.triggers=[...Y(Rr,b(n))].filter(i=>z(i)===n),this._toggleEventListeners(!0)}get name(){return ko}get defaults(){return Fr}get isShown(){return h(this.element,g)}show=()=>{const{element:t,isShown:s}=this;!t||s||(w(t,Mo),Mo.defaultPrevented||Vr(this))};hide=()=>{const{element:t,isShown:s}=this;!t||!s||(w(t,Bo),Bo.defaultPrevented||Kr(this))};_toggleEventListeners=t=>{const s=t?L:O,{element:n,triggers:o,dismiss:i,options:r,hide:a}=this;i&&s(i,D,a),r.autohide&&[ke,Rs,me,Ne].forEach(c=>s(n,c,qr)),o.length&&o.forEach(c=>{s(c,D,Xr)})};dispose(){const{element:t,isShown:s}=this;this._toggleEventListeners(),u.clear(t,Q),s&&v(t,g),super.dispose()}}const Ds=new Map;[Ve,Xe,ts,es,ls,ms,bs,$s,Cs,Ps,xs,He].forEach(e=>Ds.set(e.prototype.name,e));const Ur=(e,t)=>{[...t].forEach(s=>e(s))},Yr=(e,t)=>{const s=Ct.getAllFor(e);s&&[...s].forEach(([n,o])=>{t.contains(n)&&o.dispose()})},Is=e=>{const t=e&&e.nodeName?e:document,s=[...Ke("*",t)];Ds.forEach(n=>{const{init:o,selector:i}=n;Ur(o,s.filter(r=>tn(r,i)))})},Zr=e=>{const t=e&&e.nodeName?e:document;Ds.forEach(s=>{Yr(s.prototype.name,t)})};return document.body?Is():L(document,"DOMContentLoaded",()=>Is(),{once:!0}),N.Alert=Ve,N.Button=Xe,N.Carousel=ts,N.Collapse=es,N.Dropdown=ls,N.Modal=ms,N.Offcanvas=bs,N.Popover=$s,N.ScrollSpy=Cs,N.Tab=Ps,N.Toast=xs,N.Tooltip=He,N.initCallback=Is,N.removeDataAPI=Zr,Object.defineProperty(N,Symbol.toStringTag,{value:"Module"}),N})({}); -//# sourceMappingURL=bootstrap-native.js.map +var BSN=(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`}),(()=>{for(var e=new Uint8Array(128),t=0;t<64;t++)e[t<26?t+65:t<52?t+71:t<62?t-4:t*4-205]=t;return t=>{for(var n=t.length,r=new Uint8Array((n-(t[n-1]==`=`)-(t[n-2]==`=`))*3/4|0),i=0,a=0;i>4,r[a++]=s<<4|c>>2,r[a++]=c<<6|l}return r}})(),(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.")});var t=`aria-describedby`,n=`aria-expanded`,r=`aria-hidden`,i=`aria-modal`,a=`aria-pressed`,o=`aria-selected`,s=`focus`,c=`focusin`,l=`focusout`,u=`keydown`,d=`keyup`,f=`click`,p=`mousedown`,ee=`mouseenter`,m=`mouseleave`,h=`pointerdown`,g=`pointermove`,te=`pointerup`,_=`touchstart`,v=`dragstart`;`onmouseleave`in document;var ne=`a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]`,re=`ArrowLeft`,y=`ArrowRight`,b=`transitionDuration`,ie=`transitionDelay`,ae=`transitionend`,oe=`transitionProperty`;navigator.userAgentData;var{userAgent:se}=navigator,ce=()=>{let e=/iPhone|iPad|iPod|Android/i;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},le=()=>{let e=/(iPhone|iPod|iPad)/;return navigator?.userAgentData?.brands.some(t=>e.test(t.brand))||e.test(navigator?.userAgent)||!1},ue=()=>{},de=(e,t,n,r)=>{let i=r||!1;e.addEventListener(t,n,i)},fe=(e,t,n,r)=>{let i=r||!1;e.removeEventListener(t,n,i)},x=(e,t)=>e.getAttribute(t),pe=(e,t)=>e.hasAttribute(t),S=(e,t,n)=>e.setAttribute(t,n),C=(e,t)=>e.removeAttribute(t),w=(e,...t)=>{e.classList.add(...t)},T=(e,...t)=>{e.classList.remove(...t)},E=(e,t)=>e.classList.contains(t),{body:me}=document,{documentElement:he}=document,{head:ge}=document,_e=e=>typeof e==`object`&&!!e||!1,D=e=>_e(e)&&typeof e.nodeType==`number`&&[1,2,3,4,5,6,7,8,9,10,11].some(t=>e.nodeType===t)||!1,O=e=>D(e)&&e.nodeType===1||!1,ve=new Map,ye={data:ve,set:(e,t,n)=>{O(e)&&(ve.has(t)||ve.set(t,new Map),ve.get(t).set(e,n))},getAllFor:e=>ve.get(e)||null,get:(e,t)=>{if(!O(e)||!t)return null;let n=ye.getAllFor(t);return e&&n&&n.get(e)||null},remove:(e,t)=>{let n=ye.getAllFor(t);!n||!O(e)||(n.delete(e),n.size===0&&ve.delete(t))}},k=(e,t)=>ye.get(e,t),be=e=>e?.trim().replace(/(?:^\w|[A-Z]|\b\w)/g,(e,t)=>t===0?e.toLowerCase():e.toUpperCase()).replace(/\s+/g,``),xe=e=>typeof e==`string`||!1,Se=e=>_e(e)&&e.constructor.name===`Window`||!1,Ce=e=>D(e)&&e.nodeType===9||!1,A=e=>Ce(e)?e:D(e)?e.ownerDocument:Se(e)?e.document:globalThis.document,we=(e,...t)=>Object.assign(e,...t),Te=e=>{if(!e)return;if(xe(e))return A().createElement(e);let{tagName:t}=e,n=Te(t);if(!n)return;let r={...e};return delete r.tagName,we(n,r)},Ee=(e,t)=>{if(!e||!t)return;if(xe(t))return A().createElementNS(e,t);let{tagName:n}=t,r=Ee(e,n);if(!r)return;let i={...t};return delete i.tagName,we(r,i)},j=(e,t)=>e.dispatchEvent(t),M=(e,t,n)=>{let r=getComputedStyle(e,n),i=t.replace(`webkit`,`Webkit`).replace(/([A-Z])/g,`-$1`).toLowerCase();return r.getPropertyValue(i)},De=e=>{let t=M(e,oe),n=M(e,ie),r=n.includes(`ms`)?1:1e3,i=t&&t!==`none`?parseFloat(n)*r:0;return Number.isNaN(i)?0:i},Oe=e=>{let t=M(e,oe),n=M(e,b),r=n.includes(`ms`)?1:1e3,i=t&&t!==`none`?parseFloat(n)*r:0;return Number.isNaN(i)?0:i},N=(e,t)=>{let n=0,r=new Event(ae),i=Oe(e),a=De(e);if(i){let o=r=>{r.target===e&&(t.apply(e,[r]),e.removeEventListener(`transitionend`,o),n=1)};e.addEventListener(ae,o),setTimeout(()=>{n||j(e,r)},i+a+17)}else t.apply(e,[r])},ke=(e,t)=>e.focus(t),Ae=e=>[`true`,!0].includes(e)?!0:[`false`,!1].includes(e)?!1:[`null`,``,null,void 0].includes(e)?null:e!==``&&!Number.isNaN(+e)?+e:e,je=e=>Object.entries(e),Me=(e,t,n,r)=>{if(!O(e))return t;let i={...n},a={...e.dataset},o={...t},s={},c=`title`;return je(a).forEach(([e,t])=>{let n=r&&typeof e==`string`&&e.includes(r)?be(e.replace(r,``)):be(e);s[n]=Ae(t)}),je(i).forEach(([e,t])=>{i[e]=Ae(t)}),je(t).forEach(([t,n])=>{t in i?o[t]=i[t]:t in s?o[t]=s[t]:o[t]=t===c?x(e,c):n}),o},Ne=e=>Object.keys(e),P=(e,t)=>{let n=new CustomEvent(e,{cancelable:!0,bubbles:!0});return _e(t)&&we(n,t),n},Pe={passive:!0},Fe=e=>e.offsetHeight,F=(e,t)=>{je(t).forEach(([t,n])=>{if(n&&xe(t)&&t.includes(`--`))e.style.setProperty(t,n);else{let r={};r[t]=n,we(e.style,r)}})},Ie=e=>_e(e)&&e.constructor.name===`Map`||!1,Le=e=>typeof e==`number`||!1,Re=new Map,I={set:(e,t,n,r)=>{O(e)&&(r&&r.length?(Re.has(e)||Re.set(e,new Map),Re.get(e).set(r,setTimeout(t,n))):Re.set(e,setTimeout(t,n)))},get:(e,t)=>{if(!O(e))return null;let n=Re.get(e);return t&&n&&Ie(n)?n.get(t)||null:Le(n)?n:null},clear:(e,t)=>{if(!O(e))return;let n=Re.get(e);t&&t.length&&Ie(n)?(clearTimeout(n.get(t)),n.delete(t),n.size===0&&Re.delete(e)):(clearTimeout(n),Re.delete(e))}},ze=e=>e.toLowerCase(),L=(e,t)=>(D(t)?t:A()).querySelectorAll(e),Be=new Map;function Ve(e){let{shiftKey:t,code:n}=e,r=A(this),i=[...L(ne,this)].filter(e=>!pe(e,`disabled`)&&!x(e,`aria-hidden`));if(!i.length)return;let a=i[0],o=i[i.length-1];n===`Tab`&&(t&&r.activeElement===a?(o.focus(),e.preventDefault()):!t&&r.activeElement===o&&(a.focus(),e.preventDefault()))}var He=e=>Be.has(e)===!0,Ue=e=>{He(e)||(de(e,`keydown`,Ve),Be.set(e,!0))},We=e=>{He(e)&&(fe(e,`keydown`,Ve),Be.delete(e))},Ge=e=>{He(e)?We(e):Ue(e)},R=e=>O(e)&&`offsetWidth`in e||!1,Ke=(e,t)=>{let{width:n,height:r,top:i,right:a,bottom:o,left:s}=e.getBoundingClientRect(),c=1,l=1;if(t&&R(e)){let{offsetWidth:t,offsetHeight:i}=e;c=t>0?Math.round(n)/t:1,l=i>0?Math.round(r)/i:1}return{width:n/c,height:r/l,top:i/l,right:a/c,bottom:o/l,left:s/c,x:s/c,y:i/l}},qe=e=>A(e).body,Je=e=>A(e).documentElement,Ye=e=>{let t=Se(e);return{x:t?e.scrollX:e.scrollLeft,y:t?e.scrollY:e.scrollTop}},Xe=e=>D(e)&&e.constructor.name===`ShadowRoot`||!1,Ze=e=>e.nodeName===`HTML`?e:O(e)&&e.assignedSlot||D(e)&&e.parentNode||Xe(e)&&e.host||Je(e),Qe=e=>e?Ce(e)?e.defaultView:D(e)?e?.ownerDocument?.defaultView:e:window,$e=e=>D(e)&&[`TABLE`,`TD`,`TH`].includes(e.nodeName)||!1,et=(e,t)=>e.matches(t),tt=e=>{if(!R(e))return!1;let{width:t,height:n}=Ke(e),{offsetWidth:r,offsetHeight:i}=e;return Math.round(t)!==r||Math.round(n)!==i},nt=(e,t,n)=>{let r=R(t),i=Ke(e,r&&tt(t)),a={x:0,y:0};if(r){let e=Ke(t,!0);a.x=e.x+t.clientLeft,a.y=e.y+t.clientTop}return{x:i.left+n.x-a.x,y:i.top+n.y-a.y,width:i.width,height:i.height}},rt=0,it=0,at=new Map,ot=(e,t)=>{let n=t?rt:it;if(t){let r=ot(e),i=at.get(r)||new Map;at.has(r)||at.set(r,i),Ie(i)&&!i.has(t)?(i.set(t,n),rt+=1):n=i.get(t)}else{let t=e.id||e;at.has(t)?n=at.get(t):(at.set(t,n),it+=1)}return n},st=e=>Array.isArray(e)||!1,ct=e=>{if(!D(e))return!1;let{top:t,bottom:n}=Ke(e),{clientHeight:r}=Je(e);return t<=r&&n>=0},lt=e=>typeof e==`function`||!1,ut=e=>_e(e)&&e.constructor.name===`NodeList`||!1,dt=e=>Je(e).dir===`rtl`,z=(e,t)=>!e||!t?null:e.closest(t)||z(e.getRootNode().host,t)||null,B=(e,t)=>O(e)?e:(O(t)?t:A()).querySelector(e),ft=(e,t)=>(D(t)?t:A()).getElementsByTagName(e),pt=(e,t)=>A(t).getElementById(e),mt=(e,t)=>(t&&D(t)?t:A()).getElementsByClassName(e),ht={},gt=e=>{let{type:t,currentTarget:n}=e;ht[t].forEach((r,i)=>{n===i&&r.forEach((n,r)=>{r.apply(i,[e]),typeof n==`object`&&n.once&&H(i,t,r,n)})})},V=(e,t,n,r)=>{ht[t]||(ht[t]=new Map);let i=ht[t];i.has(e)||i.set(e,new Map);let a=i.get(e),{size:o}=a;a.set(n,r),o||e.addEventListener(t,gt,r)},H=(e,t,n,r)=>{let i=ht[t],a=i&&i.get(e),o=a&&a.get(n),s=o===void 0?r:o;a&&a.has(n)&&a.delete(n),i&&(!a||!a.size)&&i.delete(e),(!i||!i.size)&&delete ht[t],(!a||!a.size)&&e.removeEventListener(t,gt,s)},_t=`fade`,U=`show`,vt=`data-bs-dismiss`,yt=`alert`,bt=`Alert`,xt=e=>E(e,`disabled`)||x(e,`disabled`)===`true`,St=`5.1.6`,W=class{constructor(e,t){let n;try{if(O(e))n=e;else if(xe(e)){if(n=B(e),!n)throw Error(`"${e}" is not a valid selector.`)}else throw Error(`your target is not an instance of HTMLElement.`)}catch(e){throw Error(`${this.name} Error: ${e.message}`)}let r=ye.get(n,this.name);r&&r._toggleEventListeners(),this.element=n,this.options=this.defaults&&Ne(this.defaults).length?Me(n,this.defaults,t||{},`bs`):{},ye.set(n,this.name,this)}get version(){return St}get name(){return`BaseComponent`}get defaults(){return{}}_toggleEventListeners=()=>{};dispose(){ye.remove(this.element,this.name),Ne(this).forEach(e=>{delete this[e]})}},Ct=`.${yt}`,wt=`[${vt}="${yt}"]`,Tt=e=>k(e,bt),Et=e=>new At(e),Dt=P(`close.bs.${yt}`),Ot=P(`closed.bs.${yt}`),kt=e=>{let{element:t}=e;j(t,Ot),e._toggleEventListeners(),e.dispose(),t.remove()},At=class extends W{static selector=Ct;static init=Et;static getInstance=Tt;dismiss;constructor(e){super(e),this.dismiss=B(wt,this.element),this._toggleEventListeners(!0)}get name(){return bt}close=e=>{let{element:t,dismiss:n}=this;!t||!E(t,`show`)||e&&n&&xt(n)||(j(t,Dt),!Dt.defaultPrevented&&(T(t,U),E(t,`fade`)?N(t,()=>kt(this)):kt(this)))};_toggleEventListeners=e=>{let t=e?V:H,{dismiss:n,close:r}=this;n&&t(n,f,r)};dispose(){this._toggleEventListeners(),super.dispose()}},G=`active`,jt=`data-bs-toggle`,Mt=`button`,Nt=`Button`,Pt=`[${jt}="${Mt}"]`,Ft=e=>k(e,Nt),It=e=>new Lt(e),Lt=class extends W{static selector=Pt;static init=It;static getInstance=Ft;constructor(e){super(e);let{element:t}=this;this.isActive=E(t,G),S(t,a,String(!!this.isActive)),this._toggleEventListeners(!0)}get name(){return Nt}toggle=e=>{e&&e.preventDefault();let{element:t,isActive:n}=this;xt(t)||((n?T:w)(t,G),S(t,a,n?`false`:`true`),this.isActive=E(t,G))};_toggleEventListeners=e=>{(e?V:H)(this.element,f,this.toggle)};dispose(){this._toggleEventListeners(),super.dispose()}},Rt=`data-bs-target`,zt=`carousel`,Bt=`Carousel`,Vt=`data-bs-parent`,Ht=`data-bs-container`,K=e=>{let t=[Rt,Vt,Ht,`href`],n=A(e);return t.map(t=>{let r=x(e,t);return r?t===`data-bs-parent`?z(e,r):B(r,n):null}).filter(e=>e)[0]},Ut=`[data-bs-ride="${zt}"]`,q=`${zt}-item`,Wt=`data-bs-slide-to`,Gt=`data-bs-slide`,Kt=`paused`,qt=ce()?_:h;console.log({isMobile:ce(),touchEvent:qt});var Jt={pause:`hover`,keyboard:!1,touch:!0,interval:5e3},Yt=e=>k(e,Bt),Xt=e=>new gn(e),Zt=0,Qt=0,$t=0,en=P(`slide.bs.${zt}`),tn=P(`slid.bs.${zt}`),nn=e=>{let{index:t,direction:n,element:r,slides:i,options:a}=e;if(e.isAnimating){let o=hn(e),s=n===`left`?`next`:`prev`,c=n===`left`?`start`:`end`;w(i[t],G),T(i[t],`${q}-${s}`),T(i[t],`${q}-${c}`),T(i[o],G),T(i[o],`${q}-${c}`),j(r,tn),I.clear(r,Gt),e.cycle&&!A(r).hidden&&a.interval&&!e.isPaused&&e.cycle()}};function rn(){let e=Yt(this);e&&!e.isPaused&&!I.get(this,Kt)&&w(this,Kt)}function an(){let e=Yt(this);e&&e.isPaused&&!I.get(this,Kt)&&e.cycle()}function on(e){e.preventDefault();let t=z(this,Ut)||K(this),n=t&&Yt(t);if(xt(this)||!n||n.isAnimating)return;let r=+(x(this,Wt)||0);this&&!E(this,`active`)&&!Number.isNaN(r)&&n.to(r)}function sn(e){e.preventDefault();let t=z(this,Ut)||K(this),n=t&&Yt(t);if(xt(this)||!n||n.isAnimating)return;let r=x(this,Gt);r===`next`?n.next():r===`prev`&&n.prev()}var cn=({code:e,target:t})=>{let[n]=[...L(Ut,A(t))].filter(e=>ct(e)),r=Yt(n);if(!r||r.isAnimating||/textarea|input|select/i.test(t.nodeName))return;let i=dt(n);e===(i?`ArrowRight`:`ArrowLeft`)?r.prev():e===(i?re:y)&&r.next()};function ln(e){let{target:t}=e,n=Yt(this);n&&n.isTouch&&!n.controls.includes(t)&&!n.controls.includes(t?.parentElement)&&(!n.indicator||!n.indicator.contains(t))&&e.preventDefault()}function un(e){let{target:t}=e,n=Yt(this);if(!n||n.isAnimating||n.isTouch)return;let{controls:r,indicator:i}=n;![...r,i].every(e=>e&&(e===t||e.contains(t)))&&this.contains(t)&&(Zt=e.pageX,n.isTouch=!0,mn(n,!0))}var dn=e=>{Qt=e.pageX},fn=e=>{let{target:t}=e,n=A(t),r=[...L(Ut,n)].map(e=>Yt(e)).find(e=>e.isTouch);if(!r)return;let{element:i,index:a}=r,o=dt(i);$t=e.pageX,r.isTouch=!1,mn(r),!n.getSelection()?.toString().length&&i.contains(t)&&Math.abs(Zt-$t)>120&&(QtZt&&r.to(a+(o?1:-1))),Zt=0,Qt=0,$t=0},pn=(e,t)=>{let{indicators:n}=e;[...n].forEach(e=>T(e,G)),e.indicators[t]&&w(n[t],G)},mn=(e,t)=>{let{element:n}=e,r=t?V:H;r(A(n),g,dn,Pe),r(A(n),te,fn,Pe)},hn=e=>{let{slides:t,element:n}=e,r=B(`.${q}.${G}`,n);return r?[...t].indexOf(r):-1},gn=class extends W{static selector=Ut;static init=Xt;static getInstance=Yt;constructor(e,t){super(e,t);let{element:n}=this;this.direction=dt(n)?`right`:`left`,this.isTouch=!1,this.slides=mt(q,n);let{slides:r}=this;if(r.length<2)return;let i=hn(this),a=[...r].find(e=>et(e,`.${q}-next`));this.index=i;let o=A(n);this.controls=[...L(`[${Gt}]`,n),...L(`[${Gt}][${Rt}="#${n.id}"]`,o)].filter((e,t,n)=>t===n.indexOf(e)),this.indicator=B(`.${zt}-indicators`,n),this.indicators=[...this.indicator?L(`[${Wt}]`,this.indicator):[],...L(`[${Wt}][${Rt}="#${n.id}"]`,o)].filter((e,t,n)=>t===n.indexOf(e));let{options:s}=this;this.options.interval=s.interval===!0?Jt.interval:s.interval,a?this.index=[...r].indexOf(a):i<0&&(this.index=0,w(r[0],G),this.indicators.length&&pn(this,0)),this.indicators.length&&pn(this,this.index),this._toggleEventListeners(!0),s.interval&&this.cycle()}get name(){return Bt}get defaults(){return Jt}get isPaused(){return E(this.element,Kt)}get isAnimating(){return B(`.${q}-next,.${q}-prev`,this.element)!==null}cycle(){let{element:e,options:t,isPaused:n,index:r}=this;I.clear(e,zt),n&&(I.clear(e,Kt),T(e,Kt)),I.set(e,()=>{this.element&&!this.isPaused&&!this.isTouch&&ct(e)&&this.to(r+1)},t.interval,zt)}pause(){let{element:e,options:t}=this;this.isPaused||!t.interval||(w(e,Kt),I.set(e,()=>{},1,Kt))}next(){this.isAnimating||this.to(this.index+1)}prev(){this.isAnimating||this.to(this.index-1)}to(e){let{element:t,slides:n,options:r}=this,i=hn(this),a=dt(t),o=e;if(this.isAnimating||i===o||I.get(t,Gt))return;io||i===n.length-1&&o===0)&&(this.direction=a?`left`:`right`);let{direction:s}=this;o<0?o=n.length-1:o>=n.length&&(o=0);let c=s===`left`?`next`:`prev`,l=s===`left`?`start`:`end`,u={relatedTarget:n[o],from:i,to:o,direction:s};we(en,u),we(tn,u),j(t,en),!en.defaultPrevented&&(this.index=o,pn(this,o),Oe(n[o])&&E(t,`slide`)?I.set(t,()=>{w(n[o],`${q}-${c}`),Fe(n[o]),w(n[o],`${q}-${l}`),w(n[i],`${q}-${l}`),N(n[o],()=>this.slides&&this.slides.length&&nn(this))},0,Gt):(w(n[o],G),T(n[i],G),I.set(t,()=>{I.clear(t,Gt),t&&r.interval&&!this.isPaused&&this.cycle(),j(t,tn)},0,Gt)))}_toggleEventListeners=e=>{let{element:t,options:n,slides:r,controls:i,indicators:a}=this,{touch:o,pause:s,interval:c,keyboard:l}=n,d=e?V:H;s&&c&&(d(t,ee,rn),d(t,m,an)),o&&r.length>2&&(d(t,h,un,Pe),d(t,_,ln,{passive:!1}),d(t,v,ln,{passive:!1})),i.length&&i.forEach(e=>{d(e,f,sn)}),a.length&&a.forEach(e=>{d(e,f,on)}),l&&d(A(t),u,cn)};dispose(){let{isAnimating:e}=this,t={...this,isAnimating:e};this._toggleEventListeners(),super.dispose(),t.isAnimating&&N(t.slides[t.index],()=>{nn(t)})}},_n=`collapsing`,J=`collapse`,vn=`Collapse`,yn=`.${J}`,bn=`[${jt}="${J}"]`,xn={parent:null},Sn=e=>k(e,vn),Cn=e=>new jn(e),wn=P(`show.bs.${J}`),Tn=P(`shown.bs.${J}`),En=P(`hide.bs.${J}`),Dn=P(`hidden.bs.${J}`),On=e=>{let{element:t,parent:r,triggers:i}=e;j(t,wn),wn.defaultPrevented||(I.set(t,ue,17),r&&I.set(r,ue,17),w(t,_n),T(t,J),F(t,{height:`${t.scrollHeight}px`}),N(t,()=>{I.clear(t),r&&I.clear(r),i.forEach(e=>S(e,n,`true`)),T(t,_n),w(t,J),w(t,U),F(t,{height:``}),j(t,Tn)}))},kn=e=>{let{element:t,parent:r,triggers:i}=e;j(t,En),En.defaultPrevented||(I.set(t,ue,17),r&&I.set(r,ue,17),F(t,{height:`${t.scrollHeight}px`}),T(t,J),T(t,U),w(t,_n),Fe(t),F(t,{height:`0px`}),N(t,()=>{I.clear(t),r&&I.clear(r),i.forEach(e=>S(e,n,`false`)),T(t,_n),w(t,J),F(t,{height:``}),j(t,Dn)}))},An=e=>{let{target:t}=e,n=t&&z(t,bn),r=n&&K(n),i=r&&Sn(r);n&&xt(n)||i&&(i.toggle(),n?.tagName===`A`&&e.preventDefault())},jn=class extends W{static selector=yn;static init=Cn;static getInstance=Sn;constructor(e,t){super(e,t);let{element:n,options:r}=this,i=A(n);this.triggers=[...L(bn,i)].filter(e=>K(e)===n),this.parent=R(r.parent)?r.parent:xe(r.parent)?K(n)||B(r.parent,i):null,this._toggleEventListeners(!0)}get name(){return vn}get defaults(){return xn}hide(){let{triggers:e,element:t}=this;I.get(t)||(kn(this),e.length&&e.forEach(e=>w(e,`${J}d`)))}show(){let{element:e,parent:t,triggers:n}=this,r,i;t&&(r=[...L(`.${J}.${U}`,t)].find(e=>Sn(e)),i=r&&Sn(r)),(!t||!I.get(t))&&!I.get(e)&&(i&&r!==e&&(kn(i),i.triggers.forEach(e=>{w(e,`${J}d`)})),On(this),n.length&&n.forEach(e=>T(e,`${J}d`)))}toggle(){E(this.element,`show`)?this.hide():this.show()}_toggleEventListeners=e=>{let t=e?V:H,{triggers:n}=this;n.length&&n.forEach(e=>{t(e,f,An)})};dispose(){this._toggleEventListeners(),super.dispose()}},Mn=`1.1.0`,Nn=[`all`,`intersecting`,`update`],Pn=`PositionObserver Error`,Fn=class{entries;static version=Mn;_t;_r;_cm;_w;_h;_rm;_th;_c;constructor(e,t){if(!lt(e))throw Error(`${Pn}: ${e} is not a function.`);this.entries=new Map,this._c=e,this._t=0;let n=O(t?.root)?t.root:document?.documentElement;this._r=n,this._rm=t?.rootMargin,this._th=t?.threshold,this._cm=Nn.indexOf(t?.callbackMode||`intersecting`),this._w=n.clientWidth,this._h=n.clientHeight}observe=e=>{if(!O(e))throw Error(`${Pn}: ${e} is not an instance of Element.`);this._r.contains(e)&&this._n(e).then(t=>{t.boundingClientRect&&!this.getEntry(e)&&this.entries.set(e,t),this._t||=requestAnimationFrame(this._rc)})};unobserve=e=>{this.entries.has(e)&&this.entries.delete(e)};_rc=()=>{if(!this.entries.size){this._t=0;return}let{clientWidth:e,clientHeight:t}=this._r,n=new Promise(n=>{let r=[];this.entries.forEach(({target:n,boundingClientRect:i,isIntersecting:a})=>{this._r.contains(n)&&this._n(n).then(o=>{if(!o.isIntersecting){if(this._cm===1)return;if(this._cm===2){a&&(this.entries.set(n,o),r.push(o));return}}let{left:s,top:c}=o.boundingClientRect;(i.top!==c||i.left!==s||this._w!==e||this._h!==t)&&(this.entries.set(n,o),r.push(o))})}),this._w=e,this._h=t,n(r)});this._t=requestAnimationFrame(async()=>{let e=await n;e.length&&this._c(e,this),this._rc()})};_n=e=>new Promise(t=>{new IntersectionObserver(([e],n)=>{n.disconnect(),t(e)},{threshold:this._th,rootMargin:this._rm}).observe(e)});getEntry=e=>this.entries.get(e);disconnect=()=>{cancelAnimationFrame(this._t),this.entries.clear(),this._t=0}},In=[`dropdown`,`dropup`,`dropstart`,`dropend`],Ln=`Dropdown`,Rn=`dropdown-menu`,zn=e=>{let t=z(e,`A`);return e.tagName===`A`&&pe(e,`href`)&&x(e,`href`)?.slice(-1)===`#`||t&&pe(t,`href`)&&x(t,`href`)?.slice(-1)===`#`},[Y,Bn,Vn,Hn]=In,Un=`[${jt}="${Y}"]`,Wn=e=>k(e,Ln),Gn=e=>new ur(e),Kn=`${Rn}-end`,qn=[Y,Bn],Jn=[Vn,Hn],Yn=[`A`,`BUTTON`],Xn={offset:5,display:`dynamic`},Zn=P(`show.bs.${Y}`),Qn=P(`shown.bs.${Y}`),$n=P(`hide.bs.${Y}`),er=P(`hidden.bs.${Y}`),tr=P(`updated.bs.${Y}`),nr=e=>{let{element:t,menu:n,parentElement:r,options:i}=e,{offset:a}=i;if(M(n,`position`)===`static`)return;let o=dt(t),s=E(n,Kn);[`margin`,`top`,`bottom`,`left`,`right`].forEach(e=>{let t={};t[e]=``,F(n,t)});let c=In.find(e=>E(r,e))||Y,l={dropdown:[a,0,0],dropup:[0,0,a],dropstart:o?[-1,0,0,a]:[-1,a,0],dropend:o?[-1,a,0]:[-1,0,0,a]},u={dropdown:{top:`100%`},dropup:{top:`auto`,bottom:`100%`},dropstart:o?{left:`100%`,right:`auto`}:{left:`auto`,right:`100%`},dropend:o?{left:`auto`,right:`100%`}:{left:`100%`,right:`auto`},menuStart:o?{right:`0`,left:`auto`}:{right:`auto`,left:`0`},menuEnd:o?{right:`auto`,left:`0`}:{right:`0`,left:`auto`}},{offsetWidth:d,offsetHeight:f}=n,{clientWidth:p,clientHeight:ee}=Je(t),{left:m,top:h,width:g,height:te}=Ke(t),_=m-d-a<0,v=m+d+g+a>=p,ne=h+f+a>=ee,re=h+f+te+a>=ee,y=h-f-a<0,b=(!o&&s||o&&!s)&&m+g-d<0,ie=(o&&s||!o&&!s)&&m+d>=p;if(Jn.includes(c)&&_&&v&&(c=Y),c===Vn&&(o?v:_)&&(c=Hn),c===Hn&&(o?_:v)&&(c=Vn),c===Bn&&y&&!re&&(c=Y),c===Y&&re&&!y&&(c=Bn),Jn.includes(c)&&ne&&we(u[c],{top:`auto`,bottom:0}),qn.includes(c)&&(b||ie)){let e={left:`auto`,right:`auto`};!b&&ie&&!o&&(e={left:`auto`,right:0}),b&&!ie&&o&&(e={left:0,right:`auto`}),e&&we(u[c],e)}let ae=l[c];F(n,{...u[c],margin:`${ae.map(e=>e&&`${e}px`).join(` `)}`}),qn.includes(c)&&s&&s&&F(n,u[!o&&b||o&&ie?`menuStart`:`menuEnd`]),j(r,tr)},rr=e=>Array.from(e.children).map(e=>{if(e&&Yn.includes(e.tagName))return e;let{firstElementChild:t}=e;return t&&Yn.includes(t.tagName)?t:null}).filter(e=>e),ir=e=>{let{element:t,options:n,menu:r}=e,i=e.open?V:H,a=A(t);i(a,f,or),i(a,s,or),i(a,u,cr),i(a,d,lr),n.display===`dynamic`&&(e.open?e._observer.observe(r):e._observer.disconnect())},ar=e=>{let t=[...In,`btn-group`,`input-group`].map(t=>mt(`${t} ${U}`,A(e))).find(e=>e.length);if(t&&t.length)return[...t[0].children].find(e=>In.some(t=>t===x(e,jt)))},or=e=>{let{target:t,type:n}=e;if(!R(t))return;let r=ar(t),i=r&&Wn(r);if(!i)return;let{parentElement:a,menu:o}=i,s=a&&a.contains(t)&&(t.tagName===`form`||z(t,`form`)!==null);[`click`,`mousedown`].includes(n)&&zn(t)&&e.preventDefault(),!s&&n!==`focus`&&t!==r&&t!==o&&i.hide()};function sr(e){let t=Wn(this);xt(this)||t&&(e.stopPropagation(),t.toggle(),zn(this)&&e.preventDefault())}var cr=e=>{[`ArrowDown`,`ArrowUp`].includes(e.code)&&e.preventDefault()};function lr(e){let{code:t}=e,n=ar(this);if(!n)return;let r=Wn(n),{activeElement:i}=A(n);if(!r||!i)return;let{menu:a,open:o}=r,s=rr(a);if(s&&s.length&&[`ArrowDown`,`ArrowUp`].includes(t)){let e=s.indexOf(i);i===n?e=0:t===`ArrowUp`?e=e>1?e-1:0:t===`ArrowDown`&&(e=enr(this)),this._toggleEventListeners(!0))}get name(){return Ln}get defaults(){return Xn}toggle(){this.open?this.hide():this.show()}show(){let{element:e,open:t,menu:r,parentElement:i}=this;if(t)return;let a=ar(e),o=a&&Wn(a);o&&o.hide(),[Zn,Qn,tr].forEach(t=>{t.relatedTarget=e}),j(i,Zn),!Zn.defaultPrevented&&(w(r,U),w(i,U),S(e,n,`true`),nr(this),this.open=!t,ke(e),ir(this),j(i,Qn))}hide(){let{element:e,open:t,menu:r,parentElement:i}=this;t&&([$n,er].forEach(t=>{t.relatedTarget=e}),j(i,$n),!$n.defaultPrevented&&(T(r,U),T(i,U),S(e,n,`false`),this.open=!t,ir(this),j(i,er)))}_toggleEventListeners=e=>{(e?V:H)(this.element,f,sr)};dispose(){this.open&&this.hide(),this._toggleEventListeners(),super.dispose()}},X=`modal`,dr=`Modal`,fr=`Offcanvas`,pr=`fixed-top`,mr=`fixed-bottom`,hr=`sticky-top`,gr=`position-sticky`,_r=e=>[...mt(pr,e),...mt(mr,e),...mt(hr,e),...mt(gr,e),...mt(`is-fixed`,e)],vr=e=>{let t=qe(e);F(t,{paddingRight:``,overflow:``});let n=_r(t);n.length&&n.forEach(e=>{F(e,{paddingRight:``,marginRight:``})})},yr=e=>{let{clientWidth:t}=Je(e),{innerWidth:n}=Qe(e);return Math.abs(n-t)},br=(e,t)=>{let n=qe(e),r=parseInt(M(n,`paddingRight`),10),i=M(n,`overflow`)===`hidden`&&r?0:yr(e),a=_r(n);t&&(F(n,{overflow:`hidden`,paddingRight:`${r+i}px`}),a.length&&a.forEach(e=>{let t=M(e,`paddingRight`);if(e.style.paddingRight=`${parseInt(t,10)+i}px`,[`sticky-top`,`position-sticky`].some(t=>E(e,t))){let t=M(e,`marginRight`);e.style.marginRight=`${parseInt(t,10)-i}px`}}))},Z=`offcanvas`,xr=Te({tagName:`div`,className:`popup-container`}),Sr=(e,t)=>{let n=D(t)&&t.nodeName===`BODY`,r=D(t)&&!n?t:xr,i=n?t:qe(e);D(e)&&(r===xr&&i.append(xr),r.append(e))},Cr=(e,t)=>{let n=D(t)&&t.nodeName===`BODY`,r=D(t)&&!n?t:xr;D(e)&&(e.remove(),r===xr&&!xr.children.length&&xr.remove())},wr=(e,t)=>{let n=D(t)&&t.nodeName!==`BODY`?t:xr;return D(e)&&n.contains(e)},Tr=`backdrop`,Er=`${X}-${Tr}`,Dr=`${Z}-${Tr}`,Or=`.${X}.${U}`,kr=`.${Z}.${U}`,Q=Te(`div`),Ar=e=>B(`${Or},${kr}`,A(e)),jr=e=>{let t=e?Er:Dr;[Er,Dr].forEach(e=>{T(Q,e)}),w(Q,t)},Mr=(e,t,n)=>{jr(n),Sr(Q,qe(e)),t&&w(Q,_t)},Nr=()=>{E(Q,`show`)||(w(Q,U),Fe(Q))},Pr=()=>{T(Q,U)},Fr=e=>{Ar(e)||(T(Q,_t),Cr(Q,qe(e)),vr(e))},Ir=e=>R(e)&&M(e,`visibility`)!==`hidden`&&e.offsetParent!==null,Lr=`.${X}`,Rr=`[${jt}="${X}"]`,zr=`[${vt}="${X}"]`,Br=`${X}-static`,Vr={backdrop:!0,keyboard:!0},Hr=e=>k(e,dr),Ur=e=>new ii(e),Wr=P(`show.bs.${X}`),Gr=P(`shown.bs.${X}`),Kr=P(`hide.bs.${X}`),qr=P(`hidden.bs.${X}`),Jr=e=>{let{element:t}=e,n=yr(t),{clientHeight:r,scrollHeight:i}=Je(t),{clientHeight:a,scrollHeight:o}=t,s=a!==o;!s&&n&&F(t,{[dt(t)?`paddingLeft`:`paddingRight`]:`${n}px`}),br(t,s||r!==i)},Yr=(e,t)=>{let n=t?V:H,{element:r}=e;n(r,f,ni),n(A(r),u,ti),t?e._observer.observe(r):e._observer.disconnect()},Xr=e=>{let{triggers:t,element:n,relatedTarget:r}=e;Fr(n),F(n,{paddingRight:``,display:``}),Yr(e);let i=Wr.relatedTarget||t.find(Ir);i&&ke(i),qr.relatedTarget=r||void 0,j(n,qr),Ge(n)},Zr=e=>{let{element:t,relatedTarget:n}=e;ke(t),Yr(e,!0),Gr.relatedTarget=n||void 0,j(t,Gr),Ge(t)},Qr=e=>{let{element:t,hasFade:n}=e;F(t,{display:`block`}),Jr(e),Ar(t)||F(qe(t),{overflow:`hidden`}),w(t,U),C(t,r),S(t,i,`true`),n?N(t,()=>Zr(e)):Zr(e)},$r=e=>{let{element:t,options:n,hasFade:r}=e;n.backdrop&&r&&E(Q,`show`)&&!Ar(t)?(Pr(),N(Q,()=>Xr(e))):Xr(e)};function ei(e){let t=K(this),n=t&&Hr(t);xt(this)||n&&(this.tagName===`A`&&e.preventDefault(),n.relatedTarget=this,n.toggle())}var ti=({code:e,target:t})=>{let n=B(Or,A(t)),r=n&&Hr(n);if(!r)return;let{options:i}=r;i.keyboard&&e===`Escape`&&E(n,`show`)&&(r.relatedTarget=null,r.hide())},ni=e=>{let{currentTarget:t}=e,n=t&&Hr(t);if(!n||!t||I.get(t))return;let{options:r,isStatic:i,modalDialog:a}=n,{backdrop:o}=r,{target:s}=e,c=A(t)?.getSelection()?.toString().length,l=a.contains(s),u=s&&z(s,zr);i&&!l?I.set(t,()=>{w(t,Br),N(a,()=>ri(n))},17):(u||!c&&!i&&!l&&o)&&(n.relatedTarget=u||null,n.hide(),e.preventDefault())},ri=e=>{let{element:t,modalDialog:n}=e,r=(Oe(n)||0)+17;T(t,Br),I.set(t,()=>I.clear(t),r)},ii=class extends W{static selector=Lr;static init=Ur;static getInstance=Hr;constructor(e,t){super(e,t);let{element:n}=this,r=B(`.${X}-dialog`,n);r&&(this.modalDialog=r,this.triggers=[...L(Rr,A(n))].filter(e=>K(e)===n),this.isStatic=this.options.backdrop===`static`,this.hasFade=E(n,_t),this.relatedTarget=null,this._observer=new ResizeObserver(()=>this.update()),this._toggleEventListeners(!0))}get name(){return dr}get defaults(){return Vr}toggle(){E(this.element,`show`)?this.hide():this.show()}show(){let{element:e,options:t,hasFade:n,relatedTarget:r}=this,{backdrop:i}=t,a=0;if(E(e,`show`)||(Wr.relatedTarget=r||void 0,j(e,Wr),Wr.defaultPrevented))return;let o=Ar(e);if(o&&o!==e){let e=Hr(o)||k(o,`Offcanvas`);e&&e.hide()}i?(wr(Q)?jr(!0):Mr(e,n,!0),a=Oe(Q),Nr(),setTimeout(()=>Qr(this),a)):(Qr(this),o&&E(Q,`show`)&&Pr())}hide(){let{element:e,hasFade:t,relatedTarget:n}=this;E(e,`show`)&&(Kr.relatedTarget=n||void 0,j(e,Kr),!Kr.defaultPrevented&&(T(e,U),S(e,r,`true`),C(e,i),t?N(e,()=>$r(this)):$r(this)))}update=()=>{E(this.element,`show`)&&Jr(this)};_toggleEventListeners=e=>{let t=e?V:H,{triggers:n}=this;n.length&&n.forEach(e=>{t(e,f,ei)})};dispose(){let{modalDialog:e,hasFade:t}={...this},n=()=>setTimeout(()=>super.dispose(),17);this.hide(),this._toggleEventListeners(),t?N(e,n):n()}},ai=`.${Z}`,oi=`[${jt}="${Z}"]`,si=`[${vt}="${Z}"]`,ci=`${Z}-toggling`,li={backdrop:!0,keyboard:!0,scroll:!1},ui=e=>k(e,fr),di=e=>new Ti(e),fi=P(`show.bs.${Z}`),pi=P(`shown.bs.${Z}`),mi=P(`hide.bs.${Z}`),hi=P(`hidden.bs.${Z}`),gi=e=>{let{element:t}=e,{clientHeight:n,scrollHeight:r}=Je(t);br(t,n!==r)},_i=(e,t)=>{let n=t?V:H,r=A(e.element);n(r,u,Si),n(r,f,xi)},vi=e=>{let{element:t,options:n}=e;n.scroll||(gi(e),F(qe(t),{overflow:`hidden`})),w(t,ci),w(t,U),F(t,{visibility:`visible`}),N(t,()=>Ci(e))},yi=e=>{let{element:t,options:n}=e,r=Ar(t);t.blur(),!r&&n.backdrop&&E(Q,`show`)&&Pr(),N(t,()=>wi(e))};function bi(e){let t=K(this),n=t&&ui(t);xt(this)||n&&(n.relatedTarget=this,n.toggle(),this.tagName===`A`&&e.preventDefault())}var xi=e=>{let{target:t}=e,n=B(kr,A(t));if(!n)return;let r=B(si,n),i=ui(n);if(!i)return;let{options:a,triggers:o}=i,{backdrop:s}=a,c=z(t,oi),l=A(n).getSelection();Q.contains(t)&&s===`static`||(!(l&&l.toString().length)&&(!n.contains(t)&&s&&(!c||o.includes(t))||r&&r.contains(t))&&(i.relatedTarget=r&&r.contains(t)?r:void 0,i.hide()),c&&c.tagName===`A`&&e.preventDefault())},Si=({code:e,target:t})=>{let n=B(kr,A(t)),r=n&&ui(n);r&&r.options.keyboard&&e===`Escape`&&(r.relatedTarget=void 0,r.hide())},Ci=e=>{let{element:t}=e;T(t,ci),C(t,r),S(t,i,`true`),S(t,`role`,`dialog`),j(t,pi),_i(e,!0),ke(t),Ge(t)},wi=e=>{let{element:t,triggers:n}=e;S(t,r,`true`),C(t,i),C(t,`role`),F(t,{visibility:``});let a=fi.relatedTarget||n.find(Ir);a&&ke(a),Fr(t),j(t,hi),T(t,ci),Ge(t),Ar(t)||_i(e)},Ti=class extends W{static selector=ai;static init=di;static getInstance=ui;constructor(e,t){super(e,t);let{element:n}=this;this.triggers=[...L(oi,A(n))].filter(e=>K(e)===n),this.relatedTarget=void 0,this._toggleEventListeners(!0)}get name(){return fr}get defaults(){return li}toggle(){E(this.element,`show`)?this.hide():this.show()}show(){let{element:e,options:t,relatedTarget:n}=this,r=0;if(E(e,`show`)||(fi.relatedTarget=n||void 0,pi.relatedTarget=n||void 0,j(e,fi),fi.defaultPrevented))return;let i=Ar(e);if(i&&i!==e){let e=ui(i)||k(i,`Modal`);e&&e.hide()}t.backdrop?(wr(Q)?jr():Mr(e,!0),r=Oe(Q),Nr(),setTimeout(()=>vi(this),r)):(vi(this),i&&E(Q,`show`)&&Pr())}hide(){let{element:e,relatedTarget:t}=this;E(e,`show`)&&(mi.relatedTarget=t||void 0,hi.relatedTarget=t||void 0,j(e,mi),!mi.defaultPrevented&&(w(e,ci),T(e,U),yi(this)))}_toggleEventListeners=e=>{let t=e?V:H;this.triggers.forEach(e=>{t(e,f,bi)})};dispose(){let{element:e}=this,t=E(e,U),n=()=>setTimeout(()=>super.dispose(),1);this.hide(),this._toggleEventListeners(),t?N(e,n):n()}},Ei=`popover`,Di=`Popover`,Oi=`tooltip`,ki=e=>{let t=e===Oi,n=t?`${e}-inner`:`${e}-body`,r=t?``:`

`,i=`
`,a=`
`;return`
${r+i+a}
`},Ai={top:`top`,bottom:`bottom`,left:`start`,right:`end`},ji=e=>{requestAnimationFrame(()=>{let t=/\b(top|bottom|start|end)+/,{element:n,tooltip:r,container:i,offsetParent:a,options:o,arrow:s}=e;if(!r)return;let c=dt(n),{x:l,y:u}=Ye(a);F(r,{top:``,left:``,right:``,bottom:``});let{offsetWidth:d,offsetHeight:f}=r,{clientWidth:p,clientHeight:ee,offsetWidth:m}=Je(n),{placement:h}=o,{clientWidth:g,offsetWidth:te}=i,_=M(i,`position`)===`fixed`,v=_?Math.abs(g-te):Math.abs(p-m),ne=c&&_?v:0,re=p-(c?0:v)-1,{width:y,height:b,left:ie,right:ae,top:oe}=e._observer.getEntry(n)?.boundingClientRect||Ke(n,!0),{x:se,y:ce}=nt(n,a,{x:l,y:u});F(s,{top:``,left:``,right:``,bottom:``});let le=0,ue=``,de=0,fe=``,x=``,pe=``,S=``,C=s.offsetWidth||0,w=s.offsetHeight||0,T=C/2,E=oe-f-w<0,me=oe+f+b+w>=ee,he=ie-d-C=re,_e=[`left`,`right`],D=[`top`,`bottom`];E=_e.includes(h)?oe+b/2-f/2-w<0:E,me=_e.includes(h)?oe+f/2+b/2+w>=ee:me,he=D.includes(h)?ie+y/2-d/2=re:ge,h=_e.includes(h)&&he&&ge?`top`:h,h=h===`top`&&E?`bottom`:h,h=h===`bottom`&&me?`top`:h,h=h===`left`&&he?`right`:h,h=h===`right`&&ge?`left`:h,r.className.includes(h)||(r.className=r.className.replace(t,Ai[h])),_e.includes(h)?(de=h===`left`?se-d-C:se+y+C,E&&me?(le=0,ue=0,x=ce+b/2-w/2):E?(le=ce,ue=``,x=b/2-C):me?(le=ce-f+b,ue=``,x=f-b/2-C):(le=ce-f/2+b/2,x=f/2-w/2)):D.includes(h)&&(le=h===`top`?ce-f-w:ce+b+w,he?(de=0,pe=se+y/2-T):ge?(de=`auto`,fe=0,S=y/2+re-ae-T):(de=se-d/2+y/2,pe=d/2-T)),F(r,{top:`${le}px`,bottom:ue===``?``:`${ue}px`,left:de===`auto`?de:`${de}px`,right:fe===``?``:`${fe}px`}),R(s)&&(x!==``&&(s.style.top=`${x}px`),pe===``?S!==``&&(s.style.right=`${S}px`):s.style.left=`${pe}px`),j(n,P(`updated.bs.${ze(e.name)}`))})},Mi={template:ki(Oi),title:``,customClass:``,trigger:`hover focus`,placement:`top`,sanitizeFn:void 0,animation:!0,delay:200,container:document.body,content:``,dismissible:!1,btnClose:``},Ni=`data-original-title`,Pi=`Tooltip`,Fi=(e,t,n)=>{if(xe(t)&&t.length){let r=t.trim();lt(n)&&(r=n(r));let i=new DOMParser().parseFromString(r,`text/html`);e.append(...i.body.childNodes)}else R(t)?e.append(t):(ut(t)||st(t)&&t.every(D))&&e.append(...t)},Ii=e=>{let t=e.name===Pi,{id:n,element:r,options:i}=e,{title:a,placement:o,template:s,animation:c,customClass:l,sanitizeFn:u,dismissible:d,content:f,btnClose:p}=i,ee=t?Oi:Ei,m={...Ai},h=[],g=[];dt(r)&&(m.left=`end`,m.right=`start`);let te=`bs-${ee}-${m[o]}`,_;if(R(s))_=s;else{let e=Te(`div`);Fi(e,s,u),_=e.firstChild}if(!R(_))return;e.tooltip=_.cloneNode(!0);let{tooltip:v}=e;S(v,`id`,n),S(v,`role`,Oi);let ne=t?`${Oi}-inner`:`${Ei}-body`,re=t?null:B(`.${Ei}-header`,v),y=B(`.${ne}`,v);e.arrow=B(`.${ee}-arrow`,v);let{arrow:b}=e;if(R(a))h=[a.cloneNode(!0)];else{let e=Te(`div`);Fi(e,a,u),h=[...[...e.childNodes]]}if(R(f))g=[f.cloneNode(!0)];else{let e=Te(`div`);Fi(e,f,u),g=[...[...e.childNodes]]}if(d)if(a)if(R(p))h=[...h,p.cloneNode(!0)];else{let e=Te(`div`);Fi(e,p,u),h=[...h,e.firstChild]}else if(re&&re.remove(),R(p))g=[...g,p.cloneNode(!0)];else{let e=Te(`div`);Fi(e,p,u),g=[...g,e.firstChild]}t?a&&y&&Fi(y,a,u):(a&&re&&Fi(re,h,u),f&&y&&Fi(y,g,u),e.btn=B(`.btn-close`,v)||void 0),w(v,`position-absolute`),w(b,`position-absolute`),E(v,ee)||w(v,ee),c&&!E(v,`fade`)&&w(v,_t),l&&!E(v,l)&&w(v,l),E(v,te)||w(v,te)},Li=e=>{let t=[`HTML`,`BODY`],n=[],{parentNode:r}=e;for(;r&&!t.includes(r.nodeName);)r=Ze(r),Xe(r)||$e(r)||n.push(r);return n.find((e,t)=>(M(e,`position`)!==`relative`||M(e,`position`)===`relative`&&e.offsetHeight!==e.scrollHeight)&&n.slice(t+1).every(e=>M(e,`position`)===`static`)?e:null)||A(e).body},Ri=`[${jt}="${Oi}"],[data-tip="${Oi}"]`,zi=`title`,Bi=e=>k(e,Pi),Vi=e=>new Xi(e),Hi=e=>{let{element:n,tooltip:r,container:i}=e;C(n,t),Cr(r,i)},Ui=e=>{let{tooltip:t,container:n}=e;return t&&wr(t,n)},Wi=(e,t)=>{let{element:n}=e;e._toggleEventListeners(),pe(n,`data-original-title`)&&e.name===`Tooltip`&&Yi(e),t&&t()},Gi=(e,t)=>{let n=t?V:H,{element:r}=e;n(A(r),_,e.handleTouch,Pe)},Ki=e=>{let{element:t}=e,n=P(`shown.bs.${ze(e.name)}`);Gi(e,!0),j(t,n),I.clear(t,`in`)},qi=e=>{let{element:t}=e,n=P(`hidden.bs.${ze(e.name)}`);Gi(e),Hi(e),j(t,n),I.clear(t,`out`)},Ji=(e,t)=>{let n=t?V:H,{element:r,tooltip:i}=e,a=z(r,`.${X}`),o=z(r,`.${Z}`);t?[r,i].forEach(t=>e._observer.observe(t)):e._observer.disconnect(),a&&n(a,`hide.bs.${X}`,e.handleHide),o&&n(o,`hide.bs.${Z}`,e.handleHide)},Yi=(e,t)=>{let n=[Ni,zi],{element:r}=e;S(r,n[t?0:1],t||x(r,n[0])||``),C(r,n[t?1:0])},Xi=class extends W{static selector=Ri;static init=Vi;static getInstance=Bi;static styleTip=ji;constructor(e,t){super(e,t);let{element:n}=this,r=this.name===Pi,i=r?Oi:Ei,a=r?Pi:Di;Bi=e=>k(e,a),this.enabled=!0,this.id=`${i}-${ot(n,i)}`;let{options:o}=this;if(!o.title&&r||!r&&!o.content)return;we(Mi,{titleAttr:``}),pe(n,zi)&&r&&typeof o.title==`string`&&Yi(this,o.title);let s=Li(n),c=[`sticky`,`fixed`,`relative`].some(e=>M(s,`position`)===e)?s:Qe(n);this.container=s,this.offsetParent=c,Ii(this),this.tooltip&&(this._observer=new Fn(()=>this.update()),this._toggleEventListeners(!0))}get name(){return Pi}get defaults(){return Mi}handleFocus=()=>ke(this.element);handleShow=()=>this.show();show(){let{options:e,tooltip:n,element:r,container:i,id:a}=this,{animation:o}=e,s=I.get(r,`out`);I.clear(r,`out`),n&&!s&&!Ui(this)&&I.set(r,()=>{let e=P(`show.bs.${ze(this.name)}`);j(r,e),e.defaultPrevented||(Sr(n,i),S(r,t,`#${a}`),this.update(),Ji(this,!0),E(n,`show`)||w(n,U),o?N(n,()=>Ki(this)):Ki(this))},17,`in`)}handleHide=()=>this.hide();hide(){let{options:e,tooltip:t,element:n}=this,{animation:r,delay:i}=e;I.clear(n,`in`),t&&Ui(this)&&I.set(n,()=>{let e=P(`hide.bs.${ze(this.name)}`);j(n,e),e.defaultPrevented||(this.update(),T(t,U),Ji(this),r?N(t,()=>qi(this)):qi(this))},i+17,`out`)}update=()=>{ji(this)};toggle=()=>{let{tooltip:e}=this;e&&!Ui(this)?this.show():this.hide()};enable(){let{enabled:e}=this;e||(this._toggleEventListeners(!0),this.enabled=!e)}disable(){let{tooltip:e,enabled:t}=this;t&&(e&&Ui(this)&&this.hide(),this._toggleEventListeners(),this.enabled=!t)}toggleEnabled(){this.enabled?this.disable():this.enable()}handleTouch=({target:e})=>{let{tooltip:t,element:n}=this;t&&t.contains(e)||e===n||e&&n.contains(e)||this.hide()};_toggleEventListeners=e=>{let t=e?V:H,{element:n,options:r,btn:i}=this,{trigger:a}=r,o=!!(this.name!==`Tooltip`&&r.dismissible);a.includes(`manual`)||(this.enabled=!!e,a.split(` `).forEach(e=>{e===`hover`?(t(n,p,this.handleShow),t(n,ee,this.handleShow),o||(t(n,m,this.handleHide),t(A(n),_,this.handleTouch,Pe))):e===`click`?t(n,e,o?this.handleShow:this.toggle):e===`focus`&&(t(n,c,this.handleShow),o||t(n,l,this.handleHide),le()&&t(n,f,this.handleFocus)),o&&i&&t(i,f,this.handleHide)}))};dispose(){let{tooltip:e,options:t}=this,n={...this,name:this.name},r=()=>setTimeout(()=>Wi(n,()=>super.dispose()),17);t.animation&&Ui(n)?(this.options.delay=0,this.hide(),N(e,r)):r()}},Zi=`[${jt}="${Ei}"],[data-tip="${Ei}"]`,Qi=we({},Mi,{template:ki(Ei),content:``,dismissible:!1,btnClose:``}),$i=e=>k(e,Di),ea=e=>new ta(e),ta=class extends Xi{static selector=Zi;static init=ea;static getInstance=$i;static styleTip=ji;constructor(e,t){super(e,t)}get name(){return Di}get defaults(){return Qi}show=()=>{super.show();let{options:e,btn:t}=this;e.dismissible&&t&&setTimeout(()=>ke(t),17)}},na=`scrollspy`,ra=`ScrollSpy`,ia=`[data-bs-spy="scroll"]`,aa=`[href]`,oa={offset:10,target:void 0},sa=e=>k(e,ra),ca=e=>new ma(e),la=P(`activate.bs.${na}`),ua=e=>{let{target:t,_itemsLength:n,_observables:r}=e,i=ft(`A`,t),a=A(t);!i.length||n===r.size||(r.clear(),Array.from(i).forEach(t=>{let n=x(t,`href`)?.slice(1),r=n?.length?a.getElementById(n):null;r&&!xt(t)&&e._observables.set(r,t)}),e._itemsLength=e._observables.size)},da=e=>{Array.from(ft(`A`,e)).forEach(e=>{E(e,`active`)&&T(e,G)})},fa=(e,t)=>{let{target:n,element:r}=e;da(n),e._activeItem=t,w(t,G);let i=t;for(;i!==n;)if(i=i.parentElement,[`nav`,`dropdown-menu`,`list-group`].some(e=>E(i,e))){let e=i.previousElementSibling;e&&!E(e,`active`)&&w(e,G)}la.relatedTarget=t,j(r,la)},pa=(e,t)=>{let{scrollTarget:n,element:r,options:i}=e;return(n===r?t.offsetTop:Ke(t).top+n.scrollTop)-(i.offset||10)},ma=class extends W{static selector=ia;static init=ca;static getInstance=sa;constructor(e,t){super(e,t);let{element:n,options:r}=this,i=B(r.target,A(n));i&&(this.target=i,this.scrollTarget=n.clientHeight{requestAnimationFrame(()=>this.refresh())},{root:this.scrollTarget}),this._toggleEventListeners(!0))}get name(){return ra}get defaults(){return oa}refresh=()=>{let{target:e,scrollTarget:t}=this;if(!e||e.offsetHeight===0)return;ua(this);let{_itemsLength:n,_observables:r,_activeItem:i}=this;if(!n)return;let a=r.entries().toArray(),{scrollTop:o,scrollHeight:s,clientHeight:c}=t;if(o>=s-c){let e=a[n-1]?.[1];i!==e&&fa(this,e);return}let l=a[0]?.[0]?pa(this,a[0][0]):null;if(l!==null&&o0){this._activeItem=null,da(e);return}for(let e=0;e=r&&(c===null||o{let t=z(e.target,aa),n=t&&x(t,`href`)?.slice(1),r=n&&pt(n,this.target);r&&(this.scrollTarget.scrollTo({top:r.offsetTop,behavior:`smooth`}),e.preventDefault())};_toggleEventListeners=e=>{let{target:t,_observables:n,_observer:r,_scrollTo:i}=this;(e?V:H)(t,f,i),e?n?.forEach((e,t)=>r.observe(t)):r.disconnect()};dispose(){this._toggleEventListeners(),super.dispose()}},ha=`[${jt}="tab"]`,ga=e=>k(e,`Tab`),_a=e=>new ka(e),va=P(`show.bs.tab`),ya=P(`shown.bs.tab`),ba=P(`hide.bs.tab`),xa=P(`hidden.bs.tab`),Sa=new Map,Ca=e=>{let{tabContent:t,nav:n}=e;t&&E(t,`collapsing`)&&(t.style.height=``,T(t,_n)),n&&I.clear(n)},wa=e=>{let{element:t,tabContent:n,content:r,nav:i}=e,{tab:a}=R(i)&&Sa.get(i)||{tab:null};if(n&&r&&E(r,`fade`)){let{currentHeight:r,nextHeight:i}=Sa.get(t)||{currentHeight:0,nextHeight:0};r===i?Ca(e):setTimeout(()=>{n.style.height=`${i}px`,Fe(n),N(n,()=>Ca(e))},50)}else i&&I.clear(i);ya.relatedTarget=a,j(t,ya)},Ta=e=>{let{element:t,content:n,tabContent:r,nav:i}=e,{tab:a,content:o}=i&&Sa.get(i)||{tab:null,content:null},s=0;if(r&&n&&E(n,`fade`)&&([o,n].forEach(e=>{e&&w(e,`overflow-hidden`)}),s=o?o.scrollHeight:0),va.relatedTarget=a,xa.relatedTarget=t,j(t,va),!va.defaultPrevented){if(n&&w(n,G),o&&T(o,G),r&&n&&E(n,`fade`)){let e=n.scrollHeight;Sa.set(t,{currentHeight:s,nextHeight:e,tab:null,content:null}),w(r,_n),r.style.height=`${s}px`,Fe(r),[o,n].forEach(e=>{e&&T(e,`overflow-hidden`)})}n&&n&&E(n,`fade`)?setTimeout(()=>{w(n,U),N(n,()=>{wa(e)})},1):(n&&w(n,U),wa(e)),a&&j(a,xa)}},Ea=e=>{let{nav:t}=e;if(!R(t))return{tab:null,content:null};let n=mt(G,t),r=null;n.length===1&&!In.some(e=>E(n[0].parentElement,e))?[r]=n:n.length>1&&(r=n[n.length-1]);let i=R(r)?K(r):null;return{tab:r,content:i}},Da=e=>{if(!R(e))return null;let t=z(e,`.${In.join(`,.`)}`);return t?B(`.${In[0]}-toggle`,t):null},Oa=e=>{let t=z(e.target,ha),n=t&&ga(t);n&&(e.preventDefault(),n.show())},ka=class extends W{static selector=ha;static init=_a;static getInstance=ga;constructor(e){super(e);let{element:t}=this,n=K(t);if(!n)return;let r=z(t,`.nav`),i=z(n,`.tab-content`);this.nav=r,this.content=n,this.tabContent=i,this.dropdown=Da(t);let{tab:a}=Ea(this);if(r&&!a){let e=B(ha,r),n=e&&K(e);n&&(w(e,G),w(n,U),w(n,G),S(t,o,`true`))}this._toggleEventListeners(!0)}get name(){return`Tab`}show(){let{element:e,content:t,nav:n,dropdown:r}=this;if(n&&I.get(n)||E(e,`active`))return;let{tab:i,content:a}=Ea(this);if(n&&i&&Sa.set(n,{tab:i,content:a,currentHeight:0,nextHeight:0}),ba.relatedTarget=e,!R(i)||(j(i,ba),ba.defaultPrevented))return;w(e,G),S(e,o,`true`);let s=R(i)&&Da(i);if(s&&E(s,`active`)&&T(s,G),n){let e=()=>{i&&(T(i,G),S(i,o,`false`)),r&&!E(r,`active`)&&w(r,G)};a&&(E(a,`fade`)||t&&E(t,`fade`))?I.set(n,e,1):e()}a&&(T(a,U),E(a,`fade`)?N(a,()=>Ta(this)):Ta(this))}_toggleEventListeners=e=>{(e?V:H)(this.element,f,Oa)};dispose(){this._toggleEventListeners(),super.dispose()}},$=`toast`,Aa=`Toast`,ja=`.${$}`,Ma=`[${vt}="${$}"]`,Na=`[${jt}="${$}"]`,Pa=`showing`,Fa=`hide`,Ia={animation:!0,autohide:!0,delay:5e3},La=e=>k(e,Aa),Ra=e=>new Ya(e),za=P(`show.bs.${$}`),Ba=P(`shown.bs.${$}`),Va=P(`hide.bs.${$}`),Ha=P(`hidden.bs.${$}`),Ua=e=>{let{element:t,options:n}=e;T(t,Pa),I.clear(t,Pa),j(t,Ba),n.autohide&&I.set(t,()=>e.hide(),n.delay,$)},Wa=e=>{let{element:t}=e;T(t,Pa),T(t,U),w(t,Fa),I.clear(t,$),j(t,Ha)},Ga=e=>{let{element:t,options:n}=e;w(t,Pa),n.animation?(Fe(t),N(t,()=>Wa(e))):Wa(e)},Ka=e=>{let{element:t,options:n}=e;I.set(t,()=>{T(t,Fa),Fe(t),w(t,U),w(t,Pa),n.animation?N(t,()=>Ua(e)):Ua(e)},17,Pa)};function qa(e){let t=K(this),n=t&&La(t);xt(this)||n&&(this.tagName===`A`&&e.preventDefault(),n.relatedTarget=this,n.show())}var Ja=e=>{let t=e.target,n=La(t),{type:r,relatedTarget:i}=e;!n||t===i||t.contains(i)||([`mouseenter`,`focusin`].includes(r)?I.clear(t,$):I.set(t,()=>n.hide(),n.options.delay,$))},Ya=class extends W{static selector=ja;static init=Ra;static getInstance=La;constructor(e,t){super(e,t);let{element:n,options:r}=this;r.animation&&!E(n,`fade`)?w(n,_t):!r.animation&&E(n,`fade`)&&T(n,_t),this.dismiss=B(Ma,n),this.triggers=[...L(Na,A(n))].filter(e=>K(e)===n),this._toggleEventListeners(!0)}get name(){return Aa}get defaults(){return Ia}get isShown(){return E(this.element,U)}show=()=>{let{element:e,isShown:t}=this;!e||t||(j(e,za),za.defaultPrevented||Ka(this))};hide=()=>{let{element:e,isShown:t}=this;!e||!t||(j(e,Va),Va.defaultPrevented||Ga(this))};_toggleEventListeners=e=>{let t=e?V:H,{element:n,triggers:r,dismiss:i,options:a,hide:o}=this;i&&t(i,f,o),a.autohide&&[c,l,ee,m].forEach(e=>t(n,e,Ja)),r.length&&r.forEach(e=>{t(e,f,qa)})};dispose(){let{element:e,isShown:t}=this;this._toggleEventListeners(),I.clear(e,$),t&&T(e,U),super.dispose()}},Xa=new Map;[At,Lt,gn,jn,ur,ii,Ti,ta,ma,ka,Ya,Xi].forEach(e=>Xa.set(e.prototype.name,e));var Za=(e,t)=>{[...t].forEach(t=>e(t))},Qa=(e,t)=>{let n=ye.getAllFor(e);n&&[...n].forEach(([e,n])=>{t.contains(e)&&n.dispose()})},$a=e=>{let t=[...ft(`*`,e&&e.nodeName?e:document)];Xa.forEach(e=>{let{init:n,selector:r}=e;Za(n,t.filter(e=>et(e,r)))})};return document.body?$a():V(document,`DOMContentLoaded`,()=>$a(),{once:!0}),e.Alert=At,e.Button=Lt,e.Carousel=gn,e.Collapse=jn,e.Dropdown=ur,e.Modal=ii,e.Offcanvas=Ti,e.Popover=ta,e.ScrollSpy=ma,e.Tab=ka,e.Toast=Ya,e.Tooltip=Xi,e.initCallback=$a,e.removeDataAPI=e=>{let t=e&&e.nodeName?e:document;Xa.forEach(e=>{Qa(e.prototype.name,t)})},e})({}); +//# sourceMappingURL=bootstrap-native.js.map \ No newline at end of file diff --git a/docs/assets/js/bootstrap-native.js.map b/docs/assets/js/bootstrap-native.js.map index 6a7a1e0f..ddaefee5 100755 --- a/docs/assets/js/bootstrap-native.js.map +++ b/docs/assets/js/bootstrap-native.js.map @@ -1 +1 @@ -{"version":3,"file":"bootstrap-native.js","sources":["../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../node_modules/.pnpm/@thednp+event-listener@2.0.10/node_modules/@thednp/event-listener/dist/event-listener.mjs","../src/strings/fadeClass.ts","../src/strings/showClass.ts","../src/strings/dataBsDismiss.ts","../src/strings/alertString.ts","../src/strings/alertComponent.ts","../src/util/isDisabled.ts","../src/version.ts","../src/components/base-component.ts","../src/components/alert.ts","../src/strings/activeClass.ts","../src/strings/dataBsToggle.ts","../src/strings/buttonString.ts","../src/strings/buttonComponent.ts","../src/components/button.ts","../src/strings/dataBsTarget.ts","../src/strings/carouselString.ts","../src/strings/carouselComponent.ts","../src/strings/dataBsParent.ts","../src/strings/dataBsContainer.ts","../src/util/getTargetElement.ts","../src/components/carousel.ts","../src/strings/collapsingClass.ts","../src/strings/collapseString.ts","../src/strings/collapseComponent.ts","../src/components/collapse.ts","../node_modules/.pnpm/@thednp+position-observer@1.1.0/node_modules/@thednp/position-observer/dist/index.mjs","../src/strings/dropdownClasses.ts","../src/strings/dropdownComponent.ts","../src/strings/dropdownMenuClass.ts","../src/util/isEmptyAnchor.ts","../src/components/dropdown.ts","../src/strings/modalString.ts","../src/strings/modalComponent.ts","../src/strings/offcanvasComponent.ts","../src/strings/fixedTopClass.ts","../src/strings/fixedBottomClass.ts","../src/strings/stickyTopClass.ts","../src/strings/positionStickyClass.ts","../src/util/scrollbar.ts","../src/strings/offcanvasString.ts","../src/util/popupContainer.ts","../src/util/backdrop.ts","../src/util/isVisible.ts","../src/components/modal.ts","../src/components/offcanvas.ts","../src/strings/popoverString.ts","../src/strings/popoverComponent.ts","../src/strings/tooltipString.ts","../src/util/getTipTemplate.ts","../src/util/tipClassPositions.ts","../src/util/styleTip.ts","../src/util/tooltipDefaults.ts","../src/strings/dataOriginalTitle.ts","../src/strings/tooltipComponent.ts","../src/util/setHtml.ts","../src/util/createTip.ts","../src/util/getElementContainer.ts","../src/components/tooltip.ts","../src/components/popover.ts","../src/strings/scrollspyString.ts","../src/strings/scrollspyComponent.ts","../src/components/scrollspy.ts","../src/strings/tabString.ts","../src/strings/tabComponent.ts","../src/components/tab.ts","../src/strings/toastString.ts","../src/strings/toastComponent.ts","../src/components/toast.ts","../src/util/init.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","const g = \"2.0.10\", e = {}, f = (t) => {\n const { type: n, currentTarget: c } = t;\n e[n].forEach((a, s) => {\n c === s && a.forEach((o, i) => {\n i.apply(s, [t]), typeof o == \"object\" && o.once && r(s, n, i, o);\n });\n });\n}, E = (t, n, c, a) => {\n e[n] || (e[n] = /* @__PURE__ */ new Map());\n const s = e[n];\n s.has(t) || s.set(t, /* @__PURE__ */ new Map());\n const o = s.get(\n t\n ), { size: i } = o;\n o.set(c, a), i || t.addEventListener(\n n,\n f,\n a\n );\n}, r = (t, n, c, a) => {\n const s = e[n], o = s && s.get(t), i = o && o.get(c), d = i !== void 0 ? i : a;\n o && o.has(c) && o.delete(c), s && (!o || !o.size) && s.delete(t), (!s || !s.size) && delete e[n], (!o || !o.size) && t.removeEventListener(\n n,\n f,\n d\n );\n}, M = E, p = r;\nexport {\n E as addListener,\n f as globalListener,\n p as off,\n M as on,\n e as registry,\n r as removeListener,\n g as version\n};\n//# sourceMappingURL=event-listener.mjs.map\n","/**\n * Global namespace for most components `fade` class.\n */\nconst fadeClass = \"fade\";\nexport default fadeClass;\n","/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n","/**\n * Global namespace for most components `dismiss` option.\n */\nconst dataBsDismiss = \"data-bs-dismiss\";\nexport default dataBsDismiss;\n","/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","import { getAttribute, hasClass } from \"@thednp/shorty\";\n\n/**\n * Check if interactive element is disabled.\n * @param target either a `
',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n","/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst tabString = \"tab\";\nexport default tabString;\n","/** @type {string} */\nconst tabComponent = \"Tab\";\nexport default tabComponent;\n","/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n","import { Data, getElementsByTagName, matches } from \"@thednp/shorty\";\n\nimport { addListener } from \"@thednp/event-listener\";\n\nimport Alert from \"../components/alert\";\nimport Button from \"../components/button\";\nimport Carousel from \"../components/carousel\";\nimport Collapse from \"../components/collapse\";\nimport Dropdown from \"../components/dropdown\";\nimport Modal from \"../components/modal\";\nimport Offcanvas from \"../components/offcanvas\";\nimport Popover from \"../components/popover\";\nimport ScrollSpy from \"../components/scrollspy\";\nimport Tab from \"../components/tab\";\nimport Toast from \"../components/toast\";\nimport Tooltip from \"../components/tooltip\";\n\nconst componentsList = new Map<\n string,\n | typeof Alert\n | typeof Button\n | typeof Carousel\n | typeof Collapse\n | typeof Dropdown\n | typeof Modal\n | typeof Offcanvas\n | typeof Popover\n | typeof ScrollSpy\n | typeof Tab\n | typeof Toast\n | typeof Tooltip\n>();\n\ntype Component =\n | Alert\n | Button\n | Carousel\n | Collapse\n | Dropdown\n | Modal\n | Offcanvas\n | Popover\n | ScrollSpy\n | Tab\n | Toast\n | Tooltip;\n\n[\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n].forEach((c) => componentsList.set(c.prototype.name, c));\n\n/**\n * Initialize all matched `Element`s for one component.\n *\n * @param callback\n * @param collection\n */\nconst initComponentDataAPI = (\n callback: (el: Element) => Component,\n collection: HTMLCollectionOf | Element[],\n) => {\n [...collection].forEach((x) => callback(x));\n};\n\n/**\n * Remove one component from a target container element or all in the page.\n *\n * @param component the component name\n * @param context parent `Node`\n */\nconst removeComponentDataAPI = (component: string, context: ParentNode) => {\n const compData = Data.getAllFor(component) as Map;\n\n if (compData) {\n [...compData].forEach(([element, instance]) => {\n if (context.contains(element)) {\n (instance as T & { dispose: () => void }).dispose();\n }\n });\n }\n};\n\n/**\n * Initialize all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const initCallback = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n const elemCollection = [...getElementsByTagName(\"*\", lookUp)];\n\n componentsList.forEach((cs) => {\n const { init, selector } = cs;\n initComponentDataAPI(\n init,\n elemCollection.filter((item) => matches(item, selector)),\n );\n });\n};\n\n/**\n * Remove all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const removeDataAPI = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n\n componentsList.forEach((comp) => {\n removeComponentDataAPI(comp.prototype.name, lookUp);\n });\n};\n\n// Bulk initialize all components\nif (document.body) initCallback();\nelse {\n addListener(document, \"DOMContentLoaded\", () => initCallback(), {\n once: true,\n });\n}\n"],"names":["Le","Oe","X","Pe","Fe","Be","ct","at","it","ft","gt","vt","Et","yt","wt","At","Ot","zt","It","Qt","je","Zt","on","sn","rn","cn","gn","Jt","Xt","M","R","xn","t","e","zn","ee","Q","n","o","j","K","oe","Qn","Kn","Gn","Zn","_n","v","u","i","E","L","to","P","N","q","G","d","T","se","Z","f","s","ie","ue","so","r","a","l","ao","F","S","uo","p","c","g","A","fo","mo","vo","bo","Eo","O","le","m","ho","yo","de","z","_","I","fe","pe","Ao","b","y","So","w","No","me","k","ve","be","Ee","we","Co","V","H","h","Ae","Se","Do","xo","Vo","Ho","Ne","Wo","Te","Qo","jo","fadeClass","showClass","dataBsDismiss","alertString","alertComponent","isDisabled","target","hasClass","getAttribute","Version","BaseComponent","config","element","isElement","isString","querySelector","prevInstance","Data","ObjectKeys","normalizeOptions","prop","alertSelector","alertDismissSelector","getAlertInstance","getInstance","alertInitCallback","Alert","closeAlertEvent","createCustomEvent","closedAlertEvent","alertTransitionEnd","self","dispatchEvent","dismiss","removeClass","emulateTransitionEnd","add","action","addListener","removeListener","close","mouseclickEvent","activeClass","dataBsToggle","buttonString","buttonComponent","buttonSelector","getButtonInstance","buttonInitCallback","Button","setAttribute","ariaPressed","isActive","addClass","dataBsTarget","carouselString","carouselComponent","dataBsParent","dataBsContainer","getTargetElement","targetAttr","doc","getDocument","att","attValue","closest","x","carouselSelector","carouselItem","dataBsSlideTo","dataBsSlide","pausedClass","touchEvent","isMobile","touchstartEvent","pointerdownEvent","carouselDefaults","getCarouselInstance","carouselInitCallback","Carousel","startX","currentX","endX","carouselSlideEvent","carouselSlidEvent","carouselTransitionEndHandler","index","direction","slides","options","activeItem","getActiveIndex","orientation","directionClass","Timer","carouselPauseHandler","carouselResumeHandler","carouselIndicatorHandler","newIndex","carouselControlsHandler","carouselKeyHandler","code","querySelectorAll","isElementInScrollRange","RTL","isRTL","keyArrowRight","keyArrowLeft","carouselDragHandler","carouselPointerDownHandler","controls","indicator","el","toggleCarouselTouchHandlers","carouselPointerMoveHandler","carouselPointerUpHandler","activateCarouselIndicator","indicators","pointermoveEvent","passiveHandler","pointerupEvent","getElementsByClassName","activeIndex","transitionItem","matches","ar","isPaused","idx","next","eventProperties","ObjectAssign","getElementTransitionDuration","reflow","touch","pause","interval","keyboard","mouseenterEvent","mouseleaveEvent","dragstartEvent","arrow","keydownEvent","isAnimating","clone","collapsingClass","collapseString","collapseComponent","collapseSelector","collapseToggleSelector","collapseDefaults","getCollapseInstance","collapseInitCallback","Collapse","showCollapseEvent","shownCollapseEvent","hideCollapseEvent","hiddenCollapseEvent","expandCollapse","parent","triggers","noop","setElementStyle","btn","ariaExpanded","collapseContent","collapseClickHandler","trigger","isHTMLElement","activeCollapse","activeCollapseInstance","version","callbackModes","errorString","PositionObserver","callback","isFunction","root","ioEntry","clientWidth","clientHeight","queue","resolve","updates","oldBoundingBox","oldIsIntersecting","left","top","ob","dropdownMenuClasses","dropdownComponent","dropdownMenuClass","isEmptyAnchor","parentAnchor","hasAttribute","dropdownString","dropupString","dropstartString","dropendString","dropdownClasses","dropdownSelector","getDropdownInstance","dropdownInitCallback","Dropdown","dropdownMenuEndClass","verticalClass","horizontalClass","menuFocusTags","dropdownDefaults","showDropdownEvent","shownDropdownEvent","hideDropdownEvent","hiddenDropdownEvent","updatedDropdownEvent","styleDropdown","menu","parentElement","offset","getElementStyle","menuEnd","style","positionClass","dropdownMargin","dropdownPosition","menuWidth","menuHeight","getDocumentElement","targetLeft","targetTop","targetWidth","targetHeight","getBoundingClientRect","leftFullExceed","rightFullExceed","bottomExceed","bottomFullExceed","topExceed","leftExceed","rightExceed","posAjust","margins","getMenuItems","firstElementChild","toggleDropdownDismiss","dropdownDismissHandler","focusEvent","dropdownPreventScroll","keyupEvent","dropdownKeyHandler","getCurrentOpenDropdown","currentParent","type","isForm","mousedownEvent","dropdownClickHandler","keyArrowDown","keyArrowUp","activeElement","open","menuItems","focus","keyEscape","currentElement","currentInstance","modalString","modalComponent","offcanvasComponent","fixedTopClass","fixedBottomClass","stickyTopClass","positionStickyClass","getFixedItems","resetScrollbar","bd","getDocumentBody","fixedItems","fixed","measureScrollbar","innerWidth","getWindow","setScrollbar","overflow","bodyPad","sbWidth","itemPadValue","itemMValue","offcanvasString","popupContainer","createElement","appendPopup","customContainer","containerIsBody","isNode","lookup","BODY","removePopup","hasPopup","backdropString","modalBackdropClass","offcanvasBackdropClass","modalActiveSelector","offcanvasActiveSelector","overlay","getCurrentOpen","toggleOverlayType","isModal","targetClass","appendOverlay","hasFade","showOverlay","hideOverlay","removeOverlay","isVisible","modalSelector","modalToggleSelector","modalDismissSelector","modalStaticClass","modalDefaults","getModalInstance","modalInitCallback","Modal","showModalEvent","shownModalEvent","hideModalEvent","hiddenModalEvent","setModalScrollbar","scrollbarWidth","scrollHeight","modalHeight","modalScrollHeight","modalOverflow","padStyle","toggleModalDismiss","modalDismissHandler","modalKeyHandler","afterModalHide","relatedTarget","focusElement","toggleFocusTrap","afterModalShow","beforeModalShow","removeAttribute","ariaHidden","ariaModal","beforeModalHide","modalClickHandler","currentTarget","isStatic","modalDialog","backdrop","selectedText","targetInsideDialog","staticTransitionEnd","duration","overlayDelay","currentOpen","that","offcanvasSelector","offcanvasToggleSelector","offcanvasDismissSelector","offcanvasTogglingClass","offcanvasDefaults","getOffcanvasInstance","offcanvasInitCallback","Offcanvas","showOffcanvasEvent","shownOffcanvasEvent","hideOffcanvasEvent","hiddenOffcanvasEvent","setOffCanvasScrollbar","toggleOffCanvasDismiss","offcanvasKeyDismissHandler","offcanvasDismissHandler","beforeOffcanvasShow","showOffcanvasComplete","beforeOffcanvasHide","hideOffcanvasComplete","offcanvasTriggerHandler","offCanvasDismiss","selection","visibleTrigger","isOpen","popoverString","popoverComponent","tooltipString","getTipTemplate","tipType","isTooltip","bodyClass","header","body","tipClassPositions","styleTip","tipClasses","tooltip","container","offsetParent","scrollLeft","scrollTop","getNodeScroll","tipWidth","tipHeight","htmlcw","htmlch","htmlow","placement","parentCWidth","parentOWidth","fixedParent","leftBoundry","rightBoundry","observerEntry","elemWidth","elemHeight","elemRectLeft","elemRectRight","elemRectTop","elemOffsetLeft","elemOffsetTop","getRectRelativeToOffsetParent","topPosition","bottomPosition","leftPosition","rightPosition","arrowTop","arrowLeft","arrowRight","arrowWidth","arrowHeight","arrowAdjust","horizontals","verticals","updatedTooltipEvent","toLowerCase","tooltipDefaults","dataOriginalTitle","tooltipComponent","setHtml","content","sanitizeFn","dirty","tempDocument","isNodeList","isArray","createTip","id","title","template","animation","customClass","dismissible","btnClose","tipString","tipPositions","titleParts","contentParts","placementClass","tooltipTemplate","htmlMarkup","tooltipHeader","tooltipBody","tempTitle","tempContent","tempBtn","getElementContainer","majorBlockTags","containers","parentNode","getParentNode","isShadowRoot","isTableElement","tooltipSelector","titleAttr","getTooltipInstance","tooltipInitCallback","Tooltip","removeTooltip","ariaDescribedBy","hasTip","disposeTooltipComplete","toggleTooltipTitle","toggleTooltipAction","tooltipShownAction","shownTooltipEvent","tooltipHiddenAction","hiddenTooltipEvent","toggleTooltipOpenHandlers","parentModal","parentOffcanvas","titleAtt","tipComponent","elem","getUID","position","outTimer","showTooltipEvent","delay","hideTooltipEvent","enabled","tr","mousehoverEvent","focusinEvent","focusoutEvent","isApple","popoverSelector","popoverDefaults","getPopoverInstance","popoverInitCallback","Popover","scrollspyString","scrollspyComponent","scrollspySelector","scrollSpyAnchorSelector","scrollspyDefaults","getScrollSpyInstance","scrollspyInitCallback","ScrollSpy","activateScrollSpy","updateSpyTargets","_itemsLength","_observables","links","getElementsByTagName","link","hash","targetItem","clear","item","activate","parentItem","parentLink","getOffset","scrollTarget","spyTarget","_activeItem","entries","newActiveItem","firstOffset","offsetTop","nextTarget","nextOffsetTop","getElementById","_observer","_scrollTo","tabString","tabComponent","tabSelector","getTabInstance","tabInitCallback","Tab","showTabEvent","shownTabEvent","hideTabEvent","hiddenTabEvent","tabPrivate","triggerTabEnd","tabContent","nav","triggerTabShow","nextContent","tab","currentHeight","nextHeight","triggerTabHide","getActiveTab","activeTabs","getParentDropdown","dropdown","tabClickHandler","firstTab","firstTabContent","ariaSelected","activeDropdown","toggleTab","toastString","toastComponent","toastSelector","toastDismissSelector","toastToggleSelector","showingClass","hideClass","toastDefaults","getToastInstance","toastInitCallback","Toast","showToastEvent","shownToastEvent","hideToastEvent","hiddenToastEvent","showToastComplete","hideToastComplete","hideToast","showToast","toastClickHandler","interactiveToastHandler","isShown","hide","componentsList","initComponentDataAPI","collection","removeComponentDataAPI","component","context","compData","instance","initCallback","lookUp","elemCollection","cs","init","selector","removeDataAPI","comp"],"mappings":"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","x_google_ignoreList":[0,1,27]} \ No newline at end of file +{"version":3,"file":"bootstrap-native.js","names":["isFunction","isElement"],"sources":["../node_modules/.pnpm/@thednp+shorty@2.0.11/node_modules/@thednp/shorty/dist/shorty.mjs","../node_modules/.pnpm/@thednp+event-listener@2.0.12/node_modules/@thednp/event-listener/dist/index.mjs","../src/strings/fadeClass.ts","../src/strings/showClass.ts","../src/strings/dataBsDismiss.ts","../src/strings/alertString.ts","../src/strings/alertComponent.ts","../src/util/isDisabled.ts","../package.json","../src/version.ts","../src/components/base-component.ts","../src/components/alert.ts","../src/strings/activeClass.ts","../src/strings/dataBsToggle.ts","../src/strings/buttonString.ts","../src/strings/buttonComponent.ts","../src/components/button.ts","../src/strings/dataBsTarget.ts","../src/strings/carouselString.ts","../src/strings/carouselComponent.ts","../src/strings/dataBsParent.ts","../src/strings/dataBsContainer.ts","../src/util/getTargetElement.ts","../src/components/carousel.ts","../src/strings/collapsingClass.ts","../src/strings/collapseString.ts","../src/strings/collapseComponent.ts","../src/components/collapse.ts","../node_modules/.pnpm/@thednp+position-observer@1.1.0/node_modules/@thednp/position-observer/dist/index.mjs","../src/strings/dropdownClasses.ts","../src/strings/dropdownComponent.ts","../src/strings/dropdownMenuClass.ts","../src/util/isEmptyAnchor.ts","../src/components/dropdown.ts","../src/strings/modalString.ts","../src/strings/modalComponent.ts","../src/strings/offcanvasComponent.ts","../src/strings/fixedTopClass.ts","../src/strings/fixedBottomClass.ts","../src/strings/stickyTopClass.ts","../src/strings/positionStickyClass.ts","../src/util/scrollbar.ts","../src/strings/offcanvasString.ts","../src/util/popupContainer.ts","../src/util/backdrop.ts","../src/util/isVisible.ts","../src/components/modal.ts","../src/components/offcanvas.ts","../src/strings/popoverString.ts","../src/strings/popoverComponent.ts","../src/strings/tooltipString.ts","../src/util/getTipTemplate.ts","../src/util/tipClassPositions.ts","../src/util/styleTip.ts","../src/util/tooltipDefaults.ts","../src/strings/dataOriginalTitle.ts","../src/strings/tooltipComponent.ts","../src/util/setHtml.ts","../src/util/createTip.ts","../src/util/getElementContainer.ts","../src/components/tooltip.ts","../src/components/popover.ts","../src/strings/scrollspyString.ts","../src/strings/scrollspyComponent.ts","../src/components/scrollspy.ts","../src/components/tab.ts","../src/strings/toastString.ts","../src/strings/toastComponent.ts","../src/components/toast.ts","../src/util/init.ts"],"sourcesContent":["const Ce = \"2.0.11\", Me = \"aria-checked\", De = \"aria-description\", Le = \"aria-describedby\", Oe = \"aria-expanded\", xe = \"aria-haspopup\", X = \"aria-hidden\", ze = \"aria-label\", Ie = \"aria-labelledby\", Pe = \"aria-modal\", Fe = \"aria-pressed\", Be = \"aria-selected\", Ve = \"aria-valuemin\", He = \"aria-valuemax\", Ue = \"aria-valuenow\", We = \"aria-valuetext\", Y = \"abort\", tt = \"beforeunload\", et = \"blur\", nt = \"change\", ot = \"contextmenu\", U = \"DOMContentLoaded\", st = \"DOMMouseScroll\", rt = \"error\", ct = \"focus\", at = \"focusin\", it = \"focusout\", ut = \"gesturechange\", lt = \"gestureend\", dt = \"gesturestart\", ft = \"keydown\", pt = \"keypress\", gt = \"keyup\", mt = \"load\", vt = \"click\", bt = \"dblclick\", Et = \"mousedown\", ht = \"mouseup\", yt = \"hover\", wt = \"mouseenter\", At = \"mouseleave\", St = \"mousein\", kt = \"mouseout\", Nt = \"mouseover\", Tt = \"mousemove\", Ct = \"mousewheel\", Mt = \"move\", Dt = \"orientationchange\", Lt = \"pointercancel\", Ot = \"pointerdown\", xt = \"pointerleave\", zt = \"pointermove\", It = \"pointerup\", Pt = \"readystatechange\", Ft = \"reset\", Bt = \"resize\", Vt = \"select\", Ht = \"selectend\", Ut = \"selectstart\", Wt = \"scroll\", Rt = \"submit\", Qt = \"touchstart\", jt = \"touchmove\", Kt = \"touchcancel\", qt = \"touchend\", Gt = \"unload\", Re = {\n DOMContentLoaded: U,\n DOMMouseScroll: st,\n abort: Y,\n beforeunload: tt,\n blur: et,\n change: nt,\n click: vt,\n contextmenu: ot,\n dblclick: bt,\n error: rt,\n focus: ct,\n focusin: at,\n focusout: it,\n gesturechange: ut,\n gestureend: lt,\n gesturestart: dt,\n hover: yt,\n keydown: ft,\n keypress: pt,\n keyup: gt,\n load: mt,\n mousedown: Et,\n mousemove: Tt,\n mousein: St,\n mouseout: kt,\n mouseenter: wt,\n mouseleave: At,\n mouseover: Nt,\n mouseup: ht,\n mousewheel: Ct,\n move: Mt,\n orientationchange: Dt,\n pointercancel: Lt,\n pointerdown: Ot,\n pointerleave: xt,\n pointermove: zt,\n pointerup: It,\n readystatechange: Pt,\n reset: Ft,\n resize: Bt,\n scroll: Wt,\n select: Vt,\n selectend: Ht,\n selectstart: Ut,\n submit: Rt,\n touchcancel: Kt,\n touchend: qt,\n touchmove: jt,\n touchstart: Qt,\n unload: Gt\n}, Qe = \"drag\", je = \"dragstart\", Ke = \"dragenter\", qe = \"dragleave\", Ge = \"dragover\", Ze = \"dragend\", _e = \"loadstart\", $e = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\"\n}, Je = { down: \"mousedown\", up: \"mouseup\" }, Xe = \"onmouseleave\" in document ? [\"mouseenter\", \"mouseleave\"] : [\"mouseover\", \"mouseout\"], Ye = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\"\n}, tn = { in: \"focusin\", out: \"focusout\" }, Zt = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]', en = {\n Backspace: \"Backspace\",\n Tab: \"Tab\",\n Enter: \"Enter\",\n Shift: \"Shift\",\n Control: \"Control\",\n Alt: \"Alt\",\n Pause: \"Pause\",\n CapsLock: \"CapsLock\",\n Escape: \"Escape\",\n Scape: \"Space\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowRight: \"ArrowRight\",\n ArrowDown: \"ArrowDown\",\n Insert: \"Insert\",\n Delete: \"Delete\",\n Meta: \"Meta\",\n ContextMenu: \"ContextMenu\",\n ScrollLock: \"ScrollLock\"\n}, nn = \"Alt\", on = \"ArrowDown\", sn = \"ArrowUp\", rn = \"ArrowLeft\", cn = \"ArrowRight\", an = \"Backspace\", un = \"CapsLock\", ln = \"Control\", dn = \"Delete\", fn = \"Enter\", pn = \"NumpadEnter\", gn = \"Escape\", mn = \"Insert\", vn = \"Meta\", bn = \"Pause\", En = \"ScrollLock\", hn = \"Shift\", yn = \"Space\", wn = \"Tab\", _t = \"animationDuration\", $t = \"animationDelay\", W = \"animationName\", C = \"animationend\", Jt = \"transitionDuration\", Xt = \"transitionDelay\", M = \"transitionend\", R = \"transitionProperty\", An = \"addEventListener\", Sn = \"removeEventListener\", kn = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\"\n}, Nn = \"offsetHeight\", Tn = \"offsetWidth\", Cn = \"scrollHeight\", Mn = \"scrollWidth\", Dn = \"tabindex\", Ln = navigator.userAgentData, { userAgent: Yt } = navigator, On = Yt, xn = () => {\n const t = /iPhone|iPad|iPod|Android/i;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(navigator?.userAgent) || !1;\n}, zn = () => {\n const t = /(iPhone|iPod|iPad)/;\n return navigator?.userAgentData?.brands.some(\n (e) => t.test(e.brand)\n ) || t.test(\n navigator?.userAgent\n ) || !1;\n}, In = () => navigator?.userAgent?.includes(\"Firefox\") || !1, te = () => typeof CSS > \"u\" || !CSS.supports ? !1 : CSS.supports(\"-webkit-backdrop-filter\", \"none\"), Pn = () => [\"webkitPerspective\", \"perspective\"].some((t) => t in document.head.style), ee = () => {\n}, Q = (t, e, n, o) => {\n const s = o || !1;\n t.addEventListener(\n e,\n n,\n s\n );\n}, j = (t, e, n, o) => {\n const s = o || !1;\n t.removeEventListener(\n e,\n n,\n s\n );\n}, ne = (t, e, n, o) => {\n const s = (r) => {\n (r.target === t || r.currentTarget === t) && (n.apply(t, [r]), j(t, e, s, o));\n };\n Q(t, e, s, o);\n}, Fn = () => {\n let t = !1;\n try {\n const e = Object.defineProperty({}, \"passive\", {\n get: () => (t = !0, t)\n });\n ne(document, U, ee, e);\n } catch {\n }\n return t;\n}, Bn = () => [\"webkitTransform\", \"transform\"].some((t) => t in document.head.style), Vn = () => \"ontouchstart\" in window || \"msMaxTouchPoints\" in navigator, Hn = () => [\"webkitAnimation\", \"animation\"].some((t) => t in document.head.style), Un = () => [\"webkitTransition\", \"transition\"].some((t) => t in document.head.style), K = (t, e) => t.getAttribute(e), Wn = (t, e, n) => e.getAttributeNS(t, n), oe = (t, e) => t.hasAttribute(e), Rn = (t, e, n) => e.hasAttributeNS(t, n), Qn = (t, e, n) => t.setAttribute(e, n), jn = (t, e, n, o) => e.setAttributeNS(t, n, o), Kn = (t, e) => t.removeAttribute(e), qn = (t, e, n) => e.removeAttributeNS(t, n), Gn = (t, ...e) => {\n t.classList.add(...e);\n}, Zn = (t, ...e) => {\n t.classList.remove(...e);\n}, _n = (t, e) => t.classList.contains(e), { body: $n } = document, { documentElement: Jn } = document, { head: Xn } = document, Yn = (t) => Array.from(t), v = (t) => t != null && typeof t == \"object\" || !1, u = (t) => v(t) && typeof t.nodeType == \"number\" && [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some(\n (e) => t.nodeType === e\n) || !1, i = (t) => u(t) && t.nodeType === 1 || !1, E = /* @__PURE__ */ new Map(), L = {\n data: E,\n set: (t, e, n) => {\n if (!i(t)) return;\n E.has(e) || E.set(e, /* @__PURE__ */ new Map()), E.get(e).set(t, n);\n },\n getAllFor: (t) => E.get(t) || null,\n get: (t, e) => {\n if (!i(t) || !e) return null;\n const n = L.getAllFor(e);\n return t && n && n.get(t) || null;\n },\n remove: (t, e) => {\n const n = L.getAllFor(e);\n !n || !i(t) || (n.delete(t), n.size === 0 && E.delete(e));\n }\n}, to = (t, e) => L.get(t, e), eo = (t) => t?.charAt(0).toUpperCase() + t?.slice(1), P = (t) => t?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (e, n) => n === 0 ? e.toLowerCase() : e.toUpperCase()\n).replace(/\\s+/g, \"\"), N = (t) => typeof t == \"string\" || !1, q = (t) => v(t) && t.constructor.name === \"Window\" || !1, G = (t) => u(t) && t.nodeType === 9 || !1, d = (t) => G(t) ? t : u(t) ? t.ownerDocument : q(t) ? t.document : globalThis.document, T = (t, ...e) => Object.assign(t, ...e), se = (t) => {\n if (!t) return;\n if (N(t))\n return d().createElement(t);\n const { tagName: e } = t, n = se(e);\n if (!n) return;\n const o = { ...t };\n return delete o.tagName, T(n, o);\n}, re = (t, e) => {\n if (!t || !e) return;\n if (N(e))\n return d().createElementNS(t, e);\n const { tagName: n } = e, o = re(t, n);\n if (!o) return;\n const s = { ...e };\n return delete s.tagName, T(o, s);\n}, Z = (t, e) => t.dispatchEvent(e), no = (t, e, n) => n.indexOf(t) === e, f = (t, e, n) => {\n const o = getComputedStyle(t, n), s = e.replace(\"webkit\", \"Webkit\").replace(/([A-Z])/g, \"-$1\").toLowerCase();\n return o.getPropertyValue(s);\n}, ce = (t) => {\n const e = f(t, W), n = f(t, $t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ae = (t) => {\n const e = f(t, W), n = f(t, _t), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, oo = (t, e) => {\n let n = 0;\n const o = new Event(C), s = ae(t), r = ce(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(C, a), n = 1);\n };\n t.addEventListener(C, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ie = (t) => {\n const e = f(t, R), n = f(t, Xt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, ue = (t) => {\n const e = f(t, R), n = f(t, Jt), o = n.includes(\"ms\") ? 1 : 1e3, s = e && e !== \"none\" ? parseFloat(n) * o : 0;\n return Number.isNaN(s) ? 0 : s;\n}, so = (t, e) => {\n let n = 0;\n const o = new Event(M), s = ue(t), r = ie(t);\n if (s) {\n const a = (l) => {\n l.target === t && (e.apply(t, [l]), t.removeEventListener(M, a), n = 1);\n };\n t.addEventListener(M, a), setTimeout(() => {\n n || Z(t, o);\n }, s + r + 17);\n } else\n e.apply(t, [o]);\n}, ro = (t) => Float32Array.from(Array.from(t)), co = (t) => Float64Array.from(Array.from(t)), ao = (t, e) => t.focus(e), io = (t) => t?.trim().replace(/([a-z])([A-Z])/g, \"$1-$2\").replace(/\\s+/g, \"-\").toLowerCase(), F = (t) => [\"true\", !0].includes(t) ? !0 : [\"false\", !1].includes(t) ? !1 : [\"null\", \"\", null, void 0].includes(t) ? null : t !== \"\" && !Number.isNaN(+t) ? +t : t, S = (t) => Object.entries(t), uo = (t, e, n, o) => {\n if (!i(t)) return e;\n const s = { ...n }, r = { ...t.dataset }, a = { ...e }, l = {}, p = \"title\";\n return S(r).forEach(([c, g]) => {\n const A = o && typeof c == \"string\" && c.includes(o) ? P(c.replace(o, \"\")) : P(c);\n l[A] = F(g);\n }), S(s).forEach(([c, g]) => {\n s[c] = F(g);\n }), S(e).forEach(([c, g]) => {\n c in s ? a[c] = s[c] : c in l ? a[c] = l[c] : a[c] = c === p ? K(t, p) : g;\n }), a;\n}, lo = (t, e) => v(t) && (Object.hasOwn(t, e) || e in t), fo = (t) => Object.keys(t), po = (t) => Object.values(t), go = (t) => Object.fromEntries(t), mo = (t, e) => {\n const n = new CustomEvent(t, {\n cancelable: !0,\n bubbles: !0\n });\n return v(e) && T(n, e), n;\n}, vo = { passive: !0 }, bo = (t) => t.offsetHeight, Eo = (t, e) => {\n S(e).forEach(([n, o]) => {\n if (o && N(n) && n.includes(\"--\"))\n t.style.setProperty(n, o);\n else {\n const s = {};\n s[n] = o, T(t.style, s);\n }\n });\n}, O = (t) => v(t) && t.constructor.name === \"Map\" || !1, le = (t) => typeof t == \"number\" || !1, m = /* @__PURE__ */ new Map(), ho = {\n set: (t, e, n, o) => {\n i(t) && (o && o.length ? (m.has(t) || m.set(t, /* @__PURE__ */ new Map()), m.get(t).set(o, setTimeout(e, n))) : m.set(t, setTimeout(e, n)));\n },\n get: (t, e) => {\n if (!i(t)) return null;\n const n = m.get(t);\n return e && n && O(n) ? n.get(e) || null : le(n) ? n : null;\n },\n clear: (t, e) => {\n if (!i(t)) return;\n const n = m.get(t);\n e && e.length && O(n) ? (clearTimeout(n.get(e)), n.delete(e), n.size === 0 && m.delete(t)) : (clearTimeout(n), m.delete(t));\n }\n}, yo = (t) => t.toLowerCase(), wo = (t) => t.toUpperCase(), de = (t, e) => (u(e) ? e : d()).querySelectorAll(t), z = /* @__PURE__ */ new Map();\nfunction _(t) {\n const { shiftKey: e, code: n } = t, o = d(this), s = [\n ...de(Zt, this)\n ].filter(\n (l) => !oe(l, \"disabled\") && !K(l, X)\n );\n if (!s.length) return;\n const r = s[0], a = s[s.length - 1];\n n === \"Tab\" && (e && o.activeElement === r ? (a.focus(), t.preventDefault()) : !e && o.activeElement === a && (r.focus(), t.preventDefault()));\n}\nconst I = (t) => z.has(t) === !0, fe = (t) => {\n I(t) || (Q(t, \"keydown\", _), z.set(t, !0));\n}, pe = (t) => {\n I(t) && (j(t, \"keydown\", _), z.delete(t));\n}, Ao = (t) => {\n I(t) ? pe(t) : fe(t);\n}, b = (t) => i(t) && \"offsetWidth\" in t || !1, y = (t, e) => {\n const { width: n, height: o, top: s, right: r, bottom: a, left: l } = t.getBoundingClientRect();\n let p = 1, c = 1;\n if (e && b(t)) {\n const { offsetWidth: g, offsetHeight: A } = t;\n p = g > 0 ? Math.round(n) / g : 1, c = A > 0 ? Math.round(o) / A : 1;\n }\n return {\n width: n / p,\n height: o / c,\n top: s / c,\n right: r / p,\n bottom: a / c,\n left: l / p,\n x: l / p,\n y: s / c\n };\n}, So = (t) => d(t).body, w = (t) => d(t).documentElement, ko = (t) => d(t).head, ge = (t) => u(t) ? (t.nodeName || \"\").toLowerCase() : \"#document\", No = (t) => {\n const e = q(t), n = e ? t.scrollX : t.scrollLeft, o = e ? t.scrollY : t.scrollTop;\n return { x: n, y: o };\n}, me = (t) => u(t) && t.constructor.name === \"ShadowRoot\" || !1, k = (t) => t.nodeName === \"HTML\" ? t : i(t) && t.assignedSlot || u(t) && t.parentNode || me(t) && t.host || w(t), ve = (t) => t ? G(t) ? t.defaultView : u(t) ? t?.ownerDocument?.defaultView : t : window, be = (t) => u(t) && [\"TABLE\", \"TD\", \"TH\"].includes(t.nodeName) || !1, Ee = (t, e) => t.matches(e), D = (t) => f(t, \"position\") === \"static\", he = (t) => f(t, \"position\") === \"fixed\", $ = (t) => [\":popover-open\", \":modal\"].some((e) => {\n try {\n return Ee(t, e);\n } catch {\n return !1;\n }\n}), J = (t) => {\n const e = te(), n = i(t) ? getComputedStyle(t) : t;\n return n.transform !== \"none\" || n.perspective !== \"none\" || (n.containerType ? n.containerType !== \"normal\" : !1) || !e && (n.backdropFilter ? n.backdropFilter !== \"none\" : !1) || !e && (n.filter ? n.filter !== \"none\" : !1) || [\"transform\", \"perspective\", \"filter\"].some(\n (o) => (n.willChange || \"\").includes(o)\n ) || [\"paint\", \"layout\", \"strict\", \"content\"].some(\n (o) => (n.contain || \"\").includes(o)\n );\n}, ye = (t) => {\n let e = k(t);\n for (; i(e) && !x(e); ) {\n if (J(e))\n return e;\n if ($(e))\n return null;\n e = k(e);\n }\n return null;\n}, x = (t) => [\"html\", \"body\", \"#document\"].includes(ge(t)), B = (t) => {\n if (!b(t) || he(t))\n return null;\n let e = t.offsetParent;\n return w(t) === e && (e = e.ownerDocument.body), e;\n}, To = (t) => {\n const e = ve(t);\n if (!u(t) || $(t))\n return e;\n if (!b(t)) {\n let o = k(t);\n for (; o && !x(o); ) {\n if (i(o) && !D(o))\n return o;\n o = k(o);\n }\n return e;\n }\n let n = B(t);\n for (; n && be(n) && D(n); )\n n = B(n);\n return n && x(n) && D(n) && !J(n) ? e : n || ye(t) || e;\n}, we = (t) => {\n if (!b(t)) return !1;\n const { width: e, height: n } = y(t), { offsetWidth: o, offsetHeight: s } = t;\n return Math.round(e) !== o || Math.round(n) !== s;\n}, Co = (t, e, n) => {\n const o = b(e), s = y(\n t,\n o && we(e)\n ), r = { x: 0, y: 0 };\n if (o) {\n const a = y(e, !0);\n r.x = a.x + e.clientLeft, r.y = a.y + e.clientTop;\n }\n return {\n x: s.left + n.x - r.x,\n y: s.top + n.y - r.y,\n width: s.width,\n height: s.height\n };\n};\nlet V = 0, H = 0;\nconst h = /* @__PURE__ */ new Map(), Ae = (t, e) => {\n let n = e ? V : H;\n if (e) {\n const o = Ae(t), s = h.get(o) || /* @__PURE__ */ new Map();\n h.has(o) || h.set(o, s), O(s) && !s.has(e) ? (s.set(e, n), V += 1) : n = s.get(e);\n } else {\n const o = t.id || t;\n h.has(o) ? n = h.get(o) : (h.set(o, n), H += 1);\n }\n return n;\n}, Se = (t) => Array.isArray(t) || !1, Mo = (t) => u(t) && t.nodeName === \"CANVAS\" || !1, ke = (t) => b(t) && !!t.shadowRoot || !1, Do = (t) => {\n if (!u(t)) return !1;\n const { top: e, bottom: n } = y(t), { clientHeight: o } = w(t);\n return e <= o && n >= 0;\n}, Lo = (t) => {\n if (!i(t)) return !1;\n const { clientWidth: e, clientHeight: n } = w(t), { top: o, left: s, bottom: r, right: a } = y(t, !0);\n return o >= 0 && s >= 0 && r <= n && a <= e;\n}, Oo = (t) => Se(t) && t.every(i) || !1, xo = (t) => typeof t == \"function\" || !1, zo = (t) => v(t) && t.constructor.name === \"HTMLCollection\" || !1, Io = (t) => b(t) && t.tagName === \"IMG\" || !1, Po = (t) => {\n if (!N(t)) return !1;\n try {\n JSON.parse(t);\n } catch {\n return !1;\n }\n return !0;\n}, Fo = (t) => v(t) && t.constructor.name === \"WeakMap\" || !1, Bo = (t) => u(t) && [\"SVG\", \"Image\", \"Video\", \"Canvas\"].some(\n (e) => t.constructor.name.includes(e)\n) || !1, Vo = (t) => v(t) && t.constructor.name === \"NodeList\" || !1, Ho = (t) => w(t).dir === \"rtl\", Uo = (t) => u(t) && t.constructor.name.includes(\"SVG\") || !1, Ne = (t, e) => !t || !e ? null : t.closest(e) || Ne(t.getRootNode().host, e) || null, Wo = (t, e) => i(t) ? t : (i(e) ? e : d()).querySelector(t), Te = (t, e) => (u(e) ? e : d()).getElementsByTagName(\n t\n), Ro = (t) => [...Te(\"*\", t)].filter(ke), Qo = (t, e) => d(e).getElementById(t), jo = (t, e) => (e && u(e) ? e : d()).getElementsByClassName(\n t\n);\nexport {\n Yn as ArrayFrom,\n U as DOMContentLoadedEvent,\n st as DOMMouseScrollEvent,\n L as Data,\n ro as Float32ArrayFrom,\n co as Float64ArrayFrom,\n T as ObjectAssign,\n S as ObjectEntries,\n go as ObjectFromEntries,\n lo as ObjectHasOwn,\n fo as ObjectKeys,\n po as ObjectValues,\n ho as Timer,\n Y as abortEvent,\n Gn as addClass,\n An as addEventListener,\n fe as addFocusTrap,\n $t as animationDelay,\n _t as animationDuration,\n C as animationEndEvent,\n W as animationName,\n Me as ariaChecked,\n Le as ariaDescribedBy,\n De as ariaDescription,\n Oe as ariaExpanded,\n xe as ariaHasPopup,\n X as ariaHidden,\n ze as ariaLabel,\n Ie as ariaLabelledBy,\n Pe as ariaModal,\n Fe as ariaPressed,\n Be as ariaSelected,\n He as ariaValueMax,\n Ve as ariaValueMin,\n Ue as ariaValueNow,\n We as ariaValueText,\n tt as beforeunloadEvent,\n kn as bezierEasings,\n et as blurEvent,\n P as camelCase,\n eo as capitalize,\n nt as changeEvent,\n Ne as closest,\n ot as contextmenuEvent,\n mo as createCustomEvent,\n se as createElement,\n re as createElementNS,\n Z as dispatchEvent,\n no as distinct,\n $n as documentBody,\n Jn as documentElement,\n Xn as documentHead,\n Qe as dragEvent,\n Ze as dragendEvent,\n Ke as dragenterEvent,\n qe as dragleaveEvent,\n Ge as dragoverEvent,\n je as dragstartEvent,\n oo as emulateAnimationEnd,\n so as emulateTransitionEnd,\n rt as errorEvent,\n ao as focus,\n ct as focusEvent,\n tn as focusEvents,\n Zt as focusableSelector,\n at as focusinEvent,\n it as focusoutEvent,\n ut as gesturechangeEvent,\n lt as gestureendEvent,\n dt as gesturestartEvent,\n K as getAttribute,\n Wn as getAttributeNS,\n y as getBoundingClientRect,\n Ro as getCustomElements,\n d as getDocument,\n So as getDocumentBody,\n w as getDocumentElement,\n ko as getDocumentHead,\n ce as getElementAnimationDelay,\n ae as getElementAnimationDuration,\n Qo as getElementById,\n f as getElementStyle,\n ie as getElementTransitionDelay,\n ue as getElementTransitionDuration,\n jo as getElementsByClassName,\n Te as getElementsByTagName,\n to as getInstance,\n ge as getNodeName,\n No as getNodeScroll,\n To as getOffsetParent,\n k as getParentNode,\n Co as getRectRelativeToOffsetParent,\n Ae as getUID,\n ve as getWindow,\n _ as handleKeyboardNavigation,\n oe as hasAttribute,\n Rn as hasAttributeNS,\n _n as hasClass,\n I as hasFocusTrap,\n zn as isApple,\n Se as isArray,\n Mo as isCanvas,\n ke as isCustomElement,\n G as isDocument,\n i as isElement,\n Do as isElementInScrollRange,\n Lo as isElementInViewport,\n Oo as isElementsArray,\n In as isFirefox,\n xo as isFunction,\n zo as isHTMLCollection,\n b as isHTMLElement,\n Io as isHTMLImageElement,\n Po as isJSON,\n O as isMap,\n Bo as isMedia,\n xn as isMobile,\n u as isNode,\n Vo as isNodeList,\n le as isNumber,\n v as isObject,\n Ho as isRTL,\n Uo as isSVGElement,\n we as isScaledElement,\n me as isShadowRoot,\n N as isString,\n be as isTableElement,\n Fo as isWeakMap,\n te as isWebKit,\n q as isWindow,\n io as kebabCase,\n nn as keyAlt,\n on as keyArrowDown,\n rn as keyArrowLeft,\n cn as keyArrowRight,\n sn as keyArrowUp,\n an as keyBackspace,\n un as keyCapsLock,\n ln as keyControl,\n dn as keyDelete,\n fn as keyEnter,\n gn as keyEscape,\n mn as keyInsert,\n vn as keyMeta,\n pn as keyNumpadEnter,\n bn as keyPause,\n En as keyScrollLock,\n hn as keyShift,\n yn as keySpace,\n wn as keyTab,\n en as keyboardEventKeys,\n ft as keydownEvent,\n pt as keypressEvent,\n gt as keyupEvent,\n mt as loadEvent,\n _e as loadstartEvent,\n Ee as matches,\n Je as mouseClickEvents,\n Xe as mouseHoverEvents,\n $e as mouseSwipeEvents,\n vt as mouseclickEvent,\n bt as mousedblclickEvent,\n Et as mousedownEvent,\n wt as mouseenterEvent,\n yt as mousehoverEvent,\n St as mouseinEvent,\n At as mouseleaveEvent,\n Tt as mousemoveEvent,\n kt as mouseoutEvent,\n Nt as mouseoverEvent,\n ht as mouseupEvent,\n Ct as mousewheelEvent,\n Mt as moveEvent,\n Re as nativeEvents,\n ee as noop,\n uo as normalizeOptions,\n F as normalizeValue,\n j as off,\n Nn as offsetHeight,\n Tn as offsetWidth,\n Q as on,\n ne as one,\n Dt as orientationchangeEvent,\n vo as passiveHandler,\n Lt as pointercancelEvent,\n Ot as pointerdownEvent,\n xt as pointerleaveEvent,\n zt as pointermoveEvent,\n It as pointerupEvent,\n Wo as querySelector,\n de as querySelectorAll,\n Pt as readystatechangeEvent,\n bo as reflow,\n Kn as removeAttribute,\n qn as removeAttributeNS,\n Zn as removeClass,\n Sn as removeEventListener,\n pe as removeFocusTrap,\n Ft as resetEvent,\n Bt as resizeEvent,\n Wt as scrollEvent,\n Cn as scrollHeight,\n Mn as scrollWidth,\n Vt as selectEvent,\n Ht as selectendEvent,\n Ut as selectstartEvent,\n Qn as setAttribute,\n jn as setAttributeNS,\n Eo as setElementStyle,\n Rt as submitEvent,\n Pn as support3DTransform,\n Hn as supportAnimation,\n Fn as supportPassive,\n Vn as supportTouch,\n Bn as supportTransform,\n Un as supportTransition,\n Dn as tabindex,\n yo as toLowerCase,\n wo as toUpperCase,\n Ao as toggleFocusTrap,\n Ye as touchEvents,\n Kt as touchcancelEvent,\n qt as touchendEvent,\n jt as touchmoveEvent,\n Qt as touchstartEvent,\n Xt as transitionDelay,\n Jt as transitionDuration,\n M as transitionEndEvent,\n R as transitionProperty,\n Gt as unloadEvent,\n On as userAgent,\n Ln as userAgentData,\n Ce as version\n};\n//# sourceMappingURL=shorty.mjs.map\n","//#region package.json\nvar version = \"2.0.12\";\n\n//#endregion\n//#region src/index.ts\nconst registry = {};\nconst globalListener = (e) => {\n\tconst { type, currentTarget } = e;\n\tregistry[type].forEach((listenersMap, element) => {\n\t\tif (currentTarget === element) listenersMap.forEach((options, listener) => {\n\t\t\tlistener.apply(element, [e]);\n\t\t\tif (typeof options === \"object\" && options.once) removeListener(element, type, listener, options);\n\t\t});\n\t});\n};\nconst addListener = (element, eventType, listener, options) => {\n\tif (!registry[eventType]) registry[eventType] = /* @__PURE__ */ new Map();\n\tconst oneEventMap = registry[eventType];\n\tif (!oneEventMap.has(element)) oneEventMap.set(element, /* @__PURE__ */ new Map());\n\tconst oneElementMap = oneEventMap.get(element);\n\tconst { size } = oneElementMap;\n\toneElementMap.set(listener, options);\n\tif (!size) element.addEventListener(eventType, globalListener, options);\n};\nconst removeListener = (element, eventType, listener, options) => {\n\tconst oneEventMap = registry[eventType];\n\tconst oneElementMap = oneEventMap && oneEventMap.get(element);\n\tconst savedOptions = oneElementMap && oneElementMap.get(listener);\n\tconst eventOptions = savedOptions !== void 0 ? savedOptions : options;\n\tif (oneElementMap && oneElementMap.has(listener)) oneElementMap.delete(listener);\n\tif (oneEventMap && (!oneElementMap || !oneElementMap.size)) oneEventMap.delete(element);\n\tif (!oneEventMap || !oneEventMap.size) delete registry[eventType];\n\tif (!oneElementMap || !oneElementMap.size) element.removeEventListener(eventType, globalListener, eventOptions);\n};\nconst on = addListener;\nconst off = removeListener;\n\n//#endregion\nexport { addListener, globalListener, off, on, registry, removeListener, version };\n//# sourceMappingURL=index.mjs.map","/**\n * Global namespace for most components `fade` class.\n */\nconst fadeClass = \"fade\";\nexport default fadeClass;\n","/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n","/**\n * Global namespace for most components `dismiss` option.\n */\nconst dataBsDismiss = \"data-bs-dismiss\";\nexport default dataBsDismiss;\n","/** @type {string} */\nconst alertString = \"alert\";\nexport default alertString;\n","/** @type {string} */\nconst alertComponent = \"Alert\";\nexport default alertComponent;\n","import { getAttribute, hasClass } from \"@thednp/shorty\";\n\n/**\n * Check if interactive element is disabled.\n * @param target either a `',\n});\n\n/**\n * Static method which returns an existing `Popover` instance associated\n * to a target `Element`.\n */\nconst getPopoverInstance = (element: Element) =>\n getInstance(element, popoverComponent);\n\n/**\n * A `Popover` initialization callback.\n */\nconst popoverInitCallback = (element: Element) => new Popover(element);\n\n// POPOVER DEFINITION\n// ==================\n/** Returns a new `Popover` instance. */\nexport default class Popover extends Tooltip {\n static selector = popoverSelector;\n static init = popoverInitCallback;\n static getInstance = getPopoverInstance;\n static styleTip = styleTip;\n declare options: PopoverOptions;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return popoverComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return popoverDefaults;\n }\n\n /* extend original `show()` */\n show = () => {\n super.show();\n // btn only exists within dismissible popover\n const { options, btn } = this;\n // istanbul ignore else @preserve\n if (options.dismissible && btn) setTimeout(() => focus(btn), 17);\n };\n}\n","/** @type {string} */\nconst scrollspyString = \"scrollspy\";\nexport default scrollspyString;\n","/** @type {string} */\nconst scrollspyComponent = \"ScrollSpy\";\nexport default scrollspyComponent;\n","/* Native JavaScript for Bootstrap 5 | ScrollSpy\n------------------------------------------------ */\nimport {\n addClass,\n closest,\n createCustomEvent,\n dispatchEvent,\n getAttribute,\n getBoundingClientRect,\n getDocument,\n getDocumentElement,\n getElementById,\n getElementsByTagName,\n getInstance,\n hasClass,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n removeClass,\n} from \"@thednp/shorty\";\n\nimport PositionObserver from \"@thednp/position-observer\";\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport activeClass from \"~/strings/activeClass\";\nimport scrollspyString from \"~/strings/scrollspyString\";\nimport scrollspyComponent from \"~/strings/scrollspyComponent\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ScrollSpyEvent, ScrollSpyOptions } from \"~/interface/scrollspy\";\n\n// SCROLLSPY PRIVATE GC\n// ====================\nconst scrollspySelector = '[data-bs-spy=\"scroll\"]';\nconst scrollSpyAnchorSelector = \"[href]\";\n\nconst scrollspyDefaults: Partial = {\n offset: 10,\n target: undefined,\n};\n\ntype ScrollSpyEventProps = {\n relatedTarget: HTMLElement;\n};\n\n/**\n * Static method which returns an existing `ScrollSpy` instance associated\n * to a target `Element`.\n */\nconst getScrollSpyInstance = (element: Element) =>\n getInstance(element, scrollspyComponent);\n\n/**\n * A `ScrollSpy` initialization callback.\n */\nconst scrollspyInitCallback = (element: Element) => new ScrollSpy(element);\n\n// SCROLLSPY CUSTOM EVENT\n// ======================\nconst activateScrollSpy = createCustomEvent<\n ScrollSpyEventProps,\n ScrollSpyEvent\n>(`activate.bs.${scrollspyString}`);\n\n// SCROLLSPY PRIVATE METHODS\n// =========================\n/**\n * Update the state of all items.\n *\n * @param self the `ScrollSpy` instance\n */\nconst updateSpyTargets = (self: ScrollSpy) => {\n const {\n target,\n _itemsLength,\n _observables,\n } = self;\n\n const links = getElementsByTagName(\"A\", target);\n const doc = getDocument(target);\n\n // only update items once or with each mutation\n // istanbul ignore else @preserve\n if (!links.length || _itemsLength === _observables.size) return;\n // reset arrays & update\n _observables.clear();\n\n Array.from(links).forEach((link) => {\n const hash = getAttribute(link, \"href\")?.slice(1);\n const targetItem = hash?.length ? doc.getElementById(hash) : null;\n\n if (targetItem && !isDisabled(link)) {\n self._observables.set(targetItem, link);\n }\n });\n self._itemsLength = self._observables.size;\n};\n\n/**\n * Clear all items of the target.\n *\n * @param target a single item\n */\nconst clear = (target: Element) => {\n Array.from(getElementsByTagName(\"A\", target)).forEach(\n (item) => {\n if (hasClass(item, activeClass)) removeClass(item, activeClass);\n },\n );\n};\n\n/**\n * Activates a new item.\n *\n * @param self the `ScrollSpy` instance\n * @param item a single item\n */\nconst activate = (self: ScrollSpy, item: HTMLElement) => {\n const { target, element } = self;\n\n // istanbul ignore else @preserve\n clear(target);\n\n self._activeItem = item;\n addClass(item, activeClass);\n\n // activate all parents\n let parentItem = item;\n while (parentItem !== target) {\n parentItem = parentItem.parentElement as HTMLElement;\n if (\n [\"nav\", \"dropdown-menu\", \"list-group\"].some((c) =>\n hasClass(parentItem, c)\n )\n ) {\n const parentLink = parentItem.previousElementSibling as\n | HTMLElement\n | null;\n\n // istanbul ignore else @preserve\n if (parentLink && !hasClass(parentLink, activeClass)) {\n addClass(parentLink, activeClass);\n }\n }\n }\n\n // dispatch\n activateScrollSpy.relatedTarget = item;\n dispatchEvent(element, activateScrollSpy);\n};\n\nconst getOffset = (self: ScrollSpy, target: HTMLElement) => {\n const { scrollTarget, element, options } = self;\n\n return (scrollTarget !== element\n ? getBoundingClientRect(target).top + scrollTarget.scrollTop\n : target.offsetTop) - (options.offset as number || 10);\n};\n\n// SCROLLSPY DEFINITION\n// ====================\n/** Returns a new `ScrollSpy` instance. */\nexport default class ScrollSpy extends BaseComponent {\n static selector = scrollspySelector;\n static init = scrollspyInitCallback;\n static getInstance = getScrollSpyInstance;\n declare element: HTMLElement;\n declare options: ScrollSpyOptions;\n declare target: HTMLElement;\n declare scrollTarget: HTMLElement;\n declare _itemsLength: number;\n declare _activeItem: HTMLElement | null;\n declare _observables: Map;\n declare _observer: PositionObserver; //| IntersectionObserver;\n\n /**\n * @param target the target element\n * @param config the instance options\n */\n constructor(\n target: Element | string,\n config?: Partial,\n ) {\n super(target, config);\n\n // initialization element & options\n const { element, options } = this;\n\n // get target\n const spyTarget = querySelector(\n options.target,\n getDocument(element),\n );\n\n // invalidate\n if (!spyTarget) return;\n this.target = spyTarget;\n\n // set initial state\n this.scrollTarget = element.clientHeight < element.scrollHeight\n ? element\n : getDocumentElement(element);\n this._observables = new Map();\n\n // run an initial burst, we need to know the targets\n this.refresh();\n // updateSpyTargets(this);\n\n // create observer\n this._observer = new PositionObserver(() => {\n requestAnimationFrame(() => this.refresh());\n }, {\n root: this.scrollTarget,\n });\n\n // add event handlers\n this._toggleEventListeners(true);\n }\n\n /* eslint-disable */\n /**\n * Returns component name string.\n */\n get name() {\n return scrollspyComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return scrollspyDefaults;\n }\n /* eslint-enable */\n\n // SCROLLSPY PUBLIC METHODS\n // ========================\n /** Updates all items. */\n refresh = () => {\n const { target, scrollTarget } = this;\n // check if target is visible and invalidate\n // istanbul ignore if @preserve\n if (!target || target.offsetHeight === 0) return;\n\n updateSpyTargets(this);\n const { _itemsLength, _observables, _activeItem } = this;\n\n // istanbul ignore if @preserve\n if (!_itemsLength) return;\n const entries = _observables.entries().toArray();\n\n const { scrollTop, scrollHeight, clientHeight } = scrollTarget;\n\n if (scrollTop >= scrollHeight - clientHeight) {\n const newActiveItem = entries[_itemsLength - 1]?.[1];\n\n // istanbul ignore else @preserve\n if (_activeItem !== newActiveItem) activate(this, newActiveItem);\n return;\n }\n\n const firstOffset = entries[0]?.[0]\n ? getOffset(this, entries[0][0])\n : /* istanbul ignore next */ null;\n if (\n firstOffset !== null && scrollTop < firstOffset &&\n firstOffset > 0\n ) {\n this._activeItem = null;\n clear(target);\n return;\n }\n\n for (let i = 0; i < _itemsLength; i += 1) {\n const [targetItem, item] = entries[i];\n const offsetTop = getOffset(this, targetItem);\n const nextTarget = entries[i + 1]?.[0];\n const nextOffsetTop = nextTarget\n ? getOffset(this, nextTarget)\n : /* istanbul ignore next */ null;\n\n // istanbul ignore else @preserve\n if (\n _activeItem !== item &&\n scrollTop >= offsetTop &&\n (nextOffsetTop === null || scrollTop < nextOffsetTop)\n ) {\n activate(this, item);\n break;\n }\n }\n };\n\n /**\n * This method provides an event handle\n * for scrollspy\n * @param e the event listener object\n */\n _scrollTo = (e: MouseEvent) => {\n const item = closest(e.target, scrollSpyAnchorSelector);\n const hash = item && getAttribute(item, \"href\")?.slice(1);\n const targetItem = hash && getElementById(hash, this.target);\n\n // istanbul ignore else @preserve\n if (targetItem) {\n this.scrollTarget.scrollTo({\n top: targetItem.offsetTop,\n behavior: \"smooth\",\n });\n e.preventDefault();\n }\n };\n\n /**\n * Toggles on/off the component observer.\n *\n * @param self the ScrollSpy instance\n * @param add when `true`, listener is added\n */\n _toggleEventListeners = (\n add?: boolean,\n ) => {\n const { target, _observables, _observer, _scrollTo } = this;\n const action = add ? addListener : removeListener;\n action(target, mouseclickEvent, _scrollTo);\n\n if (add) {\n _observables?.forEach((_, targetItem) => _observer.observe(targetItem));\n } else _observer.disconnect();\n };\n\n /** Removes `ScrollSpy` from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/* Native JavaScript for Bootstrap 5 | Tab\n------------------------------------------ */\nimport {\n addClass,\n ariaSelected,\n closest,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n getElementsByClassName,\n getInstance,\n hasClass,\n isHTMLElement,\n mouseclickEvent,\n MouseEvent,\n querySelector,\n reflow,\n removeClass,\n setAttribute,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport collapsingClass from \"~/strings/collapsingClass\";\nimport activeClass from \"~/strings/activeClass\";\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dropdownClasses from \"~/strings/dropdownClasses\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport tabString from \"~/strings/tabString\";\nimport tabComponent from \"~/strings/tabComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport BaseComponent from \"./base-component\";\nimport type { /* TabOptions, */ TabEvent } from \"~/interface/tab\";\n\n// TAB PRIVATE GC\n// ================\nconst tabSelector = `[${dataBsToggle}=\"${tabString}\"]`;\n\n/**\n * Static method which returns an existing `Tab` instance associated\n * to a target `Element`.\n */\nconst getTabInstance = (element: Element) =>\n getInstance(element, tabComponent);\n\n/** A `Tab` initialization callback. */\nconst tabInitCallback = (element: Element) => new Tab(element);\n\ntype TabEventProps = {\n relatedTarget: Element & EventTarget | undefined;\n};\n\n// TAB CUSTOM EVENTS\n// =================\nconst showTabEvent = createCustomEvent(\n `show.bs.${tabString}`,\n);\nconst shownTabEvent = createCustomEvent(\n `shown.bs.${tabString}`,\n);\nconst hideTabEvent = createCustomEvent(\n `hide.bs.${tabString}`,\n);\nconst hiddenTabEvent = createCustomEvent(\n `hidden.bs.${tabString}`,\n);\n\ninterface TabPrivate {\n tab: HTMLElement | null;\n content: HTMLElement | null;\n currentHeight: number;\n nextHeight: number;\n}\n\n/**\n * Stores the current active tab and its content\n * for a given `.nav` element.\n */\nconst tabPrivate: Map = new Map();\n\n// TAB PRIVATE METHODS\n// ===================\n/**\n * Executes after tab transition has finished.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabEnd = (self: Tab) => {\n const { tabContent, nav } = self;\n\n // istanbul ignore else @preserve\n if (tabContent && hasClass(tabContent, collapsingClass)) {\n tabContent.style.height = \"\";\n removeClass(tabContent, collapsingClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) Timer.clear(nav);\n};\n\n/**\n * Executes before showing the tab content.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabShow = (self: Tab) => {\n const { element, tabContent, content: nextContent, nav } = self;\n const { tab } = (isHTMLElement(nav) && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null };\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const { currentHeight, nextHeight } = tabPrivate.get(element) ||\n // istanbul ignore next @preserve\n { currentHeight: 0, nextHeight: 0 };\n // istanbul ignore else @preserve: vitest won't validate this branch\n if (currentHeight !== nextHeight) {\n // enables height animation\n setTimeout(() => {\n tabContent.style.height = `${nextHeight}px`;\n reflow(tabContent);\n emulateTransitionEnd(tabContent, () => triggerTabEnd(self));\n }, 50);\n } else {\n triggerTabEnd(self);\n }\n } else if (nav) Timer.clear(nav);\n\n shownTabEvent.relatedTarget = tab as HTMLElement | undefined;\n\n dispatchEvent(element, shownTabEvent);\n};\n\n/**\n * Executes before hiding the tab.\n *\n * @param self the `Tab` instance\n */\nconst triggerTabHide = (self: Tab) => {\n const { element, content: nextContent, tabContent, nav } = self;\n const { tab, content } = (nav && tabPrivate.get(nav)) ||\n // istanbul ignore next @preserve\n { tab: null, content: null };\n let currentHeight = 0;\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) addClass(c, \"overflow-hidden\");\n });\n currentHeight = content\n ? content.scrollHeight\n : /* istanbul ignore next @preserve */ 0;\n }\n\n // update relatedTarget and dispatch event\n showTabEvent.relatedTarget = tab as HTMLElement | undefined;\n hiddenTabEvent.relatedTarget = element as HTMLElement;\n dispatchEvent(element, showTabEvent);\n\n // istanbul ignore if @preserve\n if (showTabEvent.defaultPrevented) return;\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, activeClass);\n // istanbul ignore else @preserve\n if (content) removeClass(content, activeClass);\n\n // istanbul ignore else @preserve\n if (tabContent && nextContent && hasClass(nextContent, fadeClass)) {\n const nextHeight = nextContent.scrollHeight;\n tabPrivate.set(element, {\n currentHeight,\n nextHeight,\n tab: null,\n content: null,\n });\n\n addClass(tabContent, collapsingClass);\n tabContent.style.height = `${currentHeight}px`;\n reflow(tabContent);\n [content, nextContent].forEach((c) => {\n // istanbul ignore else @preserve\n if (c) removeClass(c, \"overflow-hidden\");\n });\n }\n\n if (nextContent && nextContent && hasClass(nextContent, fadeClass)) {\n setTimeout(() => {\n addClass(nextContent, showClass);\n emulateTransitionEnd(nextContent, () => {\n triggerTabShow(self);\n });\n }, 1);\n } else {\n // istanbul ignore else @preserve\n if (nextContent) addClass(nextContent, showClass);\n triggerTabShow(self);\n }\n\n // istanbul ignore else @preserve\n if (tab) dispatchEvent(tab, hiddenTabEvent);\n};\n\n/**\n * Returns the current active tab and its target content.\n *\n * @param self the `Tab` instance\n * @returns the query result\n */\nconst getActiveTab = (\n self: Tab,\n): { tab: HTMLElement | null; content: HTMLElement | null } => {\n const { nav } = self;\n // istanbul ignore next @preserve\n if (!isHTMLElement(nav)) {\n return { tab: null, content: null };\n }\n\n const activeTabs = getElementsByClassName(\n activeClass,\n nav,\n );\n let tab: HTMLElement | null = null;\n // istanbul ignore else @preserve\n if (\n activeTabs.length === 1 &&\n !dropdownClasses.some((c) =>\n hasClass(activeTabs[0].parentElement as HTMLElement, c)\n )\n ) {\n [tab] = activeTabs;\n } else if (activeTabs.length > 1) {\n tab = activeTabs[activeTabs.length - 1];\n }\n const content = isHTMLElement(tab) ? getTargetElement(tab) : null;\n return { tab, content };\n};\n\n/**\n * Returns a parent dropdown.\n *\n * @param element the `Tab` element\n * @returns the parent dropdown\n */\nconst getParentDropdown = (element?: HTMLElement) => {\n // istanbul ignore next @preserve\n if (!isHTMLElement(element)) return null;\n const dropdown = closest(element, `.${dropdownClasses.join(\",.\")}`);\n return dropdown\n ? querySelector(`.${dropdownClasses[0]}-toggle`, dropdown)\n : null;\n};\n\n// TAB EVENT HANDLER\n// =================\n/**\n * Handles the `click` event listener.\n *\n * @param e the `Event` object\n */\nconst tabClickHandler = (e: MouseEvent) => {\n const element = closest(e.target, tabSelector);\n const self = element && getTabInstance(element);\n\n // istanbul ignore if @preserve\n if (!self) return;\n e.preventDefault();\n self.show();\n};\n\n// TAB DEFINITION\n// ==============\n/** Creates a new `Tab` instance. */\nexport default class Tab extends BaseComponent {\n static selector = tabSelector;\n static init = tabInitCallback;\n static getInstance = getTabInstance;\n declare element: HTMLElement;\n declare nav: HTMLElement | null;\n declare content: HTMLElement | null;\n declare tabContent: HTMLElement | null;\n declare nextContent: HTMLElement | null;\n declare dropdown: HTMLElement | null;\n\n /** @param target the target element */\n constructor(target: Element | string) {\n super(target);\n\n // initialization element\n const { element } = this;\n const content = getTargetElement(element);\n\n // no point initializing a tab without a corresponding content\n // istanbul ignore else @preserve\n if (!content) return;\n\n const nav = closest(element, \".nav\");\n const container = closest(\n content as HTMLElement,\n \".tab-content\",\n );\n\n this.nav = nav;\n this.content = content;\n this.tabContent = container;\n\n // event targets\n this.dropdown = getParentDropdown(element);\n\n // show first Tab instance of none is shown\n // suggested on #432\n const { tab } = getActiveTab(this);\n if (nav && !tab) {\n const firstTab = querySelector(tabSelector, nav);\n const firstTabContent = firstTab && getTargetElement(firstTab);\n\n // istanbul ignore else @preserve\n if (firstTabContent) {\n addClass(firstTab, activeClass);\n addClass(firstTabContent, showClass);\n addClass(firstTabContent, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n }\n }\n\n // add event listener\n this._toggleEventListeners(true);\n }\n\n /**\n * Returns component name string.\n */\n get name() {\n return tabComponent;\n }\n\n // TAB PUBLIC METHODS\n // ==================\n /** Shows the tab to the user. */\n show() {\n const { element, content: nextContent, nav, dropdown } = this;\n\n // istanbul ignore else @preserve\n if ((nav && Timer.get(nav)) || hasClass(element, activeClass)) return;\n const { tab, content } = getActiveTab(this);\n\n // istanbul ignore else @preserve\n if (nav && tab) {\n tabPrivate.set(nav, { tab, content, currentHeight: 0, nextHeight: 0 });\n }\n\n // update relatedTarget and dispatch\n hideTabEvent.relatedTarget = element as HTMLElement;\n\n // istanbul ignore if @preserve\n if (!isHTMLElement(tab)) return;\n\n dispatchEvent(tab, hideTabEvent);\n\n // istanbul ignore else @preserve\n if (hideTabEvent.defaultPrevented) return;\n\n addClass(element, activeClass);\n setAttribute(element, ariaSelected, \"true\");\n\n const activeDropdown = isHTMLElement(tab) && getParentDropdown(tab);\n if (activeDropdown && hasClass(activeDropdown, activeClass)) {\n removeClass(activeDropdown, activeClass);\n }\n\n // istanbul ignore else @preserve\n if (nav) {\n const toggleTab = () => {\n // istanbul ignore else @preserve\n if (tab) {\n removeClass(tab, activeClass);\n setAttribute(tab, ariaSelected, \"false\");\n }\n if (dropdown && !hasClass(dropdown, activeClass)) {\n addClass(dropdown, activeClass);\n }\n };\n\n if (\n content &&\n (hasClass(content, fadeClass) ||\n (nextContent && hasClass(nextContent, fadeClass)))\n ) {\n Timer.set(nav, toggleTab, 1);\n } else toggleTab();\n }\n\n // istanbul ignore else @preserve\n if (content) {\n removeClass(content, showClass);\n if (hasClass(content, fadeClass)) {\n emulateTransitionEnd(content, () => triggerTabHide(this));\n } else {\n triggerTabHide(this);\n }\n }\n }\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, event listener is added\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n action(this.element, mouseclickEvent, tabClickHandler);\n };\n\n /** Removes the `Tab` component from the target element. */\n dispose() {\n this._toggleEventListeners();\n super.dispose();\n }\n}\n","/** @type {string} */\nconst toastString = \"toast\";\nexport default toastString;\n","/** @type {string} */\nconst toastComponent = \"Toast\";\nexport default toastComponent;\n","/* Native JavaScript for Bootstrap 5 | Toast\n-------------------------------------------- */\nimport {\n addClass,\n createCustomEvent,\n dispatchEvent,\n emulateTransitionEnd,\n focusinEvent,\n focusoutEvent,\n getDocument,\n getInstance,\n hasClass,\n mouseclickEvent,\n mouseenterEvent,\n MouseEvent,\n mouseleaveEvent,\n querySelector,\n querySelectorAll,\n reflow,\n removeClass,\n Timer,\n} from \"@thednp/shorty\";\n\nimport { addListener, removeListener } from \"@thednp/event-listener\";\n\nimport fadeClass from \"~/strings/fadeClass\";\nimport showClass from \"~/strings/showClass\";\nimport dataBsDismiss from \"~/strings/dataBsDismiss\";\nimport dataBsToggle from \"~/strings/dataBsToggle\";\nimport toastString from \"~/strings/toastString\";\nimport toastComponent from \"~/strings/toastComponent\";\nimport getTargetElement from \"~/util/getTargetElement\";\nimport isDisabled from \"~/util/isDisabled\";\nimport BaseComponent from \"./base-component\";\nimport { ToastEvent, ToastOptions } from \"~/interface/toast\";\n\n// TOAST PRIVATE GC\n// ================\nconst toastSelector = `.${toastString}`;\nconst toastDismissSelector = `[${dataBsDismiss}=\"${toastString}\"]`;\nconst toastToggleSelector = `[${dataBsToggle}=\"${toastString}\"]`;\nconst showingClass = \"showing\";\n/** @deprecated */\nconst hideClass = \"hide\";\n\nconst toastDefaults = {\n animation: true,\n autohide: true,\n delay: 5000,\n};\n\n/**\n * Static method which returns an existing `Toast` instance associated\n * to a target `Element`.\n */\nconst getToastInstance = (element: Element) =>\n getInstance(element, toastComponent);\n\n/**\n * A `Toast` initialization callback.\n */\nconst toastInitCallback = (element: Element) => new Toast(element);\n\n// TOAST CUSTOM EVENTS\n// ===================\nconst showToastEvent = createCustomEvent, ToastEvent>(\n `show.bs.${toastString}`,\n);\nconst shownToastEvent = createCustomEvent, ToastEvent>(\n `shown.bs.${toastString}`,\n);\nconst hideToastEvent = createCustomEvent, ToastEvent>(\n `hide.bs.${toastString}`,\n);\nconst hiddenToastEvent = createCustomEvent, ToastEvent>(\n `hidden.bs.${toastString}`,\n);\n\n// TOAST PRIVATE METHODS\n// =====================\n/**\n * Executes after the toast is shown to the user.\n *\n * @param self the `Toast` instance\n */\nconst showToastComplete = (self: Toast) => {\n const { element, options } = self;\n removeClass(element, showingClass);\n Timer.clear(element, showingClass);\n\n dispatchEvent(element, shownToastEvent);\n // istanbul ignore else @preserve\n if (options.autohide) {\n Timer.set(element, () => self.hide(), options.delay, toastString);\n }\n};\n\n/**\n * Executes after the toast is hidden to the user.\n *\n * @param self the `Toast` instance\n */\nconst hideToastComplete = (self: Toast) => {\n const { element } = self;\n removeClass(element, showingClass);\n removeClass(element, showClass);\n addClass(element, hideClass); // B/C\n Timer.clear(element, toastString);\n dispatchEvent(element, hiddenToastEvent);\n};\n\n/**\n * Executes before hiding the toast.\n *\n * @param self the `Toast` instance\n */\nconst hideToast = (self: Toast) => {\n const { element, options } = self;\n addClass(element, showingClass);\n\n if (options.animation) {\n reflow(element as HTMLElement);\n emulateTransitionEnd(element, () => hideToastComplete(self));\n } else {\n hideToastComplete(self);\n }\n};\n\n/**\n * Executes before showing the toast.\n *\n * @param self the `Toast` instance\n */\nconst showToast = (self: Toast) => {\n const { element, options } = self;\n Timer.set(\n element,\n () => {\n removeClass(element, hideClass); // B/C\n reflow(element as HTMLElement);\n addClass(element, showClass);\n addClass(element, showingClass);\n\n if (options.animation) {\n emulateTransitionEnd(element, () => showToastComplete(self));\n } else {\n showToastComplete(self);\n }\n },\n 17,\n showingClass,\n );\n};\n\n// TOAST EVENT HANDLERS\n// ====================\n/**\n * Handles the `click` event listener for toast.\n *\n * @param e the `Event` object\n */\nfunction toastClickHandler(this: HTMLElement, e: Event) {\n const element = getTargetElement(this);\n const self = element && getToastInstance(element);\n\n // istanbul ignore if @preserve\n if (isDisabled(this)) return;\n // istanbul ignore if @preserve\n if (!self) return;\n // istanbul ignore else @preserve\n if (this.tagName === \"A\") e.preventDefault();\n self.relatedTarget = this;\n self.show();\n}\n\n/**\n * Executes when user interacts with the toast without closing it,\n * usually by hovering or focusing it.\n *\n * @param e the `Toast` instance\n */\nconst interactiveToastHandler = (e: MouseEvent) => {\n const element = e.target;\n const self = getToastInstance(element);\n const { type, relatedTarget } = e;\n\n // istanbul ignore if @preserve: a solid filter is required\n if (\n !self || element === relatedTarget ||\n element.contains(relatedTarget as Node)\n ) return;\n\n if ([mouseenterEvent, focusinEvent].includes(type)) {\n Timer.clear(element, toastString);\n } else {\n Timer.set(element, () => self.hide(), self.options.delay, toastString);\n }\n};\n\n// TOAST DEFINITION\n// ================\n/** Creates a new `Toast` instance. */\nexport default class Toast extends BaseComponent {\n static selector = toastSelector;\n static init = toastInitCallback;\n static getInstance = getToastInstance;\n declare element: HTMLElement;\n declare options: ToastOptions;\n declare dismiss: HTMLElement | null;\n declare triggers: HTMLElement[];\n declare relatedTarget: HTMLElement | null;\n\n /**\n * @param target the target `.toast` element\n * @param config the instance options\n */\n constructor(target: Element | string, config?: Partial) {\n super(target, config);\n const { element, options } = this;\n\n // set fadeClass, the options.animation will override the markup\n if (options.animation && !hasClass(element, fadeClass)) {\n addClass(element, fadeClass);\n } else if (!options.animation && hasClass(element, fadeClass)) {\n removeClass(element, fadeClass);\n }\n\n // dismiss button\n this.dismiss = querySelector(toastDismissSelector, element);\n\n // toast can have multiple triggering elements\n this.triggers = [\n ...querySelectorAll(\n toastToggleSelector,\n getDocument(element),\n ),\n ].filter(\n (btn) => getTargetElement(btn) === element,\n );\n\n // add event listener\n this._toggleEventListeners(true);\n }\n /**\n * Returns component name string.\n */\n get name() {\n return toastComponent;\n }\n /**\n * Returns component default options.\n */\n get defaults() {\n return toastDefaults;\n }\n /**\n * Returns *true* when toast is visible.\n */\n get isShown() {\n return hasClass(this.element, showClass);\n }\n\n // TOAST PUBLIC METHODS\n // ====================\n /** Shows the toast. */\n show = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || isShown) return;\n\n dispatchEvent(element, showToastEvent);\n if (!showToastEvent.defaultPrevented) showToast(this);\n };\n\n /** Hides the toast. */\n hide = () => {\n const { element, isShown } = this;\n\n // istanbul ignore if @preserve\n if (!element || !isShown) return;\n\n dispatchEvent(element, hideToastEvent);\n if (!hideToastEvent.defaultPrevented) hideToast(this);\n };\n\n /**\n * Toggles on/off the `click` event listener.\n *\n * @param add when `true`, it will add the listener\n */\n _toggleEventListeners = (add?: boolean) => {\n const action = add ? addListener : removeListener;\n const { element, triggers, dismiss, options, hide } = this;\n\n // istanbul ignore else @preserve\n if (dismiss) {\n action(dismiss, mouseclickEvent, hide);\n }\n\n // istanbul ignore else @preserve\n if (options.autohide) {\n [focusinEvent, focusoutEvent, mouseenterEvent, mouseleaveEvent].forEach(\n (e) => action(element, e, interactiveToastHandler),\n );\n }\n // istanbul ignore else @preserve\n if (triggers.length) {\n triggers.forEach((btn) => {\n action(btn, mouseclickEvent, toastClickHandler);\n });\n }\n };\n\n /** Removes the `Toast` component from the target element. */\n dispose() {\n const { element, isShown } = this;\n this._toggleEventListeners();\n Timer.clear(element, toastString);\n\n if (isShown) removeClass(element, showClass);\n\n super.dispose();\n }\n}\n","import { Data, getElementsByTagName, matches } from \"@thednp/shorty\";\n\nimport { addListener } from \"@thednp/event-listener\";\n\nimport Alert from \"../components/alert\";\nimport Button from \"../components/button\";\nimport Carousel from \"../components/carousel\";\nimport Collapse from \"../components/collapse\";\nimport Dropdown from \"../components/dropdown\";\nimport Modal from \"../components/modal\";\nimport Offcanvas from \"../components/offcanvas\";\nimport Popover from \"../components/popover\";\nimport ScrollSpy from \"../components/scrollspy\";\nimport Tab from \"../components/tab\";\nimport Toast from \"../components/toast\";\nimport Tooltip from \"../components/tooltip\";\n\nconst componentsList = new Map<\n string,\n | typeof Alert\n | typeof Button\n | typeof Carousel\n | typeof Collapse\n | typeof Dropdown\n | typeof Modal\n | typeof Offcanvas\n | typeof Popover\n | typeof ScrollSpy\n | typeof Tab\n | typeof Toast\n | typeof Tooltip\n>();\n\ntype Component =\n | Alert\n | Button\n | Carousel\n | Collapse\n | Dropdown\n | Modal\n | Offcanvas\n | Popover\n | ScrollSpy\n | Tab\n | Toast\n | Tooltip;\n\n[\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n].forEach((c) => componentsList.set(c.prototype.name, c));\n\n/**\n * Initialize all matched `Element`s for one component.\n *\n * @param callback\n * @param collection\n */\nconst initComponentDataAPI = (\n callback: (el: Element) => Component,\n collection: HTMLCollectionOf | Element[],\n) => {\n [...collection].forEach((x) => callback(x));\n};\n\n/**\n * Remove one component from a target container element or all in the page.\n *\n * @param component the component name\n * @param context parent `Node`\n */\nconst removeComponentDataAPI = (component: string, context: ParentNode) => {\n const compData = Data.getAllFor(component) as Map;\n\n if (compData) {\n [...compData].forEach(([element, instance]) => {\n if (context.contains(element)) {\n (instance as T & { dispose: () => void }).dispose();\n }\n });\n }\n};\n\n/**\n * Initialize all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const initCallback = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n const elemCollection = [...getElementsByTagName(\"*\", lookUp)];\n\n componentsList.forEach((cs) => {\n const { init, selector } = cs;\n initComponentDataAPI(\n init,\n elemCollection.filter((item) => matches(item, selector)),\n );\n });\n};\n\n/**\n * Remove all BSN components for a target container.\n *\n * @param context parent `Node`\n */\nexport const removeDataAPI = (context?: ParentNode) => {\n const lookUp = context && context.nodeName ? context : document;\n\n componentsList.forEach((comp) => {\n removeComponentDataAPI(comp.prototype.name, lookUp);\n });\n};\n\n// Bulk initialize all components\nif (document.body) initCallback();\nelse {\n addListener(document, \"DOMContentLoaded\", () => initCallback(), {\n once: true,\n });\n}\n"],"x_google_ignoreList":[0,1,28],"mappings":"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"} \ No newline at end of file From cf150aae918ed3ba8bf3b74bf8243662f4600518 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <59501884+LoicE5@users.noreply.github.com> Date: Mon, 16 Mar 2026 22:52:43 +0100 Subject: [PATCH 09/10] chore: downgrade vite to v7 and vitest to v3 --- package.json | 10 +- pnpm-lock.yaml | 1306 ++++++++++++++++++++++++++++++++++-------------- 2 files changed, 931 insertions(+), 385 deletions(-) diff --git a/package.json b/package.json index 70399bfb..d0c4c570 100755 --- a/package.json +++ b/package.json @@ -118,15 +118,15 @@ }, "devDependencies": { "@types/node": "^25.5.0", - "@vitest/browser": "^4.1.0", - "@vitest/coverage-istanbul": "^4.1.0", - "@vitest/ui": "^4.1.0", + "@vitest/browser": "^3.2.4", + "@vitest/coverage-istanbul": "^3.2.4", + "@vitest/ui": "^3.2.4", "playwright": "^1.58.2", "typescript": "^5.9.3", - "vite": "^8.0.0", + "vite": "^7.1.4", "vite-plugin-dts": "^4.5.4", "vite-plugin-strip-comments": "^0.0.9", - "vitest": "^4.1.0" + "vitest": "^3.2.4" }, "packageManager": "pnpm@8.6.12", "engines": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b872f10d..780674ce 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -20,14 +20,14 @@ devDependencies: specifier: ^25.5.0 version: 25.5.0 '@vitest/browser': - specifier: ^4.1.0 - version: 4.1.0(vite@8.0.0)(vitest@4.1.0) + specifier: ^3.2.4 + version: 3.2.4(playwright@1.58.2)(vite@7.3.1)(vitest@3.2.4) '@vitest/coverage-istanbul': - specifier: ^4.1.0 - version: 4.1.0(vitest@4.1.0) + specifier: ^3.2.4 + version: 3.2.4(vitest@3.2.4) '@vitest/ui': - specifier: ^4.1.0 - version: 4.1.0(vitest@4.1.0) + specifier: ^3.2.4 + version: 3.2.4(vitest@3.2.4) playwright: specifier: ^1.58.2 version: 1.58.2 @@ -35,17 +35,17 @@ devDependencies: specifier: ^5.9.3 version: 5.9.3 vite: - specifier: ^8.0.0 - version: 8.0.0(@types/node@25.5.0) + specifier: ^7.1.4 + version: 7.3.1(@types/node@25.5.0) vite-plugin-dts: specifier: ^4.5.4 - version: 4.5.4(@types/node@25.5.0)(typescript@5.9.3)(vite@8.0.0) + version: 4.5.4(@types/node@25.5.0)(typescript@5.9.3)(vite@7.3.1) vite-plugin-strip-comments: specifier: ^0.0.9 version: 0.0.9 vitest: - specifier: ^4.1.0 - version: 4.1.0(@types/node@25.5.0)(@vitest/ui@4.1.0)(vite@8.0.0) + specifier: ^3.2.4 + version: 3.2.4(@types/node@25.5.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4) packages: @@ -168,6 +168,11 @@ packages: '@babel/types': 7.29.0 dev: true + /@babel/runtime@7.28.6: + resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==} + engines: {node: '>=6.9.0'} + dev: true + /@babel/template@7.28.6: resolution: {integrity: sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==} engines: {node: '>=6.9.0'} @@ -200,35 +205,252 @@ packages: '@babel/helper-validator-identifier': 7.28.5 dev: true - /@blazediff/core@1.9.1: - resolution: {integrity: sha512-ehg3jIkYKulZh+8om/O25vkvSsXXwC+skXmyA87FFx6A/45eqOkZsBltMw/TVteb0mloiGT8oGRTcjRAz66zaA==} + /@esbuild/aix-ppc64@0.27.4: + resolution: {integrity: sha512-cQPwL2mp2nSmHHJlCyoXgHGhbEPMrEEU5xhkcy3Hs/O7nGZqEpZ2sUtLaL9MORLtDfRvVl2/3PAuEkYZH0Ty8Q==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + requiresBuild: true dev: true + optional: true - /@emnapi/core@1.9.0: - resolution: {integrity: sha512-0DQ98G9ZQZOxfUcQn1waV2yS8aWdZ6kJMbYCJB3oUBecjWYO1fqJ+a1DRfPF3O5JEkwqwP1A9QEN/9mYm2Yd0w==} + /@esbuild/android-arm64@0.27.4: + resolution: {integrity: sha512-gdLscB7v75wRfu7QSm/zg6Rx29VLdy9eTr2t44sfTW7CxwAtQghZ4ZnqHk3/ogz7xao0QAgrkradbBzcqFPasw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] requiresBuild: true - dependencies: - '@emnapi/wasi-threads': 1.2.0 - tslib: 2.8.1 dev: true optional: true - /@emnapi/runtime@1.9.0: - resolution: {integrity: sha512-QN75eB0IH2ywSpRpNddCRfQIhmJYBCJ1x5Lb3IscKAL8bMnVAKnRg8dCoXbHzVLLH7P38N2Z3mtulB7W0J0FKw==} + /@esbuild/android-arm@0.27.4: + resolution: {integrity: sha512-X9bUgvxiC8CHAGKYufLIHGXPJWnr0OCdR0anD2e21vdvgCI8lIfqFbnoeOz7lBjdrAGUhqLZLcQo6MLhTO2DKQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] requiresBuild: true - dependencies: - tslib: 2.8.1 dev: true optional: true - /@emnapi/wasi-threads@1.2.0: - resolution: {integrity: sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==} + /@esbuild/android-x64@0.27.4: + resolution: {integrity: sha512-PzPFnBNVF292sfpfhiyiXCGSn9HZg5BcAz+ivBuSsl6Rk4ga1oEXAamhOXRFyMcjwr2DVtm40G65N3GLeH1Lvw==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.27.4: + resolution: {integrity: sha512-b7xaGIwdJlht8ZFCvMkpDN6uiSmnxxK56N2GDTMYPr2/gzvfdQN8rTfBsvVKmIVY/X7EM+/hJKEIbbHs9oA4tQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-x64@0.27.4: + resolution: {integrity: sha512-sR+OiKLwd15nmCdqpXMnuJ9W2kpy0KigzqScqHI3Hqwr7IXxBp3Yva+yJwoqh7rE8V77tdoheRYataNKL4QrPw==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64@0.27.4: + resolution: {integrity: sha512-jnfpKe+p79tCnm4GVav68A7tUFeKQwQyLgESwEAUzyxk/TJr4QdGog9sqWNcUbr/bZt/O/HXouspuQDd9JxFSw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.27.4: + resolution: {integrity: sha512-2kb4ceA/CpfUrIcTUl1wrP/9ad9Atrp5J94Lq69w7UwOMolPIGrfLSvAKJp0RTvkPPyn6CIWrNy13kyLikZRZQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm64@0.27.4: + resolution: {integrity: sha512-7nQOttdzVGth1iz57kxg9uCz57dxQLHWxopL6mYuYthohPKEK0vU0C3O21CcBK6KDlkYVcnDXY099HcCDXd9dA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] requiresBuild: true - dependencies: - tslib: 2.8.1 dev: true optional: true + /@esbuild/linux-arm@0.27.4: + resolution: {integrity: sha512-aBYgcIxX/wd5n2ys0yESGeYMGF+pv6g0DhZr3G1ZG4jMfruU9Tl1i2Z+Wnj9/KjGz1lTLCcorqE2viePZqj4Eg==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32@0.27.4: + resolution: {integrity: sha512-oPtixtAIzgvzYcKBQM/qZ3R+9TEUd1aNJQu0HhGyqtx6oS7qTpvjheIWBbes4+qu1bNlo2V4cbkISr8q6gRBFA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64@0.27.4: + resolution: {integrity: sha512-8mL/vh8qeCoRcFH2nM8wm5uJP+ZcVYGGayMavi8GmRJjuI3g1v6Z7Ni0JJKAJW+m0EtUuARb6Lmp4hMjzCBWzA==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.27.4: + resolution: {integrity: sha512-1RdrWFFiiLIW7LQq9Q2NES+HiD4NyT8Itj9AUeCl0IVCA459WnPhREKgwrpaIfTOe+/2rdntisegiPWn/r/aAw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64@0.27.4: + resolution: {integrity: sha512-tLCwNG47l3sd9lpfyx9LAGEGItCUeRCWeAx6x2Jmbav65nAwoPXfewtAdtbtit/pJFLUWOhpv0FpS6GQAmPrHA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64@0.27.4: + resolution: {integrity: sha512-BnASypppbUWyqjd1KIpU4AUBiIhVr6YlHx/cnPgqEkNoVOhHg+YiSVxM1RLfiy4t9cAulbRGTNCKOcqHrEQLIw==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-s390x@0.27.4: + resolution: {integrity: sha512-+eUqgb/Z7vxVLezG8bVB9SfBie89gMueS+I0xYh2tJdw3vqA/0ImZJ2ROeWwVJN59ihBeZ7Tu92dF/5dy5FttA==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64@0.27.4: + resolution: {integrity: sha512-S5qOXrKV8BQEzJPVxAwnryi2+Iq5pB40gTEIT69BQONqR7JH1EPIcQ/Uiv9mCnn05jff9umq/5nqzxlqTOg9NA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-arm64@0.27.4: + resolution: {integrity: sha512-xHT8X4sb0GS8qTqiwzHqpY00C95DPAq7nAwX35Ie/s+LO9830hrMd3oX0ZMKLvy7vsonee73x0lmcdOVXFzd6Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.27.4: + resolution: {integrity: sha512-RugOvOdXfdyi5Tyv40kgQnI0byv66BFgAqjdgtAKqHoZTbTF2QqfQrFwa7cHEORJf6X2ht+l9ABLMP0dnKYsgg==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-arm64@0.27.4: + resolution: {integrity: sha512-2MyL3IAaTX+1/qP0O1SwskwcwCoOI4kV2IBX1xYnDDqthmq5ArrW94qSIKCAuRraMgPOmG0RDTA74mzYNQA9ow==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-x64@0.27.4: + resolution: {integrity: sha512-u8fg/jQ5aQDfsnIV6+KwLOf1CmJnfu1ShpwqdwC0uA7ZPwFws55Ngc12vBdeUdnuWoQYx/SOQLGDcdlfXhYmXQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openharmony-arm64@0.27.4: + resolution: {integrity: sha512-JkTZrl6VbyO8lDQO3yv26nNr2RM2yZzNrNHEsj9bm6dOwwu9OYN28CjzZkH57bh4w0I2F7IodpQvUAEd1mbWXg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.27.4: + resolution: {integrity: sha512-/gOzgaewZJfeJTlsWhvUEmUG4tWEY2Spp5M20INYRg2ZKl9QPO3QEEgPeRtLjEWSW8FilRNacPOg8R1uaYkA6g==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-arm64@0.27.4: + resolution: {integrity: sha512-Z9SExBg2y32smoDQdf1HRwHRt6vAHLXcxD2uGgO/v2jK7Y718Ix4ndsbNMU/+1Qiem9OiOdaqitioZwxivhXYg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32@0.27.4: + resolution: {integrity: sha512-DAyGLS0Jz5G5iixEbMHi5KdiApqHBWMGzTtMiJ72ZOLhbu/bzxgAe8Ue8CTS3n3HbIUHQz/L51yMdGMeoxXNJw==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-x64@0.27.4: + resolution: {integrity: sha512-+knoa0BDoeXgkNvvV1vvbZX4+hizelrkwmGJBdT17t8FNPwG2lKemmuMZlmaNQ3ws3DKKCxpb4zRZEIp3UxFCg==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@isaacs/cliui@8.0.2: + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + dependencies: + string-width: 5.1.2 + string-width-cjs: /string-width@4.2.3 + strip-ansi: 7.2.0 + strip-ansi-cjs: /strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: /wrap-ansi@7.0.0 + dev: true + /@istanbuljs/schema@0.1.3: resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} engines: {node: '>=8'} @@ -309,182 +531,230 @@ packages: resolution: {integrity: sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==} dev: true - /@napi-rs/wasm-runtime@1.1.1: - resolution: {integrity: sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==} + /@pkgjs/parseargs@0.11.0: + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} requiresBuild: true - dependencies: - '@emnapi/core': 1.9.0 - '@emnapi/runtime': 1.9.0 - '@tybys/wasm-util': 0.10.1 dev: true optional: true - /@oxc-project/runtime@0.115.0: - resolution: {integrity: sha512-Rg8Wlt5dCbXhQnsXPrkOjL1DTSvXLgb2R/KYfnf1/K+R0k6UMLEmbQXPM+kwrWqSmWA2t0B1EtHy2/3zikQpvQ==} - engines: {node: ^20.19.0 || >=22.12.0} + /@polka/url@1.0.0-next.29: + resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} dev: true - /@oxc-project/types@0.115.0: - resolution: {integrity: sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw==} + /@rollup/pluginutils@5.3.0: + resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@types/estree': 1.0.8 + estree-walker: 2.0.2 + picomatch: 4.0.3 dev: true - /@polka/url@1.0.0-next.29: - resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} + /@rollup/rollup-android-arm-eabi@4.59.0: + resolution: {integrity: sha512-upnNBkA6ZH2VKGcBj9Fyl9IGNPULcjXRlg0LLeaioQWueH30p6IXtJEbKAgvyv+mJaMxSm1l6xwDXYjpEMiLMg==} + cpu: [arm] + os: [android] + requiresBuild: true dev: true + optional: true - /@rolldown/binding-android-arm64@1.0.0-rc.9: - resolution: {integrity: sha512-lcJL0bN5hpgJfSIz/8PIf02irmyL43P+j1pTCfbD1DbLkmGRuFIA4DD3B3ZOvGqG0XiVvRznbKtN0COQVaKUTg==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-android-arm64@4.59.0: + resolution: {integrity: sha512-hZ+Zxj3SySm4A/DylsDKZAeVg0mvi++0PYVceVyX7hemkw7OreKdCvW2oQ3T1FMZvCaQXqOTHb8qmBShoqk69Q==} cpu: [arm64] os: [android] requiresBuild: true dev: true optional: true - /@rolldown/binding-darwin-arm64@1.0.0-rc.9: - resolution: {integrity: sha512-J7Zk3kLYFsLtuH6U+F4pS2sYVzac0qkjcO5QxHS7OS7yZu2LRs+IXo+uvJ/mvpyUljDJ3LROZPoQfgBIpCMhdQ==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-darwin-arm64@4.59.0: + resolution: {integrity: sha512-W2Psnbh1J8ZJw0xKAd8zdNgF9HRLkdWwwdWqubSVk0pUuQkoHnv7rx4GiF9rT4t5DIZGAsConRE3AxCdJ4m8rg==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /@rolldown/binding-darwin-x64@1.0.0-rc.9: - resolution: {integrity: sha512-iwtmmghy8nhfRGeNAIltcNXzD0QMNaaA5U/NyZc1Ia4bxrzFByNMDoppoC+hl7cDiUq5/1CnFthpT9n+UtfFyg==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-darwin-x64@4.59.0: + resolution: {integrity: sha512-ZW2KkwlS4lwTv7ZVsYDiARfFCnSGhzYPdiOU4IM2fDbL+QGlyAbjgSFuqNRbSthybLbIJ915UtZBtmuLrQAT/w==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /@rolldown/binding-freebsd-x64@1.0.0-rc.9: - resolution: {integrity: sha512-DLFYI78SCiZr5VvdEplsVC2Vx53lnA4/Ga5C65iyldMVaErr86aiqCoNBLl92PXPfDtUYjUh+xFFor40ueNs4Q==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-freebsd-arm64@4.59.0: + resolution: {integrity: sha512-EsKaJ5ytAu9jI3lonzn3BgG8iRBjV4LxZexygcQbpiU0wU0ATxhNVEpXKfUa0pS05gTcSDMKpn3Sx+QB9RlTTA==} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-freebsd-x64@4.59.0: + resolution: {integrity: sha512-d3DuZi2KzTMjImrxoHIAODUZYoUUMsuUiY4SRRcJy6NJoZ6iIqWnJu9IScV9jXysyGMVuW+KNzZvBLOcpdl3Vg==} cpu: [x64] os: [freebsd] requiresBuild: true dev: true optional: true - /@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.9: - resolution: {integrity: sha512-CsjTmTwd0Hri6iTw/DRMK7kOZ7FwAkrO4h8YWKoX/kcj833e4coqo2wzIFywtch/8Eb5enQ/lwLM7w6JX1W5RQ==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-linux-arm-gnueabihf@4.59.0: + resolution: {integrity: sha512-t4ONHboXi/3E0rT6OZl1pKbl2Vgxf9vJfWgmUoCEVQVxhW6Cw/c8I6hbbu7DAvgp82RKiH7TpLwxnJeKv2pbsw==} cpu: [arm] os: [linux] requiresBuild: true dev: true optional: true - /@rolldown/binding-linux-arm64-gnu@1.0.0-rc.9: - resolution: {integrity: sha512-2x9O2JbSPxpxMDhP9Z74mahAStibTlrBMW0520+epJH5sac7/LwZW5Bmg/E6CXuEF53JJFW509uP+lSedaUNxg==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-linux-arm-musleabihf@4.59.0: + resolution: {integrity: sha512-CikFT7aYPA2ufMD086cVORBYGHffBo4K8MQ4uPS/ZnY54GKj36i196u8U+aDVT2LX4eSMbyHtyOh7D7Zvk2VvA==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-gnu@4.59.0: + resolution: {integrity: sha512-jYgUGk5aLd1nUb1CtQ8E+t5JhLc9x5WdBKew9ZgAXg7DBk0ZHErLHdXM24rfX+bKrFe+Xp5YuJo54I5HFjGDAA==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rolldown/binding-linux-arm64-musl@1.0.0-rc.9: - resolution: {integrity: sha512-JA1QRW31ogheAIRhIg9tjMfsYbglXXYGNPLdPEYrwFxdbkQCAzvpSCSHCDWNl4hTtrol8WeboCSEpjdZK8qrCg==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-linux-arm64-musl@4.59.0: + resolution: {integrity: sha512-peZRVEdnFWZ5Bh2KeumKG9ty7aCXzzEsHShOZEFiCQlDEepP1dpUl/SrUNXNg13UmZl+gzVDPsiCwnV1uI0RUA==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.9: - resolution: {integrity: sha512-aOKU9dJheda8Kj8Y3w9gnt9QFOO+qKPAl8SWd7JPHP+Cu0EuDAE5wokQubLzIDQWg2myXq2XhTpOVS07qqvT+w==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-linux-loong64-gnu@4.59.0: + resolution: {integrity: sha512-gbUSW/97f7+r4gHy3Jlup8zDG190AuodsWnNiXErp9mT90iCy9NKKU0Xwx5k8VlRAIV2uU9CsMnEFg/xXaOfXg==} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-loong64-musl@4.59.0: + resolution: {integrity: sha512-yTRONe79E+o0FWFijasoTjtzG9EBedFXJMl888NBEDCDV9I2wGbFFfJQQe63OijbFCUZqxpHz1GzpbtSFikJ4Q==} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-ppc64-gnu@4.59.0: + resolution: {integrity: sha512-sw1o3tfyk12k3OEpRddF68a1unZ5VCN7zoTNtSn2KndUE+ea3m3ROOKRCZxEpmT9nsGnogpFP9x6mnLTCaoLkA==} cpu: [ppc64] os: [linux] requiresBuild: true dev: true optional: true - /@rolldown/binding-linux-s390x-gnu@1.0.0-rc.9: - resolution: {integrity: sha512-OalO94fqj7IWRn3VdXWty75jC5dk4C197AWEuMhIpvVv2lw9fiPhud0+bW2ctCxb3YoBZor71QHbY+9/WToadA==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-linux-ppc64-musl@4.59.0: + resolution: {integrity: sha512-+2kLtQ4xT3AiIxkzFVFXfsmlZiG5FXYW7ZyIIvGA7Bdeuh9Z0aN4hVyXS/G1E9bTP/vqszNIN/pUKCk/BTHsKA==} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-riscv64-gnu@4.59.0: + resolution: {integrity: sha512-NDYMpsXYJJaj+I7UdwIuHHNxXZ/b/N2hR15NyH3m2qAtb/hHPA4g4SuuvrdxetTdndfj9b1WOmy73kcPRoERUg==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-riscv64-musl@4.59.0: + resolution: {integrity: sha512-nLckB8WOqHIf1bhymk+oHxvM9D3tyPndZH8i8+35p/1YiVoVswPid2yLzgX7ZJP0KQvnkhM4H6QZ5m0LzbyIAg==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-s390x-gnu@4.59.0: + resolution: {integrity: sha512-oF87Ie3uAIvORFBpwnCvUzdeYUqi2wY6jRFWJAy1qus/udHFYIkplYRW+wo+GRUP4sKzYdmE1Y3+rY5Gc4ZO+w==} cpu: [s390x] os: [linux] requiresBuild: true dev: true optional: true - /@rolldown/binding-linux-x64-gnu@1.0.0-rc.9: - resolution: {integrity: sha512-cVEl1vZtBsBZna3YMjGXNvnYYrOJ7RzuWvZU0ffvJUexWkukMaDuGhUXn0rjnV0ptzGVkvc+vW9Yqy6h8YX4pg==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-linux-x64-gnu@4.59.0: + resolution: {integrity: sha512-3AHmtQq/ppNuUspKAlvA8HtLybkDflkMuLK4DPo77DfthRb71V84/c4MlWJXixZz4uruIH4uaa07IqoAkG64fg==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rolldown/binding-linux-x64-musl@1.0.0-rc.9: - resolution: {integrity: sha512-UzYnKCIIc4heAKgI4PZ3dfBGUZefGCJ1TPDuLHoCzgrMYPb5Rv6TLFuYtyM4rWyHM7hymNdsg5ik2C+UD9VDbA==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-linux-x64-musl@4.59.0: + resolution: {integrity: sha512-2UdiwS/9cTAx7qIUZB/fWtToJwvt0Vbo0zmnYt7ED35KPg13Q0ym1g442THLC7VyI6JfYTP4PiSOWyoMdV2/xg==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rolldown/binding-openharmony-arm64@1.0.0-rc.9: - resolution: {integrity: sha512-+6zoiF+RRyf5cdlFQP7nm58mq7+/2PFaY2DNQeD4B87N36JzfF/l9mdBkkmTvSYcYPE8tMh/o3cRlsx1ldLfog==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] - os: [openharmony] + /@rollup/rollup-openbsd-x64@4.59.0: + resolution: {integrity: sha512-M3bLRAVk6GOwFlPTIxVBSYKUaqfLrn8l0psKinkCFxl4lQvOSz8ZrKDz2gxcBwHFpci0B6rttydI4IpS4IS/jQ==} + cpu: [x64] + os: [openbsd] requiresBuild: true dev: true optional: true - /@rolldown/binding-wasm32-wasi@1.0.0-rc.9: - resolution: {integrity: sha512-rgFN6sA/dyebil3YTlL2evvi/M+ivhfnyxec7AccTpRPccno/rPoNlqybEZQBkcbZu8Hy+eqNJCqfBR8P7Pg8g==} - engines: {node: '>=14.0.0'} - cpu: [wasm32] + /@rollup/rollup-openharmony-arm64@4.59.0: + resolution: {integrity: sha512-tt9KBJqaqp5i5HUZzoafHZX8b5Q2Fe7UjYERADll83O4fGqJ49O1FsL6LpdzVFQcpwvnyd0i+K/VSwu/o/nWlA==} + cpu: [arm64] + os: [openharmony] requiresBuild: true - dependencies: - '@napi-rs/wasm-runtime': 1.1.1 dev: true optional: true - /@rolldown/binding-win32-arm64-msvc@1.0.0-rc.9: - resolution: {integrity: sha512-lHVNUG/8nlF1IQk1C0Ci574qKYyty2goMiPlRqkC5R+3LkXDkL5Dhx8ytbxq35m+pkHVIvIxviD+TWLdfeuadA==} - engines: {node: ^20.19.0 || >=22.12.0} + /@rollup/rollup-win32-arm64-msvc@4.59.0: + resolution: {integrity: sha512-V5B6mG7OrGTwnxaNUzZTDTjDS7F75PO1ae6MJYdiMu60sq0CqN5CVeVsbhPxalupvTX8gXVSU9gq+Rx1/hvu6A==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /@rolldown/binding-win32-x64-msvc@1.0.0-rc.9: - resolution: {integrity: sha512-G0oA4+w1iY5AGi5HcDTxWsoxF509hrFIPB2rduV5aDqS9FtDg1CAfa7V34qImbjfhIcA8C+RekocJZA96EarwQ==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [x64] + /@rollup/rollup-win32-ia32-msvc@4.59.0: + resolution: {integrity: sha512-UKFMHPuM9R0iBegwzKF4y0C4J9u8C6MEJgFuXTBerMk7EJ92GFVFYBfOZaSGLu6COf7FxpQNqhNS4c4icUPqxA==} + cpu: [ia32] os: [win32] requiresBuild: true dev: true optional: true - /@rolldown/pluginutils@1.0.0-rc.9: - resolution: {integrity: sha512-w6oiRWgEBl04QkFZgmW+jnU1EC9b57Oihi2ot3HNWIQRqgHp5PnYDia5iZ5FF7rpa4EQdiqMDXjlqKGXBhsoXw==} + /@rollup/rollup-win32-x64-gnu@4.59.0: + resolution: {integrity: sha512-laBkYlSS1n2L8fSo1thDNGrCTQMmxjYY5G0WFWjFFYZkKPjsMBsgJfGf4TLxXrF6RyhI60L8TMOjBMvXiTcxeA==} + cpu: [x64] + os: [win32] + requiresBuild: true dev: true + optional: true - /@rollup/pluginutils@5.3.0: - resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - dependencies: - '@types/estree': 1.0.8 - estree-walker: 2.0.2 - picomatch: 4.0.3 + /@rollup/rollup-win32-x64-msvc@4.59.0: + resolution: {integrity: sha512-2HRCml6OztYXyJXAvdDXPKcawukWY2GpR5/nxKp4iBgiO3wcoEGkAaqctIbZcNB6KlUQBIqt8VYkNSj2397EfA==} + cpu: [x64] + os: [win32] + requiresBuild: true dev: true + optional: true /@rushstack/node-core-library@5.20.3(@types/node@25.5.0): resolution: {integrity: sha512-95JgEPq2k7tHxhF9/OJnnyHDXfC9cLhhta0An/6MlkDsX2A6dTzDrTUG18vx4vjc280V0fi0xDH9iQczpSuWsw==} @@ -548,8 +818,27 @@ packages: - '@types/node' dev: true - /@standard-schema/spec@1.1.0: - resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} + /@testing-library/dom@10.4.1: + resolution: {integrity: sha512-o4PXJQidqJl82ckFaXUeoAW+XysPLauYI43Abki5hABd853iMhitooc6znOnczgbTYmEP6U6/y1ZyKAIsvMKGg==} + engines: {node: '>=18'} + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/runtime': 7.28.6 + '@types/aria-query': 5.0.4 + aria-query: 5.3.0 + dom-accessibility-api: 0.5.16 + lz-string: 1.5.0 + picocolors: 1.1.1 + pretty-format: 27.5.1 + dev: true + + /@testing-library/user-event@14.6.1(@testing-library/dom@10.4.1): + resolution: {integrity: sha512-vq7fv0rnt+QTXgPxr5Hjc210p6YKq2kmdziLgnsZGgLJ9e6VAShx1pACLuRjd/AS/sr7phAR58OIIpf0LlmQNw==} + engines: {node: '>=12', npm: '>=6'} + peerDependencies: + '@testing-library/dom': '>=7.21.4' + dependencies: + '@testing-library/dom': 10.4.1 dev: true /@thednp/event-listener@2.0.12: @@ -569,18 +858,14 @@ packages: engines: {node: '>=16', pnpm: '>=8.6.0'} dev: false - /@tybys/wasm-util@0.10.1: - resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} - requiresBuild: true - dependencies: - tslib: 2.8.1 - dev: true - optional: true - /@types/argparse@1.0.38: resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==} dev: true + /@types/aria-query@5.0.4: + resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} + dev: true + /@types/chai@5.2.3: resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==} dependencies: @@ -602,19 +887,30 @@ packages: undici-types: 7.18.2 dev: true - /@vitest/browser@4.1.0(vite@8.0.0)(vitest@4.1.0): - resolution: {integrity: sha512-tG/iOrgbiHQks0ew7CdelUyNEHkv8NLrt+CqdTivIuoSnXvO7scWMn4Kqo78/UGY1NJ6Hv+vp8BvRnED/bjFdQ==} + /@vitest/browser@3.2.4(playwright@1.58.2)(vite@7.3.1)(vitest@3.2.4): + resolution: {integrity: sha512-tJxiPrWmzH8a+w9nLKlQMzAKX/7VjFs50MWgcAj7p9XQ7AQ9/35fByFYptgPELyLw+0aixTnC4pUWV+APcZ/kw==} peerDependencies: - vitest: 4.1.0 + playwright: '*' + safaridriver: '*' + vitest: 3.2.4 + webdriverio: ^7.0.0 || ^8.0.0 || ^9.0.0 + peerDependenciesMeta: + playwright: + optional: true + safaridriver: + optional: true + webdriverio: + optional: true dependencies: - '@blazediff/core': 1.9.1 - '@vitest/mocker': 4.1.0(vite@8.0.0) - '@vitest/utils': 4.1.0 + '@testing-library/dom': 10.4.1 + '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.1) + '@vitest/mocker': 3.2.4(vite@7.3.1) + '@vitest/utils': 3.2.4 magic-string: 0.30.21 - pngjs: 7.0.0 + playwright: 1.58.2 sirv: 3.0.2 - tinyrainbow: 3.1.0 - vitest: 4.1.0(@types/node@25.5.0)(@vitest/ui@4.1.0)(vite@8.0.0) + tinyrainbow: 2.0.0 + vitest: 3.2.4(@types/node@25.5.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4) ws: 8.19.0 transitivePeerDependencies: - bufferutil @@ -623,101 +919,102 @@ packages: - vite dev: true - /@vitest/coverage-istanbul@4.1.0(vitest@4.1.0): - resolution: {integrity: sha512-0+67gA94YToxd+Pc3XgIA/2c8HN2hXNSg3T+1FI4HW7W/2gPitYCtktsY6Ke7vrt5caboMq3TUf0/vwbHRb0og==} + /@vitest/coverage-istanbul@3.2.4(vitest@3.2.4): + resolution: {integrity: sha512-IDlpuFJiWU9rhcKLkpzj8mFu/lpe64gVgnV15ZOrYx1iFzxxrxCzbExiUEKtwwXRvEiEMUS6iZeYgnMxgbqbxQ==} peerDependencies: - vitest: 4.1.0 + vitest: 3.2.4 dependencies: - '@babel/core': 7.29.0 '@istanbuljs/schema': 0.1.3 - '@jridgewell/gen-mapping': 0.3.13 - '@jridgewell/trace-mapping': 0.3.31 + debug: 4.4.3 istanbul-lib-coverage: 3.2.2 + istanbul-lib-instrument: 6.0.3 istanbul-lib-report: 3.0.1 + istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.2.0 - magicast: 0.5.2 - obug: 2.1.1 - tinyrainbow: 3.1.0 - vitest: 4.1.0(@types/node@25.5.0)(@vitest/ui@4.1.0)(vite@8.0.0) + magicast: 0.3.5 + test-exclude: 7.0.2 + tinyrainbow: 2.0.0 + vitest: 3.2.4(@types/node@25.5.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4) transitivePeerDependencies: - supports-color dev: true - /@vitest/expect@4.1.0: - resolution: {integrity: sha512-EIxG7k4wlWweuCLG9Y5InKFwpMEOyrMb6ZJ1ihYu02LVj/bzUwn2VMU+13PinsjRW75XnITeFrQBMH5+dLvCDA==} + /@vitest/expect@3.2.4: + resolution: {integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==} dependencies: - '@standard-schema/spec': 1.1.0 '@types/chai': 5.2.3 - '@vitest/spy': 4.1.0 - '@vitest/utils': 4.1.0 - chai: 6.2.2 - tinyrainbow: 3.1.0 + '@vitest/spy': 3.2.4 + '@vitest/utils': 3.2.4 + chai: 5.3.3 + tinyrainbow: 2.0.0 dev: true - /@vitest/mocker@4.1.0(vite@8.0.0): - resolution: {integrity: sha512-evxREh+Hork43+Y4IOhTo+h5lGmVRyjqI739Rz4RlUPqwrkFFDF6EMvOOYjTx4E8Tl6gyCLRL8Mu7Ry12a13Tw==} + /@vitest/mocker@3.2.4(vite@7.3.1): + resolution: {integrity: sha512-46ryTE9RZO/rfDd7pEqFl7etuyzekzEhUbTW3BvmeO/BcCMEgq59BKhek3dXDWgAj4oMK6OZi+vRr1wPW6qjEQ==} peerDependencies: msw: ^2.4.9 - vite: ^6.0.0 || ^7.0.0 || ^8.0.0-0 + vite: ^5.0.0 || ^6.0.0 || ^7.0.0-0 peerDependenciesMeta: msw: optional: true vite: optional: true dependencies: - '@vitest/spy': 4.1.0 + '@vitest/spy': 3.2.4 estree-walker: 3.0.3 magic-string: 0.30.21 - vite: 8.0.0(@types/node@25.5.0) + vite: 7.3.1(@types/node@25.5.0) dev: true - /@vitest/pretty-format@4.1.0: - resolution: {integrity: sha512-3RZLZlh88Ib0J7NQTRATfc/3ZPOnSUn2uDBUoGNn5T36+bALixmzphN26OUD3LRXWkJu4H0s5vvUeqBiw+kS0A==} + /@vitest/pretty-format@3.2.4: + resolution: {integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==} dependencies: - tinyrainbow: 3.1.0 + tinyrainbow: 2.0.0 dev: true - /@vitest/runner@4.1.0: - resolution: {integrity: sha512-Duvx2OzQ7d6OjchL+trw+aSrb9idh7pnNfxrklo14p3zmNL4qPCDeIJAK+eBKYjkIwG96Bc6vYuxhqDXQOWpoQ==} + /@vitest/runner@3.2.4: + resolution: {integrity: sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==} dependencies: - '@vitest/utils': 4.1.0 + '@vitest/utils': 3.2.4 pathe: 2.0.3 + strip-literal: 3.1.0 dev: true - /@vitest/snapshot@4.1.0: - resolution: {integrity: sha512-0Vy9euT1kgsnj1CHttwi9i9o+4rRLEaPRSOJ5gyv579GJkNpgJK+B4HSv/rAWixx2wdAFci1X4CEPjiu2bXIMg==} + /@vitest/snapshot@3.2.4: + resolution: {integrity: sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==} dependencies: - '@vitest/pretty-format': 4.1.0 - '@vitest/utils': 4.1.0 + '@vitest/pretty-format': 3.2.4 magic-string: 0.30.21 pathe: 2.0.3 dev: true - /@vitest/spy@4.1.0: - resolution: {integrity: sha512-pz77k+PgNpyMDv2FV6qmk5ZVau6c3R8HC8v342T2xlFxQKTrSeYw9waIJG8KgV9fFwAtTu4ceRzMivPTH6wSxw==} + /@vitest/spy@3.2.4: + resolution: {integrity: sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==} + dependencies: + tinyspy: 4.0.4 dev: true - /@vitest/ui@4.1.0(vitest@4.1.0): - resolution: {integrity: sha512-sTSDtVM1GOevRGsCNhp1mBUHKo9Qlc55+HCreFT4fe99AHxl1QQNXSL3uj4Pkjh5yEuWZIx8E2tVC94nnBZECQ==} + /@vitest/ui@3.2.4(vitest@3.2.4): + resolution: {integrity: sha512-hGISOaP18plkzbWEcP/QvtRW1xDXF2+96HbEX6byqQhAUbiS5oH6/9JwW+QsQCIYON2bI6QZBF+2PvOmrRZ9wA==} peerDependencies: - vitest: 4.1.0 + vitest: 3.2.4 dependencies: - '@vitest/utils': 4.1.0 + '@vitest/utils': 3.2.4 fflate: 0.8.2 flatted: 3.4.0 pathe: 2.0.3 sirv: 3.0.2 tinyglobby: 0.2.15 - tinyrainbow: 3.1.0 - vitest: 4.1.0(@types/node@25.5.0)(@vitest/ui@4.1.0)(vite@8.0.0) + tinyrainbow: 2.0.0 + vitest: 3.2.4(@types/node@25.5.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4) dev: true - /@vitest/utils@4.1.0: - resolution: {integrity: sha512-XfPXT6a8TZY3dcGY8EdwsBulFCIw+BeeX0RZn2x/BtiY/75YGh8FeWGG8QISN/WhaqSrE2OrlDgtF8q5uhOTmw==} + /@vitest/utils@3.2.4: + resolution: {integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==} dependencies: - '@vitest/pretty-format': 4.1.0 - convert-source-map: 2.0.0 - tinyrainbow: 3.1.0 + '@vitest/pretty-format': 3.2.4 + loupe: 3.2.1 + tinyrainbow: 2.0.0 dev: true /@volar/language-core@2.4.28: @@ -822,8 +1119,35 @@ packages: require-from-string: 2.0.2 dev: true - /alien-signals@0.4.14: - resolution: {integrity: sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==} + /alien-signals@0.4.14: + resolution: {integrity: sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==} + dev: true + + /ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + dev: true + + /ansi-regex@6.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + engines: {node: '>=12'} + dev: true + + /ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + dependencies: + color-convert: 2.0.1 + dev: true + + /ansi-styles@5.2.0: + resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} + engines: {node: '>=10'} + dev: true + + /ansi-styles@6.2.3: + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} + engines: {node: '>=12'} dev: true /argparse@1.0.10: @@ -832,6 +1156,12 @@ packages: sprintf-js: 1.0.3 dev: true + /aria-query@5.3.0: + resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} + dependencies: + dequal: 2.0.3 + dev: true + /assertion-error@2.0.1: resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} engines: {node: '>=12'} @@ -877,13 +1207,40 @@ packages: update-browserslist-db: 1.2.3(browserslist@4.28.1) dev: true + /cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + dev: true + /caniuse-lite@1.0.30001779: resolution: {integrity: sha512-U5og2PN7V4DMgF50YPNtnZJGWVLFjjsN3zb6uMT5VGYIewieDj1upwfuVNXf4Kor+89c3iCRJnSzMD5LmTvsfA==} dev: true - /chai@6.2.2: - resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} + /chai@5.3.3: + resolution: {integrity: sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==} engines: {node: '>=18'} + dependencies: + assertion-error: 2.0.1 + check-error: 2.1.3 + deep-eql: 5.0.2 + loupe: 3.2.1 + pathval: 2.0.1 + dev: true + + /check-error@2.1.3: + resolution: {integrity: sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==} + engines: {node: '>= 16'} + dev: true + + /color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + dependencies: + color-name: 1.1.4 + dev: true + + /color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} dev: true /compare-versions@6.1.1: @@ -902,6 +1259,15 @@ packages: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} dev: true + /cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + dev: true + /de-indent@1.0.2: resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} dev: true @@ -918,9 +1284,14 @@ packages: ms: 2.1.3 dev: true - /detect-libc@2.1.2: - resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} - engines: {node: '>=8'} + /deep-eql@5.0.2: + resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} + engines: {node: '>=6'} + dev: true + + /dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} dev: true /diff@8.0.3: @@ -928,17 +1299,67 @@ packages: engines: {node: '>=0.3.1'} dev: true + /dom-accessibility-api@0.5.16: + resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} + dev: true + + /eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + dev: true + /electron-to-chromium@1.5.313: resolution: {integrity: sha512-QBMrTWEf00GXZmJyx2lbYD45jpI3TUFnNIzJ5BBc8piGUDwMPa1GV6HJWTZVvY/eiN3fSopl7NRbgGp9sZ9LTA==} dev: true + /emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + dev: true + + /emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + dev: true + /entities@7.0.1: resolution: {integrity: sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==} engines: {node: '>=0.12'} dev: true - /es-module-lexer@2.0.0: - resolution: {integrity: sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==} + /es-module-lexer@1.7.0: + resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==} + dev: true + + /esbuild@0.27.4: + resolution: {integrity: sha512-Rq4vbHnYkK5fws5NF7MYTU68FPRE1ajX7heQ/8QXXWqNgqqJ/GkmmyxIzUnf2Sr/bakf8l54716CcMGHYhMrrQ==} + engines: {node: '>=18'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/aix-ppc64': 0.27.4 + '@esbuild/android-arm': 0.27.4 + '@esbuild/android-arm64': 0.27.4 + '@esbuild/android-x64': 0.27.4 + '@esbuild/darwin-arm64': 0.27.4 + '@esbuild/darwin-x64': 0.27.4 + '@esbuild/freebsd-arm64': 0.27.4 + '@esbuild/freebsd-x64': 0.27.4 + '@esbuild/linux-arm': 0.27.4 + '@esbuild/linux-arm64': 0.27.4 + '@esbuild/linux-ia32': 0.27.4 + '@esbuild/linux-loong64': 0.27.4 + '@esbuild/linux-mips64el': 0.27.4 + '@esbuild/linux-ppc64': 0.27.4 + '@esbuild/linux-riscv64': 0.27.4 + '@esbuild/linux-s390x': 0.27.4 + '@esbuild/linux-x64': 0.27.4 + '@esbuild/netbsd-arm64': 0.27.4 + '@esbuild/netbsd-x64': 0.27.4 + '@esbuild/openbsd-arm64': 0.27.4 + '@esbuild/openbsd-x64': 0.27.4 + '@esbuild/openharmony-arm64': 0.27.4 + '@esbuild/sunos-x64': 0.27.4 + '@esbuild/win32-arm64': 0.27.4 + '@esbuild/win32-ia32': 0.27.4 + '@esbuild/win32-x64': 0.27.4 dev: true /escalade@3.2.0: @@ -993,6 +1414,14 @@ packages: resolution: {integrity: sha512-kC6Bb+ooptOIvWj5B63EQWkF0FEnNjV2ZNkLMLZRDDduIiWeFF4iKnslwhiWxjAdbg4NzTNo6h0qLuvFrcx+Sw==} dev: true + /foreground-child@3.3.1: + resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} + engines: {node: '>=14'} + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 + dev: true + /fs-extra@11.3.4: resolution: {integrity: sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA==} engines: {node: '>=14.14'} @@ -1027,6 +1456,19 @@ packages: engines: {node: '>=6.9.0'} dev: true + /glob@10.5.0: + resolution: {integrity: sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + hasBin: true + dependencies: + foreground-child: 3.3.1 + jackspeak: 3.4.3 + minimatch: 9.0.9 + minipass: 7.1.3 + package-json-from-dist: 1.0.1 + path-scurry: 1.11.1 + dev: true + /graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} dev: true @@ -1064,11 +1506,33 @@ packages: hasown: 2.0.2 dev: true + /is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + dev: true + + /isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + dev: true + /istanbul-lib-coverage@3.2.2: resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} engines: {node: '>=8'} dev: true + /istanbul-lib-instrument@6.0.3: + resolution: {integrity: sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==} + engines: {node: '>=10'} + dependencies: + '@babel/core': 7.29.0 + '@babel/parser': 7.29.0 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-coverage: 3.2.2 + semver: 7.7.4 + transitivePeerDependencies: + - supports-color + dev: true + /istanbul-lib-report@3.0.1: resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} engines: {node: '>=10'} @@ -1078,6 +1542,17 @@ packages: supports-color: 7.2.0 dev: true + /istanbul-lib-source-maps@5.0.6: + resolution: {integrity: sha512-yg2d+Em4KizZC5niWhQaIomgf5WlL4vOOjZ5xGCmF8SnPE/mDWWXgvRExdcpCgh9lLRRa1/fSYp2ymmbJ1pI+A==} + engines: {node: '>=10'} + dependencies: + '@jridgewell/trace-mapping': 0.3.31 + debug: 4.4.3 + istanbul-lib-coverage: 3.2.2 + transitivePeerDependencies: + - supports-color + dev: true + /istanbul-reports@3.2.0: resolution: {integrity: sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==} engines: {node: '>=8'} @@ -1086,6 +1561,14 @@ packages: istanbul-lib-report: 3.0.1 dev: true + /jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + dev: true + /jju@1.4.0: resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==} dev: true @@ -1094,6 +1577,10 @@ packages: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} dev: true + /js-tokens@9.0.1: + resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==} + dev: true + /jsesc@3.1.0: resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} engines: {node: '>=6'} @@ -1122,124 +1609,6 @@ packages: resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} dev: true - /lightningcss-android-arm64@1.32.0: - resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [android] - requiresBuild: true - dev: true - optional: true - - /lightningcss-darwin-arm64@1.32.0: - resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /lightningcss-darwin-x64@1.32.0: - resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /lightningcss-freebsd-x64@1.32.0: - resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [freebsd] - requiresBuild: true - dev: true - optional: true - - /lightningcss-linux-arm-gnueabihf@1.32.0: - resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==} - engines: {node: '>= 12.0.0'} - cpu: [arm] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /lightningcss-linux-arm64-gnu@1.32.0: - resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /lightningcss-linux-arm64-musl@1.32.0: - resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /lightningcss-linux-x64-gnu@1.32.0: - resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /lightningcss-linux-x64-musl@1.32.0: - resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /lightningcss-win32-arm64-msvc@1.32.0: - resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /lightningcss-win32-x64-msvc@1.32.0: - resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /lightningcss@1.32.0: - resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==} - engines: {node: '>= 12.0.0'} - dependencies: - detect-libc: 2.1.2 - optionalDependencies: - lightningcss-android-arm64: 1.32.0 - lightningcss-darwin-arm64: 1.32.0 - lightningcss-darwin-x64: 1.32.0 - lightningcss-freebsd-x64: 1.32.0 - lightningcss-linux-arm-gnueabihf: 1.32.0 - lightningcss-linux-arm64-gnu: 1.32.0 - lightningcss-linux-arm64-musl: 1.32.0 - lightningcss-linux-x64-gnu: 1.32.0 - lightningcss-linux-x64-musl: 1.32.0 - lightningcss-win32-arm64-msvc: 1.32.0 - lightningcss-win32-x64-msvc: 1.32.0 - dev: true - /local-pkg@1.1.2: resolution: {integrity: sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==} engines: {node: '>=14'} @@ -1253,6 +1622,14 @@ packages: resolution: {integrity: sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==} dev: true + /loupe@3.2.1: + resolution: {integrity: sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==} + dev: true + + /lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + dev: true + /lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: @@ -1266,14 +1643,19 @@ packages: yallist: 4.0.0 dev: true + /lz-string@1.5.0: + resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} + hasBin: true + dev: true + /magic-string@0.30.21: resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} dependencies: '@jridgewell/sourcemap-codec': 1.5.5 dev: true - /magicast@0.5.2: - resolution: {integrity: sha512-E3ZJh4J3S9KfwdjZhe2afj6R9lGIN5Pher1pF39UGrXRqq/VDaGVIGN13BjHd2u8B61hArAGOnso7nBOouW3TQ==} + /magicast@0.3.5: + resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} dependencies: '@babel/parser': 7.29.0 '@babel/types': 7.29.0 @@ -1301,6 +1683,11 @@ packages: brace-expansion: 2.0.2 dev: true + /minipass@7.1.3: + resolution: {integrity: sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==} + engines: {node: '>=16 || 14 >=14.17'} + dev: true + /mlly@1.8.1: resolution: {integrity: sha512-SnL6sNutTwRWWR/vcmCYHSADjiEesp5TGQQ0pXyLhW5IoeibRlF/CbSLailbB3CNqJUk9cVJ9dUDnbD7GrcHBQ==} dependencies: @@ -1333,22 +1720,40 @@ packages: resolution: {integrity: sha512-TdC8FSgHz8Mwtw9g5L4gR/Sh9XhSP/0DEkQxfEFXOpiul5IiHgHan2VhYYb6agDSfp4KuvltmGApc8HMgUrIkA==} dev: true - /obug@2.1.1: - resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} + /package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} dev: true /path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} dev: true + /path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + dev: true + /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: true + /path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + dependencies: + lru-cache: 10.4.3 + minipass: 7.1.3 + dev: true + /pathe@2.0.3: resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} dev: true + /pathval@2.0.1: + resolution: {integrity: sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==} + engines: {node: '>= 14.16'} + dev: true + /picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} dev: true @@ -1390,11 +1795,6 @@ packages: fsevents: 2.3.2 dev: true - /pngjs@7.0.0: - resolution: {integrity: sha512-LKWqWJRhstyYo9pGvgor/ivk2w94eSjE3RGVuzLGlr3NmD8bf7RcYGze1mNdEHRP6TRP6rMuDHk5t44hnTRyow==} - engines: {node: '>=14.19.0'} - dev: true - /postcss@8.5.8: resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} engines: {node: ^10 || ^12 || >=14} @@ -1404,10 +1804,23 @@ packages: source-map-js: 1.2.1 dev: true + /pretty-format@27.5.1: + resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} + engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + dependencies: + ansi-regex: 5.0.1 + ansi-styles: 5.2.0 + react-is: 17.0.2 + dev: true + /quansync@0.2.11: resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==} dev: true + /react-is@17.0.2: + resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} + dev: true + /require-from-string@2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} @@ -1423,29 +1836,39 @@ packages: supports-preserve-symlinks-flag: 1.0.0 dev: true - /rolldown@1.0.0-rc.9: - resolution: {integrity: sha512-9EbgWge7ZH+yqb4d2EnELAntgPTWbfL8ajiTW+SyhJEC4qhBbkCKbqFV4Ge4zmu5ziQuVbWxb/XwLZ+RIO7E8Q==} - engines: {node: ^20.19.0 || >=22.12.0} + /rollup@4.59.0: + resolution: {integrity: sha512-2oMpl67a3zCH9H79LeMcbDhXW/UmWG/y2zuqnF2jQq5uq9TbM9TVyXvA4+t+ne2IIkBdrLpAaRQAvo7YI/Yyeg==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true dependencies: - '@oxc-project/types': 0.115.0 - '@rolldown/pluginutils': 1.0.0-rc.9 + '@types/estree': 1.0.8 optionalDependencies: - '@rolldown/binding-android-arm64': 1.0.0-rc.9 - '@rolldown/binding-darwin-arm64': 1.0.0-rc.9 - '@rolldown/binding-darwin-x64': 1.0.0-rc.9 - '@rolldown/binding-freebsd-x64': 1.0.0-rc.9 - '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.9 - '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.9 - '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.9 - '@rolldown/binding-linux-ppc64-gnu': 1.0.0-rc.9 - '@rolldown/binding-linux-s390x-gnu': 1.0.0-rc.9 - '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.9 - '@rolldown/binding-linux-x64-musl': 1.0.0-rc.9 - '@rolldown/binding-openharmony-arm64': 1.0.0-rc.9 - '@rolldown/binding-wasm32-wasi': 1.0.0-rc.9 - '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.9 - '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.9 + '@rollup/rollup-android-arm-eabi': 4.59.0 + '@rollup/rollup-android-arm64': 4.59.0 + '@rollup/rollup-darwin-arm64': 4.59.0 + '@rollup/rollup-darwin-x64': 4.59.0 + '@rollup/rollup-freebsd-arm64': 4.59.0 + '@rollup/rollup-freebsd-x64': 4.59.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.59.0 + '@rollup/rollup-linux-arm-musleabihf': 4.59.0 + '@rollup/rollup-linux-arm64-gnu': 4.59.0 + '@rollup/rollup-linux-arm64-musl': 4.59.0 + '@rollup/rollup-linux-loong64-gnu': 4.59.0 + '@rollup/rollup-linux-loong64-musl': 4.59.0 + '@rollup/rollup-linux-ppc64-gnu': 4.59.0 + '@rollup/rollup-linux-ppc64-musl': 4.59.0 + '@rollup/rollup-linux-riscv64-gnu': 4.59.0 + '@rollup/rollup-linux-riscv64-musl': 4.59.0 + '@rollup/rollup-linux-s390x-gnu': 4.59.0 + '@rollup/rollup-linux-x64-gnu': 4.59.0 + '@rollup/rollup-linux-x64-musl': 4.59.0 + '@rollup/rollup-openbsd-x64': 4.59.0 + '@rollup/rollup-openharmony-arm64': 4.59.0 + '@rollup/rollup-win32-arm64-msvc': 4.59.0 + '@rollup/rollup-win32-ia32-msvc': 4.59.0 + '@rollup/rollup-win32-x64-gnu': 4.59.0 + '@rollup/rollup-win32-x64-msvc': 4.59.0 + fsevents: 2.3.3 dev: true /semver@6.3.1: @@ -1467,10 +1890,27 @@ packages: hasBin: true dev: true + /shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + dependencies: + shebang-regex: 3.0.0 + dev: true + + /shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + dev: true + /siginfo@2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} dev: true + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + dev: true + /sirv@3.0.2: resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==} engines: {node: '>=18'} @@ -1498,8 +1938,8 @@ packages: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} dev: true - /std-env@4.0.0: - resolution: {integrity: sha512-zUMPtQ/HBY3/50VbpkupYHbRroTRZJPRLvreamgErJVys0ceuzMkD44J/QjqhHjOzK42GQ3QZIeFG1OYfOtKqQ==} + /std-env@3.10.0: + resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} dev: true /string-argv@0.3.2: @@ -1507,11 +1947,49 @@ packages: engines: {node: '>=0.6.19'} dev: true + /string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + dev: true + + /string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.2.0 + dev: true + + /strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + dependencies: + ansi-regex: 5.0.1 + dev: true + + /strip-ansi@7.2.0: + resolution: {integrity: sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==} + engines: {node: '>=12'} + dependencies: + ansi-regex: 6.2.2 + dev: true + /strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} dev: true + /strip-literal@3.1.0: + resolution: {integrity: sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==} + dependencies: + js-tokens: 9.0.1 + dev: true + /supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} @@ -1531,13 +2009,21 @@ packages: engines: {node: '>= 0.4'} dev: true + /test-exclude@7.0.2: + resolution: {integrity: sha512-u9E6A+ZDYdp7a4WnarkXPZOx8Ilz46+kby6p1yZ8zsGTz9gYa6FIS7lj2oezzNKmtdyyJNNmmXDppga5GB7kSw==} + engines: {node: '>=18'} + dependencies: + '@istanbuljs/schema': 0.1.3 + glob: 10.5.0 + minimatch: 10.2.3 + dev: true + /tinybench@2.9.0: resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} dev: true - /tinyexec@1.0.4: - resolution: {integrity: sha512-u9r3uZC0bdpGOXtlxUIdwf9pkmvhqJdrVCH9fapQtgy/OeTTMZ1nqH7agtvEfmGui6e1XxjcdrlxvxJvc3sMqw==} - engines: {node: '>=18'} + /tinyexec@0.3.2: + resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} dev: true /tinyglobby@0.2.15: @@ -1548,8 +2034,18 @@ packages: picomatch: 4.0.3 dev: true - /tinyrainbow@3.1.0: - resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} + /tinypool@1.1.1: + resolution: {integrity: sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==} + engines: {node: ^18.0.0 || >=20.0.0} + dev: true + + /tinyrainbow@2.0.0: + resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==} + engines: {node: '>=14.0.0'} + dev: true + + /tinyspy@4.0.4: + resolution: {integrity: sha512-azl+t0z7pw/z958Gy9svOTuzqIk6xq+NSheJzn5MMWtWTFywIacg2wUlzKFGtt3cthx0r2SxMK0yzJOR0IES7Q==} engines: {node: '>=14.0.0'} dev: true @@ -1558,12 +2054,6 @@ packages: engines: {node: '>=6'} dev: true - /tslib@2.8.1: - resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - requiresBuild: true - dev: true - optional: true - /typescript@5.8.2: resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} engines: {node: '>=14.17'} @@ -1600,7 +2090,32 @@ packages: picocolors: 1.1.1 dev: true - /vite-plugin-dts@4.5.4(@types/node@25.5.0)(typescript@5.9.3)(vite@8.0.0): + /vite-node@3.2.4(@types/node@25.5.0): + resolution: {integrity: sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true + dependencies: + cac: 6.7.14 + debug: 4.4.3 + es-module-lexer: 1.7.0 + pathe: 2.0.3 + vite: 7.3.1(@types/node@25.5.0) + transitivePeerDependencies: + - '@types/node' + - jiti + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml + dev: true + + /vite-plugin-dts@4.5.4(@types/node@25.5.0)(typescript@5.9.3)(vite@7.3.1): resolution: {integrity: sha512-d4sOM8M/8z7vRXHHq/ebbblfaxENjogAAekcfcDCCwAyvGqnPrc7f4NZbvItS+g4WTgerW0xDwSz5qz11JT3vg==} peerDependencies: typescript: '*' @@ -1619,7 +2134,7 @@ packages: local-pkg: 1.1.2 magic-string: 0.30.21 typescript: 5.9.3 - vite: 8.0.0(@types/node@25.5.0) + vite: 7.3.1(@types/node@25.5.0) transitivePeerDependencies: - '@types/node' - rollup @@ -1631,16 +2146,15 @@ packages: engines: {deno: '>=2.0.4', node: '>=20', pnpm: '>=9.10.0'} dev: true - /vite@8.0.0(@types/node@25.5.0): - resolution: {integrity: sha512-fPGaRNj9Zytaf8LEiBhY7Z6ijnFKdzU/+mL8EFBaKr7Vw1/FWcTBAMW0wLPJAGMPX38ZPVCVgLceWiEqeoqL2Q==} + /vite@7.3.1(@types/node@25.5.0): + resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: '@types/node': ^20.19.0 || >=22.12.0 - '@vitejs/devtools': ^0.0.0-alpha.31 - esbuild: ^0.27.0 jiti: '>=1.21.0' less: ^4.0.0 + lightningcss: ^1.21.0 sass: ^1.70.0 sass-embedded: ^1.70.0 stylus: '>=0.54.8' @@ -1651,14 +2165,12 @@ packages: peerDependenciesMeta: '@types/node': optional: true - '@vitejs/devtools': - optional: true - esbuild: - optional: true jiti: optional: true less: optional: true + lightningcss: + optional: true sass: optional: true sass-embedded: @@ -1674,44 +2186,37 @@ packages: yaml: optional: true dependencies: - '@oxc-project/runtime': 0.115.0 '@types/node': 25.5.0 - lightningcss: 1.32.0 + esbuild: 0.27.4 + fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 postcss: 8.5.8 - rolldown: 1.0.0-rc.9 + rollup: 4.59.0 tinyglobby: 0.2.15 optionalDependencies: fsevents: 2.3.3 dev: true - /vitest@4.1.0(@types/node@25.5.0)(@vitest/ui@4.1.0)(vite@8.0.0): - resolution: {integrity: sha512-YbDrMF9jM2Lqc++2530UourxZHmkKLxrs4+mYhEwqWS97WJ7wOYEkcr+QfRgJ3PW9wz3odRijLZjHEaRLTNbqw==} - engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} + /vitest@3.2.4(@types/node@25.5.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4): + resolution: {integrity: sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' - '@opentelemetry/api': ^1.9.0 - '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.1.0 - '@vitest/browser-preview': 4.1.0 - '@vitest/browser-webdriverio': 4.1.0 - '@vitest/ui': 4.1.0 + '@types/debug': ^4.1.12 + '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 + '@vitest/browser': 3.2.4 + '@vitest/ui': 3.2.4 happy-dom: '*' jsdom: '*' - vite: ^6.0.0 || ^7.0.0 || ^8.0.0-0 peerDependenciesMeta: '@edge-runtime/vm': optional: true - '@opentelemetry/api': + '@types/debug': optional: true '@types/node': optional: true - '@vitest/browser-playwright': - optional: true - '@vitest/browser-preview': - optional: true - '@vitest/browser-webdriverio': + '@vitest/browser': optional: true '@vitest/ui': optional: true @@ -1720,36 +2225,59 @@ packages: jsdom: optional: true dependencies: + '@types/chai': 5.2.3 '@types/node': 25.5.0 - '@vitest/expect': 4.1.0 - '@vitest/mocker': 4.1.0(vite@8.0.0) - '@vitest/pretty-format': 4.1.0 - '@vitest/runner': 4.1.0 - '@vitest/snapshot': 4.1.0 - '@vitest/spy': 4.1.0 - '@vitest/ui': 4.1.0(vitest@4.1.0) - '@vitest/utils': 4.1.0 - es-module-lexer: 2.0.0 + '@vitest/browser': 3.2.4(playwright@1.58.2)(vite@7.3.1)(vitest@3.2.4) + '@vitest/expect': 3.2.4 + '@vitest/mocker': 3.2.4(vite@7.3.1) + '@vitest/pretty-format': 3.2.4 + '@vitest/runner': 3.2.4 + '@vitest/snapshot': 3.2.4 + '@vitest/spy': 3.2.4 + '@vitest/ui': 3.2.4(vitest@3.2.4) + '@vitest/utils': 3.2.4 + chai: 5.3.3 + debug: 4.4.3 expect-type: 1.3.0 magic-string: 0.30.21 - obug: 2.1.1 pathe: 2.0.3 picomatch: 4.0.3 - std-env: 4.0.0 + std-env: 3.10.0 tinybench: 2.9.0 - tinyexec: 1.0.4 + tinyexec: 0.3.2 tinyglobby: 0.2.15 - tinyrainbow: 3.1.0 - vite: 8.0.0(@types/node@25.5.0) + tinypool: 1.1.1 + tinyrainbow: 2.0.0 + vite: 7.3.1(@types/node@25.5.0) + vite-node: 3.2.4(@types/node@25.5.0) why-is-node-running: 2.3.0 transitivePeerDependencies: + - jiti + - less + - lightningcss - msw + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml dev: true /vscode-uri@3.1.0: resolution: {integrity: sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==} dev: true + /which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + dependencies: + isexe: 2.0.0 + dev: true + /why-is-node-running@2.3.0: resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} engines: {node: '>=8'} @@ -1759,6 +2287,24 @@ packages: stackback: 0.0.2 dev: true + /wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: true + + /wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + dependencies: + ansi-styles: 6.2.3 + string-width: 5.1.2 + strip-ansi: 7.2.0 + dev: true + /ws@8.19.0: resolution: {integrity: sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==} engines: {node: '>=10.0.0'} From 6c9dc84b9e526bac210532d4d5aadc48a3ed68a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <59501884+LoicE5@users.noreply.github.com> Date: Mon, 16 Mar 2026 23:09:52 +0100 Subject: [PATCH 10/10] fix(scrollspy): guard refresh call with optional chaining --- src/components/scrollspy.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/scrollspy.ts b/src/components/scrollspy.ts index 35fce91d..260fb968 100755 --- a/src/components/scrollspy.ts +++ b/src/components/scrollspy.ts @@ -208,7 +208,7 @@ export default class ScrollSpy extends BaseComponent { // create observer this._observer = new PositionObserver(() => { - requestAnimationFrame(() => this.refresh()); + requestAnimationFrame(() => this.refresh?.()); }, { root: this.scrollTarget, });