diff --git a/package.json b/package.json index b8ba89e2..79c5f898 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "boot-cell", - "version": "2.0.0-rc.13", + "version": "2.0.0-rc.14", "license": "LGPL-3.0", "author": "shiy2008@gmail.com", "description": "Web Components UI library based on WebCell v3, BootStrap v5, BootStrap Icon v1 & FontAwesome v6", @@ -29,8 +29,10 @@ "classnames": "^2.5.1", "dom-renderer": "^2.6.2", "iterable-observer": "^1.1.0", + "mime": "^4.0.6", "mobx": "^6.13.6", "regenerator-runtime": "^0.14.1", + "shiki": "^3.1.0", "web-cell": "^3.0.3", "web-utility": "^4.4.3" }, @@ -59,12 +61,12 @@ "lint-staged": "^15.4.3", "open-cli": "^8.0.0", "parcel": "~2.13.3", - "prettier": "^3.5.2", + "prettier": "^3.5.3", "ts-jest": "^29.2.6", "ts-node": "^10.9.2", "typedoc": "^0.27.9", - "typedoc-plugin-mdn-links": "^4.0.14", - "typescript": "~5.7.3" + "typedoc-plugin-mdn-links": "^5.0.1", + "typescript": "~5.8.2" }, "scripts": { "prepare": "husky", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ea229300..588b84b5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -19,29 +19,35 @@ importers: version: 2.5.1 dom-renderer: specifier: ^2.6.2 - version: 2.6.2(typescript@5.7.3) + version: 2.6.2(typescript@5.8.2) iterable-observer: specifier: ^1.1.0 version: 1.1.0 + mime: + specifier: ^4.0.6 + version: 4.0.6 mobx: specifier: ^6.13.6 version: 6.13.6 regenerator-runtime: specifier: ^0.14.1 version: 0.14.1 + shiki: + specifier: ^3.1.0 + version: 3.1.0 web-cell: specifier: ^3.0.3 - version: 3.0.3(typescript@5.7.3) + version: 3.0.3(typescript@5.8.2) web-utility: specifier: ^4.4.3 - version: 4.4.3(typescript@5.7.3) + version: 4.4.3(typescript@5.8.2) devDependencies: '@jest/types': specifier: ^29.6.3 version: 29.6.3 '@parcel/config-default': specifier: ~2.13.3 - version: 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(typescript@5.7.3) + version: 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(typescript@5.8.2) '@parcel/packager-ts': specifier: ~2.13.3 version: 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) @@ -50,10 +56,10 @@ importers: version: 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/transformer-typescript-tsc': specifier: ~2.13.3 - version: 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.7.3) + version: 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.8.2) '@parcel/transformer-typescript-types': specifier: ~2.13.3 - version: 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.7.3) + version: 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.8.2) '@types/jest': specifier: ^29.5.14 version: 29.5.14 @@ -71,7 +77,7 @@ importers: version: 3.0.0 jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)) + version: 29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)) less: specifier: ^4.2.2 version: 4.2.2 @@ -83,25 +89,25 @@ importers: version: 8.0.0 parcel: specifier: ~2.13.3 - version: 2.13.3(@swc/helpers@0.5.15)(typescript@5.7.3) + version: 2.13.3(@swc/helpers@0.5.15)(typescript@5.8.2) prettier: - specifier: ^3.5.2 - version: 3.5.2 + specifier: ^3.5.3 + version: 3.5.3 ts-jest: specifier: ^29.2.6 - version: 29.2.6(@babel/core@7.26.9)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.9))(jest@29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)))(typescript@5.7.3) + version: 29.2.6(@babel/core@7.26.9)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.9))(jest@29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)))(typescript@5.8.2) ts-node: specifier: ^10.9.2 - version: 10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3) + version: 10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2) typedoc: specifier: ^0.27.9 - version: 0.27.9(typescript@5.7.3) + version: 0.27.9(typescript@5.8.2) typedoc-plugin-mdn-links: - specifier: ^4.0.14 - version: 4.0.14(typedoc@0.27.9(typescript@5.7.3)) + specifier: ^5.0.1 + version: 5.0.1(typedoc@0.27.9(typescript@5.8.2)) typescript: - specifier: ~5.7.3 - version: 5.7.3 + specifier: ~5.8.2 + version: 5.8.2 packages: @@ -779,12 +785,30 @@ packages: peerDependencies: '@parcel/core': ^2.13.3 + '@shikijs/core@3.1.0': + resolution: {integrity: sha512-1ppAOyg3F18N8Ge9DmJjGqRVswihN33rOgPovR6gUHW17Hw1L4RlRhnmVQcsacSHh0A8IO1FIgNbtTxUFwodmg==} + + '@shikijs/engine-javascript@3.1.0': + resolution: {integrity: sha512-/LwkhW17jYi7uPcdaaSQQDNW+xgrHXarkrxYPoC6WPzH2xW5mFMw12doHXJBqxmYvtcTbaatcv2MkH9+3PU1FA==} + '@shikijs/engine-oniguruma@1.29.2': resolution: {integrity: sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==} + '@shikijs/engine-oniguruma@3.1.0': + resolution: {integrity: sha512-reRgy8VzDPdiDocuGDD60Rk/jLxgcgy+6H4n6jYLeN2Yw5ikasRjQQx8ERXtDM35yg2v/d6KolDBcK8hYYhcmw==} + + '@shikijs/langs@3.1.0': + resolution: {integrity: sha512-hAM//sExPXAXG3ZDWjrmV6Vlw4zlWFOcT1ZXNhFRBwPP27scZu/ZIdZ+TdTgy06zSvyF4KIjnF8j6+ScKGu6ww==} + + '@shikijs/themes@3.1.0': + resolution: {integrity: sha512-A4MJmy9+ydLNbNCtkmdTp8a+ON+MMXoUe1KTkELkyu0+pHGOcbouhNuobhZoK59cL4cOST6CCz1x+kUdkp9UZA==} + '@shikijs/types@1.29.2': resolution: {integrity: sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==} + '@shikijs/types@3.1.0': + resolution: {integrity: sha512-F8e7Fy4ihtcNpJG572BZZC1ErYrBrzJ5Cbc9Zi3REgWry43gIvjJ9lFAoUnuy7Bvy4IFz7grUSxL5edfrrjFEA==} + '@shikijs/vscode-textmate@10.0.2': resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} @@ -797,68 +821,68 @@ packages: '@sinonjs/fake-timers@10.3.0': resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==} - '@swc/core-darwin-arm64@1.10.18': - resolution: {integrity: sha512-FdGqzAIKVQJu8ROlnHElP59XAUsUzCFSNsou+tY/9ba+lhu8R9v0OI5wXiPErrKGZpQFMmx/BPqqhx3X4SuGNg==} + '@swc/core-darwin-arm64@1.11.7': + resolution: {integrity: sha512-3+LhCP2H50CLI6yv/lhOtoZ5B/hi7Q/23dye1KhbSDeDprLTm/KfLJh/iQqwaHUponf5m8C2U0y6DD+HGLz8Yw==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] - '@swc/core-darwin-x64@1.10.18': - resolution: {integrity: sha512-RZ73gZRituL/ZVLgrW6BYnQ5g8tuStG4cLUiPGJsUZpUm0ullSH6lHFvZTCBNFTfpQChG6eEhi2IdG6DwFp1lw==} + '@swc/core-darwin-x64@1.11.7': + resolution: {integrity: sha512-1diWpJqwX1XmOghf9ENFaeRaTtqLiqlZIW56RfOqmeZ7tPp3qS7VygWb9akptBsO5pEA5ZwNgSerD6AJlQcjAw==} engines: {node: '>=10'} cpu: [x64] os: [darwin] - '@swc/core-linux-arm-gnueabihf@1.10.18': - resolution: {integrity: sha512-8iJqI3EkxJuuq21UHoen1VS+QlS23RvynRuk95K+Q2HBjygetztCGGEc+Xelx9a0uPkDaaAtFvds4JMDqb9SAA==} + '@swc/core-linux-arm-gnueabihf@1.11.7': + resolution: {integrity: sha512-MV8+hLREf0NN23NuSKemsjFaWjl/HnqdOkE7uhXTnHzg8WTwp6ddVtU5Yriv15+d/ktfLWPVAOhLHQ4gzaoa8A==} engines: {node: '>=10'} cpu: [arm] os: [linux] - '@swc/core-linux-arm64-gnu@1.10.18': - resolution: {integrity: sha512-8f1kSktWzMB6PG+r8lOlCfXz5E8Qhsmfwonn77T/OfjvGwQaWrcoASh2cdjpk3dydbf8jsKGPQE1lSc7GyjXRQ==} + '@swc/core-linux-arm64-gnu@1.11.7': + resolution: {integrity: sha512-5GNs8ZjHQy/UTSnzzn+gm1RCUpCYo43lsxYOl8mpcnZSfxkNFVpjfylBv0QuJ5qhdfZ2iU55+v4iJCwCMtw0nA==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-arm64-musl@1.10.18': - resolution: {integrity: sha512-4rv+E4VLdgQw6zjbTAauCAEExxChvxMpBUMCiZweTNPKbJJ2dY6BX2WGJ1ea8+RcgqR/Xysj3AFbOz1LBz6dGA==} + '@swc/core-linux-arm64-musl@1.11.7': + resolution: {integrity: sha512-cTydaYBwDbVV5CspwVcCp9IevYWpGD1cF5B5KlBdjmBzxxeWyTAJRtKzn8w5/UJe/MfdAptarpqMPIs2f33YEQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-x64-gnu@1.10.18': - resolution: {integrity: sha512-vTNmyRBVP+sZca+vtwygYPGTNudTU6Gl6XhaZZ7cEUTBr8xvSTgEmYXoK/2uzyXpaTUI4Bmtp1x81cGN0mMoLQ==} + '@swc/core-linux-x64-gnu@1.11.7': + resolution: {integrity: sha512-YAX2KfYPlbDsnZiVMI4ZwotF3VeURUrzD+emJgFf1g26F4eEmslldgnDrKybW7V+bObsH22cDqoy6jmQZgpuPQ==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-linux-x64-musl@1.10.18': - resolution: {integrity: sha512-1TZPReKhFCeX776XaT6wegknfg+g3zODve+r4oslFHI+g7cInfWlxoGNDS3niPKyuafgCdOjme2g3OF+zzxfsQ==} + '@swc/core-linux-x64-musl@1.11.7': + resolution: {integrity: sha512-mYT6FTDZyYx5pailc8xt6ClS2yjKmP8jNHxA9Ce3K21n5qkKilI5M2N7NShwXkd3Ksw3F29wKrg+wvEMXTRY/A==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-win32-arm64-msvc@1.10.18': - resolution: {integrity: sha512-o/2CsaWSN3bkzVQ6DA+BiFKSVEYvhWGA1h+wnL2zWmIDs2Knag54sOEXZkCaf8YQyZesGeXJtPEy9hh/vjJgkA==} + '@swc/core-win32-arm64-msvc@1.11.7': + resolution: {integrity: sha512-uLDQEcv0BHcepypstyxKkNsW6KfLyI5jVxTbcxka+B2UnMcFpvoR87nGt2JYW0grO2SNZPoFz+UnoKL9c6JxpA==} engines: {node: '>=10'} cpu: [arm64] os: [win32] - '@swc/core-win32-ia32-msvc@1.10.18': - resolution: {integrity: sha512-eTPASeJtk4mJDfWiYEiOC6OYUi/N7meHbNHcU8e+aKABonhXrIo/FmnTE8vsUtC6+jakT1TQBdiQ8fzJ1kJVwA==} + '@swc/core-win32-ia32-msvc@1.11.7': + resolution: {integrity: sha512-wiq5G3fRizdxAJVFcon7zpyfbfrb+YShuTy+TqJ4Nf5PC0ueMOXmsmeuyQGApn6dVWtGCyymYQYt77wHeQajdA==} engines: {node: '>=10'} cpu: [ia32] os: [win32] - '@swc/core-win32-x64-msvc@1.10.18': - resolution: {integrity: sha512-1Dud8CDBnc34wkBOboFBQud9YlV1bcIQtKSg7zC8LtwR3h+XAaCayZPkpGmmAlCv1DLQPvkF+s0JcaVC9mfffQ==} + '@swc/core-win32-x64-msvc@1.11.7': + resolution: {integrity: sha512-/zQdqY4fHkSORxEJ2cKtRBOwglvf/8gs6Tl4Q6VMx2zFtFpIOwFQstfY5u8wBNN2Z+PkAzyUCPoi8/cQFK8HLQ==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@swc/core@1.10.18': - resolution: {integrity: sha512-IUWKD6uQYGRy8w2X9EZrtYg1O3SCijlHbCXzMaHQYc1X7yjijQh4H3IVL9ssZZyVp2ZDfQZu4bD5DWxxvpyjvg==} + '@swc/core@1.11.7': + resolution: {integrity: sha512-ICuzjyfz8Hh3U16Mb21uCRJeJd/lUgV999GjgvPhJSISM1L8GDSB5/AMNcwuGs7gFywTKI4vAeeXWyCETUXHAg==} engines: {node: '>=10'} peerDependencies: '@swc/helpers': '*' @@ -872,8 +896,8 @@ packages: '@swc/helpers@0.5.15': resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} - '@swc/types@0.1.17': - resolution: {integrity: sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==} + '@swc/types@0.1.19': + resolution: {integrity: sha512-WkAZaAfj44kh/UFdAQcrMP1I0nwRqpt27u+08LMBYMqmQfwwMofYoMh/48NGkMMRfC4ynpfwRbJuu8ErfNloeA==} '@tokenizer/token@0.3.0': resolution: {integrity: sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==} @@ -920,8 +944,11 @@ packages: '@types/jest@29.5.14': resolution: {integrity: sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==} - '@types/node@22.13.4': - resolution: {integrity: sha512-ywP2X0DYtX3y08eFVx5fNIw7/uIv8hYUKgXoK8oayJlLnKcRfEYCxWMVE1XagUdVtCJlZT1AU4LXEABW+L1Peg==} + '@types/mdast@4.0.4': + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + + '@types/node@22.13.9': + resolution: {integrity: sha512-acBjXdRJ3A6Pb3tqnw9HZmyR3Fiol3aGxRCK1x3d+6CDAMjl7I649wpSd+yNURCjbOUGu9tqtLKnTGxmK6CyGw==} '@types/stack-utils@2.0.3': resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} @@ -938,6 +965,9 @@ packages: '@types/yargs@17.0.33': resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} + '@ungap/structured-clone@1.3.0': + resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + abort-controller@3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} engines: {node: '>=6.5'} @@ -946,8 +976,8 @@ packages: resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} engines: {node: '>=0.4.0'} - acorn@8.14.0: - resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} + acorn@8.14.1: + resolution: {integrity: sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==} engines: {node: '>=0.4.0'} hasBin: true @@ -1076,8 +1106,11 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001700: - resolution: {integrity: sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==} + caniuse-lite@1.0.30001702: + resolution: {integrity: sha512-LoPe/D7zioC0REI5W73PeR1e1MLCipRGq/VkovJnd6Df+QVqT+vT33OXCp8QUd7kA7RZrHWxb1B36OQKI/0gOA==} + + ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} @@ -1091,6 +1124,12 @@ packages: resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} engines: {node: '>=10'} + character-entities-html4@2.1.0: + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} + + character-entities-legacy@3.0.0: + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + chrome-trace-event@1.0.4: resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==} engines: {node: '>=6.0'} @@ -1138,6 +1177,9 @@ packages: colorette@2.0.20: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + comma-separated-tokens@2.0.3: + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + commander@12.1.0: resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} @@ -1223,6 +1265,10 @@ packages: resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==} engines: {node: '>=12'} + dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + detect-libc@1.0.3: resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} engines: {node: '>=0.10'} @@ -1236,6 +1282,9 @@ packages: resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} engines: {node: '>=8'} + devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + diff-sequences@29.6.3: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -1285,8 +1334,8 @@ packages: engines: {node: '>=0.10.0'} hasBin: true - electron-to-chromium@1.5.102: - resolution: {integrity: sha512-eHhqaja8tE/FNpIiBrvBjFV/SSKpyWHLvxuR9dPTdo+3V9ppdLmFB7ZZQ98qNovcngPLYIz0oOBF9P0FfZef5Q==} + electron-to-chromium@1.5.113: + resolution: {integrity: sha512-wjT2O4hX+wdWPJ76gWSkMhcHAV2PTMX+QetUCPYEdCIe+cxmgzzSSiGRCKW8nuh4mwKZlpv0xvoW7OF2X+wmHg==} element-internals-polyfill@1.3.13: resolution: {integrity: sha512-viZ7wJsvh6eFwGQX512zEaccK/c6RRFSerJsdkfe3DW/ZtruvNeOR33fpPZgfXxvqRdU2lK33KM4S6GqaTgVKQ==} @@ -1295,6 +1344,9 @@ packages: resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} engines: {node: '>=12'} + emoji-regex-xs@1.0.0: + resolution: {integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==} + emoji-regex@10.4.0: resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} @@ -1457,9 +1509,18 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} + hast-util-to-html@9.0.5: + resolution: {integrity: sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==} + + hast-util-whitespace@3.0.0: + resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} + html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + html-void-elements@3.0.0: + resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} + htmlnano@2.1.1: resolution: {integrity: sha512-kAERyg/LuNZYmdqgCdYvugyLWNFAm8MWXpQMz1pLpetmCbFwoMxvkSoaAMlFrOC4OKTWI4KlZGT/RsNxg4ghOw==} peerDependencies: @@ -1808,68 +1869,68 @@ packages: resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} engines: {node: '>=6'} - lightningcss-darwin-arm64@1.29.1: - resolution: {integrity: sha512-HtR5XJ5A0lvCqYAoSv2QdZZyoHNttBpa5EP9aNuzBQeKGfbyH5+UipLWvVzpP4Uml5ej4BYs5I9Lco9u1fECqw==} + lightningcss-darwin-arm64@1.29.2: + resolution: {integrity: sha512-cK/eMabSViKn/PG8U/a7aCorpeKLMlK0bQeNHmdb7qUnBkNPnL+oV5DjJUo0kqWsJUapZsM4jCfYItbqBDvlcA==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [darwin] - lightningcss-darwin-x64@1.29.1: - resolution: {integrity: sha512-k33G9IzKUpHy/J/3+9MCO4e+PzaFblsgBjSGlpAaFikeBFm8B/CkO3cKU9oI4g+fjS2KlkLM/Bza9K/aw8wsNA==} + lightningcss-darwin-x64@1.29.2: + resolution: {integrity: sha512-j5qYxamyQw4kDXX5hnnCKMf3mLlHvG44f24Qyi2965/Ycz829MYqjrVg2H8BidybHBp9kom4D7DR5VqCKDXS0w==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [darwin] - lightningcss-freebsd-x64@1.29.1: - resolution: {integrity: sha512-0SUW22fv/8kln2LnIdOCmSuXnxgxVC276W5KLTwoehiO0hxkacBxjHOL5EtHD8BAXg2BvuhsJPmVMasvby3LiQ==} + lightningcss-freebsd-x64@1.29.2: + resolution: {integrity: sha512-wDk7M2tM78Ii8ek9YjnY8MjV5f5JN2qNVO+/0BAGZRvXKtQrBC4/cn4ssQIpKIPP44YXw6gFdpUF+Ps+RGsCwg==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [freebsd] - lightningcss-linux-arm-gnueabihf@1.29.1: - resolution: {integrity: sha512-sD32pFvlR0kDlqsOZmYqH/68SqUMPNj+0pucGxToXZi4XZgZmqeX/NkxNKCPsswAXU3UeYgDSpGhu05eAufjDg==} + lightningcss-linux-arm-gnueabihf@1.29.2: + resolution: {integrity: sha512-IRUrOrAF2Z+KExdExe3Rz7NSTuuJ2HvCGlMKoquK5pjvo2JY4Rybr+NrKnq0U0hZnx5AnGsuFHjGnNT14w26sg==} engines: {node: '>= 12.0.0'} cpu: [arm] os: [linux] - lightningcss-linux-arm64-gnu@1.29.1: - resolution: {integrity: sha512-0+vClRIZ6mmJl/dxGuRsE197o1HDEeeRk6nzycSy2GofC2JsY4ifCRnvUWf/CUBQmlrvMzt6SMQNMSEu22csWQ==} + lightningcss-linux-arm64-gnu@1.29.2: + resolution: {integrity: sha512-KKCpOlmhdjvUTX/mBuaKemp0oeDIBBLFiU5Fnqxh1/DZ4JPZi4evEH7TKoSBFOSOV3J7iEmmBaw/8dpiUvRKlQ==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] - lightningcss-linux-arm64-musl@1.29.1: - resolution: {integrity: sha512-UKMFrG4rL/uHNgelBsDwJcBqVpzNJbzsKkbI3Ja5fg00sgQnHw/VrzUTEc4jhZ+AN2BvQYz/tkHu4vt1kLuJyw==} + lightningcss-linux-arm64-musl@1.29.2: + resolution: {integrity: sha512-Q64eM1bPlOOUgxFmoPUefqzY1yV3ctFPE6d/Vt7WzLW4rKTv7MyYNky+FWxRpLkNASTnKQUaiMJ87zNODIrrKQ==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] - lightningcss-linux-x64-gnu@1.29.1: - resolution: {integrity: sha512-u1S+xdODy/eEtjADqirA774y3jLcm8RPtYztwReEXoZKdzgsHYPl0s5V52Tst+GKzqjebkULT86XMSxejzfISw==} + lightningcss-linux-x64-gnu@1.29.2: + resolution: {integrity: sha512-0v6idDCPG6epLXtBH/RPkHvYx74CVziHo6TMYga8O2EiQApnUPZsbR9nFNrg2cgBzk1AYqEd95TlrsL7nYABQg==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] - lightningcss-linux-x64-musl@1.29.1: - resolution: {integrity: sha512-L0Tx0DtaNUTzXv0lbGCLB/c/qEADanHbu4QdcNOXLIe1i8i22rZRpbT3gpWYsCh9aSL9zFujY/WmEXIatWvXbw==} + lightningcss-linux-x64-musl@1.29.2: + resolution: {integrity: sha512-rMpz2yawkgGT8RULc5S4WiZopVMOFWjiItBT7aSfDX4NQav6M44rhn5hjtkKzB+wMTRlLLqxkeYEtQ3dd9696w==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] - lightningcss-win32-arm64-msvc@1.29.1: - resolution: {integrity: sha512-QoOVnkIEFfbW4xPi+dpdft/zAKmgLgsRHfJalEPYuJDOWf7cLQzYg0DEh8/sn737FaeMJxHZRc1oBreiwZCjog==} + lightningcss-win32-arm64-msvc@1.29.2: + resolution: {integrity: sha512-nL7zRW6evGQqYVu/bKGK+zShyz8OVzsCotFgc7judbt6wnB2KbiKKJwBE4SGoDBQ1O94RjW4asrCjQL4i8Fhbw==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [win32] - lightningcss-win32-x64-msvc@1.29.1: - resolution: {integrity: sha512-NygcbThNBe4JElP+olyTI/doBNGJvLs3bFCRPdvuCcxZCcCZ71B858IHpdm7L1btZex0FvCmM17FK98Y9MRy1Q==} + lightningcss-win32-x64-msvc@1.29.2: + resolution: {integrity: sha512-EdIUW3B2vLuHmv7urfzMI/h2fmlnOQBk1xlsDxkN1tCWKjNFjfLhGxYk8C8mzpSfr+A6jFFIi8fU6LbQGsRWjA==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [win32] - lightningcss@1.29.1: - resolution: {integrity: sha512-FmGoeD4S05ewj+AkhTY+D+myDvXI6eL27FjHIjoyUkO/uw7WZD1fBVs0QxeYWa7E17CUHJaYX/RUGISCtcrG4Q==} + lightningcss@1.29.2: + resolution: {integrity: sha512-6b6gd/RUXKaw5keVdSEtqFVdzWnU5jMxTUjA2bVcMNPLwSQ08Sv/UodBVtETLCn7k4S1Ibxwh7k68IwLZPgKaA==} engines: {node: '>= 12.0.0'} lilconfig@3.1.3: @@ -1930,6 +1991,9 @@ packages: resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} hasBin: true + mdast-util-to-hast@13.2.0: + resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} + mdurl@2.0.0: resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} @@ -1940,6 +2004,21 @@ packages: merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + micromark-util-character@2.1.1: + resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} + + micromark-util-encode@2.0.1: + resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} + + micromark-util-sanitize-uri@2.0.1: + resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} + + micromark-util-symbol@2.0.1: + resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} + + micromark-util-types@2.0.2: + resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} + micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -1949,6 +2028,11 @@ packages: engines: {node: '>=4'} hasBin: true + mime@4.0.6: + resolution: {integrity: sha512-4rGt7rvQHBbaSOF9POGkk1ocRP16Md1x36Xma8sz8h8/vfCUI2OtEIeCqe4Ofes853x4xDoPiFLIT47J5fI/7A==} + engines: {node: '>=16'} + hasBin: true + mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} @@ -2043,6 +2127,9 @@ packages: resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} engines: {node: '>=18'} + oniguruma-to-es@3.1.1: + resolution: {integrity: sha512-bUH8SDvPkH3ho3dvwJwfonjlQ4R80vjyvrU8YpxuROddv55vAEJrTuCuCVUhhsHbtlD9tGGbaNApGQckXhS8iQ==} + open-cli@8.0.0: resolution: {integrity: sha512-3muD3BbfLyzl+aMVSEfn2FfOqGdPYR0O4KNnxXsLEPE2q9OSjBfJAaB6XKbrUzLgymoSMejvb5jpXJfru/Ko2A==} engines: {node: '>=18'} @@ -2154,8 +2241,8 @@ packages: resolution: {integrity: sha512-JcEmHlyLK/o0uGAlj65vgg+7LIms0xKXe60lcDOTU7oVX/3LuEuLwrQpW3VJ7de5TaFKiW4kWkaIpJL42FEgxQ==} engines: {node: '>=12.0.0'} - prettier@3.5.2: - resolution: {integrity: sha512-lc6npv5PH7hVqozBR7lkBNOGXV9vMwROAPlumdBkX0wTbbzPu/U1hk5yL8p2pt4Xoc+2mkT8t/sow2YrV/M5qg==} + prettier@3.5.3: + resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==} engines: {node: '>=14'} hasBin: true @@ -2171,6 +2258,9 @@ packages: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} + property-information@7.0.0: + resolution: {integrity: sha512-7D/qOz/+Y4X/rzSB6jKxKUsQnphO046ei8qxG59mtM3RG3DHgTK81HrxrmoDVINJb8NKT5ZsRbwHvQ6B68Iyhg==} + prr@1.0.1: resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} @@ -2202,6 +2292,15 @@ packages: regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} + regex-recursion@6.0.2: + resolution: {integrity: sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==} + + regex-utilities@2.3.0: + resolution: {integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==} + + regex@6.0.1: + resolution: {integrity: sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==} + require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} @@ -2271,6 +2370,9 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} + shiki@3.1.0: + resolution: {integrity: sha512-LdTNyWQlC5zdCaHdcp1zPA1OVA2ivb+KjGOOnGcy02tGaF5ja+dGibWFH7Ar8YlngUgK/scDqworK18Ys9cbYA==} + signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -2300,6 +2402,9 @@ packages: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} + space-separated-tokens@2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} + sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} @@ -2330,6 +2435,9 @@ packages: string_decoder@1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + stringify-entities@4.0.4: + resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} + strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} @@ -2400,6 +2508,9 @@ packages: resolution: {integrity: sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==} engines: {node: '>=14.16'} + trim-lines@3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + ts-jest@29.2.6: resolution: {integrity: sha512-yTNZVZqc8lSixm+QGVFcPe6+yj7+TWZwIesuOWvfcn4B9bz5x4NDzVCQQjOs7Hfouu36aEqfEbo9Qpo+gq8dDg==} engines: {node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0} @@ -2461,10 +2572,10 @@ packages: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} - typedoc-plugin-mdn-links@4.0.14: - resolution: {integrity: sha512-IDILzJr4OzNb5uAWWRMZYny80Q6jUQerAwskdYbNMwaHMRwsB3+y8oqYYE7/PyH+kJVvJnCC4G2wnAQ3CLdgqA==} + typedoc-plugin-mdn-links@5.0.1: + resolution: {integrity: sha512-eofdcc2nZZpipz/ubjG+7UYMi6Xu95svUwnZ+ClJh6NJdrv7kAOerL9N3iDOpo5kwQeK86GqPWwnv6LUGo5Wrw==} peerDependencies: - typedoc: 0.26.x || 0.27.x + typedoc: 0.27.x || 0.28.x typedoc@0.27.9: resolution: {integrity: sha512-/z585740YHURLl9DN2jCWe6OW7zKYm6VoQ93H0sxZ1cwHQEQrUn5BJrEnkWhfzUdyO+BLGjnKUZ9iz9hKloFDw==} @@ -2473,8 +2584,8 @@ packages: peerDependencies: typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x - typescript@5.7.3: - resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} + typescript@5.8.2: + resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} engines: {node: '>=14.17'} hasBin: true @@ -2488,8 +2599,23 @@ packages: resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} engines: {node: '>=12'} - update-browserslist-db@1.1.2: - resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==} + unist-util-is@6.0.0: + resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} + + unist-util-position@5.0.0: + resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} + + unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + + unist-util-visit-parents@6.0.1: + resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} + + unist-util-visit@5.0.0: + resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} + + update-browserslist-db@1.1.3: + resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' @@ -2505,6 +2631,12 @@ packages: resolution: {integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==} engines: {node: '>=10.12.0'} + vfile-message@4.0.2: + resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} + + vfile@6.0.3: + resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} + walker@1.0.8: resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} @@ -2575,6 +2707,9 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} + zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + snapshots: '@ampproject/remapping@2.3.0': @@ -2792,27 +2927,27 @@ snapshots: '@jest/console@29.7.0': dependencies: '@jest/types': 29.6.3 - '@types/node': 22.13.4 + '@types/node': 22.13.9 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3))': + '@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0 '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.13.4 + '@types/node': 22.13.9 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)) + jest-config: 29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -2837,7 +2972,7 @@ snapshots: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.13.4 + '@types/node': 22.13.9 jest-mock: 29.7.0 '@jest/expect-utils@29.7.0': @@ -2855,7 +2990,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 22.13.4 + '@types/node': 22.13.9 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -2877,7 +3012,7 @@ snapshots: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 22.13.4 + '@types/node': 22.13.9 chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit: 0.1.2 @@ -2947,7 +3082,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 22.13.4 + '@types/node': 22.13.9 '@types/yargs': 17.0.33 chalk: 4.1.2 @@ -3050,14 +3185,14 @@ snapshots: transitivePeerDependencies: - '@parcel/core' - '@parcel/config-default@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(typescript@5.7.3)': + '@parcel/config-default@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(typescript@5.8.2)': dependencies: '@parcel/bundler-default': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/compressor-raw': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/core': 2.13.3(@swc/helpers@0.5.15) '@parcel/namer-default': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/optimizer-css': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) - '@parcel/optimizer-htmlnano': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.7.3) + '@parcel/optimizer-htmlnano': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.8.2) '@parcel/optimizer-image': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/optimizer-svgo': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/optimizer-swc': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15) @@ -3186,17 +3321,17 @@ snapshots: '@parcel/source-map': 2.1.1 '@parcel/utils': 2.13.3 browserslist: 4.24.4 - lightningcss: 1.29.1 + lightningcss: 1.29.2 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - '@parcel/optimizer-htmlnano@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.7.3)': + '@parcel/optimizer-htmlnano@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.8.2)': dependencies: '@parcel/diagnostic': 2.13.3 '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/utils': 2.13.3 - htmlnano: 2.1.1(typescript@5.7.3) + htmlnano: 2.1.1(typescript@5.8.2) nullthrows: 1.1.1 posthtml: 0.16.6 transitivePeerDependencies: @@ -3234,7 +3369,7 @@ snapshots: '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/source-map': 2.1.1 '@parcel/utils': 2.13.3 - '@swc/core': 1.10.18(@swc/helpers@0.5.15) + '@swc/core': 1.11.7(@swc/helpers@0.5.15) nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' @@ -3250,7 +3385,7 @@ snapshots: '@parcel/types': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/utils': 2.13.3 '@parcel/workers': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) - '@swc/core': 1.10.18(@swc/helpers@0.5.15) + '@swc/core': 1.11.7(@swc/helpers@0.5.15) semver: 7.7.1 transitivePeerDependencies: - '@swc/helpers' @@ -3261,7 +3396,7 @@ snapshots: '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/source-map': 2.1.1 '@parcel/utils': 2.13.3 - lightningcss: 1.29.1 + lightningcss: 1.29.2 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' @@ -3421,7 +3556,7 @@ snapshots: '@parcel/source-map': 2.1.1 '@parcel/utils': 2.13.3 browserslist: 4.24.4 - lightningcss: 1.29.1 + lightningcss: 1.29.2 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' @@ -3530,31 +3665,31 @@ snapshots: transitivePeerDependencies: - '@parcel/core' - '@parcel/transformer-typescript-tsc@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.7.3)': + '@parcel/transformer-typescript-tsc@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.8.2)': dependencies: '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/source-map': 2.1.1 - '@parcel/ts-utils': 2.13.3(typescript@5.7.3) - typescript: 5.7.3 + '@parcel/ts-utils': 2.13.3(typescript@5.8.2) + typescript: 5.8.2 transitivePeerDependencies: - '@parcel/core' - '@parcel/transformer-typescript-types@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.7.3)': + '@parcel/transformer-typescript-types@2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(typescript@5.8.2)': dependencies: '@parcel/diagnostic': 2.13.3 '@parcel/plugin': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15)) '@parcel/source-map': 2.1.1 - '@parcel/ts-utils': 2.13.3(typescript@5.7.3) + '@parcel/ts-utils': 2.13.3(typescript@5.8.2) '@parcel/utils': 2.13.3 nullthrows: 1.1.1 - typescript: 5.7.3 + typescript: 5.8.2 transitivePeerDependencies: - '@parcel/core' - '@parcel/ts-utils@2.13.3(typescript@5.7.3)': + '@parcel/ts-utils@2.13.3(typescript@5.8.2)': dependencies: nullthrows: 1.1.1 - typescript: 5.7.3 + typescript: 5.8.2 '@parcel/types-internal@2.13.3': dependencies: @@ -3651,16 +3786,47 @@ snapshots: '@parcel/utils': 2.13.3 nullthrows: 1.1.1 + '@shikijs/core@3.1.0': + dependencies: + '@shikijs/types': 3.1.0 + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.5 + + '@shikijs/engine-javascript@3.1.0': + dependencies: + '@shikijs/types': 3.1.0 + '@shikijs/vscode-textmate': 10.0.2 + oniguruma-to-es: 3.1.1 + '@shikijs/engine-oniguruma@1.29.2': dependencies: '@shikijs/types': 1.29.2 '@shikijs/vscode-textmate': 10.0.2 + '@shikijs/engine-oniguruma@3.1.0': + dependencies: + '@shikijs/types': 3.1.0 + '@shikijs/vscode-textmate': 10.0.2 + + '@shikijs/langs@3.1.0': + dependencies: + '@shikijs/types': 3.1.0 + + '@shikijs/themes@3.1.0': + dependencies: + '@shikijs/types': 3.1.0 + '@shikijs/types@1.29.2': dependencies: '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 + '@shikijs/types@3.1.0': + dependencies: + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + '@shikijs/vscode-textmate@10.0.2': {} '@sinclair/typebox@0.27.8': {} @@ -3673,51 +3839,51 @@ snapshots: dependencies: '@sinonjs/commons': 3.0.1 - '@swc/core-darwin-arm64@1.10.18': + '@swc/core-darwin-arm64@1.11.7': optional: true - '@swc/core-darwin-x64@1.10.18': + '@swc/core-darwin-x64@1.11.7': optional: true - '@swc/core-linux-arm-gnueabihf@1.10.18': + '@swc/core-linux-arm-gnueabihf@1.11.7': optional: true - '@swc/core-linux-arm64-gnu@1.10.18': + '@swc/core-linux-arm64-gnu@1.11.7': optional: true - '@swc/core-linux-arm64-musl@1.10.18': + '@swc/core-linux-arm64-musl@1.11.7': optional: true - '@swc/core-linux-x64-gnu@1.10.18': + '@swc/core-linux-x64-gnu@1.11.7': optional: true - '@swc/core-linux-x64-musl@1.10.18': + '@swc/core-linux-x64-musl@1.11.7': optional: true - '@swc/core-win32-arm64-msvc@1.10.18': + '@swc/core-win32-arm64-msvc@1.11.7': optional: true - '@swc/core-win32-ia32-msvc@1.10.18': + '@swc/core-win32-ia32-msvc@1.11.7': optional: true - '@swc/core-win32-x64-msvc@1.10.18': + '@swc/core-win32-x64-msvc@1.11.7': optional: true - '@swc/core@1.10.18(@swc/helpers@0.5.15)': + '@swc/core@1.11.7(@swc/helpers@0.5.15)': dependencies: '@swc/counter': 0.1.3 - '@swc/types': 0.1.17 + '@swc/types': 0.1.19 optionalDependencies: - '@swc/core-darwin-arm64': 1.10.18 - '@swc/core-darwin-x64': 1.10.18 - '@swc/core-linux-arm-gnueabihf': 1.10.18 - '@swc/core-linux-arm64-gnu': 1.10.18 - '@swc/core-linux-arm64-musl': 1.10.18 - '@swc/core-linux-x64-gnu': 1.10.18 - '@swc/core-linux-x64-musl': 1.10.18 - '@swc/core-win32-arm64-msvc': 1.10.18 - '@swc/core-win32-ia32-msvc': 1.10.18 - '@swc/core-win32-x64-msvc': 1.10.18 + '@swc/core-darwin-arm64': 1.11.7 + '@swc/core-darwin-x64': 1.11.7 + '@swc/core-linux-arm-gnueabihf': 1.11.7 + '@swc/core-linux-arm64-gnu': 1.11.7 + '@swc/core-linux-arm64-musl': 1.11.7 + '@swc/core-linux-x64-gnu': 1.11.7 + '@swc/core-linux-x64-musl': 1.11.7 + '@swc/core-win32-arm64-msvc': 1.11.7 + '@swc/core-win32-ia32-msvc': 1.11.7 + '@swc/core-win32-x64-msvc': 1.11.7 '@swc/helpers': 0.5.15 '@swc/counter@0.1.3': {} @@ -3726,7 +3892,7 @@ snapshots: dependencies: tslib: 2.8.1 - '@swc/types@0.1.17': + '@swc/types@0.1.19': dependencies: '@swc/counter': 0.1.3 @@ -3763,7 +3929,7 @@ snapshots: '@types/graceful-fs@4.1.9': dependencies: - '@types/node': 22.13.4 + '@types/node': 22.13.9 '@types/hast@3.0.4': dependencies: @@ -3784,7 +3950,11 @@ snapshots: expect: 29.7.0 pretty-format: 29.7.0 - '@types/node@22.13.4': + '@types/mdast@4.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/node@22.13.9': dependencies: undici-types: 6.20.0 @@ -3800,15 +3970,17 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 + '@ungap/structured-clone@1.3.0': {} + abort-controller@3.0.0: dependencies: event-target-shim: 5.0.1 acorn-walk@8.3.4: dependencies: - acorn: 8.14.0 + acorn: 8.14.1 - acorn@8.14.0: {} + acorn@8.14.1: {} ansi-escapes@4.3.2: dependencies: @@ -3925,10 +4097,10 @@ snapshots: browserslist@4.24.4: dependencies: - caniuse-lite: 1.0.30001700 - electron-to-chromium: 1.5.102 + caniuse-lite: 1.0.30001702 + electron-to-chromium: 1.5.113 node-releases: 2.0.19 - update-browserslist-db: 1.1.2(browserslist@4.24.4) + update-browserslist-db: 1.1.3(browserslist@4.24.4) bs-logger@0.2.6: dependencies: @@ -3955,7 +4127,9 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001700: {} + caniuse-lite@1.0.30001702: {} + + ccount@2.0.1: {} chalk@4.1.2: dependencies: @@ -3966,6 +4140,10 @@ snapshots: char-regex@1.0.2: {} + character-entities-html4@2.1.0: {} + + character-entities-legacy@3.0.0: {} + chrome-trace-event@1.0.4: {} ci-info@3.9.0: {} @@ -4003,6 +4181,8 @@ snapshots: colorette@2.0.20: {} + comma-separated-tokens@2.0.3: {} + commander@12.1.0: {} commander@13.1.0: {} @@ -4015,22 +4195,22 @@ snapshots: dependencies: is-what: 3.14.1 - cosmiconfig@9.0.0(typescript@5.7.3): + cosmiconfig@9.0.0(typescript@5.8.2): dependencies: env-paths: 2.2.1 import-fresh: 3.3.1 js-yaml: 4.1.0 parse-json: 5.2.0 optionalDependencies: - typescript: 5.7.3 + typescript: 5.8.2 - create-jest@29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)): + create-jest@29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)) + jest-config: 29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -4059,9 +4239,9 @@ snapshots: dependencies: ms: 2.1.3 - declarative-shadow-dom-polyfill@0.4.0(typescript@5.7.3): + declarative-shadow-dom-polyfill@0.4.0(typescript@5.8.2): dependencies: - typescript: 5.7.3 + typescript: 5.8.2 dedent@1.5.3: {} @@ -4076,23 +4256,29 @@ snapshots: define-lazy-prop@3.0.0: {} + dequal@2.0.3: {} + detect-libc@1.0.3: {} detect-libc@2.0.3: {} detect-newline@3.1.0: {} + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + diff-sequences@29.6.3: {} diff@4.0.2: {} - dom-renderer@2.6.2(typescript@5.7.3): + dom-renderer@2.6.2(typescript@5.8.2): dependencies: - declarative-shadow-dom-polyfill: 0.4.0(typescript@5.7.3) + declarative-shadow-dom-polyfill: 0.4.0(typescript@5.8.2) scheduler-polyfill: 1.3.0 tslib: 2.8.1 web-streams-polyfill: 4.1.0 - web-utility: 4.4.3(typescript@5.7.3) + web-utility: 4.4.3(typescript@5.8.2) transitivePeerDependencies: - typescript @@ -4140,12 +4326,14 @@ snapshots: dependencies: jake: 10.9.2 - electron-to-chromium@1.5.102: {} + electron-to-chromium@1.5.113: {} element-internals-polyfill@1.3.13: {} emittery@0.13.1: {} + emoji-regex-xs@1.0.0: {} + emoji-regex@10.4.0: {} emoji-regex@8.0.0: {} @@ -4288,11 +4476,31 @@ snapshots: dependencies: function-bind: 1.1.2 + hast-util-to-html@9.0.5: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + ccount: 2.0.1 + comma-separated-tokens: 2.0.3 + hast-util-whitespace: 3.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.2.0 + property-information: 7.0.0 + space-separated-tokens: 2.0.2 + stringify-entities: 4.0.4 + zwitch: 2.0.4 + + hast-util-whitespace@3.0.0: + dependencies: + '@types/hast': 3.0.4 + html-escaper@2.0.2: {} - htmlnano@2.1.1(typescript@5.7.3): + html-void-elements@3.0.0: {} + + htmlnano@2.1.1(typescript@5.8.2): dependencies: - cosmiconfig: 9.0.0(typescript@5.7.3) + cosmiconfig: 9.0.0(typescript@5.8.2) posthtml: 0.16.6 timsort: 0.3.0 transitivePeerDependencies: @@ -4459,7 +4667,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.13.4 + '@types/node': 22.13.9 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.3 @@ -4479,16 +4687,16 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)): + jest-cli@29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)) + '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)) + create-jest: 29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)) exit: 0.1.2 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)) + jest-config: 29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -4498,7 +4706,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)): + jest-config@29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)): dependencies: '@babel/core': 7.26.9 '@jest/test-sequencer': 29.7.0 @@ -4523,8 +4731,8 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 22.13.4 - ts-node: 10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3) + '@types/node': 22.13.9 + ts-node: 10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -4553,7 +4761,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.13.4 + '@types/node': 22.13.9 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -4563,7 +4771,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.9 - '@types/node': 22.13.4 + '@types/node': 22.13.9 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -4602,7 +4810,7 @@ snapshots: jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 22.13.4 + '@types/node': 22.13.9 jest-util: 29.7.0 jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): @@ -4637,7 +4845,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.13.4 + '@types/node': 22.13.9 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.11 @@ -4665,7 +4873,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.13.4 + '@types/node': 22.13.9 chalk: 4.1.2 cjs-module-lexer: 1.4.3 collect-v8-coverage: 1.0.2 @@ -4711,7 +4919,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 22.13.4 + '@types/node': 22.13.9 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -4730,7 +4938,7 @@ snapshots: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.13.4 + '@types/node': 22.13.9 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -4739,17 +4947,17 @@ snapshots: jest-worker@29.7.0: dependencies: - '@types/node': 22.13.4 + '@types/node': 22.13.9 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)): + jest@29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)) + '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)) '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)) + jest-cli: 29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -4791,50 +4999,50 @@ snapshots: leven@3.1.0: {} - lightningcss-darwin-arm64@1.29.1: + lightningcss-darwin-arm64@1.29.2: optional: true - lightningcss-darwin-x64@1.29.1: + lightningcss-darwin-x64@1.29.2: optional: true - lightningcss-freebsd-x64@1.29.1: + lightningcss-freebsd-x64@1.29.2: optional: true - lightningcss-linux-arm-gnueabihf@1.29.1: + lightningcss-linux-arm-gnueabihf@1.29.2: optional: true - lightningcss-linux-arm64-gnu@1.29.1: + lightningcss-linux-arm64-gnu@1.29.2: optional: true - lightningcss-linux-arm64-musl@1.29.1: + lightningcss-linux-arm64-musl@1.29.2: optional: true - lightningcss-linux-x64-gnu@1.29.1: + lightningcss-linux-x64-gnu@1.29.2: optional: true - lightningcss-linux-x64-musl@1.29.1: + lightningcss-linux-x64-musl@1.29.2: optional: true - lightningcss-win32-arm64-msvc@1.29.1: + lightningcss-win32-arm64-msvc@1.29.2: optional: true - lightningcss-win32-x64-msvc@1.29.1: + lightningcss-win32-x64-msvc@1.29.2: optional: true - lightningcss@1.29.1: + lightningcss@1.29.2: dependencies: - detect-libc: 1.0.3 + detect-libc: 2.0.3 optionalDependencies: - lightningcss-darwin-arm64: 1.29.1 - lightningcss-darwin-x64: 1.29.1 - lightningcss-freebsd-x64: 1.29.1 - lightningcss-linux-arm-gnueabihf: 1.29.1 - lightningcss-linux-arm64-gnu: 1.29.1 - lightningcss-linux-arm64-musl: 1.29.1 - lightningcss-linux-x64-gnu: 1.29.1 - lightningcss-linux-x64-musl: 1.29.1 - lightningcss-win32-arm64-msvc: 1.29.1 - lightningcss-win32-x64-msvc: 1.29.1 + lightningcss-darwin-arm64: 1.29.2 + lightningcss-darwin-x64: 1.29.2 + lightningcss-freebsd-x64: 1.29.2 + lightningcss-linux-arm-gnueabihf: 1.29.2 + lightningcss-linux-arm64-gnu: 1.29.2 + lightningcss-linux-arm64-musl: 1.29.2 + lightningcss-linux-x64-gnu: 1.29.2 + lightningcss-linux-x64-musl: 1.29.2 + lightningcss-win32-arm64-msvc: 1.29.2 + lightningcss-win32-x64-msvc: 1.29.2 lilconfig@3.1.3: {} @@ -4928,12 +5136,41 @@ snapshots: punycode.js: 2.3.1 uc.micro: 2.1.0 + mdast-util-to-hast@13.2.0: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@ungap/structured-clone': 1.3.0 + devlop: 1.1.0 + micromark-util-sanitize-uri: 2.0.1 + trim-lines: 3.0.1 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + mdurl@2.0.0: {} meow@12.1.1: {} merge-stream@2.0.0: {} + micromark-util-character@2.1.1: + dependencies: + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-encode@2.0.1: {} + + micromark-util-sanitize-uri@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-encode: 2.0.1 + micromark-util-symbol: 2.0.1 + + micromark-util-symbol@2.0.1: {} + + micromark-util-types@2.0.2: {} + micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -4942,6 +5179,8 @@ snapshots: mime@1.6.0: optional: true + mime@4.0.6: {} + mimic-fn@2.1.0: {} mimic-fn@4.0.0: {} @@ -5033,6 +5272,12 @@ snapshots: dependencies: mimic-function: 5.0.1 + oniguruma-to-es@3.1.1: + dependencies: + emoji-regex-xs: 1.0.0 + regex: 6.0.1 + regex-recursion: 6.0.2 + open-cli@8.0.0: dependencies: file-type: 18.7.0 @@ -5064,9 +5309,9 @@ snapshots: p-try@2.2.0: {} - parcel@2.13.3(@swc/helpers@0.5.15)(typescript@5.7.3): + parcel@2.13.3(@swc/helpers@0.5.15)(typescript@5.8.2): dependencies: - '@parcel/config-default': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(typescript@5.7.3) + '@parcel/config-default': 2.13.3(@parcel/core@2.13.3(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(typescript@5.8.2) '@parcel/core': 2.13.3(@swc/helpers@0.5.15) '@parcel/diagnostic': 2.13.3 '@parcel/events': 2.13.3 @@ -5152,7 +5397,7 @@ snapshots: posthtml-parser: 0.11.0 posthtml-render: 3.0.0 - prettier@3.5.2: {} + prettier@3.5.3: {} pretty-format@29.7.0: dependencies: @@ -5167,6 +5412,8 @@ snapshots: kleur: 3.0.3 sisteransi: 1.0.5 + property-information@7.0.0: {} + prr@1.0.1: optional: true @@ -5194,6 +5441,16 @@ snapshots: regenerator-runtime@0.14.1: {} + regex-recursion@6.0.2: + dependencies: + regex-utilities: 2.3.0 + + regex-utilities@2.3.0: {} + + regex@6.0.1: + dependencies: + regex-utilities: 2.3.0 + require-directory@2.1.1: {} resolve-cwd@3.0.0: @@ -5244,6 +5501,17 @@ snapshots: shebang-regex@3.0.0: {} + shiki@3.1.0: + dependencies: + '@shikijs/core': 3.1.0 + '@shikijs/engine-javascript': 3.1.0 + '@shikijs/engine-oniguruma': 3.1.0 + '@shikijs/langs': 3.1.0 + '@shikijs/themes': 3.1.0 + '@shikijs/types': 3.1.0 + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + signal-exit@3.0.7: {} signal-exit@4.1.0: {} @@ -5269,6 +5537,8 @@ snapshots: source-map@0.6.1: {} + space-separated-tokens@2.0.2: {} + sprintf-js@1.0.3: {} srcset@4.0.0: {} @@ -5300,6 +5570,11 @@ snapshots: dependencies: safe-buffer: 5.2.1 + stringify-entities@4.0.4: + dependencies: + character-entities-html4: 2.1.0 + character-entities-legacy: 3.0.0 + strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 @@ -5361,18 +5636,20 @@ snapshots: '@tokenizer/token': 0.3.0 ieee754: 1.2.1 - ts-jest@29.2.6(@babel/core@7.26.9)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.9))(jest@29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)))(typescript@5.7.3): + trim-lines@3.0.1: {} + + ts-jest@29.2.6(@babel/core@7.26.9)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.9))(jest@29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)))(typescript@5.8.2): dependencies: bs-logger: 0.2.6 ejs: 3.1.10 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@22.13.4)(ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3)) + jest: 29.7.0(@types/node@22.13.9)(ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 semver: 7.7.1 - typescript: 5.7.3 + typescript: 5.8.2 yargs-parser: 21.1.1 optionalDependencies: '@babel/core': 7.26.9 @@ -5380,25 +5657,25 @@ snapshots: '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.26.9) - ts-node@10.9.2(@swc/core@1.10.18(@swc/helpers@0.5.15))(@types/node@22.13.4)(typescript@5.7.3): + ts-node@10.9.2(@swc/core@1.11.7(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.8.2): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 22.13.4 - acorn: 8.14.0 + '@types/node': 22.13.9 + acorn: 8.14.1 acorn-walk: 8.3.4 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 5.7.3 + typescript: 5.8.2 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: - '@swc/core': 1.10.18(@swc/helpers@0.5.15) + '@swc/core': 1.11.7(@swc/helpers@0.5.15) tslib@2.8.1: {} @@ -5412,20 +5689,20 @@ snapshots: type-fest@2.19.0: {} - typedoc-plugin-mdn-links@4.0.14(typedoc@0.27.9(typescript@5.7.3)): + typedoc-plugin-mdn-links@5.0.1(typedoc@0.27.9(typescript@5.8.2)): dependencies: - typedoc: 0.27.9(typescript@5.7.3) + typedoc: 0.27.9(typescript@5.8.2) - typedoc@0.27.9(typescript@5.7.3): + typedoc@0.27.9(typescript@5.8.2): dependencies: '@gerrit0/mini-shiki': 1.27.2 lunr: 2.3.9 markdown-it: 14.1.0 minimatch: 9.0.5 - typescript: 5.7.3 + typescript: 5.8.2 yaml: 2.7.0 - typescript@5.7.3: {} + typescript@5.8.2: {} uc.micro@2.1.0: {} @@ -5435,7 +5712,30 @@ snapshots: dependencies: crypto-random-string: 4.0.0 - update-browserslist-db@1.1.2(browserslist@4.24.4): + unist-util-is@6.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-position@5.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-stringify-position@4.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-parents@6.0.1: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + + unist-util-visit@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + update-browserslist-db@1.1.3(browserslist@4.24.4): dependencies: browserslist: 4.24.4 escalade: 3.2.0 @@ -5451,31 +5751,41 @@ snapshots: '@types/istanbul-lib-coverage': 2.0.6 convert-source-map: 2.0.0 + vfile-message@4.0.2: + dependencies: + '@types/unist': 3.0.3 + unist-util-stringify-position: 4.0.0 + + vfile@6.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile-message: 4.0.2 + walker@1.0.8: dependencies: makeerror: 1.0.12 weak-lru-cache@1.2.2: {} - web-cell@3.0.3(typescript@5.7.3): + web-cell@3.0.3(typescript@5.8.2): dependencies: '@swc/helpers': 0.5.15 - dom-renderer: 2.6.2(typescript@5.7.3) + dom-renderer: 2.6.2(typescript@5.8.2) mobx: 6.13.6 regenerator-runtime: 0.14.1 - web-utility: 4.4.3(typescript@5.7.3) + web-utility: 4.4.3(typescript@5.8.2) transitivePeerDependencies: - happy-dom - typescript web-streams-polyfill@4.1.0: {} - web-utility@4.4.3(typescript@5.7.3): + web-utility@4.4.3(typescript@5.8.2): dependencies: '@swc/helpers': 0.5.15 element-internals-polyfill: 1.3.13 regenerator-runtime: 0.14.1 - typescript: 5.7.3 + typescript: 5.8.2 which@2.0.2: dependencies: @@ -5521,3 +5831,5 @@ snapshots: yn@3.1.1: {} yocto-queue@0.1.0: {} + + zwitch@2.0.4: {} diff --git a/source/Content/CodeBlock.module.less b/source/Content/CodeBlock.module.less new file mode 100644 index 00000000..5cb77d11 --- /dev/null +++ b/source/Content/CodeBlock.module.less @@ -0,0 +1,4 @@ +.code pre { + margin: 0; + padding: 1rem; +} diff --git a/source/Content/CodeBlock.tsx b/source/Content/CodeBlock.tsx new file mode 100644 index 00000000..2535402d --- /dev/null +++ b/source/Content/CodeBlock.tsx @@ -0,0 +1,82 @@ +import MIME from 'mime'; +import { computed, observable } from 'mobx'; +import { codeToHtml } from 'shiki'; +import { + attribute, + component, + observer, + reaction, + WebCell, + WebCellProps +} from 'web-cell'; + +import { IconButton } from '../Form'; +import * as styles from './CodeBlock.module.less'; + +export interface CodeBlockProps extends WebCellProps { + name?: string; + value: string; + language: string; + theme?: string; +} + +export interface CodeBlock extends WebCell {} + +@component({ tagName: 'code-block' }) +@observer +export class CodeBlock extends HTMLElement implements WebCell { + @attribute + @observable + accessor name = ''; + + @observable + accessor value = ''; + + @attribute + @observable + accessor language = ''; + + @attribute + @observable + accessor theme = ''; + + @observable + accessor markup = ''; + + @computed + get dataURI() { + return `data:${MIME.getType(this.name)};base64,${btoa(this.value)}`; + } + + @reaction(({ value, language, theme }) => value + language + theme) + async connectedCallback() { + if (this.value) + this.markup = await codeToHtml(this.value, { + lang: this.language, + theme: this.theme + }); + } + + render() { + const { name, dataURI, markup } = this; + + return ( + <> + {name && ( +
+ +
+ )} +
+ + ); + } +} diff --git a/source/Content/index.ts b/source/Content/index.ts index adea883d..2360d1eb 100644 --- a/source/Content/index.ts +++ b/source/Content/index.ts @@ -6,3 +6,4 @@ export * from './Card'; export * from './MediaObject'; export * from './Accordion'; export * from './Tabs'; +export * from './CodeBlock'; diff --git a/source/Form/RangeInput.tsx b/source/Form/RangeInput.tsx new file mode 100644 index 00000000..a6fdbda4 --- /dev/null +++ b/source/Form/RangeInput.tsx @@ -0,0 +1,92 @@ +import { JsxChildren } from 'dom-renderer'; +import { observable } from 'mobx'; +import { + attribute, + component, + formField, + observer, + WebCellProps, + WebField +} from 'web-cell'; + +export interface RangeInputProps extends WebCellProps { + icon?: JsxChildren | ((itemValue: number) => JsxChildren); +} + +export interface RangeInput extends WebField {} + +@component({ tagName: 'range-input', mode: 'open' }) +@formField +@observer +export class RangeInput + extends HTMLElement + implements WebField +{ + @attribute + @observable + accessor type = 'range'; + + @attribute + @observable + accessor min: number | undefined; + + @attribute + @observable + accessor max: number | undefined; + + @attribute + @observable + accessor step = 1; + + @observable + accessor icon: RangeInputProps['icon'] | undefined; + + connectedCallback() { + this.classList.add('d-inline-block', 'position-relative'); + } + + handleChange = ({ currentTarget }: Event) => { + this.value = (currentTarget as HTMLInputElement).value; + + this.emit('change'); + }; + + renderItem(index: number) { + const { icon, step, value } = this; + const fullValue = step * index; + const itemValue = Math.max(Math.min(+value - fullValue, step), 0); + + return ( +
  • + {typeof icon === 'function' ? icon(itemValue) : icon} +
  • + ); + } + + render() { + const { icon, min, max = icon ? 5 : 100, value = min || 0 } = this; + + return ( + <> + + +
      + {Array.from({ length: max }, (_, index) => + this.renderItem(index) + )} +
    + + ); + } +} diff --git a/source/Form/index.ts b/source/Form/index.ts index e15f6115..d3186711 100644 --- a/source/Form/index.ts +++ b/source/Form/index.ts @@ -1,5 +1,6 @@ export * from './Form'; export * from './Button'; export * from './ButtonGroup'; +export * from './RangeInput'; export * from './FilePicker'; export * from './FileUploader'; diff --git a/source/global.d.ts b/source/global.d.ts new file mode 100644 index 00000000..9a0ab8b3 --- /dev/null +++ b/source/global.d.ts @@ -0,0 +1,8 @@ +declare module '*.css' { + const map: Record; + export = map; +} +declare module '*.less' { + const map: Record; + export = map; +} diff --git a/test/index.tsx b/test/index.tsx index f10dbeeb..c36f8a08 100644 --- a/test/index.tsx +++ b/test/index.tsx @@ -7,7 +7,8 @@ import { FileModel, FilePicker, FileUploader, - FormControl + FormControl, + RangeInput } from '../source/Form'; configure({ enforceActions: 'never' }); @@ -32,8 +33,12 @@ const Content = () => (

    Regular

    - {/*

    Star

    - */} +

    Star

    + (value ? '★' : '☆')} + />
    diff --git a/v1/Form/ScoreRange.tsx b/v1/Form/ScoreRange.tsx deleted file mode 100644 index 0e13f7e7..00000000 --- a/v1/Form/ScoreRange.tsx +++ /dev/null @@ -1,63 +0,0 @@ -import { - WebFieldProps, - component, - mixinForm, - watch, - attribute, - on, - createCell -} from 'web-cell'; - -export interface ScoreRangeProps extends WebFieldProps { - max?: number; - emptyIcon?: string; - fullIcon?: string; -} - -@component({ - tagName: 'score-range', - style: { - ':host span': { - display: 'inline-block', - fontSize: '1.5rem', - lineHeight: '1.5rem', - width: '1.5rem', - textAlign: 'center', - cursor: 'pointer', - '-moz-user-select': 'none', - '-webkit-user-select': 'none', - '-ms-user-select': 'none', - 'user-select': 'none' - }, - ':host(:disabled) span': { - cursor: 'not-allowed' - } - } -}) -export class ScoreRange extends mixinForm() { - @attribute - @watch - max = 5; - - @attribute - @watch - emptyIcon = '☆'; - - @attribute - @watch - fullIcon = '★'; - - @on('click', ':host span') - handleClick({ target }: MouseEvent) { - if (!this.state.disabled) - this.value = (target as HTMLElement).dataset.count; - } - - render({ max, value, fullIcon, emptyIcon }: ScoreRangeProps) { - return Array.from(new Array(max), (_, index) => ( - - {+value > index ? fullIcon : emptyIcon} - - )); - } -}