├── migrations
├── package.json
├── base-migration
│ └── index.ts
├── tsconfig.json
└── migration.json
├── vite-plugins
├── svg-spritemap
│ ├── test
│ │ ├── project
│ │ │ ├── main.ts
│ │ │ ├── svg
│ │ │ │ ├── no_viewbox_width_height.svg
│ │ │ │ ├── invalid_viewbox.svg
│ │ │ │ ├── no_viewbox.svg
│ │ │ │ ├── no_width_height.svg
│ │ │ │ └── vite.svg
│ │ │ └── index.html
│ │ ├── helper
│ │ │ ├── path.ts
│ │ │ └── build.ts
│ │ └── svgo.test.ts
│ ├── demo
│ │ ├── src
│ │ │ ├── vite-env.d.ts
│ │ │ ├── main.ts
│ │ │ ├── icons
│ │ │ │ └── vite.svg
│ │ │ └── css
│ │ │ │ └── style.css
│ │ ├── .gitignore
│ │ ├── package.json
│ │ ├── vite.config.ts
│ │ └── tsconfig.json
│ ├── src
│ │ ├── helpers
│ │ │ ├── calculateY.ts
│ │ │ ├── filename.ts
│ │ │ └── cleanAttributes.ts
│ │ ├── typings
│ │ │ └── svgElementAttributes.d.ts
│ │ ├── styles
│ │ │ ├── template.css
│ │ │ ├── template.styl
│ │ │ ├── template.less
│ │ │ └── template.scss
│ │ ├── index.ts
│ │ └── types.ts
│ ├── vitest.config.ts
│ ├── dist
│ │ ├── template.css
│ │ ├── template.styl
│ │ ├── template.less
│ │ ├── template.scss
│ │ └── index.d.ts
│ └── tsup.config.ts
└── svg-loader
│ ├── index.d.ts
│ └── package.json
├── src
├── vite-env.d.ts
├── svgs
│ ├── equals.svg
│ ├── milestone.svg
│ ├── check.svg
│ ├── ladder.svg
│ ├── less-than.svg
│ ├── microsoft.svg
│ ├── this-quarter.svg
│ ├── clinic.svg
│ ├── file-tree.svg
│ ├── greater-than.svg
│ ├── hospital.svg
│ ├── previous-quarter.svg
│ ├── diamond.svg
│ ├── foundation.svg
│ ├── git-issue.svg
│ ├── diamond-circled.svg
│ ├── hammer.svg
│ ├── repository.svg
│ ├── plugin.svg
│ ├── add-filter.svg
│ ├── all.svg
│ ├── drop-shipping.svg
│ ├── ethereum.svg
│ ├── git-commit.svg
│ ├── ms-office.svg
│ ├── pipes.svg
│ ├── barcode.svg
│ ├── less-than-or-equal.svg
│ ├── strategy.svg
│ ├── workflow.svg
│ ├── greater-than-or-equal.svg
│ ├── next-quarter.svg
│ ├── pin-right.svg
│ ├── add-row.svg
│ ├── hospital-bed.svg
│ ├── is-null.svg
│ ├── git-branch.svg
│ ├── git-merge.svg
│ ├── pull-request.svg
│ ├── code-fork.svg
│ ├── condom.svg
│ ├── estate.svg
│ ├── hospital-sign.svg
│ ├── last-quarter.svg
│ ├── is-after.svg
│ ├── thermometer.svg
│ ├── is-before.svg
│ ├── pill.svg
│ ├── pound-circled.svg
│ ├── water-tap.svg
│ ├── arrow-down-left.svg
│ ├── arrow-down-right.svg
│ ├── arrow-up-left.svg
│ ├── arrow-up-right.svg
│ ├── file-changes.svg
│ ├── git-compare.svg
│ ├── jump-up.svg
│ ├── next-week.svg
│ ├── pulse.svg
│ ├── start-expression.svg
│ ├── stretcher.svg
│ ├── code.svg
│ ├── google-drive.svg
│ ├── last-week.svg
│ ├── medical-book.svg
│ ├── previous-week.svg
│ ├── software-architecture.svg
│ ├── tapeline.svg
│ ├── this-week.svg
│ ├── brick-wall.svg
│ ├── not-equal.svg
│ ├── pin-left.svg
│ ├── piping-system.svg
│ ├── software-installer.svg
│ ├── stairs.svg
│ ├── starts-with.svg
│ ├── ungroup.svg
│ ├── unpin-left.svg
│ ├── unpin-right.svg
│ ├── bottom-records.svg
│ ├── end-expression.svg
│ ├── module.svg
│ ├── tap-water.svg
│ ├── timeline.svg
│ ├── top-records.svg
│ ├── aggregation.svg
│ ├── app-symbol.svg
│ ├── medicine.svg
│ ├── award.svg
│ ├── is-empty.svg
│ ├── solar-panel.svg
│ ├── certificate.svg
│ ├── gift.svg
│ ├── gold.svg
│ ├── quarter-one.svg
│ ├── skyscrapers.svg
│ ├── yen-circled.svg
│ ├── accessibility.svg
│ ├── forklift-truck.svg
│ ├── inspect-code.svg
│ ├── invoice.svg
│ ├── building.svg
│ ├── console.svg
│ ├── quarter-two.svg
│ ├── ambulance.svg
│ ├── code-review.svg
│ ├── construction-cone.svg
│ ├── construction-trolley.svg
│ ├── rh-negative.svg
│ ├── scissor-lift.svg
│ ├── quarter-four.svg
│ ├── tomorrow.svg
│ ├── yesterday.svg
│ ├── bull-market.svg
│ ├── jump-down.svg
│ ├── quarter-three.svg
│ ├── responsive-layout.svg
│ ├── rulers.svg
│ ├── severity.svg
│ ├── source-code.svg
│ ├── vote.svg
│ ├── baby-bottle.svg
│ ├── does-not-start-with.svg
│ ├── horn.svg
│ ├── impact-drill.svg
│ ├── restricted-area.svg
│ ├── today.svg
│ ├── bear-market.svg
│ ├── does-not-end-with.svg
│ ├── rh-positive.svg
│ ├── paint-roller.svg
│ ├── tooth.svg
│ ├── trowel.svg
│ ├── cordless-screwdriver.svg
│ ├── exact-match.svg
│ ├── match.svg
│ ├── calculator.svg
│ ├── doctors-bag.svg
│ ├── grid.svg
│ ├── last-year.svg
│ ├── mask-2.svg
│ ├── month.svg
│ ├── next-year.svg
│ ├── cash-only.svg
│ ├── dropbox.svg
│ ├── facebook.svg
│ ├── poop.svg
│ ├── shovel.svg
│ ├── not-empty.svg
│ ├── credit-cards.svg
│ ├── google.svg
│ ├── tooth-cracked.svg
│ ├── water-heater.svg
│ ├── stethoscope.svg
│ ├── atm.svg
│ ├── contraception.svg
│ ├── heart-care.svg
│ ├── legal-document.svg
│ ├── opera.svg
│ ├── radiator.svg
│ ├── soldering-iron.svg
│ ├── this-year.svg
│ ├── tinder.svg
│ ├── vial.svg
│ ├── delivery.svg
│ ├── dump-truck.svg
│ ├── pay-date.svg
│ ├── crane.svg
│ ├── instagram.svg
│ ├── stats.svg
│ ├── wrench.svg
│ ├── credit-control.svg
│ ├── saw.svg
│ ├── add-child.svg
│ ├── cement-mixer.svg
│ ├── is-not-null.svg
│ ├── last-month.svg
│ ├── mastercard.svg
│ ├── next-month.svg
│ ├── water-boiler.svg
│ ├── bulldozer.svg
│ ├── candidate-results.svg
│ ├── pneumatic-hammer-drill.svg
│ ├── system-update.svg
│ ├── braille.svg
│ ├── euro-circled.svg
│ ├── tractor.svg
│ ├── condom-used.svg
│ ├── diners-club.svg
│ ├── bill-paid.svg
│ ├── dividents.svg
│ ├── doctor.svg
│ ├── this-month.svg
│ ├── security-1.svg
│ ├── tiktok.svg
│ ├── white-house-2.svg
│ ├── parliament-1.svg
│ ├── toilet-paper.svg
│ ├── fountain.svg
│ ├── development.svg
│ ├── male-candidate.svg
│ ├── verified-account.svg
│ ├── parliament-2.svg
│ ├── screwdriver.svg
│ ├── white-house-1.svg
│ ├── google-play.svg
│ ├── aids-ribbon.svg
│ ├── linkedin.svg
│ ├── maestro.svg
│ ├── dental-implant.svg
│ ├── is-true.svg
│ ├── results-by-candidates.svg
│ ├── bucket.svg
│ ├── facebook-messenger.svg
│ ├── is-false.svg
│ ├── ms-teams.svg
│ ├── onedrive.svg
│ ├── radioactive.svg
│ ├── fitness-watch.svg
│ ├── heart-monitor.svg
│ ├── twitch.svg
│ ├── cancer-ribbon.svg
│ ├── discount.svg
│ ├── nurse.svg
│ ├── syringe.svg
│ ├── usa-ny.svg
│ ├── face-id.svg
│ ├── worker.svg
│ ├── american-express.svg
│ ├── atm-yen.svg
│ ├── auction.svg
│ ├── stackoverflow.svg
│ ├── medium.svg
│ ├── safety-vest.svg
│ ├── tow-truck.svg
│ ├── cash-2.svg
│ ├── construction-project.svg
│ ├── mask-1.svg
│ ├── vimeo.svg
│ ├── protester-signs.svg
│ ├── twitter.svg
│ ├── dollar-circled.svg
│ ├── massage.svg
│ ├── popular-votes.svg
│ ├── cash-1.svg
│ ├── dental-floss.svg
│ ├── weight-scale.svg
│ ├── bug.svg
│ ├── microorganisms.svg
│ ├── microscope.svg
│ ├── results-piechart.svg
│ ├── money-bag.svg
│ ├── pacifier.svg
│ ├── sneeze.svg
│ ├── vs-code.svg
│ ├── country-home.svg
│ ├── spotify.svg
│ ├── apple.svg
│ ├── dose.svg
│ ├── ends-with.svg
│ ├── veterinarian.svg
│ ├── usa-party-green.svg
│ ├── brush.svg
│ ├── usa-tx.svg
│ ├── atm-euro.svg
│ ├── usa-lower-48-states.svg
│ ├── virus.svg
│ ├── commodities.svg
│ ├── dna.svg
│ ├── slack.svg
│ ├── bank-safe.svg
│ ├── github.svg
│ ├── ms-word.svg
│ ├── road-roller.svg
│ ├── budget-spending.svg
│ ├── steam.svg
│ ├── towel-rail.svg
│ ├── blood.svg
│ ├── debt.svg
│ ├── anxiety.svg
│ ├── usa-fl.svg
│ ├── financial-insurance.svg
│ ├── snapchat.svg
│ ├── gas-mask.svg
│ ├── google-maps.svg
│ ├── atm-dollar.svg
│ ├── diabetes.svg
│ ├── idea-generation.svg
│ ├── atm-pound.svg
│ ├── piggy-bank.svg
│ ├── api.svg
│ ├── blu-ray.svg
│ ├── electoral-votes.svg
│ ├── paypal.svg
│ ├── breastfeeding.svg
│ ├── female-candidate.svg
│ ├── loan.svg
│ ├── oil.svg
│ ├── reddit.svg
│ ├── contains.svg
│ ├── usa-party-republican.svg
│ ├── skype.svg
│ ├── bitcoin.svg
│ ├── ms-powerpoint.svg
│ ├── workers.svg
│ ├── teeth.svg
│ ├── telegram.svg
│ ├── does-not-contain.svg
│ ├── year-to-date.svg
│ ├── apple-app-store.svg
│ ├── security-2.svg
│ ├── whatsapp.svg
│ ├── soundcloud.svg
│ ├── behance.svg
│ ├── visually-impaired.svg
│ ├── oil-platform.svg
│ ├── scales-balanced.svg
│ ├── chrome.svg
│ ├── ms-edge.svg
│ ├── pliers.svg
│ ├── crowdfunding.svg
│ ├── jsfiddle.svg
│ ├── maintenance.svg
│ ├── box.svg
│ ├── biohazard.svg
│ ├── discord.svg
│ ├── scales-unbalanced.svg
│ ├── stop-hand.svg
│ ├── internet-explorer.svg
│ ├── embryo.svg
│ ├── bacteria.svg
│ ├── ms-excel.svg
│ ├── keep-away-from-children.svg
│ ├── visa.svg
│ ├── fertilization.svg
│ ├── google-translate.svg
│ ├── bandage.svg
│ ├── case-sensitive.svg
│ ├── wire-transfer.svg
│ ├── virus-stop.svg
│ ├── hearing-aid.svg
│ ├── wechat.svg
│ ├── amazon.svg
│ ├── plastic-surgery.svg
│ ├── ebay.svg
│ ├── sign-language.svg
│ └── usa-ca.svg
├── index.ts
├── all.ts
└── common
│ └── icon.ts
├── .prettierrc.json
├── scripts
└── report.js
├── main.js
├── style.css
├── index.html
├── tsconfig.json
├── .editorconfig
└── .github
└── workflows
└── nodejs.yml
/migrations/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "commonjs"
3 | }
4 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/test/project/main.ts:
--------------------------------------------------------------------------------
1 | import './styles/spritemap.css'
2 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/demo/src/vite-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/src/vite-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | ///
3 |
--------------------------------------------------------------------------------
/.prettierrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "trailingComma": "es5",
3 | "tabWidth": 2,
4 | "singleQuote": true,
5 | "arrowParens": "always"
6 | }
7 |
--------------------------------------------------------------------------------
/src/svgs/equals.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/milestone.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/check.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ladder.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/less-than.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/microsoft.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/this-quarter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/clinic.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/file-tree.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/greater-than.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/hospital.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/previous-quarter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/diamond.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/foundation.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/git-issue.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/diamond-circled.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/hammer.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/repository.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/plugin.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/add-filter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/all.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/drop-shipping.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ethereum.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/git-commit.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ms-office.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pipes.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/migrations/base-migration/index.ts:
--------------------------------------------------------------------------------
1 | import { Rule, Tree } from "@angular-devkit/schematics";
2 |
3 | export default function (): Rule {
4 | return (tree: Tree) => {
5 | return tree;
6 | };
7 | }
8 |
--------------------------------------------------------------------------------
/src/svgs/barcode.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/less-than-or-equal.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/strategy.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/workflow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/src/helpers/calculateY.ts:
--------------------------------------------------------------------------------
1 | export const calculateY = (heights: number[] = [], gutter = 0) => {
2 | return heights.reduce((a, b) => a + b, 0) + heights.length * gutter
3 | }
4 |
--------------------------------------------------------------------------------
/src/svgs/greater-than-or-equal.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/next-quarter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pin-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/scripts/report.js:
--------------------------------------------------------------------------------
1 | export default {
2 | success: (s) => console.log("\x1b[32m%s\x1b[0m", s),
3 | warn: (s) => console.warn("\x1b[33m%s\x1b[0m", s),
4 | error: (s) => console.error("\x1b[31m%s\x1b[0m", s)
5 | }
6 |
--------------------------------------------------------------------------------
/src/svgs/add-row.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/hospital-bed.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/is-null.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/demo/src/main.ts:
--------------------------------------------------------------------------------
1 | import './scss/style.scss'
2 | // import './stylus/style.styl'
3 | // import './less/style.less'
4 |
5 | // import './css/spritemap.css'
6 | // import './css/style.css'
7 |
--------------------------------------------------------------------------------
/src/svgs/git-branch.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/git-merge.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pull-request.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/src/typings/svgElementAttributes.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'svg-element-attributes' {
2 | const svgElementAttributes: Record>
3 | export default svgElementAttributes
4 | }
5 |
--------------------------------------------------------------------------------
/src/svgs/code-fork.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/condom.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/estate.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/hospital-sign.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/last-quarter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/is-after.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/thermometer.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/vitest.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vitest/config'
2 |
3 | export default defineConfig({
4 | test: {
5 | coverage: {
6 | reporter: ['lcov']
7 | }
8 | }
9 | })
10 |
--------------------------------------------------------------------------------
/src/svgs/is-before.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pound-circled.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/water-tap.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/arrow-down-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/arrow-down-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/arrow-up-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/arrow-up-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/file-changes.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/git-compare.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/jump-up.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/next-week.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pulse.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/start-expression.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/stretcher.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/migrations/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es6",
4 | "module": "CommonJS",
5 | "sourceMap": false,
6 | "declaration": true,
7 | "outDir": "../dist/migrations/base-migration/"
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/svgs/code.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/google-drive.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/last-week.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/medical-book.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/previous-week.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/software-architecture.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/tapeline.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/this-week.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/main.js:
--------------------------------------------------------------------------------
1 | import './dist/styles/sprite.css';
2 | import './style.css';
3 | import { youtube } from './src/socialMedia';
4 |
5 | document.querySelector('#app').innerHTML = `
6 |
7 | ${youtube.value}
8 | `;
9 |
--------------------------------------------------------------------------------
/src/svgs/brick-wall.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/not-equal.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pin-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/piping-system.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/software-installer.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/stairs.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/starts-with.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ungroup.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/unpin-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/unpin-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/bottom-records.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/end-expression.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/module.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/tap-water.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/timeline.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/top-records.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/aggregation.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/app-symbol.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/medicine.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/award.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/is-empty.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/solar-panel.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/certificate.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/gift.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/gold.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/quarter-one.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/skyscrapers.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/yen-circled.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/migrations/migration.json:
--------------------------------------------------------------------------------
1 | {
2 | "schematics": {
3 | "migration-01": {
4 | "version": "3.0.0",
5 | "description": "Updates IgniteUI Material Icons Extended to the latest version.",
6 | "factory": "./base-migration"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/svgs/accessibility.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/forklift-truck.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/inspect-code.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/invoice.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/building.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/console.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/quarter-two.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ambulance.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/code-review.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/construction-cone.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/construction-trolley.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/rh-negative.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/scissor-lift.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/quarter-four.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/tomorrow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/yesterday.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/bull-market.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/jump-down.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/quarter-three.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/responsive-layout.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/rulers.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/severity.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/source-code.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/vote.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/baby-bottle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/does-not-start-with.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/horn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/impact-drill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/restricted-area.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/today.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/bear-market.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/does-not-end-with.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/rh-positive.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/paint-roller.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/tooth.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/trowel.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/cordless-screwdriver.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/exact-match.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/match.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/style.css:
--------------------------------------------------------------------------------
1 | :root {
2 | --icon-size: 48px;
3 | --icon-color: orange;
4 | }
5 |
6 | .imx-icon {
7 | --size: var(--icon-size);
8 | --color: var(--icon-color);
9 | }
10 |
11 | svg {
12 | width: var(--icon-size);
13 | height: var(--icon-size);
14 | fill: var(--icon-color);
15 | }
16 |
--------------------------------------------------------------------------------
/src/svgs/calculator.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/doctors-bag.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/grid.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/last-year.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/mask-2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/month.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/next-year.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/cash-only.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/dropbox.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/facebook.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/poop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/shovel.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/not-empty.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/credit-cards.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/google.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/tooth-cracked.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/water-heater.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/stethoscope.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/atm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/contraception.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/heart-care.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/legal-document.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/opera.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/radiator.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/soldering-iron.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/this-year.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/tinder.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/vial.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/test/project/svg/no_viewbox_width_height.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/delivery.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/dump-truck.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pay-date.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/crane.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/instagram.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/test/project/svg/invalid_viewbox.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/test/project/svg/no_viewbox.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/test/project/svg/no_width_height.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/stats.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/wrench.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/credit-control.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/saw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Material Icons Extended
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/svgs/add-child.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/cement-mixer.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/is-not-null.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/last-month.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/mastercard.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/next-month.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/water-boiler.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/test/helper/path.ts:
--------------------------------------------------------------------------------
1 | import { fileURLToPath } from 'url';
2 | import path, { resolve } from 'path'
3 | import { normalizePath } from 'vite'
4 | const __dirname = path.dirname(fileURLToPath(import.meta.url));
5 |
6 | export const getPath = (...pathSegments: string[]) => {
7 | return normalizePath(resolve(__dirname, './../', ...pathSegments))
8 | }
9 |
--------------------------------------------------------------------------------
/src/svgs/bulldozer.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/candidate-results.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pneumatic-hammer-drill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/system-update.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/braille.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/euro-circled.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/tractor.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/dist/template.css:
--------------------------------------------------------------------------------
1 | .imx-icon {
2 | --size: 1.5rem;
3 | --color: currentColor;
4 |
5 | display: inline-block;
6 | background-color: var(--color);
7 | width: var(--size);
8 | height: var(--size);
9 | mask-image: var(--icon);
10 | mask-repeat: no-repeat;
11 | -webkit-mask-image: var(--icon);
12 | -webkit-mask-repeat: no-repeat;
13 | }
14 |
--------------------------------------------------------------------------------
/src/svgs/condom-used.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/diners-club.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/src/styles/template.css:
--------------------------------------------------------------------------------
1 | .imx-icon {
2 | --size: 1.5rem;
3 | --color: currentColor;
4 |
5 | display: inline-block;
6 | background-color: var(--color);
7 | width: var(--size);
8 | height: var(--size);
9 | mask-image: var(--icon);
10 | mask-repeat: no-repeat;
11 | -webkit-mask-image: var(--icon);
12 | -webkit-mask-repeat: no-repeat;
13 | }
14 |
--------------------------------------------------------------------------------
/src/svgs/bill-paid.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/dividents.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/doctor.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/this-month.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/security-1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/tiktok.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/white-house-2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/demo/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/src/svgs/parliament-1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/toilet-paper.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/fountain.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/development.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/male-candidate.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/verified-account.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/parliament-2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/screwdriver.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/white-house-1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/google-play.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/aids-ribbon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/linkedin.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/maestro.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/dental-implant.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/is-true.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/results-by-candidates.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/bucket.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/facebook-messenger.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/is-false.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ms-teams.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/onedrive.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/radioactive.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/fitness-watch.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/heart-monitor.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/twitch.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/cancer-ribbon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/discount.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/nurse.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/syringe.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/usa-ny.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/face-id.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/worker.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/demo/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "demo",
3 | "private": true,
4 | "version": "0.0.0",
5 | "scripts": {
6 | "dev": "vite",
7 | "build": "tsc && vite build",
8 | "preview": "vite preview"
9 | },
10 | "devDependencies": {
11 | "less": "^4.1.3",
12 | "sass": "^1.58.3",
13 | "stylus": "^0.59.0",
14 | "typescript": "^4.9.5",
15 | "vite": "^4.1.4",
16 | "vite-plugin-inspect": "^0.7.15"
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/svgs/american-express.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/atm-yen.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/auction.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/stackoverflow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/medium.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/safety-vest.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compileOnSave": true,
3 | "compilerOptions": {
4 | "target": "ESNext",
5 | "module": "ESNext",
6 | "lib": ["ESNext"],
7 | "moduleResolution": "Node",
8 | "declaration": true,
9 | "strict": true,
10 | "sourceMap": true,
11 | "outDir": "./dist",
12 | "typeRoots": ["node_modules/@types"],
13 | "noImplicitAny": true,
14 | "removeComments": true
15 | },
16 | "exclude": ["dist", "node_modules", "vite-plugins"]
17 | }
18 |
--------------------------------------------------------------------------------
/src/svgs/tow-truck.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/tsup.config.ts:
--------------------------------------------------------------------------------
1 | import { promises as fs } from 'fs'
2 | import { defineConfig } from 'tsup'
3 | import fg from 'fast-glob'
4 |
5 | export default defineConfig({
6 | entry: ['src/index.ts'],
7 | dts: true,
8 | format: ['esm'],
9 | async onSuccess() {
10 | const files = await fg('src/styles/*.(css|scss|styl|less)')
11 | for (const file of files) {
12 | await fs.copyFile(file, file.replace('src/styles', 'dist/'))
13 | }
14 | }
15 | })
16 |
--------------------------------------------------------------------------------
/src/index.ts:
--------------------------------------------------------------------------------
1 | import type { IMXIcon } from './common/icon';
2 |
3 | export * from './content';
4 | export * from './construction';
5 | export * from './editor';
6 | export * from './election';
7 | export * from './finance';
8 | export * from './health';
9 | export * from './logos';
10 | export * from './programming';
11 | export * from './socialMedia';
12 |
13 | export { all } from './all';
14 |
15 | export { IconCategory, IconCategoryEnum } from './common/icon';
16 | export type { IMXIcon };
17 |
--------------------------------------------------------------------------------
/src/svgs/cash-2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/construction-project.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/mask-1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/vimeo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/protester-signs.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/dist/template.styl:
--------------------------------------------------------------------------------
1 | imx-icon($name)
2 | $sprite = $sprites[$name]
3 | $url = $sprite[uri]
4 |
5 | --size: 1.5rem
6 | --color: currentColor
7 |
8 | display: inline-block
9 | width: var(--size)
10 | height: var(--size)
11 | background-color: var(--color)
12 |
13 | if $url
14 | --icon: embedurl($url)
15 | mask-image: var(--icon)
16 | mask-repeat: no-repeat
17 | -webkit-mask-image: var(--icon)
18 | -webkit-mask-repeat: no-repeat
19 |
--------------------------------------------------------------------------------
/src/svgs/twitter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/src/styles/template.styl:
--------------------------------------------------------------------------------
1 | imx-icon($name)
2 | $sprite = $sprites[$name]
3 | $url = $sprite[uri]
4 |
5 | --size: 1.5rem
6 | --color: currentColor
7 |
8 | display: inline-block
9 | width: var(--size)
10 | height: var(--size)
11 | background-color: var(--color)
12 |
13 | if $url
14 | --icon: embedurl($url)
15 | mask-image: var(--icon)
16 | mask-repeat: no-repeat
17 | -webkit-mask-image: var(--icon)
18 | -webkit-mask-repeat: no-repeat
19 |
--------------------------------------------------------------------------------
/src/svgs/dollar-circled.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-loader/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'svg-loader' {
2 | import { Plugin } from 'vite';
3 | import { Config } from 'svgo';
4 | function svgLoader(options?: {
5 | a11yMetaPath: string;
6 | svgoConfig?: Config;
7 | svgo?: boolean;
8 | }): Plugin;
9 | export default svgLoader;
10 | }
11 |
12 | declare module '*.svg?url' {
13 | const src: string;
14 | export default src;
15 | }
16 |
17 | declare module '*.svg?raw' {
18 | const src: string;
19 | export default src;
20 | }
21 |
--------------------------------------------------------------------------------
/src/svgs/massage.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/popular-votes.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/cash-1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/dental-floss.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/weight-scale.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/bug.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/microorganisms.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/microscope.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/results-piechart.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/dist/template.less:
--------------------------------------------------------------------------------
1 | .imx-icon(@name) {
2 | @sprite: @sprites[@@name];
3 | @uri: @sprite[uri];
4 |
5 | --size: 1.5rem;
6 | --color: currentColor;
7 |
8 | display: inline-block;
9 | width: var(--size);
10 | height: var(--size);
11 | background-color: var(--color);
12 |
13 | & when (isstring(@uri)) {
14 | --icon: url(@uri);
15 |
16 | mask-image: var(--icon);
17 | mask-repeat: no-repeat;
18 | -webkit-mask-image: var(--icon);
19 | -webkit-mask-repeat: no-repeat;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/test/project/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Test
8 |
9 |
10 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/src/svgs/money-bag.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pacifier.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/src/styles/template.less:
--------------------------------------------------------------------------------
1 | .imx-icon(@name) {
2 | @sprite: @sprites[@@name];
3 | @uri: @sprite[uri];
4 |
5 | --size: 1.5rem;
6 | --color: currentColor;
7 |
8 | display: inline-block;
9 | width: var(--size);
10 | height: var(--size);
11 | background-color: var(--color);
12 |
13 | & when (isstring(@uri)) {
14 | --icon: url(@uri);
15 |
16 | mask-image: var(--icon);
17 | mask-repeat: no-repeat;
18 | -webkit-mask-image: var(--icon);
19 | -webkit-mask-repeat: no-repeat;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/svgs/sneeze.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/vs-code.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/demo/vite.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vite'
2 | import Inspect from 'vite-plugin-inspect'
3 | import VitePluginSvgSpritemap from './../src/index'
4 |
5 | export default defineConfig({
6 | plugins: [
7 | VitePluginSvgSpritemap('src/icons/*.svg', {
8 | // styles: 'src/css/spritemap.css',
9 | styles: 'src/scss/spritemap.scss',
10 | // styles: 'src/stylus/spritemap.styl',
11 | // styles: 'src/less/spritemap.less',
12 | prefix: 'icon-'
13 | }),
14 | Inspect()
15 | ]
16 | })
17 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/dist/template.scss:
--------------------------------------------------------------------------------
1 | %icon {
2 | --size: 1.5rem;
3 | --color: currentColor;
4 |
5 | display: inline-block;
6 | width: var(--size);
7 | height: var(--size);
8 | background-color: var(--color);
9 | }
10 |
11 | @mixin imx-icon($name) {
12 | $url: map.get($sprites, $name, uri);
13 | @extend %icon;
14 |
15 | @if $url {
16 | --icon: #{url($url)};
17 |
18 | mask-image: var(--icon);
19 | mask-repeat: no-repeat;
20 | -webkit-mask-image: var(--icon);
21 | -webkit-mask-repeat: no-repeat;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/svgs/country-home.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/spotify.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/src/styles/template.scss:
--------------------------------------------------------------------------------
1 | %icon {
2 | --size: 1.5rem;
3 | --color: currentColor;
4 |
5 | display: inline-block;
6 | width: var(--size);
7 | height: var(--size);
8 | background-color: var(--color);
9 | }
10 |
11 | @mixin imx-icon($name) {
12 | $url: map.get($sprites, $name, uri);
13 | @extend %icon;
14 |
15 | @if $url {
16 | --icon: #{url($url)};
17 |
18 | mask-image: var(--icon);
19 | mask-repeat: no-repeat;
20 | -webkit-mask-image: var(--icon);
21 | -webkit-mask-repeat: no-repeat;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/svgs/apple.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/dose.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ends-with.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/veterinarian.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/usa-party-green.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/src/index.ts:
--------------------------------------------------------------------------------
1 | import type { Plugin } from 'vite'
2 | import type { UserOptions, Pattern } from './types'
3 | import { BuildPlugin } from './plugins/build'
4 | import { DevPlugin } from './plugins/dev'
5 | import { createOptions } from './helpers/options'
6 |
7 | export default function VitePluginSvgSpritemap(
8 | iconsPattern: Pattern,
9 | options?: UserOptions
10 | ): Plugin[] {
11 | const _options = createOptions(options)
12 |
13 | return [
14 | BuildPlugin(iconsPattern, _options),
15 | DevPlugin(iconsPattern, _options)
16 | ]
17 | }
18 |
--------------------------------------------------------------------------------
/src/svgs/brush.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/usa-tx.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/demo/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ESNext",
4 | "useDefineForClassFields": true,
5 | "module": "ESNext",
6 | "lib": ["ESNext", "DOM"],
7 | "moduleResolution": "Node",
8 | "strict": true,
9 | "sourceMap": true,
10 | "resolveJsonModule": true,
11 | "isolatedModules": true,
12 | "esModuleInterop": true,
13 | "noEmit": true,
14 | "noUnusedLocals": true,
15 | "noUnusedParameters": true,
16 | "noImplicitReturns": true,
17 | "skipLibCheck": true
18 | },
19 | "include": ["src"]
20 | }
21 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/test/helper/build.ts:
--------------------------------------------------------------------------------
1 | import { build } from 'vite'
2 | import VitePluginSvgSpritemap from '../../src'
3 | import type { UserOptions } from '../../src/types'
4 | import { getPath } from './path'
5 |
6 | export const buildVite = async (
7 | options: UserOptions,
8 | path: string | null = null
9 | ) => {
10 | const result = await build({
11 | root: getPath('./project'),
12 | plugins: [
13 | VitePluginSvgSpritemap(
14 | getPath(path ? path : './project/svg/*.svg'),
15 | options
16 | )
17 | ]
18 | })
19 | return result
20 | }
21 |
--------------------------------------------------------------------------------
/src/svgs/atm-euro.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/src/helpers/filename.ts:
--------------------------------------------------------------------------------
1 | import hash_sum from 'hash-sum'
2 |
3 | // Respect https://www.rollupjs.org/guide/en/#outputassetfilenames filename transformation
4 | export const getFileName = (
5 | fileName: string,
6 | name: string,
7 | content: string,
8 | ext: string
9 | ) => {
10 | const hash = hash_sum(content)
11 | fileName = fileName.replace(/\[hash\]/g, hash)
12 | fileName = fileName.replace(/\[ext\]/g, ext)
13 | fileName = fileName.replace(/\[extname\]/g, '.' + ext)
14 | fileName = fileName.replace(/\[name\]/g, name)
15 |
16 | return fileName
17 | }
18 |
--------------------------------------------------------------------------------
/src/svgs/usa-lower-48-states.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/virus.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/commodities.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/dna.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/slack.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/bank-safe.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/github.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ms-word.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/road-roller.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/budget-spending.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/steam.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/towel-rail.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/blood.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/debt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/anxiety.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/usa-fl.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/financial-insurance.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/snapchat.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/gas-mask.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/google-maps.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-loader/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "svg-loader",
3 | "version": "1.0.0",
4 | "description": "Loads and transforms SVGs files for the purpose of the icon library.",
5 | "main": "index.js",
6 | "type": "module",
7 | "types": "index.d.ts",
8 | "exports": {
9 | ".": {
10 | "import": "./index.js"
11 | }
12 | },
13 | "module": "index.js",
14 | "scripts": {
15 | "test": "echo \"Error: no test specified\" && exit 1"
16 | },
17 | "author": "Infragistics",
18 | "license": "ISC",
19 | "devDependencies": {
20 | "@xmldom/xmldom": "^0.8.7",
21 | "svgo": "^3.0.2",
22 | "yaml": "^2.2.1"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/svgs/atm-dollar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/diabetes.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/idea-generation.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/atm-pound.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/piggy-bank.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/all.ts:
--------------------------------------------------------------------------------
1 | import { content } from './content';
2 | import { construction } from './construction';
3 | import { editor } from './editor';
4 | import { elections } from './election';
5 | import { finance } from './finance';
6 | import { health } from './health';
7 | import { logos } from './logos';
8 | import { programming } from './programming';
9 | import { socialMedia } from './socialMedia';
10 | import type { IMXIcon } from './common/icon';
11 |
12 | export const all: IMXIcon[] = [
13 | ...content,
14 | ...construction,
15 | ...editor,
16 | ...elections,
17 | ...finance,
18 | ...health,
19 | ...logos,
20 | ...programming,
21 | ...socialMedia,
22 | ];
23 |
--------------------------------------------------------------------------------
/src/svgs/api.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/blu-ray.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/electoral-votes.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/paypal.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/breastfeeding.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/female-candidate.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/loan.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/oil.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/reddit.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/contains.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/usa-party-republican.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/src/helpers/cleanAttributes.ts:
--------------------------------------------------------------------------------
1 | import svgElementAttributes from 'svg-element-attributes' assert { type: 'json' }
2 |
3 | export const cleanAttributes = (attributes: Attr[], tag: string): Attr[] => {
4 | const cleanAttributes = ['viewbox', 'width', 'height', 'id', 'xmlns']
5 |
6 | const validAttributes = [
7 | ...svgElementAttributes['*'],
8 | ...svgElementAttributes.svg.filter(attr =>
9 | svgElementAttributes[tag].includes(attr)
10 | )
11 | ]
12 |
13 | return Array.from(attributes).filter(
14 | attr =>
15 | !cleanAttributes.includes(attr.name.toLocaleLowerCase()) &&
16 | validAttributes.includes(attr.name)
17 | )
18 | }
19 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | # EditorConfig helps developers define and maintain consistent
2 | # coding styles between different editors and IDEs
3 | # editorconfig.org
4 |
5 | root = true
6 |
7 | [*]
8 |
9 | # Change these settings to your own preference
10 | indent_style = space
11 | indent_size = 2
12 |
13 | # We recommend you to keep these unchanged
14 | end_of_line = lf
15 | charset = utf-8
16 | trim_trailing_whitespace = true
17 | insert_final_newline = true
18 |
19 | [*.md]
20 | trim_trailing_whitespace = false
21 |
22 | [*.json]
23 | indent_size = 2
24 |
25 | [*.{html,js,md}]
26 | block_comment_start = /**
27 | block_comment = *
28 | block_comment_end = */
29 |
30 | [*.scss]
31 | indent_size = 4
32 |
33 |
--------------------------------------------------------------------------------
/src/svgs/skype.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/dist/index.d.ts:
--------------------------------------------------------------------------------
1 | import { Plugin } from 'vite';
2 | import { Config } from 'svgo';
3 |
4 | type Pattern = string[] | string;
5 | type StylesLang = 'less' | 'scss' | 'styl' | 'css';
6 | interface UserOptions {
7 | svgo?: boolean | Config;
8 | output?: {
9 | filename: string;
10 | use?: boolean;
11 | view?: boolean;
12 | } | string | boolean;
13 | prefix?: string;
14 | styles?: {
15 | filename: string;
16 | lang?: StylesLang;
17 | }[] | string | false;
18 | }
19 |
20 | declare function VitePluginSvgSpritemap(iconsPattern: Pattern, options?: UserOptions): Plugin[];
21 |
22 | export { VitePluginSvgSpritemap as default };
23 |
--------------------------------------------------------------------------------
/src/svgs/bitcoin.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ms-powerpoint.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/workers.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/teeth.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/telegram.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/does-not-contain.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/year-to-date.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/apple-app-store.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/security-2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/whatsapp.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/test/project/svg/vite.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.github/workflows/nodejs.yml:
--------------------------------------------------------------------------------
1 | # This workflow will do a clean install of node dependencies and build the package
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
3 |
4 | name: Node.js CI
5 |
6 | on:
7 | push:
8 | branches: [master, '[0-9]+.[0-9]+.x']
9 | pull_request:
10 | branches: [master, '[0-9]+.[0-9]+.x']
11 |
12 | jobs:
13 | build:
14 | runs-on: ubuntu-latest
15 | steps:
16 | - name: Checkout
17 | uses: actions/checkout@v3
18 |
19 | - name: Set up Node
20 | uses: actions/setup-node@v3
21 |
22 | - name: Install packages
23 | run: npm ci
24 |
25 | - name: Build
26 | run: npm run build
27 |
--------------------------------------------------------------------------------
/src/svgs/soundcloud.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/behance.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/visually-impaired.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/demo/src/icons/vite.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/oil-platform.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/scales-balanced.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/common/icon.ts:
--------------------------------------------------------------------------------
1 | export enum IconCategoryEnum {
2 | "construction",
3 | "content",
4 | "editor",
5 | "election",
6 | "finance",
7 | "health",
8 | "logos",
9 | "programming",
10 | "social media",
11 | }
12 |
13 | export type IconCategory = keyof typeof IconCategoryEnum;
14 |
15 | export namespace IconCategory {
16 | function isIndex(key: string | number): boolean {
17 | const n = ~~Number(key);
18 | return String(n) === key && n >= 0;
19 | }
20 |
21 | export function values() {
22 | return Object.keys(IconCategoryEnum).filter((key) => !isIndex(key));
23 | }
24 | }
25 |
26 | export type IMXIcon = {
27 | name: string;
28 | value: string;
29 | categories: IconCategory[];
30 | fontSet?: string;
31 | keywords?: string[];
32 | }
33 |
--------------------------------------------------------------------------------
/src/svgs/chrome.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ms-edge.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/pliers.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/crowdfunding.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/jsfiddle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/maintenance.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/box.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/biohazard.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/discord.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/scales-unbalanced.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/stop-hand.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/internet-explorer.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/embryo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/demo/src/css/style.css:
--------------------------------------------------------------------------------
1 | body {
2 | background-color: #ddd;
3 | margin: 10vw;
4 | font-family: Avenir, Helvetica, Arial, sans-serif;
5 | -webkit-font-smoothing: antialiased;
6 | -moz-osx-font-smoothing: grayscale;
7 | }
8 | @keyframes rainbow {
9 | 0% {
10 | color: red;
11 | }
12 | to {
13 | color: #ff9500;
14 | }
15 | }
16 | .icon {
17 | margin: 0.5rem;
18 | }
19 | .icon-spiriit {
20 | width: 118px;
21 | height: 38px;
22 | }
23 | .icon-vite {
24 | width: 31.88px;
25 | height: 32px;
26 | }
27 | .icon-vite {
28 | animation: rainbow infinite 1s alternate;
29 | }
30 | h1 {
31 | font-size: 2.5rem;
32 | margin-bottom: 1rem;
33 | }
34 | h2 {
35 | margin-top: 0;
36 | }
37 | .example {
38 | margin-top: 4rem;
39 | }
40 | .example__svgs {
41 | display: flex;
42 | align-items: center;
43 | margin: -0.5rem;
44 | }
45 |
--------------------------------------------------------------------------------
/src/svgs/bacteria.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ms-excel.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/keep-away-from-children.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/visa.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/fertilization.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/google-translate.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/bandage.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/case-sensitive.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/wire-transfer.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/virus-stop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/hearing-aid.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/wechat.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/test/svgo.test.ts:
--------------------------------------------------------------------------------
1 | import { it, describe, expect } from 'vitest'
2 | import type { UserOptions } from '../src/types'
3 | import { buildVite } from './helper/build'
4 |
5 | const svgoConfigs: Record = {
6 | default: true,
7 | false: false,
8 | custom: {
9 | plugins: ['prefixIds']
10 | }
11 | }
12 |
13 | describe('SVGO', () => {
14 | for (const key in svgoConfigs) {
15 | if (Object.prototype.hasOwnProperty.call(svgoConfigs, key)) {
16 | it(key, async () => {
17 | const svgo = svgoConfigs[key]
18 | const result = await buildVite({ svgo })
19 | const asset = result.output.find(
20 | asset =>
21 | asset.name?.startsWith('spritemap.') && asset.name.endsWith('.svg')
22 | )
23 |
24 | expect(asset).toBeDefined()
25 |
26 | if (asset && 'source' in asset) {
27 | expect(asset.source).toMatchSnapshot()
28 | }
29 | })
30 | }
31 | }
32 | })
33 |
--------------------------------------------------------------------------------
/src/svgs/amazon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/plastic-surgery.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/ebay.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/sign-language.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/svgs/usa-ca.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/vite-plugins/svg-spritemap/src/types.ts:
--------------------------------------------------------------------------------
1 | import type { Config } from 'svgo'
2 |
3 | export type Pattern = string[] | string
4 |
5 | export type StylesLang = 'less' | 'scss' | 'styl' | 'css'
6 |
7 | export interface UserOptions {
8 | svgo?: boolean | Config
9 | output?:
10 | | { filename: string; use?: boolean; view?: boolean }
11 | | string
12 | | boolean
13 | prefix?: string
14 | styles?:
15 | | {
16 | filename: string
17 | lang?: StylesLang
18 | }[]
19 | | string
20 | | false
21 | }
22 |
23 | export interface OptionsOutput {
24 | filename: string
25 | use: boolean
26 | view: boolean
27 | }
28 |
29 | export interface OptionsStyles {
30 | filename: string
31 | lang: StylesLang
32 | }
33 |
34 | export interface Options {
35 | svgo: Config | false
36 | styles: OptionsStyles[] | false
37 | output: OptionsOutput | false
38 | prefix: string
39 | }
40 |
41 | export interface SvgMapObject {
42 | width: number
43 | height: number
44 | viewBox: number[]
45 | source: string
46 | }
47 |
--------------------------------------------------------------------------------