feat: generate open folder icons#3468
Merged
Merged
Conversation
Convert from 32x32 to exact 16x16 for actual visualization. Keep the motif shapes as it was by scaling down exactly half. group by separate ids (folder and motive) for future reference. Update only folder icons for now, open folders will be added later or better if create automatically in manifest, just need to change the svg shape string where id is folder with a well defined fixed value. This cut down online storage size for static folder icons by half. Refs: - icons/folder-android.svg: a5749d9 - icons/folder-angular.svg: a5749d9 - icons/folder-animation.svg: a5749d9 - icons/folder-api.svg: a5749d9 - icons/folder-app.svg: a5749d9 - icons/folder-astro.svg: a5749d9 - icons/folder-atom.svg: c306238 - icons/folder-audio.svg: a5749d9 - icons/folder-azure-pipelines.svg: a5749d9 - icons/folder-base.svg: a5749d9 - icons/folder-batch.svg: a5749d9 - icons/folder-benchmark.svg: a5749d9 - icons/folder-buildkite.svg: a5749d9 - icons/folder-changesets.svg: a5749d9 - icons/folder-ci.svg: a5749d9 - icons/folder-class.svg: a5749d9 - icons/folder-claude.svg: 7e4067b - icons/folder-client.svg: a5749d9 - icons/folder-cline.svg: 74d52f6 - icons/folder-command.svg: a5749d9 - icons/folder-connection.svg: a5749d9 - icons/folder-console.svg: a5749d9 - icons/folder-constant.svg: a5749d9 - icons/folder-container.svg: a5749d9 - icons/folder-content.svg: a5749d9 - icons/folder-context.svg: a5749d9 - icons/folder-contract.svg: a5749d9 - icons/folder-controller.svg: a5749d9 - icons/folder-core.svg: a5749d9 - icons/folder-coverage.svg: a5749d9 - icons/folder-cue.svg: 9ca2f18 - icons/folder-cypress.svg: a5749d9 - icons/folder-dart.svg: 74d52f6 - icons/folder-debug.svg: a5749d9 - icons/folder-decorators.svg: a5749d9 - icons/folder-delta.svg: a5749d9 - icons/folder-desktop.svg: a5749d9 - icons/folder-dist.svg: a5749d9 - icons/folder-docs.svg: a5749d9 - icons/folder-download.svg: a5749d9 - icons/folder-drizzle.svg: a5749d9 - icons/folder-dump.svg: a5749d9 - icons/folder-element.svg: 1028b49 - icons/folder-enum.svg: a5749d9 - icons/folder-environment.svg: a5749d9 - icons/folder-error.svg: a5749d9 - icons/folder-event.svg: a5749d9 - icons/folder-examples.svg: a5749d9 - icons/folder-expo.svg: a5749d9 - icons/folder-export.svg: c306238 - icons/folder-fastlane.svg: a5749d9 - icons/folder-favicon.svg: a5749d9 - icons/folder-firebase.svg: 058ea1c - icons/folder-firestore.svg: 058ea1c - icons/folder-flow.svg: a5749d9 - icons/folder-flutter.svg: a5749d9 - icons/folder-font.svg: a5749d9 - icons/folder-gemini-ai.svg: 7e4067b - icons/folder-generator.svg: a5749d9 - icons/folder-gh-workflows.svg: a5749d9 - icons/folder-redux-reducer.svg: a5749d9 - icons/folder-repository.svg: a53add0 - icons/folder-resolver.svg: a5749d9 - icons/folder-resource.svg: a5749d9 - icons/folder-review.svg: a5749d9 - icons/folder-robot.svg: a5749d9 - icons/folder-routes.svg: a5749d9 - icons/folder-rust.svg: c306238 - icons/folder-salt.svg: bf1b222 - icons/folder-sandbox.svg: 74d52f6 - icons/folder-sass.svg: a5749d9 - icons/folder-scala.svg: a5749d9 - icons/folder-scons.svg: 668baba - icons/folder-scripts.svg: a5749d9 - icons/folder-secure.svg: a5749d9 - icons/folder-server.svg: a5749d9 - icons/folder-shader.svg: a5749d9 - icons/folder-shared.svg: a5749d9 - icons/folder-simulations.svg: 9ca2f18 - icons/folder-skills.svg: e30dca2 - icons/folder-snippet.svg: a5749d9 - icons/folder-src.svg: a5749d9 - icons/folder-stack.svg: a5749d9 - icons/folder-stencil.svg: a5749d9 - icons/folder-store.svg: a5749d9 - icons/folder-storybook.svg: a5749d9 - icons/folder-stylus.svg: a5749d9 - icons/folder-supabase.svg: a5749d9 - icons/folder-svelte.svg: a5749d9 - icons/folder-target.svg: a5749d9 - icons/folder-taskfile.svg: a5749d9 - icons/folder-tasks.svg: a5749d9 - icons/folder-television.svg: a5749d9 - icons/folder-vercel.svg: a5749d9 - icons/folder-video.svg: a5749d9 - icons/folder-views.svg: a5749d9 - icons/folder-vscode.svg: a5749d9 - icons/folder-wordpress.svg: c306238 - icons/folder-yarn.svg: a5749d9 - icons/folder-zeabur.svg: c306238
Add more modified icons. Refs: - icons/folder-admin.svg: a5749d9 - icons/folder-liquibase.svg: 25a1102 - icons/folder-log.svg: a5749d9 - icons/folder-lottie.svg: a5749d9 - icons/folder-lua.svg: a5749d9 - icons/folder-macos.svg: a5749d9 - icons/folder-mail.svg: a5749d9 - icons/folder-mappings.svg: a5749d9 - icons/folder-mercurial.svg: a5749d9 - icons/folder-messages.svg: a5749d9 - icons/folder-meta.svg: a5749d9 - icons/folder-metro.svg: 52ad005 - icons/folder-middleware.svg: a5749d9 - icons/folder-migrations.svg: bf1b222 - icons/folder-mjml.svg: a5749d9 - icons/folder-mobile.svg: a5749d9 - icons/folder-mock.svg: a5749d9 - icons/folder-mojo.svg: a5749d9 - icons/folder-molecule.svg: c306238 - icons/folder-moon.svg: a5749d9 - icons/folder-netlify.svg: a5749d9 - icons/folder-next.svg: a5749d9 - icons/folder-node.svg: a5749d9 - icons/folder-organism.svg: c306238 - icons/folder-other.svg: a5749d9 - icons/folder-packages.svg: a5749d9 - icons/folder-template.svg: a5749d9 - icons/folder-terraform.svg: a5749d9 - icons/folder-test.svg: a5749d9 - icons/folder-theme.svg: a5749d9 - icons/folder-toc.svg: 8d19329 - icons/folder-tools.svg: a5749d9 - icons/folder-typescript.svg: a5749d9 - icons/folder-ui.svg: a5749d9 - icons/folder-update.svg: a5749d9 - icons/folder-upload.svg: a5749d9 - icons/folder-utils.svg: a5749d9 - icons/folder-verdaccio.svg: a5749d9 - icons/folder-vm.svg: a5749d9 - icons/folder-windows.svg: a5749d9
Modify more icons. Refs: - icons/folder-git.svg: a5749d9 - icons/folder-gitea.svg: a5749d9 - icons/folder-github.svg: a5749d9 - icons/folder-global.svg: a5749d9 - icons/folder-gradle.svg: a5749d9 - icons/folder-graphql.svg: a5749d9 - icons/folder-guard.svg: a5749d9 - icons/folder-gulp.svg: a5749d9 - icons/folder-helper.svg: a5749d9 - icons/folder-home.svg: a5749d9 - icons/folder-husky.svg: a5749d9 - icons/folder-i18n.svg: a5749d9 - icons/folder-images.svg: a5749d9 - icons/folder-import.svg: a5749d9 - icons/folder-include.svg: a5749d9 - icons/folder-input.svg: 9ca2f18 - icons/folder-interceptor.svg: e3b97d3 - icons/folder-interface.svg: a5749d9 - icons/folder-ios.svg: a5749d9 - icons/folder-java.svg: a5749d9 - icons/folder-javascript.svg: a5749d9 - icons/folder-job.svg: a5749d9 - icons/folder-json.svg: a5749d9 - icons/folder-keys.svg: a5749d9 - icons/folder-kusto.svg: 058ea1c - icons/folder-layout.svg: a5749d9 - icons/folder-lefthook.svg: a5749d9 - icons/folder-less.svg: a5749d9 - icons/folder-lib.svg: a5749d9 - icons/folder-linux.svg: a5749d9 - icons/folder-pdf.svg: a5749d9 - icons/folder-phpmailer.svg: a5749d9 - icons/folder-pipe.svg: a5749d9 - icons/folder-plastic.svg: a5749d9 - icons/folder-plugin.svg: a5749d9 - icons/folder-policy.svg: a5415ac - icons/folder-postman.svg: 0aa11be - icons/folder-powershell.svg: a5749d9 - icons/folder-prisma.svg: a5749d9 - icons/folder-private.svg: a5749d9 - icons/folder-project.svg: a5749d9 - icons/folder-proto.svg: a5749d9 - icons/folder-public.svg: a5749d9 - icons/folder-python.svg: a5749d9 - icons/folder-quasar.svg: a5749d9 - icons/folder-queue.svg: a5749d9
Add modified open folder icons. Delete all these later on.
Fix accidental overwrites to closed folder icons with open ones.
Add ids to present 16x16 folder icons. Refs: - icons/folder-appwrite-open.svg: 0aa11be - icons/folder-appwrite.svg: 0aa11be - icons/folder-assembly-open.svg: 0aa11be - icons/folder-assembly.svg: 0aa11be - icons/folder-dal-open.svg: 9ca2f18 - icons/folder-dal.svg: 9ca2f18 - icons/folder-database-open.svg: a41d873 - icons/folder-database.svg: a41d873 - icons/folder-directive-open.svg: 1028b49 - icons/folder-directive.svg: 1028b49 - icons/folder-filter-open.svg: 52ad005 - icons/folder-filter.svg: 52ad005 - icons/folder-form-open.svg: a6b4e9b - icons/folder-form.svg: a6b4e9b - icons/folder-go-open.svg: 0aa11be - icons/folder-go.svg: 0aa11be - icons/folder-kotlin-open.svg: 0aa11be - icons/folder-kotlin.svg: 0aa11be - icons/folder-license-open.svg: b433137 - icons/folder-license.svg: b433137 - icons/folder-react-components-open.svg: ebac078 - icons/folder-react-components.svg: ebac078 - icons/folder-snapcraft-open.svg: c306238 - icons/folder-snapcraft.svg: c306238 - icons/folder-zed-open.svg: f785da8 - icons/folder-zed.svg: f785da8
- Remove all folder-*-open.svg files from git tracking (~268 files) - Add build script to generate open variants by replacing the folder path in closed SVGs with the canonical open folder path - Add normalization script to convert remaining 32x32/1024x1024 folder SVGs to 16x16 format with proper id="folder" and id="motive" attrs - Add structural validation script that enforces: - viewBox must be "0 0 16 16" - Exactly one element with id="folder" using canonical closed path - At least one element with id="motive" - No Inkscape/Sodipodi metadata - Update .gitignore to ignore generated -open.svg files - Integrate generation into build pipeline (postcompile step) - Add structure check to the icon checks orchestrator The folder-seeders icon is excluded as it uses a completely custom artistic design that needs manual redesign to follow the new structure.
Configure SVGO to preserve id="folder" and id="motive" attributes via the cleanupIds plugin preserve option.
- Add CI workflow that checks folder icon structure on PRs - Update CONTRIBUTING.md: folder icons now only need the closed variant - Document the required SVG structure (viewBox, id=folder, id=motive) - Note that open variants are generated at build time
Remove the unmaintained svgson dependency (last released 2019) and replace it with Bun's built-in HTMLRewriter for all SVG manipulation. - Add src/core/helpers/svg.ts as a proxy layer wrapping HTMLRewriter with ergonomic helpers: replaceAttribute, getAttribute, countElements, getElements, hasAttributeMatching, hasElementMatching, collectColors, replaceColors - Refactor clone system (cloning.ts, colors.ts) to use new helpers - Refactor generateOpenFolderIcons.ts to use new helpers - Refactor checkFolderIconStructure.ts to use new helpers - Add comprehensive unit tests (27 tests) for SVG helpers - Remove svgson from dependencies Extension bundle reduced from 201.6kb to 186.7kb (-15kb).
The events npm package was added in PR #2630 as a potential polyfill for the web extension target, but the web extension is just an empty stub and never imports EventEmitter. The desktop extension uses node:events which is built-in.
The 'biome' package (v0.3.3) is an obsolete 2016 runtime toolkit unrelated to the Biome linter (@biomejs/biome) which is correctly in devDependencies. This was never imported anywhere in source.
…-icon-theme into feat/generate-open-folder-icons
Replace callback-based node:fs readdir with async node:fs/promises readdir in checkIconAvailability and checkIconUsage. Make all check functions consistently async for uniform usage in the runner.
…lder-icons # Conflicts: # icons/folder-admin-open.svg # icons/folder-admin.svg # icons/folder-android-open.svg # icons/folder-android.svg # icons/folder-angular-open.svg # icons/folder-angular.svg # icons/folder-animation-open.svg # icons/folder-animation.svg # icons/folder-api-open.svg # icons/folder-api.svg # icons/folder-app-open.svg # icons/folder-app.svg # icons/folder-appwrite-open.svg # icons/folder-appwrite.svg # icons/folder-archive-open.svg # icons/folder-archive.svg # icons/folder-assembly-open.svg # icons/folder-assembly.svg # icons/folder-astro-open.svg # icons/folder-astro.svg # icons/folder-atom-open.svg # icons/folder-atom.svg # icons/folder-audio-open.svg # icons/folder-audio.svg # icons/folder-azure-pipelines-open.svg # icons/folder-azure-pipelines.svg # icons/folder-base-open.svg # icons/folder-base.svg # icons/folder-batch-open.svg # icons/folder-batch.svg # icons/folder-benchmark-open.svg # icons/folder-benchmark.svg # icons/folder-bibliography-open.svg # icons/folder-bibliography.svg # icons/folder-buildkite-open.svg # icons/folder-buildkite.svg # icons/folder-changesets-open.svg # icons/folder-changesets.svg # icons/folder-ci-open.svg # icons/folder-ci.svg # icons/folder-class-open.svg # icons/folder-class.svg # icons/folder-claude-open.svg # icons/folder-claude.svg # icons/folder-client-open.svg # icons/folder-client.svg # icons/folder-cline-open.svg # icons/folder-cline.svg # icons/folder-command-open.svg # icons/folder-command.svg # icons/folder-connection-open.svg # icons/folder-connection.svg # icons/folder-console-open.svg # icons/folder-console.svg # icons/folder-constant-open.svg # icons/folder-constant.svg # icons/folder-container-open.svg # icons/folder-container.svg # icons/folder-content-open.svg # icons/folder-content.svg # icons/folder-context-open.svg # icons/folder-context.svg # icons/folder-contract-open.svg # icons/folder-contract.svg # icons/folder-controller-open.svg # icons/folder-controller.svg # icons/folder-core-open.svg # icons/folder-core.svg # icons/folder-coverage-open.svg # icons/folder-coverage.svg # icons/folder-cue-open.svg # icons/folder-cue.svg # icons/folder-cypress-open.svg # icons/folder-cypress.svg # icons/folder-dal-open.svg # icons/folder-dal.svg # icons/folder-dart-open.svg # icons/folder-dart.svg # icons/folder-database-open.svg # icons/folder-database.svg # icons/folder-debug-open.svg # icons/folder-debug.svg # icons/folder-decorators-open.svg # icons/folder-decorators.svg # icons/folder-delta-open.svg # icons/folder-delta.svg # icons/folder-desktop-open.svg # icons/folder-desktop.svg # icons/folder-directive-open.svg # icons/folder-directive.svg # icons/folder-dist-open.svg # icons/folder-dist.svg # icons/folder-docs-open.svg # icons/folder-docs.svg # icons/folder-download-open.svg # icons/folder-download.svg # icons/folder-drizzle-open.svg # icons/folder-drizzle.svg # icons/folder-dump-open.svg # icons/folder-dump.svg # icons/folder-element-open.svg # icons/folder-element.svg # icons/folder-enum-open.svg # icons/folder-enum.svg # icons/folder-environment-open.svg # icons/folder-environment.svg # icons/folder-error-open.svg # icons/folder-error.svg # icons/folder-event-open.svg # icons/folder-event.svg # icons/folder-examples-open.svg # icons/folder-examples.svg # icons/folder-expo-open.svg # icons/folder-expo.svg # icons/folder-export-open.svg # icons/folder-export.svg # icons/folder-fastlane-open.svg # icons/folder-fastlane.svg # icons/folder-favicon-open.svg # icons/folder-favicon.svg # icons/folder-filter-open.svg # icons/folder-filter.svg # icons/folder-firebase-open.svg # icons/folder-firebase.svg # icons/folder-firestore-open.svg # icons/folder-firestore.svg # icons/folder-flow-open.svg # icons/folder-flow.svg # icons/folder-flutter-open.svg # icons/folder-flutter.svg # icons/folder-font-open.svg # icons/folder-font.svg # icons/folder-form-open.svg # icons/folder-form.svg # icons/folder-gemini-ai-open.svg # icons/folder-gemini-ai.svg # icons/folder-generator-open.svg # icons/folder-generator.svg # icons/folder-gh-workflows-open.svg # icons/folder-gh-workflows.svg # icons/folder-git-open.svg # icons/folder-git.svg # icons/folder-gitea-open.svg # icons/folder-gitea.svg # icons/folder-github-open.svg # icons/folder-github.svg # icons/folder-global-open.svg # icons/folder-global.svg # icons/folder-go-open.svg # icons/folder-go.svg # icons/folder-gradle-open.svg # icons/folder-gradle.svg # icons/folder-graphql-open.svg # icons/folder-graphql.svg # icons/folder-guard-open.svg # icons/folder-guard.svg # icons/folder-gulp-open.svg # icons/folder-gulp.svg # icons/folder-helper-open.svg # icons/folder-helper.svg # icons/folder-home-open.svg # icons/folder-home.svg # icons/folder-hook-open.svg # icons/folder-hook.svg # icons/folder-husky-open.svg # icons/folder-husky.svg # icons/folder-i18n-open.svg # icons/folder-i18n.svg # icons/folder-images-open.svg # icons/folder-images.svg # icons/folder-import-open.svg # icons/folder-import.svg # icons/folder-include-open.svg # icons/folder-include.svg # icons/folder-input-open.svg # icons/folder-input.svg # icons/folder-interceptor-open.svg # icons/folder-interceptor.svg # icons/folder-interface-open.svg # icons/folder-interface.svg # icons/folder-ios-open.svg # icons/folder-ios.svg # icons/folder-java-open.svg # icons/folder-java.svg # icons/folder-javascript-open.svg # icons/folder-javascript.svg # icons/folder-job-open.svg # icons/folder-job.svg # icons/folder-json-open.svg # icons/folder-json.svg # icons/folder-keys-open.svg # icons/folder-keys.svg # icons/folder-kotlin-open.svg # icons/folder-kotlin.svg # icons/folder-kusto-open.svg # icons/folder-kusto.svg # icons/folder-layout-open.svg # icons/folder-layout.svg # icons/folder-lefthook-open.svg # icons/folder-lefthook.svg # icons/folder-less-open.svg # icons/folder-less.svg # icons/folder-lib-open.svg # icons/folder-lib.svg # icons/folder-license-open.svg # icons/folder-license.svg # icons/folder-link-open.svg # icons/folder-link.svg # icons/folder-linux-open.svg # icons/folder-linux.svg # icons/folder-liquibase-open.svg # icons/folder-liquibase.svg # icons/folder-log-open.svg # icons/folder-log.svg # icons/folder-lottie-open.svg # icons/folder-lottie.svg # icons/folder-lua-open.svg # icons/folder-lua.svg # icons/folder-macos-open.svg # icons/folder-macos.svg # icons/folder-mail-open.svg # icons/folder-mail.svg # icons/folder-mappings-open.svg # icons/folder-mappings.svg # icons/folder-mercurial-open.svg # icons/folder-mercurial.svg # icons/folder-messages-open.svg # icons/folder-messages.svg # icons/folder-meta-open.svg # icons/folder-meta.svg # icons/folder-metro-open.svg # icons/folder-metro.svg # icons/folder-middleware-open.svg # icons/folder-middleware.svg # icons/folder-migrations-open.svg # icons/folder-migrations.svg # icons/folder-mjml-open.svg # icons/folder-mjml.svg # icons/folder-mobile-open.svg # icons/folder-mobile.svg # icons/folder-mock-open.svg # icons/folder-mock.svg # icons/folder-mojo-open.svg # icons/folder-mojo.svg # icons/folder-molecule-open.svg # icons/folder-molecule.svg # icons/folder-moon-open.svg # icons/folder-moon.svg # icons/folder-netlify-open.svg # icons/folder-netlify.svg # icons/folder-next-open.svg # icons/folder-next.svg # icons/folder-node-open.svg # icons/folder-node.svg # icons/folder-obsidian-open.svg # icons/folder-obsidian.svg # icons/folder-organism-open.svg # icons/folder-organism.svg # icons/folder-other-open.svg # icons/folder-other.svg # icons/folder-packages-open.svg # icons/folder-packages.svg # icons/folder-pdf-open.svg # icons/folder-pdf.svg # icons/folder-phpmailer-open.svg # icons/folder-phpmailer.svg # icons/folder-pipe-open.svg # icons/folder-pipe.svg # icons/folder-plastic-open.svg # icons/folder-plastic.svg # icons/folder-plugin-open.svg # icons/folder-plugin.svg # icons/folder-policy-open.svg # icons/folder-policy.svg # icons/folder-postman-open.svg # icons/folder-postman.svg # icons/folder-powershell-open.svg # icons/folder-powershell.svg # icons/folder-prisma-open.svg # icons/folder-prisma.svg # icons/folder-private-open.svg # icons/folder-private.svg # icons/folder-project-open.svg # icons/folder-project.svg # icons/folder-proto-open.svg # icons/folder-proto.svg # icons/folder-public-open.svg # icons/folder-public.svg # icons/folder-python-open.svg # icons/folder-python.svg # icons/folder-quasar-open.svg # icons/folder-quasar.svg # icons/folder-queue-open.svg # icons/folder-queue.svg # icons/folder-react-components-open.svg # icons/folder-react-components.svg # icons/folder-redux-reducer-open.svg # icons/folder-redux-reducer.svg # icons/folder-repository-open.svg # icons/folder-repository.svg # icons/folder-resolver-open.svg # icons/folder-resolver.svg # icons/folder-resource-open.svg # icons/folder-resource.svg # icons/folder-review-open.svg # icons/folder-review.svg # icons/folder-robot-open.svg # icons/folder-robot.svg # icons/folder-routes-open.svg # icons/folder-routes.svg # icons/folder-rust-open.svg # icons/folder-rust.svg # icons/folder-salt-open.svg # icons/folder-salt.svg # icons/folder-sandbox-open.svg # icons/folder-sandbox.svg # icons/folder-sass-open.svg # icons/folder-sass.svg # icons/folder-scala-open.svg # icons/folder-scala.svg # icons/folder-scons-open.svg # icons/folder-scons.svg # icons/folder-scripts-open.svg # icons/folder-scripts.svg # icons/folder-secure-open.svg # icons/folder-secure.svg # icons/folder-server-open.svg # icons/folder-server.svg # icons/folder-shader-open.svg # icons/folder-shader.svg # icons/folder-shared-open.svg # icons/folder-shared.svg # icons/folder-simulations-open.svg # icons/folder-simulations.svg # icons/folder-skills-open.svg # icons/folder-skills.svg # icons/folder-snapcraft-open.svg # icons/folder-snapcraft.svg # icons/folder-snippet-open.svg # icons/folder-snippet.svg # icons/folder-src-open.svg # icons/folder-src.svg # icons/folder-stack-open.svg # icons/folder-stack.svg # icons/folder-stencil-open.svg # icons/folder-stencil.svg # icons/folder-store-open.svg # icons/folder-store.svg # icons/folder-storybook-open.svg # icons/folder-storybook.svg # icons/folder-stylus-open.svg # icons/folder-stylus.svg # icons/folder-supabase-open.svg # icons/folder-supabase.svg # icons/folder-svelte-open.svg # icons/folder-svelte.svg # icons/folder-target-open.svg # icons/folder-target.svg # icons/folder-taskfile-open.svg # icons/folder-taskfile.svg # icons/folder-tasks-open.svg # icons/folder-tasks.svg # icons/folder-television-open.svg # icons/folder-television.svg # icons/folder-template-open.svg # icons/folder-template.svg # icons/folder-terraform-open.svg # icons/folder-terraform.svg # icons/folder-test-open.svg # icons/folder-test.svg # icons/folder-theme-open.svg # icons/folder-theme.svg # icons/folder-toc-open.svg # icons/folder-toc.svg # icons/folder-tools-open.svg # icons/folder-tools.svg # icons/folder-trash-open.svg # icons/folder-trash.svg # icons/folder-typescript-open.svg # icons/folder-typescript.svg # icons/folder-ui-open.svg # icons/folder-ui.svg # icons/folder-update-open.svg # icons/folder-update.svg # icons/folder-upload-open.svg # icons/folder-upload.svg # icons/folder-utils-open.svg # icons/folder-utils.svg # icons/folder-vercel-open.svg # icons/folder-vercel.svg # icons/folder-verdaccio-open.svg # icons/folder-verdaccio.svg # icons/folder-video-open.svg # icons/folder-video.svg # icons/folder-views-open.svg # icons/folder-views.svg # icons/folder-vm-open.svg # icons/folder-vm.svg # icons/folder-vscode-open.svg # icons/folder-vscode.svg # icons/folder-windows-open.svg # icons/folder-windows.svg # icons/folder-wordpress-open.svg # icons/folder-wordpress.svg # icons/folder-yarn-open.svg # icons/folder-yarn.svg # icons/folder-zeabur-open.svg # icons/folder-zeabur.svg # icons/folder-zed-open.svg # icons/folder-zed.svg
Contributor
PreviewThank you for creating a pull request. This preview shows you how your icons will look on the different themes: Check how your icons fit in a 16x16 grid with our Pixel Perfect Checker by following this link. You can find more information on how to contribute in the contribution guidelines. |
Contributor
Merge SuccessfulThanks for your contribution! 🎉 The changes will be part of the upcoming update on the Marketplace. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Description
Follow up PR of #3462.
Generation of all open folder icons
Contribution Guidelines