diff --git a/deno.lock b/deno.lock index 4ca3d62..4681d61 100644 --- a/deno.lock +++ b/deno.lock @@ -3,6 +3,11 @@ "specifiers": { "jsr:@std/internal@^1.0.9": "1.0.10", "jsr:@std/path@*": "1.1.1", + "npm:@codemirror/basic-setup@0.20": "0.20.0", + "npm:@codemirror/lang-markdown@^6.3.4": "6.5.0", + "npm:@codemirror/state@^6.5.2": "6.5.2", + "npm:@codemirror/theme-one-dark@^6.1.3": "6.1.3", + "npm:@codemirror/view@^6.38.1": "6.38.6", "npm:@lucide/svelte@0.539": "0.539.0_svelte@5.38.2__acorn@8.15.0", "npm:@noble/curves@^1.9.4": "1.9.7", "npm:@noble/hashes@^1.8.0": "1.8.0", @@ -27,6 +32,7 @@ "npm:autoprefixer@^10.4.21": "10.4.21_postcss@8.5.6", "npm:bech32@2": "2.0.0", "npm:class-variance-authority@~0.7.1": "0.7.1", + "npm:codemirror@^6.0.2": "6.0.2", "npm:d3@^7.9.0": "7.9.0_d3-selection@3.0.0", "npm:eslint-plugin-svelte@^3.11.0": "3.11.0_eslint@9.33.0_svelte@5.38.2__acorn@8.15.0_postcss@8.5.6", "npm:flowbite-svelte-icons@2.1": "2.1.1_svelte@5.38.2__acorn@8.15.0_tailwind-merge@3.3.1", @@ -42,6 +48,7 @@ "npm:plantuml-encoder@^1.4.0": "1.4.0", "npm:playwright@^1.50.1": "1.54.1", "npm:playwright@^1.54.1": "1.54.1", + "npm:postcss-import@^16.1.1": "16.1.1_postcss@8.5.6", "npm:postcss-load-config@6": "6.0.1_postcss@8.5.6_yaml@2.8.1", "npm:postcss@^8.5.6": "8.5.6", "npm:prettier-plugin-svelte@^3.4.0": "3.4.0_prettier@3.6.2_svelte@5.38.2__acorn@8.15.0", @@ -114,6 +121,192 @@ "@babel/helper-validator-identifier" ] }, + "@codemirror/autocomplete@0.20.3": { + "integrity": "sha512-lYB+NPGP+LEzAudkWhLfMxhTrxtLILGl938w+RcFrGdrIc54A+UgmCoz+McE3IYRFp4xyQcL4uFJwo+93YdgHw==", + "dependencies": [ + "@codemirror/language@0.20.2", + "@codemirror/state@0.20.1", + "@codemirror/view@0.20.7", + "@lezer/common@0.16.1" + ] + }, + "@codemirror/autocomplete@6.19.1": { + "integrity": "sha512-q6NenYkEy2fn9+JyjIxMWcNjzTL/IhwqfzOut1/G3PrIFkrbl4AL7Wkse5tLrQUUyqGoAKU5+Pi5jnnXxH5HGw==", + "dependencies": [ + "@codemirror/language@6.11.3", + "@codemirror/state@6.5.2", + "@codemirror/view@6.38.6", + "@lezer/common@1.3.0" + ] + }, + "@codemirror/basic-setup@0.20.0": { + "integrity": "sha512-W/ERKMLErWkrVLyP5I8Yh8PXl4r+WFNkdYVSzkXYPQv2RMPSkWpr2BgggiSJ8AHF/q3GuApncDD8I4BZz65fyg==", + "dependencies": [ + "@codemirror/autocomplete@0.20.3", + "@codemirror/commands@0.20.0", + "@codemirror/language@0.20.2", + "@codemirror/lint@0.20.3", + "@codemirror/search@0.20.1", + "@codemirror/state@0.20.1", + "@codemirror/view@0.20.7" + ], + "deprecated": true + }, + "@codemirror/commands@0.20.0": { + "integrity": "sha512-v9L5NNVA+A9R6zaFvaTbxs30kc69F6BkOoiEbeFw4m4I0exmDEKBILN6mK+GksJtvTzGBxvhAPlVFTdQW8GB7Q==", + "dependencies": [ + "@codemirror/language@0.20.2", + "@codemirror/state@0.20.1", + "@codemirror/view@0.20.7", + "@lezer/common@0.16.1" + ] + }, + "@codemirror/commands@6.10.0": { + "integrity": "sha512-2xUIc5mHXQzT16JnyOFkh8PvfeXuIut3pslWGfsGOhxP/lpgRm9HOl/mpzLErgt5mXDovqA0d11P21gofRLb9w==", + "dependencies": [ + "@codemirror/language@6.11.3", + "@codemirror/state@6.5.2", + "@codemirror/view@6.38.6", + "@lezer/common@1.3.0" + ] + }, + "@codemirror/lang-css@6.3.1": { + "integrity": "sha512-kr5fwBGiGtmz6l0LSJIbno9QrifNMUusivHbnA1H6Dmqy4HZFte3UAICix1VuKo0lMPKQr2rqB+0BkKi/S3Ejg==", + "dependencies": [ + "@codemirror/autocomplete@6.19.1", + "@codemirror/language@6.11.3", + "@codemirror/state@6.5.2", + "@lezer/common@1.3.0", + "@lezer/css" + ] + }, + "@codemirror/lang-html@6.4.11": { + "integrity": "sha512-9NsXp7Nwp891pQchI7gPdTwBuSuT3K65NGTHWHNJ55HjYcHLllr0rbIZNdOzas9ztc1EUVBlHou85FFZS4BNnw==", + "dependencies": [ + "@codemirror/autocomplete@6.19.1", + "@codemirror/lang-css", + "@codemirror/lang-javascript", + "@codemirror/language@6.11.3", + "@codemirror/state@6.5.2", + "@codemirror/view@6.38.6", + "@lezer/common@1.3.0", + "@lezer/css", + "@lezer/html" + ] + }, + "@codemirror/lang-javascript@6.2.4": { + "integrity": "sha512-0WVmhp1QOqZ4Rt6GlVGwKJN3KW7Xh4H2q8ZZNGZaP6lRdxXJzmjm4FqvmOojVj6khWJHIb9sp7U/72W7xQgqAA==", + "dependencies": [ + "@codemirror/autocomplete@6.19.1", + "@codemirror/language@6.11.3", + "@codemirror/lint@6.9.1", + "@codemirror/state@6.5.2", + "@codemirror/view@6.38.6", + "@lezer/common@1.3.0", + "@lezer/javascript" + ] + }, + "@codemirror/lang-markdown@6.5.0": { + "integrity": "sha512-0K40bZ35jpHya6FriukbgaleaqzBLZfOh7HuzqbMxBXkbYMJDxfF39c23xOgxFezR+3G+tR2/Mup+Xk865OMvw==", + "dependencies": [ + "@codemirror/autocomplete@6.19.1", + "@codemirror/lang-html", + "@codemirror/language@6.11.3", + "@codemirror/state@6.5.2", + "@codemirror/view@6.38.6", + "@lezer/common@1.3.0", + "@lezer/markdown" + ] + }, + "@codemirror/language@0.20.2": { + "integrity": "sha512-WB3Bnuusw0xhVvhBocieYKwJm04SOk5bPoOEYksVHKHcGHFOaYaw+eZVxR4gIqMMcGzOIUil0FsCmFk8yrhHpw==", + "dependencies": [ + "@codemirror/state@0.20.1", + "@codemirror/view@0.20.7", + "@lezer/common@0.16.1", + "@lezer/highlight@0.16.0", + "@lezer/lr@0.16.3", + "style-mod" + ] + }, + "@codemirror/language@6.11.3": { + "integrity": "sha512-9HBM2XnwDj7fnu0551HkGdrUrrqmYq/WC5iv6nbY2WdicXdGbhR/gfbZOH73Aqj4351alY1+aoG9rCNfiwS1RA==", + "dependencies": [ + "@codemirror/state@6.5.2", + "@codemirror/view@6.38.6", + "@lezer/common@1.3.0", + "@lezer/highlight@1.2.3", + "@lezer/lr@1.4.2", + "style-mod" + ] + }, + "@codemirror/lint@0.20.3": { + "integrity": "sha512-06xUScbbspZ8mKoODQCEx6hz1bjaq9m8W8DxdycWARMiiX1wMtfCh/MoHpaL7ws/KUMwlsFFfp2qhm32oaCvVA==", + "dependencies": [ + "@codemirror/state@0.20.1", + "@codemirror/view@0.20.7", + "crelt" + ] + }, + "@codemirror/lint@6.9.1": { + "integrity": "sha512-te7To1EQHePBQQzasDKWmK2xKINIXpk+xAiSYr9ZN+VB4KaT+/Hi2PEkeErTk5BV3PTz1TLyQL4MtJfPkKZ9sw==", + "dependencies": [ + "@codemirror/state@6.5.2", + "@codemirror/view@6.38.6", + "crelt" + ] + }, + "@codemirror/search@0.20.1": { + "integrity": "sha512-ROe6gRboQU5E4z6GAkNa2kxhXqsGNbeLEisbvzbOeB7nuDYXUZ70vGIgmqPu0tB+1M3F9yWk6W8k2vrFpJaD4Q==", + "dependencies": [ + "@codemirror/state@0.20.1", + "@codemirror/view@0.20.7", + "crelt" + ] + }, + "@codemirror/search@6.5.11": { + "integrity": "sha512-KmWepDE6jUdL6n8cAAqIpRmLPBZ5ZKnicE8oGU/s3QrAVID+0VhLFrzUucVKHG5035/BSykhExDL/Xm7dHthiA==", + "dependencies": [ + "@codemirror/state@6.5.2", + "@codemirror/view@6.38.6", + "crelt" + ] + }, + "@codemirror/state@0.20.1": { + "integrity": "sha512-ms0tlV5A02OK0pFvTtSUGMLkoarzh1F8mr6jy1cD7ucSC2X/VLHtQCxfhdSEGqTYlQF2hoZtmLv+amqhdgbwjQ==" + }, + "@codemirror/state@6.5.2": { + "integrity": "sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==", + "dependencies": [ + "@marijn/find-cluster-break" + ] + }, + "@codemirror/theme-one-dark@6.1.3": { + "integrity": "sha512-NzBdIvEJmx6fjeremiGp3t/okrLPYT0d9orIc7AFun8oZcRk58aejkqhv6spnz4MLAevrKNPMQYXEWMg4s+sKA==", + "dependencies": [ + "@codemirror/language@6.11.3", + "@codemirror/state@6.5.2", + "@codemirror/view@6.38.6", + "@lezer/highlight@1.2.3" + ] + }, + "@codemirror/view@0.20.7": { + "integrity": "sha512-pqEPCb9QFTOtHgAH5XU/oVy9UR/Anj6r+tG5CRmkNVcqSKEPmBU05WtN/jxJCFZBXf6HumzWC9ydE4qstO3TxQ==", + "dependencies": [ + "@codemirror/state@0.20.1", + "style-mod", + "w3c-keyname" + ] + }, + "@codemirror/view@6.38.6": { + "integrity": "sha512-qiS0z1bKs5WOvHIAC0Cybmv4AJSkAXgX5aD6Mqd2epSLlVJsQl8NG23jCVouIgkh4All/mrbdsf2UOLFnJw0tw==", + "dependencies": [ + "@codemirror/state@6.5.2", + "crelt", + "style-mod", + "w3c-keyname" + ] + }, "@emnapi/core@1.4.5": { "integrity": "sha512-XsLw1dEOpkSX/WucdqUhPWP7hDxSvZiY+fsUC14h+FtQ2Ifni4znbBt8punRX+Uj2JG/uDb8nEHVKvrVlvdZ5Q==", "dependencies": [ @@ -515,12 +708,76 @@ "@jridgewell/sourcemap-codec" ] }, + "@lezer/common@0.16.1": { + "integrity": "sha512-qPmG7YTZ6lATyTOAWf8vXE+iRrt1NJd4cm2nJHK+v7X9TsOF6+HtuU/ctaZy2RCrluxDb89hI6KWQ5LfQGQWuA==" + }, + "@lezer/common@1.3.0": { + "integrity": "sha512-L9X8uHCYU310o99L3/MpJKYxPzXPOS7S0NmBaM7UO/x2Kb2WbmMLSkfvdr1KxRIFYOpbY0Jhn7CfLSUDzL8arQ==" + }, + "@lezer/css@1.3.0": { + "integrity": "sha512-pBL7hup88KbI7hXnZV3PQsn43DHy6TWyzuyk2AO9UyoXcDltvIdqWKE1dLL/45JVZ+YZkHe1WVHqO6wugZZWcw==", + "dependencies": [ + "@lezer/common@1.3.0", + "@lezer/highlight@1.2.3", + "@lezer/lr@1.4.2" + ] + }, + "@lezer/highlight@0.16.0": { + "integrity": "sha512-iE5f4flHlJ1g1clOStvXNLbORJoiW4Kytso6ubfYzHnaNo/eo5SKhxs4wv/rtvwZQeZrK3we8S9SyA7OGOoRKQ==", + "dependencies": [ + "@lezer/common@0.16.1" + ] + }, + "@lezer/highlight@1.2.3": { + "integrity": "sha512-qXdH7UqTvGfdVBINrgKhDsVTJTxactNNxLk7+UMwZhU13lMHaOBlJe9Vqp907ya56Y3+ed2tlqzys7jDkTmW0g==", + "dependencies": [ + "@lezer/common@1.3.0" + ] + }, + "@lezer/html@1.3.12": { + "integrity": "sha512-RJ7eRWdaJe3bsiiLLHjCFT1JMk8m1YP9kaUbvu2rMLEoOnke9mcTVDyfOslsln0LtujdWespjJ39w6zo+RsQYw==", + "dependencies": [ + "@lezer/common@1.3.0", + "@lezer/highlight@1.2.3", + "@lezer/lr@1.4.2" + ] + }, + "@lezer/javascript@1.5.4": { + "integrity": "sha512-vvYx3MhWqeZtGPwDStM2dwgljd5smolYD2lR2UyFcHfxbBQebqx8yjmFmxtJ/E6nN6u1D9srOiVWm3Rb4tmcUA==", + "dependencies": [ + "@lezer/common@1.3.0", + "@lezer/highlight@1.2.3", + "@lezer/lr@1.4.2" + ] + }, + "@lezer/lr@0.16.3": { + "integrity": "sha512-pau7um4eAw94BEuuShUIeQDTf3k4Wt6oIUOYxMmkZgDHdqtIcxWND4LRxi8nI9KuT4I1bXQv67BCapkxt7Ywqw==", + "dependencies": [ + "@lezer/common@0.16.1" + ] + }, + "@lezer/lr@1.4.2": { + "integrity": "sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==", + "dependencies": [ + "@lezer/common@1.3.0" + ] + }, + "@lezer/markdown@1.5.1": { + "integrity": "sha512-F3ZFnIfNAOy/jPSk6Q0e3bs7e9grfK/n5zerkKoc5COH6Guy3Zb0vrJwXzdck79K16goBhYBRAvhf+ksqe0cMg==", + "dependencies": [ + "@lezer/common@1.3.0", + "@lezer/highlight@1.2.3" + ] + }, "@lucide/svelte@0.539.0_svelte@5.38.2__acorn@8.15.0": { "integrity": "sha512-OWhw4BhHO+owmOE/ijSNLnw/flbW2/DsLzMHAeM8oEjLsO0xE6glX0ADCDwxKItTs5ZJYssfyGNXxMXrea173w==", "dependencies": [ "svelte" ] }, + "@marijn/find-cluster-break@1.0.2": { + "integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==" + }, "@napi-rs/wasm-runtime@0.2.12": { "integrity": "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==", "dependencies": [ @@ -1519,6 +1776,18 @@ "clsx@2.1.1": { "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==" }, + "codemirror@6.0.2": { + "integrity": "sha512-VhydHotNW5w1UGK0Qj96BwSk/Zqbp9WbnyK2W/eVMv4QyF41INRGpjUhFJY7/uDNuudSc33a/PKr4iDqRduvHw==", + "dependencies": [ + "@codemirror/autocomplete@6.19.1", + "@codemirror/commands@6.10.0", + "@codemirror/language@6.11.3", + "@codemirror/lint@6.9.1", + "@codemirror/search@6.5.11", + "@codemirror/state@6.5.2", + "@codemirror/view@6.38.6" + ] + }, "color-convert@2.0.1": { "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": [ @@ -1550,6 +1819,9 @@ "cookie@0.6.0": { "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==" }, + "crelt@1.0.6": { + "integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==" + }, "cross-spawn@7.0.6": { "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dependencies": [ @@ -2675,6 +2947,9 @@ "picomatch@4.0.3": { "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==" }, + "pify@2.3.0": { + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==" + }, "plantuml-encoder@1.4.0": { "integrity": "sha512-sxMwpDw/ySY1WB2CE3+IdMuEcWibJ72DDOsXLkSmEaSzwEUaYBT6DWgOfBiHGCux4q433X6+OEFWjlVqp7gL6g==" }, @@ -2695,6 +2970,15 @@ "pngjs@5.0.0": { "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==" }, + "postcss-import@16.1.1_postcss@8.5.6": { + "integrity": "sha512-2xVS1NCZAfjtVdvXiyegxzJ447GyqCeEI5V7ApgQVOWnros1p5lGNovJNapwPpMombyFBfqDwt7AD3n2l0KOfQ==", + "dependencies": [ + "postcss", + "postcss-value-parser", + "read-cache", + "resolve" + ] + }, "postcss-load-config@3.1.4_postcss@8.5.6": { "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", "dependencies": [ @@ -2875,6 +3159,12 @@ ], "bin": true }, + "read-cache@1.0.0": { + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dependencies": [ + "pify" + ] + }, "readdirp@4.1.2": { "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==" }, @@ -3012,6 +3302,9 @@ "js-tokens" ] }, + "style-mod@4.1.3": { + "integrity": "sha512-i/n8VsZydrugj3Iuzll8+x/00GH2vnYsk1eomD8QiRrSAeW6ItbCQDtfXCeJHd0iwiNagqjQkvpvREEPtW3IoQ==" + }, "supports-color@7.2.0": { "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dependencies": [ @@ -3302,6 +3595,9 @@ "void-elements@3.1.0": { "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==" }, + "w3c-keyname@2.2.8": { + "integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==" + }, "which-module@2.0.1": { "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==" }, @@ -3558,6 +3854,7 @@ "npm:node-emoji@^2.2.0", "npm:nostr-tools@2.15", "npm:plantuml-encoder@^1.4.0", + "npm:postcss-import@^16.1.1", "npm:qrcode@^1.5.4", "npm:svelte@^5.36.8", "npm:tailwind-merge@^3.3.1", @@ -3565,6 +3862,11 @@ ], "packageJson": { "dependencies": [ + "npm:@codemirror/basic-setup@0.20", + "npm:@codemirror/lang-markdown@^6.3.4", + "npm:@codemirror/state@^6.5.2", + "npm:@codemirror/theme-one-dark@^6.1.3", + "npm:@codemirror/view@^6.38.1", "npm:@lucide/svelte@0.539", "npm:@noble/curves@^1.9.4", "npm:@noble/hashes@^1.8.0", @@ -3589,6 +3891,7 @@ "npm:autoprefixer@^10.4.21", "npm:bech32@2", "npm:class-variance-authority@~0.7.1", + "npm:codemirror@^6.0.2", "npm:d3@^7.9.0", "npm:eslint-plugin-svelte@^3.11.0", "npm:flowbite-svelte-icons@2.1", @@ -3601,6 +3904,7 @@ "npm:nostr-tools@2.15", "npm:plantuml-encoder@^1.4.0", "npm:playwright@^1.50.1", + "npm:postcss-import@^16.1.1", "npm:postcss-load-config@6", "npm:postcss@^8.5.6", "npm:prettier-plugin-svelte@^3.4.0", diff --git a/import_map.json b/import_map.json index d40e581..f5bfb21 100644 --- a/import_map.json +++ b/import_map.json @@ -27,6 +27,7 @@ "qrcode": "npm:qrcode@^1.5.4", "child_process": "node:child_process", "process": "node:process", - "tailwindcss": "npm:tailwindcss@^4.1.11" + "tailwindcss": "npm:tailwindcss@^4.1.11", + "postcss-import": "npm:postcss-import@^16.1.1" } } diff --git a/package.json b/package.json index d0e5a5f..de788bd 100644 --- a/package.json +++ b/package.json @@ -64,6 +64,7 @@ "flowbite-typography": "^1.0.5", "playwright": "^1.50.1", "postcss": "^8.5.6", + "postcss-import": "^16.1.1", "postcss-load-config": "6.x", "prettier": "^3.6.2", "prettier-plugin-svelte": "^3.4.0",