From 85f00d12f98bf8212bf1e1d73c7cfe65a1abd4c5 Mon Sep 17 00:00:00 2001 From: Kacper Kula Date: Sat, 17 May 2025 19:24:49 +0100 Subject: [PATCH 1/2] chore: splitting styles into separate SCSS files --- .gitignore | 1 + esbuild.config.mjs | 20 +- package.json | 1 + pnpm-lock.yaml | 485 +++++++++++++++++++++++++++++++- src/styles/core.scss | 97 +++++++ src/styles/csvEditor.scss | 35 +++ src/styles/inlineQueries.scss | 15 + src/styles/listView.scss | 15 + src/styles/main.scss | 6 + src/styles/obsidianMinimal.scss | 8 + src/styles/syntaxHighlight.scss | 113 ++++++++ styles.css | 298 -------------------- 12 files changed, 788 insertions(+), 306 deletions(-) create mode 100644 src/styles/core.scss create mode 100644 src/styles/csvEditor.scss create mode 100644 src/styles/inlineQueries.scss create mode 100644 src/styles/listView.scss create mode 100644 src/styles/main.scss create mode 100644 src/styles/obsidianMinimal.scss create mode 100644 src/styles/syntaxHighlight.scss delete mode 100644 styles.css diff --git a/.gitignore b/.gitignore index 164a81a..878c21e 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ docs/.vitepress/dist docs/.vitepress/cache coverage/ dist/ +styles.css diff --git a/esbuild.config.mjs b/esbuild.config.mjs index 775d0b8..a73226b 100644 --- a/esbuild.config.mjs +++ b/esbuild.config.mjs @@ -4,6 +4,7 @@ import builtins from "builtin-modules"; import { readFileSync } from 'fs'; import { join } from 'path'; import { polyfillNode } from 'esbuild-plugin-polyfill-node' +import { sassPlugin } from 'esbuild-sass-plugin' const banner = `/* THIS IS A GENERATED/BUNDLED FILE BY ESBUILD @@ -117,9 +118,26 @@ const context = await esbuild.context({ } }); +const stylesContext = await esbuild.context({ + entryPoints: ['src/styles/main.scss'], + outfile: './styles.css', + bundle: true, + minify: true, + sourcemap: true, + plugins: [sassPlugin({ + sourceMap: true + })], + logLevel: 'info' +}) + + if (prod) { await context.rebuild(); + await stylesContext.rebuild(); process.exit(0); } else { - await context.watch(); + await Promise.all([ + context.watch(), + stylesContext.watch() + ]) } \ No newline at end of file diff --git a/package.json b/package.json index a8be0c7..a470e0f 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "electron-rebuild": "^3.2.9", "esbuild": "0.25.4", "esbuild-plugin-replace": "^1.4.0", + "esbuild-sass-plugin": "^3.3.1", "jest": "^29.7.0", "obsidian": "^1.8.7", "prettier": "3.5.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c6f9827..5e4fd93 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -123,6 +123,9 @@ importers: esbuild-plugin-replace: specifier: ^1.4.0 version: 1.4.0 + esbuild-sass-plugin: + specifier: ^3.3.1 + version: 3.3.1(esbuild@0.25.4)(sass-embedded@1.89.0) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.15.12) @@ -143,7 +146,7 @@ importers: version: 5.8.3 vitepress: specifier: ^1.6.3 - version: 1.6.3(@algolia/client-search@5.24.0)(@types/node@22.15.12)(postcss@8.5.3)(search-insights@2.17.3)(typescript@5.8.3) + version: 1.6.3(@algolia/client-search@5.24.0)(@types/node@22.15.12)(postcss@8.5.3)(sass-embedded@1.89.0)(sass@1.89.0)(search-insights@2.17.3)(typescript@5.8.3) vue: specifier: ^3.5.13 version: 3.5.13(typescript@5.8.3) @@ -393,6 +396,9 @@ packages: '@bcoe/v8-coverage@0.2.3': resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + '@bufbuild/protobuf@2.4.0': + resolution: {integrity: sha512-RN9M76x7N11QRihKovEglEjjVCQEA9PRBVnDgk9xw8JHLrcUrp4FpAVSPSH91cNbcTft3u2vpLN4GMbiKY9PJw==} + '@codemirror/language@6.11.0': resolution: {integrity: sha512-A7+f++LodNNc1wGgoRDTt78cOwWm9KVezApgjOMp1W4hM0898nsqBXwF+sbePE7ZRcjN7Sa1Z5m2oN27XkmEjQ==} @@ -918,6 +924,88 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} deprecated: This functionality has been moved to @npmcli/fs + '@parcel/watcher-android-arm64@2.5.1': + resolution: {integrity: sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [android] + + '@parcel/watcher-darwin-arm64@2.5.1': + resolution: {integrity: sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [darwin] + + '@parcel/watcher-darwin-x64@2.5.1': + resolution: {integrity: sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [darwin] + + '@parcel/watcher-freebsd-x64@2.5.1': + resolution: {integrity: sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [freebsd] + + '@parcel/watcher-linux-arm-glibc@2.5.1': + resolution: {integrity: sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==} + engines: {node: '>= 10.0.0'} + cpu: [arm] + os: [linux] + + '@parcel/watcher-linux-arm-musl@2.5.1': + resolution: {integrity: sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==} + engines: {node: '>= 10.0.0'} + cpu: [arm] + os: [linux] + + '@parcel/watcher-linux-arm64-glibc@2.5.1': + resolution: {integrity: sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + + '@parcel/watcher-linux-arm64-musl@2.5.1': + resolution: {integrity: sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + + '@parcel/watcher-linux-x64-glibc@2.5.1': + resolution: {integrity: sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + + '@parcel/watcher-linux-x64-musl@2.5.1': + resolution: {integrity: sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + + '@parcel/watcher-win32-arm64@2.5.1': + resolution: {integrity: sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [win32] + + '@parcel/watcher-win32-ia32@2.5.1': + resolution: {integrity: sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==} + engines: {node: '>= 10.0.0'} + cpu: [ia32] + os: [win32] + + '@parcel/watcher-win32-x64@2.5.1': + resolution: {integrity: sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [win32] + + '@parcel/watcher@2.5.1': + resolution: {integrity: sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==} + engines: {node: '>= 10.0.0'} + '@rollup/rollup-android-arm-eabi@4.40.2': resolution: {integrity: sha512-JkdNEq+DFxZfUwxvB58tHMHBHVgX23ew41g1OQinthJ+ryhdRk67O31S7sYw8u2lTjHUPFxwar07BBt1KHp/hg==} cpu: [arm] @@ -1522,6 +1610,9 @@ packages: bser@2.1.1: resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} + buffer-builder@0.2.0: + resolution: {integrity: sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg==} + buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} @@ -1588,6 +1679,10 @@ packages: character-entities-legacy@3.0.0: resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + chownr@2.0.0: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} @@ -1640,6 +1735,9 @@ packages: resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} hasBin: true + colorjs.io@0.5.2: + resolution: {integrity: sha512-twmVoizEW7ylZSN32OgKdXRmo1qg+wT5/6C3xu5b9QsWzSFAhHLn2xd8ro0diCsKfCj1RdaTP/nrcW+vAoQPIw==} + comlink@4.4.2: resolution: {integrity: sha512-OxGdvBmJuNKSCMO4NTl1L47VRp6xn2wG4F/2hYzB6tiCb709otOxtEYCSvK80PtjODfXXZu8ds+Nw5kVCjqd2g==} @@ -1717,6 +1815,11 @@ packages: 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'} + hasBin: true + detect-libc@2.0.4: resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} engines: {node: '>=8'} @@ -1804,6 +1907,12 @@ packages: esbuild-plugin-replace@1.4.0: resolution: {integrity: sha512-lP3ZAyzyRa5JXoOd59lJbRKNObtK8pJ/RO7o6vdjwLi71GfbL32NR22ZuS7/cLZkr10/L1lutoLma8E4DLngYg==} + esbuild-sass-plugin@3.3.1: + resolution: {integrity: sha512-SnO1ls+d52n6j8gRRpjexXI8MsHEaumS0IdDHaYM29Y6gakzZYMls6i9ql9+AWMSQk/eryndmUpXEgT34QrX1A==} + peerDependencies: + esbuild: '>=0.20.1' + sass-embedded: ^1.71.1 + esbuild@0.21.5: resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} engines: {node: '>=12'} @@ -2127,6 +2236,9 @@ packages: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} + immutable@5.1.2: + resolution: {integrity: sha512-qHKXW1q6liAk1Oys6umoaZbDRqjcjgSrbnrifHsfsttza7zcvRAsL7mMV6xWcyhwQy7Xj5v4hhbr6b+iDYwlmQ==} + import-fresh@3.3.1: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} @@ -2645,6 +2757,9 @@ packages: node-addon-api@3.2.1: resolution: {integrity: sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==} + node-addon-api@7.1.1: + resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} + node-api-version@0.1.4: resolution: {integrity: sha512-KGXihXdUChwJAOHO53bv9/vXcLmdUsZ6jIptbvYvkpKfth+r7jw44JkVxQFA3kX5nQjzjmGu1uAu/xNNLNlI5g==} @@ -2864,6 +2979,10 @@ packages: resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} engines: {node: '>= 6'} + readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} + engines: {node: '>= 14.18.0'} + regex-recursion@6.0.2: resolution: {integrity: sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==} @@ -2932,12 +3051,18 @@ packages: run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + rxjs@7.8.2: + resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} + safari-14-idb-fix@1.0.6: resolution: {integrity: sha512-oTEQOdMwRX+uCtWCKT1nx2gAeSdpr8elg/2gcaKUH00SJU2xWESfkx11nmXwTRHy7xfQoj1o4TTQvdmuBosTnA==} safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + safe-identifier@0.4.2: + resolution: {integrity: sha512-6pNbSMW6OhAi9j+N8V+U715yBQsaWJ7eyEUaOrawX+isg5ZxhUlV1NipNtgaKHmFGiABwt+ZF04Ii+3Xjkg+8w==} + safe-regex-test@1.1.0: resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} engines: {node: '>= 0.4'} @@ -2945,6 +3070,136 @@ packages: safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + sass-embedded-android-arm64@1.89.0: + resolution: {integrity: sha512-pr4R3p5R+Ul9ZA5nzYbBJQFJXW6dMGzgpNBhmaToYDgDhmNX5kg0mZAUlGLHvisLdTiR6oEfDDr9QI6tnD2nqA==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [android] + + sass-embedded-android-arm@1.89.0: + resolution: {integrity: sha512-s6jxkEZQQrtyIGZX6Sbcu7tEixFG2VkqFgrX11flm/jZex7KaxnZtFace+wnYAgHqzzYpx0kNzJUpT+GXxm8CA==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [android] + + sass-embedded-android-ia32@1.89.0: + resolution: {integrity: sha512-GoNnNGYmp1F0ZMHqQbAurlQsjBMZKtDd5H60Ruq86uQFdnuNqQ9wHKJsJABxMnjfAn60IjefytM5PYTMcAmbfA==} + engines: {node: '>=14.0.0'} + cpu: [ia32] + os: [android] + + sass-embedded-android-riscv64@1.89.0: + resolution: {integrity: sha512-di+i4KkKAWTNksaQYTqBEERv46qV/tvv14TPswEfak7vcTQ2pj2mvV4KGjLYfU2LqRkX/NTXix9KFthrzFN51Q==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [android] + + sass-embedded-android-x64@1.89.0: + resolution: {integrity: sha512-1cRRDAnmAS1wLaxfFf6PCHu9sKW8FNxdM7ZkanwxO9mztrCu/uvfqTmaurY9+RaKvPus7sGYFp46/TNtl/wRjg==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [android] + + sass-embedded-darwin-arm64@1.89.0: + resolution: {integrity: sha512-EUNUzI0UkbQ6dASPyf09S3x7fNT54PjyD594ZGTY14Yh4qTuacIj27ckLmreAJNNu5QxlbhyYuOtz+XN5bMMxA==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [darwin] + + sass-embedded-darwin-x64@1.89.0: + resolution: {integrity: sha512-23R8zSuB31Fq/MYpmQ38UR2C26BsYb66VVpJgWmWl/N+sgv/+l9ECuSPMbYNgM3vb9TP9wk9dgL6KkiCS5tAyg==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [darwin] + + sass-embedded-linux-arm64@1.89.0: + resolution: {integrity: sha512-g9Lp57qyx51ttKj0AN/edV43Hu1fBObvD7LpYwVfs6u3I95r0Adi90KujzNrUqXxJVmsfUwseY8kA8zvcRjhYA==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [linux] + + sass-embedded-linux-arm@1.89.0: + resolution: {integrity: sha512-KAzA1XD74d8/fiJXxVnLfFwfpmD2XqUJZz+DL6ZAPNLH1sb+yCP7brktaOyClDc/MBu61JERdHaJjIZhfX0Yqw==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [linux] + + sass-embedded-linux-ia32@1.89.0: + resolution: {integrity: sha512-5fxBeXyvBr3pb+vyrx9V6yd7QDRXkAPbwmFVVhjqshBABOXelLysEFea7xokh/tM8JAAQ4O8Ls3eW3Eojb477g==} + engines: {node: '>=14.0.0'} + cpu: [ia32] + os: [linux] + + sass-embedded-linux-musl-arm64@1.89.0: + resolution: {integrity: sha512-50oelrOtN64u15vJN9uJryIuT0+UPjyeoq0zdWbY8F7LM9294Wf+Idea+nqDUWDCj1MHndyPFmR1mjeuRouJhw==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [linux] + + sass-embedded-linux-musl-arm@1.89.0: + resolution: {integrity: sha512-0Q1JeEU4/tzH7fwAwarfIh+Swn3aXG/jPhVsZpbR1c1VzkeaPngmXdmLJcVXsdb35tjk84DuYcFtJlE1HYGw4Q==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [linux] + + sass-embedded-linux-musl-ia32@1.89.0: + resolution: {integrity: sha512-ILWqpTd+0RdsSw977iVAJf4CLetIbcQgLQf17ycS1N4StZKVRZs1bBfZhg/f/HU/4p5HondPAwepgJepZZdnFA==} + engines: {node: '>=14.0.0'} + cpu: [ia32] + os: [linux] + + sass-embedded-linux-musl-riscv64@1.89.0: + resolution: {integrity: sha512-n2V+Tdjj7SAuiuElJYhWiHjjB1YU0cuFvL1/m5K+ecdNStfHFWIzvBT6/vzQnBOWjI4eZECNVuQ8GwGWCufZew==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [linux] + + sass-embedded-linux-musl-x64@1.89.0: + resolution: {integrity: sha512-KOHJdouBK3SLJKZLnFYzuxs3dn+6jaeO3p4p1JUYAcVfndcvh13Sg2sLGfOfpg7Og6ws2Nnqnx0CyL26jPJ7ag==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [linux] + + sass-embedded-linux-riscv64@1.89.0: + resolution: {integrity: sha512-0A/UWeKX6MYhVLWLkdX3NPKHO+mvIwzaf6TxGCy3vS3TODWaeDUeBhHShAr7YlOKv5xRGxf7Gx7FXCPV0mUyMA==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [linux] + + sass-embedded-linux-x64@1.89.0: + resolution: {integrity: sha512-dRBoOFPDWctHPYK3hTk3YzyX/icVrXiw7oOjbtpaDr6JooqIWBe16FslkWyvQzdmfOFy80raKVjgoqT7DsznkQ==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [linux] + + sass-embedded-win32-arm64@1.89.0: + resolution: {integrity: sha512-RnlVZ14hC/W7ubzvhqnbGfjU5PFNoFP/y5qycgCy+Mezb0IKbWvZ2Lyzux8TbL3OIjOikkNpfXoNQrX706WLAA==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [win32] + + sass-embedded-win32-ia32@1.89.0: + resolution: {integrity: sha512-eFe9VMNG+90nuoE3eXDy+38+uEHGf7xcqalq5+0PVZfR+H9RlaEbvIUNflZV94+LOH8Jb4lrfuekhHgWDJLfSg==} + engines: {node: '>=14.0.0'} + cpu: [ia32] + os: [win32] + + sass-embedded-win32-x64@1.89.0: + resolution: {integrity: sha512-AaGpr5R6MLCuSvkvDdRq49ebifwLcuGPk0/10hbYw9nh3jpy2/CylYubQpIpR4yPcuD1wFwFqufTXC3HJYGb0g==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [win32] + + sass-embedded@1.89.0: + resolution: {integrity: sha512-EDrK1el9zdgJFpocCGlxatDWaP18tJBWoM1hxzo2KJBvjdmBichXI6O6KlQrigvQPO3uJ8DfmFmAAx7s7CG6uw==} + engines: {node: '>=16.0.0'} + hasBin: true + + sass@1.89.0: + resolution: {integrity: sha512-ld+kQU8YTdGNjOLfRWBzewJpU5cwEv/h5yyqlSeJcj6Yh8U4TDA9UA5FPicqDz/xgRPWRSYIQNiFks21TbA9KQ==} + engines: {node: '>=14.0.0'} + hasBin: true + search-insights@2.17.3: resolution: {integrity: sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==} @@ -3088,6 +3343,14 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + sync-child-process@1.0.2: + resolution: {integrity: sha512-8lD+t2KrrScJ/7KXCSyfhT3/hRq78rC0wBFqNJXv3mZyn6hW2ypM05JmlSvtqRbeq6jqA94oHbxAr2vYsJ8vDA==} + engines: {node: '>=16.0.0'} + + sync-message-port@1.1.3: + resolution: {integrity: sha512-GTt8rSKje5FilG+wEdfCkOcLL7LWqpMlr2c3LRuKt/YXxcJ52aGSbGBAdI4L3aaqfrBt6y711El53ItyH1NWzg==} + engines: {node: '>=16.0.0'} + tabbable@6.2.0: resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} @@ -3243,6 +3506,9 @@ packages: resolution: {integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==} engines: {node: '>=10.12.0'} + varint@6.0.0: + resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==} + vfile-message@4.0.2: resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} @@ -3673,6 +3939,8 @@ snapshots: '@bcoe/v8-coverage@0.2.3': {} + '@bufbuild/protobuf@2.4.0': {} + '@codemirror/language@6.11.0': dependencies: '@codemirror/state': 6.5.2 @@ -4160,6 +4428,67 @@ snapshots: mkdirp: 1.0.4 rimraf: 3.0.2 + '@parcel/watcher-android-arm64@2.5.1': + optional: true + + '@parcel/watcher-darwin-arm64@2.5.1': + optional: true + + '@parcel/watcher-darwin-x64@2.5.1': + optional: true + + '@parcel/watcher-freebsd-x64@2.5.1': + optional: true + + '@parcel/watcher-linux-arm-glibc@2.5.1': + optional: true + + '@parcel/watcher-linux-arm-musl@2.5.1': + optional: true + + '@parcel/watcher-linux-arm64-glibc@2.5.1': + optional: true + + '@parcel/watcher-linux-arm64-musl@2.5.1': + optional: true + + '@parcel/watcher-linux-x64-glibc@2.5.1': + optional: true + + '@parcel/watcher-linux-x64-musl@2.5.1': + optional: true + + '@parcel/watcher-win32-arm64@2.5.1': + optional: true + + '@parcel/watcher-win32-ia32@2.5.1': + optional: true + + '@parcel/watcher-win32-x64@2.5.1': + optional: true + + '@parcel/watcher@2.5.1': + dependencies: + detect-libc: 1.0.3 + is-glob: 4.0.3 + micromatch: 4.0.8 + node-addon-api: 7.1.1 + optionalDependencies: + '@parcel/watcher-android-arm64': 2.5.1 + '@parcel/watcher-darwin-arm64': 2.5.1 + '@parcel/watcher-darwin-x64': 2.5.1 + '@parcel/watcher-freebsd-x64': 2.5.1 + '@parcel/watcher-linux-arm-glibc': 2.5.1 + '@parcel/watcher-linux-arm-musl': 2.5.1 + '@parcel/watcher-linux-arm64-glibc': 2.5.1 + '@parcel/watcher-linux-arm64-musl': 2.5.1 + '@parcel/watcher-linux-x64-glibc': 2.5.1 + '@parcel/watcher-linux-x64-musl': 2.5.1 + '@parcel/watcher-win32-arm64': 2.5.1 + '@parcel/watcher-win32-ia32': 2.5.1 + '@parcel/watcher-win32-x64': 2.5.1 + optional: true + '@rollup/rollup-android-arm-eabi@4.40.2': optional: true @@ -4575,9 +4904,9 @@ snapshots: - eslint - supports-color - '@vitejs/plugin-vue@5.2.3(vite@5.4.19(@types/node@22.15.12))(vue@3.5.13(typescript@5.8.3))': + '@vitejs/plugin-vue@5.2.3(vite@5.4.19(@types/node@22.15.12)(sass-embedded@1.89.0)(sass@1.89.0))(vue@3.5.13(typescript@5.8.3))': dependencies: - vite: 5.4.19(@types/node@22.15.12) + vite: 5.4.19(@types/node@22.15.12)(sass-embedded@1.89.0)(sass@1.89.0) vue: 3.5.13(typescript@5.8.3) '@vue/compiler-core@3.5.13': @@ -4870,6 +5199,8 @@ snapshots: dependencies: node-int64: 0.4.0 + buffer-builder@0.2.0: {} + buffer-from@1.1.2: {} buffer@5.7.1: @@ -4952,6 +5283,10 @@ snapshots: character-entities-legacy@3.0.0: {} + chokidar@4.0.3: + dependencies: + readdirp: 4.1.2 + chownr@2.0.0: {} ci-info@3.9.0: {} @@ -4990,6 +5325,8 @@ snapshots: color-support@1.1.3: {} + colorjs.io@0.5.2: {} + comlink@4.4.2: {} comma-separated-tokens@2.0.3: {} @@ -5057,6 +5394,9 @@ snapshots: dequal@2.0.3: {} + detect-libc@1.0.3: + optional: true + detect-libc@2.0.4: {} detect-newline@3.1.0: {} @@ -5146,6 +5486,14 @@ snapshots: dependencies: magic-string: 0.25.9 + esbuild-sass-plugin@3.3.1(esbuild@0.25.4)(sass-embedded@1.89.0): + dependencies: + esbuild: 0.25.4 + resolve: 1.22.10 + safe-identifier: 0.4.2 + sass: 1.89.0 + sass-embedded: 1.89.0 + esbuild@0.21.5: optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 @@ -5576,6 +5924,8 @@ snapshots: ignore@5.3.2: {} + immutable@5.1.2: {} + import-fresh@3.3.1: dependencies: parent-module: 1.0.1 @@ -6270,6 +6620,9 @@ snapshots: node-addon-api@3.2.1: {} + node-addon-api@7.1.1: + optional: true + node-api-version@0.1.4: dependencies: semver: 7.7.1 @@ -6485,6 +6838,8 @@ snapshots: string_decoder: 1.3.0 util-deprecate: 1.0.2 + readdirp@4.1.2: {} + regex-recursion@6.0.2: dependencies: regex-utilities: 2.3.0 @@ -6564,10 +6919,16 @@ snapshots: dependencies: queue-microtask: 1.2.3 + rxjs@7.8.2: + dependencies: + tslib: 2.8.1 + safari-14-idb-fix@1.0.6: {} safe-buffer@5.2.1: {} + safe-identifier@0.4.2: {} + safe-regex-test@1.1.0: dependencies: call-bound: 1.0.4 @@ -6577,6 +6938,106 @@ snapshots: safer-buffer@2.1.2: optional: true + sass-embedded-android-arm64@1.89.0: + optional: true + + sass-embedded-android-arm@1.89.0: + optional: true + + sass-embedded-android-ia32@1.89.0: + optional: true + + sass-embedded-android-riscv64@1.89.0: + optional: true + + sass-embedded-android-x64@1.89.0: + optional: true + + sass-embedded-darwin-arm64@1.89.0: + optional: true + + sass-embedded-darwin-x64@1.89.0: + optional: true + + sass-embedded-linux-arm64@1.89.0: + optional: true + + sass-embedded-linux-arm@1.89.0: + optional: true + + sass-embedded-linux-ia32@1.89.0: + optional: true + + sass-embedded-linux-musl-arm64@1.89.0: + optional: true + + sass-embedded-linux-musl-arm@1.89.0: + optional: true + + sass-embedded-linux-musl-ia32@1.89.0: + optional: true + + sass-embedded-linux-musl-riscv64@1.89.0: + optional: true + + sass-embedded-linux-musl-x64@1.89.0: + optional: true + + sass-embedded-linux-riscv64@1.89.0: + optional: true + + sass-embedded-linux-x64@1.89.0: + optional: true + + sass-embedded-win32-arm64@1.89.0: + optional: true + + sass-embedded-win32-ia32@1.89.0: + optional: true + + sass-embedded-win32-x64@1.89.0: + optional: true + + sass-embedded@1.89.0: + dependencies: + '@bufbuild/protobuf': 2.4.0 + buffer-builder: 0.2.0 + colorjs.io: 0.5.2 + immutable: 5.1.2 + rxjs: 7.8.2 + supports-color: 8.1.1 + sync-child-process: 1.0.2 + varint: 6.0.0 + optionalDependencies: + sass-embedded-android-arm: 1.89.0 + sass-embedded-android-arm64: 1.89.0 + sass-embedded-android-ia32: 1.89.0 + sass-embedded-android-riscv64: 1.89.0 + sass-embedded-android-x64: 1.89.0 + sass-embedded-darwin-arm64: 1.89.0 + sass-embedded-darwin-x64: 1.89.0 + sass-embedded-linux-arm: 1.89.0 + sass-embedded-linux-arm64: 1.89.0 + sass-embedded-linux-ia32: 1.89.0 + sass-embedded-linux-musl-arm: 1.89.0 + sass-embedded-linux-musl-arm64: 1.89.0 + sass-embedded-linux-musl-ia32: 1.89.0 + sass-embedded-linux-musl-riscv64: 1.89.0 + sass-embedded-linux-musl-x64: 1.89.0 + sass-embedded-linux-riscv64: 1.89.0 + sass-embedded-linux-x64: 1.89.0 + sass-embedded-win32-arm64: 1.89.0 + sass-embedded-win32-ia32: 1.89.0 + sass-embedded-win32-x64: 1.89.0 + + sass@1.89.0: + dependencies: + chokidar: 4.0.3 + immutable: 5.1.2 + source-map-js: 1.2.1 + optionalDependencies: + '@parcel/watcher': 2.5.1 + search-insights@2.17.3: {} semver@6.3.1: {} @@ -6711,6 +7172,12 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} + sync-child-process@1.0.2: + dependencies: + sync-message-port: 1.1.3 + + sync-message-port@1.1.3: {} + tabbable@6.2.0: {} tar@6.2.1: @@ -6855,6 +7322,8 @@ snapshots: '@types/istanbul-lib-coverage': 2.0.6 convert-source-map: 2.0.0 + varint@6.0.0: {} + vfile-message@4.0.2: dependencies: '@types/unist': 3.0.3 @@ -6865,7 +7334,7 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite@5.4.19(@types/node@22.15.12): + vite@5.4.19(@types/node@22.15.12)(sass-embedded@1.89.0)(sass@1.89.0): dependencies: esbuild: 0.21.5 postcss: 8.5.3 @@ -6873,8 +7342,10 @@ snapshots: optionalDependencies: '@types/node': 22.15.12 fsevents: 2.3.3 + sass: 1.89.0 + sass-embedded: 1.89.0 - vitepress@1.6.3(@algolia/client-search@5.24.0)(@types/node@22.15.12)(postcss@8.5.3)(search-insights@2.17.3)(typescript@5.8.3): + vitepress@1.6.3(@algolia/client-search@5.24.0)(@types/node@22.15.12)(postcss@8.5.3)(sass-embedded@1.89.0)(sass@1.89.0)(search-insights@2.17.3)(typescript@5.8.3): dependencies: '@docsearch/css': 3.8.2 '@docsearch/js': 3.8.2(@algolia/client-search@5.24.0)(search-insights@2.17.3) @@ -6883,7 +7354,7 @@ snapshots: '@shikijs/transformers': 2.5.0 '@shikijs/types': 2.5.0 '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 5.2.3(vite@5.4.19(@types/node@22.15.12))(vue@3.5.13(typescript@5.8.3)) + '@vitejs/plugin-vue': 5.2.3(vite@5.4.19(@types/node@22.15.12)(sass-embedded@1.89.0)(sass@1.89.0))(vue@3.5.13(typescript@5.8.3)) '@vue/devtools-api': 7.7.6 '@vue/shared': 3.5.13 '@vueuse/core': 12.8.2(typescript@5.8.3) @@ -6892,7 +7363,7 @@ snapshots: mark.js: 8.11.1 minisearch: 7.1.2 shiki: 2.5.0 - vite: 5.4.19(@types/node@22.15.12) + vite: 5.4.19(@types/node@22.15.12)(sass-embedded@1.89.0)(sass@1.89.0) vue: 3.5.13(typescript@5.8.3) optionalDependencies: postcss: 8.5.3 diff --git a/src/styles/core.scss b/src/styles/core.scss new file mode 100644 index 0000000..ce22f63 --- /dev/null +++ b/src/styles/core.scss @@ -0,0 +1,97 @@ +.sqlseal-table-container { + overflow-y: scroll; +} + +.sqlseal-table-container table { + width: 100%; + border-collapse: collapse; +} + +.sqlseal-grid-wrapper { + height: auto; + position: relative; +} + +.block-language-sqlseal { + overflow-y: auto; +} + +.sqlseal-error { + padding: 1em; + background: #b80f0f; + color: #FFF; +} + +.sqlseal-notice { + padding: 1em; + background: #1f3f98; + color: #FFF; +} + +.sqlseal-grid-error-message { + box-sizing: border-box; + width: 80%; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + text-align: center; + background: #b80f0f; + font-size: 0.8em; + color: #FFF; + padding: 0.5em 2em; + +} + +.sqlseal-grid-error-message-overlay { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: rgba(255, 255, 255, 0.8); + z-index: 5; +} + +.sqlseal-grid-error-message-overlay.hidden { + display: none; +} + +.edit-block-button { + z-index: 1000; +} + +.sqlseal-markdown-table { + font-family: monospace; + white-space: pre-wrap; +} + +.sqlseal-markdown-table.no-wrap { + display: inline-block; + overflow-x: scroll; + width: fit-content; +} + +.sqlseal-parse-error { + background: #b80f0f; + color: #FFF; + padding: 0.2em; + border-radius: 2px; +} + + + +.sqlseal-notice-error { + color: #f26464; +} + +.sqlseal-notice-error::before { + content: ''; + width: 16px; + height: 16px; + display: inline-block; + margin-right: 8px; + transform: translate(0, 3px); + background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ff0000' d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z'/%3E%3C/svg%3E"); +} \ No newline at end of file diff --git a/src/styles/csvEditor.scss b/src/styles/csvEditor.scss new file mode 100644 index 0000000..2baad88 --- /dev/null +++ b/src/styles/csvEditor.scss @@ -0,0 +1,35 @@ +/* EDITOR */ +.sql-seal-csv-editor { + display: flex; + flex-direction: column; + height: 100%; + gap: var(--size-4-4); +} + +.sql-seal-csv-viewer { + flex: 1; + display: flex; + flex-direction: column; +} + +.sqlseal-grid-wrapper { + height: 100%; + flex: 1; + display: flex; + flex-direction: column; +} + +.ag-theme-quartz { + flex: 1; +} + +.sql-seal-csv-viewer-buttons { + display: flex; + gap: var(--size-4-4); +} + +.sql-seal-modal-code { + width: 100%; + font-family: monospace; + padding: 8px; +} \ No newline at end of file diff --git a/src/styles/inlineQueries.scss b/src/styles/inlineQueries.scss new file mode 100644 index 0000000..1a99a5e --- /dev/null +++ b/src/styles/inlineQueries.scss @@ -0,0 +1,15 @@ +/* INLINE QUERIES */ +.sqlseal-inline-result { + display: inline-block; + padding: 0 4px; + margin: 0 2px; + background-color: var(--background-secondary); + border-radius: 4px; + font-size: 0.9em; + cursor: pointer; +} + +.sqlseal-inline-result .error { + color: var(--text-error); + font-style: italic; +} \ No newline at end of file diff --git a/src/styles/listView.scss b/src/styles/listView.scss new file mode 100644 index 0000000..71162a0 --- /dev/null +++ b/src/styles/listView.scss @@ -0,0 +1,15 @@ +.sqlseal-list-element-single .sqlseal-column-name { + display: none; +} + +.sqlseal-list-element-single .sqlseal-column-name::after { + content: ': '; +} + +.sqlseal-list.show-column-names .sqlseal-list-element-single .sqlseal-column-name { + display: inline; +} + +.sqlseal-element-inline-list { + display: inline-block; +} \ No newline at end of file diff --git a/src/styles/main.scss b/src/styles/main.scss new file mode 100644 index 0000000..7009b0f --- /dev/null +++ b/src/styles/main.scss @@ -0,0 +1,6 @@ +@use 'core'; +@use 'csvEditor'; +@use 'inlineQueries'; +@use 'listView'; +@use 'syntaxHighlight'; +@use 'obsidianMinimal'; \ No newline at end of file diff --git a/src/styles/obsidianMinimal.scss b/src/styles/obsidianMinimal.scss new file mode 100644 index 0000000..d715d15 --- /dev/null +++ b/src/styles/obsidianMinimal.scss @@ -0,0 +1,8 @@ +/** +These styles are to keep compatibility with Obsidian Minimal when adding "dataview" class to the table +**/ + +.markdown-source-view.mod-cm6.is-readable-line-width .cm-contentContainer.cm-contentContainer>.cm-content>:has(>.block-language-sqlseal table.dataview) { + width: var(--container-dataview-table-width); + max-width: var(--container-table-max-width); +} \ No newline at end of file diff --git a/src/styles/syntaxHighlight.scss b/src/styles/syntaxHighlight.scss new file mode 100644 index 0000000..af42d9a --- /dev/null +++ b/src/styles/syntaxHighlight.scss @@ -0,0 +1,113 @@ +/* COLOURING */ + +.cm-sqlseal-block-query { + --color: #297f30; +} + +.cm-sqlseal-block-view { + --color: #c834dd; +} + +.cm-sqlseal-block-flag { + --color: #d08306; + font-weight: bold; + color: var(--color); +} + +.cm-sqlseal-block-table { + --color: #4985af; +} + +.cm-sqlseal-identifier { + color: #2d7b33; +} + +.cm-sqlseal-function { + color: #2c0e9b; +} + +.cm-sqlseal-parameter { + color: #2c0e9b; +} + +.cm-sqlseal-comment { + color: #7a7a7a; + font-style: italic; +} + +.cm-sqlseal-keyword { + color: var(--color); + font-weight: bold; +} + +.cm-sqlseal-literal { + color: rgb(0, 51, 255); +} + +.cm-sqlseal-error { + color: rgb(235, 47, 47); + font-style: italic; +} + +.cm-sqlseal-template-keyword { + color: #e3ab53; +} + +.theme-dark .cm-sqlseal-template-keyword { + color: #dd8e10; +} + +.theme-dark .cm-sqlseal-block-error { + color: red; +} + +.theme-dark .cm-sqlseal-block-query { + --color: #5eff6a; +} + +.theme-dark .cm-sqlseal-comment { + color: #898787; +} + +.theme-dark .cm-sqlseal-parameter { + color: #95ed22; +} + +.theme-dark .cm-sqlseal-literal { + color: yellow; +} + +.theme-dark .cm-sqlseal-block-view { + --color: #e945ff; +} + +.theme-dark .cm-sqlseal-block-flag { + --color: #e3ab53; +} + +.theme-dark .cm-sqlseal-block-table { + --color: #56b5fa; +} + +.theme-dark .cm-sqlseal-function { + color: #c4b8ef; +} + +.theme-dark .cm-sqlseal-identifier { + color: #6ff77a; +} + +:is(.cm-sqlseal-block-query, .cm-sqlseal-block-view, .cm-sqlseal-block-flag, .cm-sqlseal-block-table)::before { + background-color: var(--color); + width: 5px; + top: -3px; + bottom: -3px; + left: 0; + content: ''; + display: block; + position: absolute; +} + +.cm-indent + :is(.cm-sqlseal-block-query, .cm-sqlseal-block-view, .cm-sqlseal-block-flag, .cm-sqlseal-block-table)::before { + display: none; +} diff --git a/styles.css b/styles.css deleted file mode 100644 index 6eaf31a..0000000 --- a/styles.css +++ /dev/null @@ -1,298 +0,0 @@ -.sqlseal-table-container { - overflow-y: scroll; -} - -.sqlseal-table-container table { - width: 100%; - border-collapse: collapse; -} - -.sqlseal-grid-wrapper { - height: auto; - position: relative; -} - -.block-language-sqlseal { - overflow-y: auto; -} - -.sqlseal-error { - padding: 1em; - background: #b80f0f; - color: #FFF; -} - -.sqlseal-notice { - padding: 1em; - background: #1f3f98; - color: #FFF; -} - -.sqlseal-grid-error-message { - box-sizing: border-box; - width: 80%; - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); - text-align: center; - background: #b80f0f; - font-size: 0.8em; - color: #FFF; - padding: 0.5em 2em; - -} - -.sqlseal-grid-error-message-overlay { - content: ''; - position: absolute; - top: 0; - left: 0; - right: 0; - bottom: 0; - background: rgba(255, 255, 255, 0.8); - z-index: 5; -} - -.sqlseal-grid-error-message-overlay.hidden { - display: none; -} - -.edit-block-button { - z-index: 1000; -} - -.sqlseal-markdown-table { - font-family: monospace; - white-space: pre-wrap; -} - -.sqlseal-markdown-table.no-wrap { - display: inline-block; - overflow-x: scroll; - width: fit-content; -} - - -/* EDITOR */ -.sql-seal-csv-editor { - display: flex; - flex-direction: column; - height: 100%; - gap: var(--size-4-4); -} - -.sql-seal-csv-viewer { - flex: 1; - display: flex; - flex-direction: column; -} - -.sqlseal-grid-wrapper { - height: 100%; - flex: 1; - display: flex; - flex-direction: column; -} - -.ag-theme-quartz { - flex: 1; -} - -.sql-seal-csv-viewer-buttons { - display: flex; - gap: var(--size-4-4); -} - -.sql-seal-modal-code { - width: 100%; - font-family: monospace; - padding: 8px; -} - - -/* INLINE QUERIES */ -.sqlseal-inline-result { - display: inline-block; - padding: 0 4px; - margin: 0 2px; - background-color: var(--background-secondary); - border-radius: 4px; - font-size: 0.9em; - cursor: pointer; -} - -.sqlseal-inline-result .error { - color: var(--text-error); - font-style: italic; -} - -.sqlseal-list-element-single .sqlseal-column-name { - display: none; -} - -.sqlseal-list-element-single .sqlseal-column-name::after { - content: ': '; -} - -.sqlseal-list.show-column-names .sqlseal-list-element-single .sqlseal-column-name { - display: inline; -} - -.sqlseal-parse-error { - background: #b80f0f; - color: #FFF; - padding: 0.2em; - border-radius: 2px; -} - -.sqlseal-element-inline-list { - display: inline-block; -} - -.sqlseal-notice-error { - color: #f26464; -} - -.sqlseal-notice-error::before { - content: ''; - width: 16px; - height: 16px; - display: inline-block; - margin-right: 8px; - transform: translate(0, 3px); - background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ff0000' d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z'/%3E%3C/svg%3E"); -} - - -.sqlseal-icon { - width: 16px; - height: 16px; -} - - - -/* COLOURING */ - -.cm-sqlseal-block-query { - --color: #297f30; -} - -.cm-sqlseal-block-view { - --color: #c834dd; -} - -.cm-sqlseal-block-flag { - --color: #d08306; - font-weight: bold; - color: var(--color); -} - -.cm-sqlseal-block-table { - --color: #4985af; -} - -.cm-sqlseal-identifier { - color: #2d7b33; -} - -.cm-sqlseal-function { - color: #2c0e9b; -} - -.cm-sqlseal-parameter { - color: #2c0e9b; -} - -.cm-sqlseal-comment { - color: #7a7a7a; - font-style: italic; -} - -.cm-sqlseal-keyword { - color: var(--color); - font-weight: bold; -} - -.cm-sqlseal-literal { - color: rgb(0, 51, 255); -} - -.cm-sqlseal-error { - color: rgb(235, 47, 47); - font-style: italic; -} - -.cm-sqlseal-template-keyword { - color: #e3ab53; -} - -.theme-dark .cm-sqlseal-template-keyword { - color: #dd8e10; -} - -.theme-dark .cm-sqlseal-block-error { - color: red; -} - -.theme-dark .cm-sqlseal-block-query { - --color: #5eff6a; -} - -.theme-dark .cm-sqlseal-comment { - color: #898787; -} - -.theme-dark .cm-sqlseal-parameter { - color: #95ed22; -} - -.theme-dark .cm-sqlseal-literal { - color: yellow; -} - -.theme-dark .cm-sqlseal-block-view { - --color: #e945ff; -} - -.theme-dark .cm-sqlseal-block-flag { - --color: #e3ab53; -} - -.theme-dark .cm-sqlseal-block-table { - --color: #56b5fa; -} - -.theme-dark .cm-sqlseal-function { - color: #c4b8ef; -} - -.theme-dark .cm-sqlseal-identifier { - color: #6ff77a; -} - -:is(.cm-sqlseal-block-query, .cm-sqlseal-block-view, .cm-sqlseal-block-flag, .cm-sqlseal-block-table) { - /* background-color: var(--color); */ -} - -:is(.cm-sqlseal-block-query, .cm-sqlseal-block-view, .cm-sqlseal-block-flag, .cm-sqlseal-block-table)::before { - background-color: var(--color); - width: 5px; - top: -3px; - bottom: -3px; - left: 0; - content: ''; - display: block; - position: absolute; -} - -.cm-indent + :is(.cm-sqlseal-block-query, .cm-sqlseal-block-view, .cm-sqlseal-block-flag, .cm-sqlseal-block-table)::before { - display: none; -} - - -/* Obsidian Minimal Styles */ -.markdown-source-view.mod-cm6.is-readable-line-width .cm-contentContainer.cm-contentContainer>.cm-content>:has(>.block-language-sqlseal table.dataview) { - width: var(--container-dataview-table-width); - max-width: var(--container-table-max-width); -} \ No newline at end of file From 1d2fba65d5616fa4c324bbf8e57cd46cd0f9dffc Mon Sep 17 00:00:00 2001 From: Kacper Kula Date: Thu, 22 May 2025 14:56:19 +0100 Subject: [PATCH 2/2] chore: adding changeset --- .changeset/yellow-ravens-stare.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/yellow-ravens-stare.md diff --git a/.changeset/yellow-ravens-stare.md b/.changeset/yellow-ravens-stare.md new file mode 100644 index 0000000..a1579eb --- /dev/null +++ b/.changeset/yellow-ravens-stare.md @@ -0,0 +1,5 @@ +--- +"sqlseal": patch +--- + +chore: splitting styles into separate files for easier maintainance