-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add custom editor / visualizer to vscode extension #1243
base: main
Are you sure you want to change the base?
Changes from 78 commits
261b87c
29f6501
f701ce0
cb9b61b
0c2f360
39be0b5
fac0bdf
36c606e
1a2a10f
f5c2e5e
6fa703d
cca3c79
1e31930
11cc564
8ecdfa5
c7b38f9
c8ea001
974fd58
6b3388d
38f592f
5aba7d3
bc8c8aa
df1f7de
9877413
e6fce0e
419fa72
1980c70
151b6ce
3ff8ad5
16841cd
9dd689f
3cb4d04
4a3c76f
99d64f2
dab358b
ffc2d96
e6e44e5
f430994
ebea553
ddea65c
b195e62
9993f8f
4c6826b
03f757e
c26ee8d
13073ce
2954743
c3f56fe
a369070
b4f8da9
ba4d0da
f469a55
821d4e5
9a0fe52
8d1bd6c
f5ac2b7
36f00bd
1911f82
29a3c5e
92355b8
5a61e0f
9045582
4d8f632
8702e35
edcbc4f
d1adbee
056f4e8
30067d8
76e05f9
b69b410
1ca78e6
13f104c
fc8866b
40ab1f4
85a7ee5
14dfda4
707bcb3
cafa613
62fa1e4
034fa77
aa6d5b9
9382a64
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
{ | ||
"recommendations": ["svelte.svelte-vscode"] | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
{ | ||
"files.associations": { | ||
"*.css": "tailwindcss" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Does this require any extension to be installed? |
||
} | ||
} |
Large diffs are not rendered by default.
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. See other comment about updating |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
{ | ||
"printWidth": 100, | ||
"tabWidth": 4, | ||
"useTabs": false, | ||
"semi": true, | ||
"singleQuote": true, | ||
"jsxSingleQuote": false, | ||
"quoteProps": "as-needed", | ||
"trailingComma": "all", | ||
"bracketSpacing": true, | ||
"jsxBracketSameLine": false, | ||
"arrowParens": "always", | ||
"requirePragma": false, | ||
"insertPragma": false, | ||
"proseWrap": "preserve", | ||
"htmlWhitespaceSensitivity": "css", | ||
"vueIndentScriptAndStyle": true, | ||
"endOfLine": "lf", | ||
"embeddedLanguageFormatting": "auto", | ||
"overrides": [ | ||
{ | ||
"files": ["*.yaml", "*.yml"], | ||
"options": { "tabWidth": 2 } | ||
} | ||
], | ||
"plugins": ["prettier-plugin-svelte", "prettier-plugin-tailwindcss"] | ||
} |
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What does this do? |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
{ | ||
"$schema": "https://shadcn-svelte.com/schema.json", | ||
"style": "new-york", | ||
"tailwind": { | ||
"config": "tailwind.config.js", | ||
"css": "src/global.css", | ||
"baseColor": "slate" | ||
}, | ||
"aliases": { | ||
"components": "$src/components", | ||
"utils": "$pages/utils" | ||
}, | ||
"typescript": true | ||
} |
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'd greatly prefer this to be included in ESBuild script in the |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
import fs from 'fs-extra'; | ||
import path from 'path'; | ||
import { fileURLToPath } from 'url'; | ||
import { dirname } from 'path'; | ||
|
||
const __filename = fileURLToPath(import.meta.url); | ||
const __dirname = dirname(__filename); | ||
|
||
const sourceDir = path.join(__dirname, '..', 'dist'); | ||
const distDir = path.join(__dirname, '..', '..', 'safe-ds-vscode', 'dist'); | ||
const targetDir = path.join(distDir, 'custom-editor'); | ||
|
||
console.log(`Removing old files from <safe-ds-vscode>...`); | ||
fs.ensureDirSync(distDir); | ||
fs.emptyDirSync(targetDir); | ||
|
||
console.log(`Copying webview from <safe-ds-editor> to <safe-ds-vscode>...`); | ||
fs.copy(sourceDir, targetDir, { overwrite: true }) | ||
.then(() => console.log('Done')) | ||
.catch((err) => { | ||
console.error('Error during copying:', err); | ||
process.exit(1); | ||
}); | ||
|
||
// npm run watch script: "watch": "concurrently -n Vite,Nodemon -c blue,red \"vite build --watch\" \"npx nodemon --quiet --watch dist migrationTools/copyToExtension.js\"", |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
{ | ||
"name": "@safe-ds/custom-editor", | ||
"private": true, | ||
"version": "0.0.0", | ||
"type": "module", | ||
"scripts": { | ||
"dev": "vite", | ||
"build": "vite build && node migrationTools/copyToExtension.js", | ||
"watch": "concurrently -n Vite,Nodemon -c blue,red \"vite build --watch\" \"npx nodemon --quiet --watch dist migrationTools/copyToExtension.js\"", | ||
"preview": "vite preview", | ||
"check": "svelte-check --tsconfig ./tsconfig.json", | ||
"clean": "shx rm -rf dist", | ||
"build:clean": "npm run clean && npm run build", | ||
"copyToExtension": "node migrationTools/copyToExtension.js" | ||
}, | ||
"devDependencies": { | ||
"@magidoc/plugin-svelte-marked": "^6.1.0", | ||
"@safe-ds/lang": ">=0.3.0", | ||
"@sveltejs/vite-plugin-svelte": "^3.0.2", | ||
"@tsconfig/svelte": "^5.0.2", | ||
"autoprefixer": "^10.4.17", | ||
"bits-ui": "^0.21.16", | ||
"clsx": "^2.1.0", | ||
"concurrently": "^8.2.2", | ||
"fs-extra": "^11.2.0", | ||
"nodemon": "^3.0.3", | ||
"postcss": "^8.4.33", | ||
"prettier-plugin-svelte": "^3.2.1", | ||
"prettier-plugin-tailwindcss": "^0.5.11", | ||
"radix-icons-svelte": "^1.2.1", | ||
"svelte": "^4.2.9", | ||
"svelte-check": "^3.6.3", | ||
"svelte-preprocess": "^5.1.3", | ||
"svelte-radix": "^1.1.1", | ||
"svelte-svg": "^0.0.7", | ||
"tailwind-merge": "^2.2.1", | ||
"tailwind-variants": "^0.1.20", | ||
"tailwindcss": "^3.4.1", | ||
"terser": "^5.28.1", | ||
"tslib": "^2.6.2", | ||
"typescript": "^5.3.3", | ||
"vite": "^5.0.12" | ||
}, | ||
"dependencies": { | ||
"@xyflow/svelte": "^0.1.13", | ||
"elkjs": "^0.9.3", | ||
"flatten": "^1.0.3", | ||
"marked": "^14.0.0", | ||
"paneforge": "^0.0.5" | ||
}, | ||
"optionalDependencies": { | ||
"@rollup/rollup-linux-x64-gnu": "^4.24.2" | ||
} | ||
} |
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If default exports are unavoidable here, add a comment to disable the error for the next line. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
export default { | ||
plugins: { | ||
tailwindcss: {}, | ||
autoprefixer: {}, | ||
}, | ||
} |
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
package segmentTest | ||
|
||
segment doStuff( | ||
inputPath: String, | ||
ouputPath: String, | ||
sliceSize: Int | ||
) -> (score: Float) { | ||
val labeledImages = Table.fromCsvFile(inputPath); | ||
val subsetImages = labeledImages.sliceRows(0, sliceSize); | ||
val train, val validate = subsetImages.splitRows(0.8); | ||
|
||
val modelUntrained = SupportVectorClassifier(); | ||
val modelTrained = modelUntrained.fit( | ||
train.toTabularDataset(targetName = "target") | ||
); | ||
yield score = modelTrained.accuracy(validate); | ||
|
||
val testdata = Table.fromCsvFile("beginner_classification/test.csv"); | ||
val testdataTransformed = testdata.transformColumn("pixel0", (row) -> row.add(1)); | ||
val resultTable = modelTrained.predict(testdataTransformed); | ||
|
||
resultTable.toTable().toCsvFile(ouputPath); | ||
} | ||
|
||
pipeline smallTest { | ||
|
||
val path = "beginner_classification/train.csv"; | ||
val score = doStuff( | ||
path, | ||
"output/beginner_classification.csv", | ||
5000 | ||
); | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
package smallTest | ||
|
||
pipeline smallTest { | ||
val path = "beginner_classification/train.csv"; | ||
val labeledImages = Table.fromCsvFile(path); | ||
val subsetImages = labeledImages.sliceRows(0, 5000); | ||
val train, val validate = subsetImages.splitRows(0.8); | ||
|
||
val modelUntrained = SupportVectorClassifier(2.0); | ||
val modelTrained = modelUntrained.fit( | ||
train.toTabularDataset(targetName = "target") | ||
); | ||
val score = modelTrained.accuracy(validate); | ||
|
||
val testdata = Table.fromCsvFile("beginner_classification/test.csv"); | ||
val testdataTransformed = testdata.transformColumn("pixel0", (row) -> row.add(1)); | ||
val resultTable = modelTrained.predict(testdataTransformed); | ||
|
||
resultTable.toTable().toCsvFile("output/beginner_classification.csv"); | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
# Problem mit .svg Dateien | ||
|
||
Bei der Verwendung von .svg Dateien besteht das Problem, dass es sich hier um assets handelt, die, wenn sie auf die typische Art und Weise in die Webview mit eingebunden werden würden, vom Extension Prozess signiert werden müssten. | ||
|
||
## Lösungsansatz | ||
|
||
Die Lösung die hier gefunden wurde ist, dass diese als .svelte Dateien abgespeichert und als Komponenten behandelt werden. Diese werden dann über eine zentrale Komponente zugänglich gemacht, um dynamisch die korrekte SVG Komponente auswählen zu können. | ||
|
||
## Verwendung | ||
|
||
Diese Komponente muss mit dem Namen der SVG Komponente konfiguriert werden. | ||
|
||
```svelte | ||
<script lang="ts"> | ||
import CategoryIcon from 'assets/category/categoryIcon.svelte' | ||
</script> | ||
|
||
<div> | ||
<CategoryIcon name={"Svg Name"}> | ||
</div> | ||
``` | ||
|
||
## Theming | ||
Beim Hinzufügen neuer SVG's ist darauf zu achten, dass das bisher verwendete Theming beibehalten wird. So wird die Farbe via stroke-color definiert. Es sind daher alle hardkodierten Benennungen von stroke-color zu entfernen. Sollte ein SVG eine fill Farbe verwenden, so muss diese auf "currentColor" gesetzt werden. Auf diese Weise gleicht sich die fill-color automatisch der stroke-color an. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
<script> | ||
export let className = ''; | ||
</script> | ||
|
||
<!-- <svg fill="none" class={className} viewBox="0 0 24 24" stroke-width="0.7"> | ||
<g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g> | ||
<g id="SVGRepo_iconCarrier"> | ||
<path | ||
d="M20,6.52897986 L20,19.5010024 C20,20.8817143 18.8807119,22.0010024 17.5,22.0010024 L6.5,22.0010024 C5.11928813,22.0010024 4,20.8817143 4,19.5010024 L4,4.50100238 C4,3.1202905 5.11928813,2.00100238 6.5,2.00100238 L15.4720225,2.00100238 C15.6047688,1.99258291 15.7429463,2.03684187 15.8535534,2.14744899 L19.8535534,6.14744899 C19.9641605,6.25805611 20.0084195,6.39623363 20,6.52897986 Z M15,3.00100238 L6.5,3.00100238 C5.67157288,3.00100238 5,3.67257525 5,4.50100238 L5,19.5010024 C5,20.3294295 5.67157288,21.0010024 6.5,21.0010024 L17.5,21.0010024 C18.3284271,21.0010024 19,20.3294295 19,19.5010024 L19,7.00100238 L15.5,7.00100238 C15.2238576,7.00100238 15,6.77714475 15,6.50100238 L15,3.00100238 Z M16,3.70810916 L16,6.00100238 L18.2928932,6.00100238 L16,3.70810916 Z M15.0159497,15.3088429 L16.8535534,17.1464466 C17.0488155,17.3417088 17.0488155,17.6582912 16.8535534,17.8535534 C16.6582912,18.0488155 16.3417088,18.0488155 16.1464466,17.8535534 L14.3088429,16.0159497 C13.5390075,16.6317636 12.5625069,17 11.5,17 C9.01471863,17 7,14.9852814 7,12.5 C7,10.0147186 9.01471863,8 11.5,8 C13.9852814,8 16,10.0147186 16,12.5 C16,13.5625069 15.6317636,14.5390075 15.0159497,15.3088429 L15.0159497,15.3088429 Z M11.5,16 C13.4329966,16 15,14.4329966 15,12.5 C15,10.5670034 13.4329966,9 11.5,9 C9.56700338,9 8,10.5670034 8,12.5 C8,14.4329966 9.56700338,16 11.5,16 Z" | ||
fill="currentColor" | ||
></path> | ||
</g></svg | ||
> --> | ||
|
||
<svg class={className} viewBox="0 0 24 24" fill="none"> | ||
<g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g> | ||
<g> | ||
<path | ||
d="M20 10.5V6.8C20 5.11984 20 4.27976 19.673 3.63803C19.3854 3.07354 18.9265 2.6146 18.362 2.32698C17.7202 2 16.8802 2 15.2 2H8.8C7.11984 2 6.27976 2 5.63803 2.32698C5.07354 2.6146 4.6146 3.07354 4.32698 3.63803C4 4.27976 4 5.11984 4 6.8V17.2C4 18.8802 4 19.7202 4.32698 20.362C4.6146 20.9265 5.07354 21.3854 5.63803 21.673C6.27976 22 7.11984 22 8.8 22H11.5M22 22L20.5 20.5M21.5 18C21.5 19.933 19.933 21.5 18 21.5C16.067 21.5 14.5 19.933 14.5 18C14.5 16.067 16.067 14.5 18 14.5C19.933 14.5 21.5 16.067 21.5 18Z" | ||
stroke-width="2" | ||
stroke-linecap="round" | ||
stroke-linejoin="round" | ||
></path> | ||
</g></svg | ||
> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
<script> | ||
export let className = ''; | ||
</script> | ||
|
||
<svg class={className} viewBox="0 0 24 24" fill="none" stroke-width="0.6"> | ||
<path | ||
d="M14.4697 7.53033C14.7626 7.82322 15.2374 7.82322 15.5303 7.53033C15.8232 7.23744 15.8232 6.76256 15.5303 6.46967L12.5303 3.46967C12.2374 3.17678 11.7626 3.17678 11.4697 3.46967L8.46967 6.46967C8.17678 6.76256 8.17678 7.23744 8.46967 7.53033C8.76256 7.82322 9.23744 7.82322 9.53033 7.53033L11.25 5.81066V14C11.25 14.4142 11.5858 14.75 12 14.75C12.4142 14.75 12.75 14.4142 12.75 14V5.81066L14.4697 7.53033Z" | ||
fill="currentColor" | ||
> | ||
</path> | ||
<path | ||
d="M20.75 12C20.75 11.5858 20.4142 11.25 20 11.25C19.5858 11.25 19.25 11.5858 19.25 12C19.25 16.0041 16.0041 19.25 12 19.25C7.99593 19.25 4.75 16.0041 4.75 12C4.75 11.5858 4.41421 11.25 4 11.25C3.58579 11.25 3.25 11.5858 3.25 12C3.25 16.8325 7.16751 20.75 12 20.75C16.8325 20.75 20.75 16.8325 20.75 12Z" | ||
fill="currentColor" | ||
> | ||
</path> | ||
</svg> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
<script> | ||
export let className = ''; | ||
</script> | ||
|
||
<svg class={className} viewBox="0 0 24 24" fill="none" stroke-width="0.6"> | ||
<path | ||
d="M14.4697 10.4697C14.7626 10.1768 15.2374 10.1768 15.5303 10.4697C15.8232 10.7626 15.8232 11.2374 15.5303 11.5303L12.5303 14.5303C12.2374 14.8232 11.7626 14.8232 11.4697 14.5303L8.46967 11.5303C8.17678 11.2374 8.17678 10.7626 8.46967 10.4697C8.76256 10.1768 9.23744 10.1768 9.53033 10.4697L11.25 12.1893V4C11.25 3.58579 11.5858 3.25 12 3.25C12.4142 3.25 12.75 3.58579 12.75 4V12.1893L14.4697 10.4697Z" | ||
fill="currentColor" | ||
> | ||
</path> | ||
<path | ||
d="M20.75 12C20.75 11.5858 20.4142 11.25 20 11.25C19.5858 11.25 19.25 11.5858 19.25 12C19.25 16.0041 16.0041 19.25 12 19.25C7.99593 19.25 4.75 16.0041 4.75 12C4.75 11.5858 4.41421 11.25 4 11.25C3.58579 11.25 3.25 11.5858 3.25 12C3.25 16.8325 7.16751 20.75 12 20.75C16.8325 20.75 20.75 16.8325 20.75 12Z" | ||
fill="currentColor" | ||
> | ||
</path> | ||
</svg> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
<script> | ||
export let className = ''; | ||
</script> | ||
|
||
<svg class={className} fill="none" viewBox="0 0 392.663 392.663" stroke-width="5"> | ||
<g> | ||
<g> | ||
<g> | ||
<path | ||
d="M239.515,249.826l-22.044-14.481c-0.905-2.392-1.939-4.849-3.038-7.24l5.301-25.859c0.776-3.62-0.388-7.37-2.909-9.891 L200.469,176c-2.651-2.651-6.335-3.685-9.891-2.909l-25.859,5.301c-2.392-1.099-4.848-2.133-7.24-3.038l-14.545-22.044 c-2.004-3.103-5.43-4.913-9.115-4.913h-23.079c-3.62,0-7.111,1.875-9.115,4.913l-14.545,22.044 c-2.392,0.905-4.849,1.939-7.24,3.038l-25.859-5.301c-3.556-0.711-7.37,0.388-9.891,2.909l-16.356,16.356 c-2.651,2.651-3.685,6.335-2.909,9.891l5.301,25.859c-1.164,2.392-2.133,4.848-3.038,7.24L4.978,249.826 C1.875,251.83,0,255.257,0,258.941v23.079c0,3.62,1.875,7.111,4.978,9.115l22.044,14.481c0.905,2.392,1.939,4.849,3.038,7.24 l-5.301,25.859c-0.776,3.62,0.388,7.37,2.909,9.891l16.356,16.356c2.651,2.651,6.335,3.685,9.891,2.909l25.859-5.301 c2.392,1.099,4.848,2.133,7.24,3.038l14.545,22.044c2.004,3.103,5.43,4.978,9.115,4.978h23.079c3.62,0,7.111-1.875,9.115-4.978 l14.545-22.044c2.392-0.905,4.849-1.939,7.24-3.038l25.859,5.301c3.556,0.711,7.37-0.388,9.891-2.909l16.356-16.356 c2.651-2.651,3.685-6.335,2.909-9.891l-5.301-25.859c1.164-2.392,2.133-4.848,3.038-7.24l22.044-14.545 c3.103-2.004,4.913-5.43,4.913-9.115v-23.079C244.493,255.257,242.618,251.83,239.515,249.826z M222.772,276.202h-0.065 l-20.17,13.317c-2.069,1.422-3.62,3.426-4.396,5.689c-1.228,3.814-2.844,7.564-4.784,11.378c-1.099,2.263-1.487,4.719-0.905,7.111 l4.913,23.725l-8.016,8.016l-23.725-4.913c-2.392-0.453-4.913-0.129-7.176,0.905c-3.814,1.939-7.628,3.556-11.378,4.784 c-2.327,0.776-4.396,2.327-5.689,4.396l-13.317,20.17h-11.378l-13.317-20.17c-1.422-2.069-3.426-3.62-5.689-4.396 c-3.814-1.228-7.628-2.844-11.378-4.784c-2.263-1.099-4.719-1.487-7.176-0.905l-23.725,4.913l-8.081-8.081l4.978-23.725 c0.453-2.392,0.129-4.978-0.905-7.176c-1.939-3.814-3.556-7.628-4.719-11.378c-0.776-2.327-2.327-4.396-4.396-5.689l-20.17-13.317 v-11.378l20.17-13.317c2.069-1.422,3.62-3.426,4.396-5.689c1.228-3.814,2.844-7.564,4.784-11.378 c1.099-2.263,1.487-4.719,0.905-7.111l-4.913-23.661l8.016-8.016l23.725,4.913c2.392,0.453,4.978,0.129,7.176-0.905 c3.814-1.939,7.564-3.556,11.378-4.784c2.327-0.776,4.396-2.327,5.689-4.396l13.317-20.17h11.378l13.317,20.17 c1.422,2.069,3.426,3.62,5.689,4.396c3.814,1.228,7.628,2.844,11.378,4.784c2.263,1.099,4.719,1.487,7.176,0.905l23.725-4.913 l8.016,8.016l-4.913,23.725c-0.453,2.392-0.129,4.913,0.905,7.111c1.939,3.814,3.556,7.628,4.719,11.378 c0.776,2.392,2.327,4.396,4.396,5.689l20.234,13.317V276.202z" | ||
fill="currentColor" | ||
></path> | ||
</g> | ||
</g> | ||
<g> | ||
<g> | ||
<path | ||
d="M122.311,221.705c-26.893,0-48.743,21.85-48.743,48.743c0,26.893,21.85,48.743,48.743,48.743s48.743-21.851,48.743-48.743 S149.204,221.705,122.311,221.705z M122.311,297.406c-14.804,0-26.958-12.154-26.958-26.958c0-14.869,12.154-26.958,26.958-26.958 s26.958,12.154,26.958,26.958C149.204,285.382,137.115,297.406,122.311,297.406z" | ||
fill="currentColor" | ||
></path> | ||
</g> | ||
</g> | ||
<g> | ||
<g> | ||
<path | ||
d="M387.685,79.483L371.2,68.687c-0.517-1.487-1.164-2.909-1.875-4.331l4.008-19.329c0.776-3.62-0.388-7.37-2.909-9.891 l-12.671-12.671c-2.651-2.651-6.335-3.685-9.891-2.909l-19.394,3.814c-1.487-0.646-2.909-1.228-4.331-1.875L313.341,5.01 c-2.004-3.103-5.43-4.978-9.115-4.978H286.19c-3.62,0-7.111,1.875-9.115,4.978l-10.796,16.485 c-1.487,0.517-2.909,1.164-4.331,1.875l-19.329-4.008c-3.556-0.776-7.37,0.388-9.891,2.909l-12.671,12.671 c-2.651,2.651-3.685,6.335-2.909,9.891l4.008,19.329c-0.646,1.487-1.228,2.909-1.875,4.331l-16.485,10.796 c-3.103,2.004-4.913,5.43-4.913,9.115v18.036c0,3.62,1.875,7.111,4.913,9.115l16.485,10.796c0.517,1.487,1.164,2.909,1.875,4.331 l-4.008,19.329c-0.776,3.62,0.388,7.37,2.909,9.891l12.671,12.735c2.651,2.651,6.335,3.685,9.891,2.909l19.329-4.008 c1.487,0.646,2.909,1.228,4.331,1.875l10.796,16.485c2.004,3.103,5.43,4.913,9.115,4.913h18.036c3.62,0,7.111-1.875,9.115-4.913 l10.796-16.485c1.487-0.517,2.909-1.164,4.396-1.875l19.329,4.008c3.62,0.711,7.37-0.388,9.891-2.909l12.671-12.735 c2.65-2.651,3.685-6.335,2.909-9.891l-4.008-19.329c0.646-1.487,1.228-2.909,1.875-4.396l16.485-10.796 c3.103-2.004,4.978-5.43,4.978-9.115V88.339C392.598,84.913,390.723,81.552,387.685,79.483z M371.006,100.622h-0.194v0.065 l-14.61,9.568c-2.069,1.422-3.62,3.426-4.396,5.689c-0.905,2.78-2.069,5.624-3.556,8.469c-1.164,2.263-1.487,4.719-0.905,7.176 l3.556,17.131l-4.396,4.396l-17.131-3.556c-2.392-0.453-4.913-0.129-7.176,0.905c-2.844,1.487-5.689,2.651-8.469,3.556 c-2.392,0.776-4.396,2.327-5.689,4.396l-9.632,14.675h-6.206l-9.568-14.61c-1.422-2.069-3.426-3.62-5.689-4.396 c-2.78-0.905-5.624-2.069-8.469-3.556c-2.263-1.164-4.719-1.487-7.176-0.905l-17.131,3.556l-4.396-4.396l3.556-17.131 c0.453-2.392,0.129-4.913-0.905-7.111c-1.487-2.844-2.65-5.689-3.556-8.469c-0.776-2.327-2.327-4.396-4.396-5.689l-14.675-9.762 v-6.206l14.61-9.568c2.069-1.422,3.62-3.426,4.396-5.689c0.905-2.78,2.069-5.624,3.556-8.469c1.164-2.263,1.487-4.719,0.905-7.176 l-3.556-17.131l4.396-4.396l17.131,3.556c2.392,0.453,4.913,0.129,7.111-0.905c2.844-1.487,5.689-2.651,8.469-3.556 c2.327-0.776,4.396-2.327,5.689-4.396l9.568-14.61h6.206l9.568,14.61c1.422,2.069,3.426,3.62,5.689,4.396 c2.78,0.905,5.624,2.069,8.469,3.556c2.133,1.164,4.719,1.487,7.111,0.905l17.131-3.556l4.396,4.396l-3.232,17.131 c-0.453,2.392-0.129,4.978,1.034,7.176c1.487,2.78,2.651,5.624,3.556,8.469c0.776,2.392,2.327,4.396,4.396,5.689l14.61,9.568 V100.622z" | ||
fill="currentColor" | ||
></path> | ||
</g> | ||
</g> | ||
<g> | ||
<g> | ||
<path | ||
d="M295.176,57.244c-22.238,0-40.339,18.101-40.339,40.339c0,22.238,18.101,40.339,40.339,40.339 c22.238,0,40.339-18.101,40.339-40.339C335.515,75.345,317.414,57.244,295.176,57.244z M295.176,116.137 c-10.214,0-18.554-8.339-18.554-18.554c0-10.214,8.339-18.554,18.554-18.554c10.214,0,18.554,8.339,18.554,18.554 C313.729,107.798,305.39,116.137,295.176,116.137z" | ||
fill="currentColor" | ||
></path> | ||
</g> | ||
</g> | ||
</g></svg | ||
> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
<script> | ||
export let className = ''; | ||
</script> | ||
|
||
<svg class={className} viewBox="0 0 24 24" fill="none"> | ||
<path | ||
d="M20 12.5V6.8C20 5.11984 20 4.27976 19.673 3.63803C19.3854 3.07354 18.9265 2.6146 18.362 2.32698C17.7202 2 16.8802 2 15.2 2H8.8C7.11984 2 6.27976 2 5.63803 2.32698C5.07354 2.6146 4.6146 3.07354 4.32698 3.63803C4 4.27976 4 5.11984 4 6.8V17.2C4 18.8802 4 19.7202 4.32698 20.362C4.6146 20.9265 5.07354 21.3854 5.63803 21.673C6.27976 22 7.11982 22 8.79993 22H12M14.5 19L16.5 21L21 16.5" | ||
stroke-width="2" | ||
stroke-linecap="round" | ||
stroke-linejoin="round" | ||
/> | ||
</svg> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't see a reason to disable these rules completely for this folder.