Apply multiple design changes

This commit is contained in:
Arnaud 2024-11-06 19:46:29 +01:00
parent 29d7fb924e
commit cc8fd71689
No known key found for this signature in database
GPG Key ID: 69D6CE281FCAE663
34 changed files with 766 additions and 443 deletions

618
package-lock.json generated
View File

@ -1,12 +1,12 @@
{ {
"name": "@codex-storage/marketplace-ui-components", "name": "@codex-storage/marketplace-ui-components",
"version": "0.0.36", "version": "0.0.37",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "@codex-storage/marketplace-ui-components", "name": "@codex-storage/marketplace-ui-components",
"version": "0.0.36", "version": "0.0.37",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"lucide-react": "^0.453.0" "lucide-react": "^0.453.0"
@ -22,6 +22,7 @@
"@storybook/react": "^8.2.9", "@storybook/react": "^8.2.9",
"@storybook/react-vite": "^8.2.9", "@storybook/react-vite": "^8.2.9",
"@storybook/test": "^8.2.9", "@storybook/test": "^8.2.9",
"@svgr/plugin-svgo": "^8.1.0",
"@typescript-eslint/eslint-plugin": "^8.6.0", "@typescript-eslint/eslint-plugin": "^8.6.0",
"@typescript-eslint/parser": "^8.0.0", "@typescript-eslint/parser": "^8.0.0",
"@vitejs/plugin-react": "^4.3.1", "@vitejs/plugin-react": "^4.3.1",
@ -35,7 +36,8 @@
"storybook": "^8.2.9", "storybook": "^8.2.9",
"typescript": "5.5.2", "typescript": "5.5.2",
"vite-plugin-dts": "^4.0.3", "vite-plugin-dts": "^4.0.3",
"vite-plugin-lib-inject-css": "^2.1.1" "vite-plugin-lib-inject-css": "^2.1.1",
"vite-plugin-svgr": "^4.3.0"
}, },
"engines": { "engines": {
"node": ">=18" "node": ">=18"
@ -1559,14 +1561,14 @@
} }
}, },
"node_modules/@rollup/pluginutils": { "node_modules/@rollup/pluginutils": {
"version": "5.1.2", "version": "5.1.3",
"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.2.tgz", "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz",
"integrity": "sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==", "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"@types/estree": "^1.0.0", "@types/estree": "^1.0.0",
"estree-walker": "^2.0.2", "estree-walker": "^2.0.2",
"picomatch": "^2.3.1" "picomatch": "^4.0.2"
}, },
"engines": { "engines": {
"node": ">=14.0.0" "node": ">=14.0.0"
@ -1586,6 +1588,18 @@
"integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==",
"dev": true "dev": true
}, },
"node_modules/@rollup/pluginutils/node_modules/picomatch": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
"dev": true,
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/@rollup/rollup-android-arm-eabi": { "node_modules/@rollup/rollup-android-arm-eabi": {
"version": "4.24.0", "version": "4.24.0",
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.0.tgz", "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.0.tgz",
@ -2583,6 +2597,240 @@
"storybook": "^8.3.6" "storybook": "^8.3.6"
} }
}, },
"node_modules/@svgr/babel-plugin-add-jsx-attribute": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz",
"integrity": "sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==",
"dev": true,
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@babel/core": "^7.0.0-0"
}
},
"node_modules/@svgr/babel-plugin-remove-jsx-attribute": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz",
"integrity": "sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==",
"dev": true,
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@babel/core": "^7.0.0-0"
}
},
"node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz",
"integrity": "sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==",
"dev": true,
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@babel/core": "^7.0.0-0"
}
},
"node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz",
"integrity": "sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==",
"dev": true,
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@babel/core": "^7.0.0-0"
}
},
"node_modules/@svgr/babel-plugin-svg-dynamic-title": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz",
"integrity": "sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==",
"dev": true,
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@babel/core": "^7.0.0-0"
}
},
"node_modules/@svgr/babel-plugin-svg-em-dimensions": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz",
"integrity": "sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==",
"dev": true,
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@babel/core": "^7.0.0-0"
}
},
"node_modules/@svgr/babel-plugin-transform-react-native-svg": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz",
"integrity": "sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==",
"dev": true,
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@babel/core": "^7.0.0-0"
}
},
"node_modules/@svgr/babel-plugin-transform-svg-component": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz",
"integrity": "sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==",
"dev": true,
"engines": {
"node": ">=12"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@babel/core": "^7.0.0-0"
}
},
"node_modules/@svgr/babel-preset": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-8.1.0.tgz",
"integrity": "sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==",
"dev": true,
"dependencies": {
"@svgr/babel-plugin-add-jsx-attribute": "8.0.0",
"@svgr/babel-plugin-remove-jsx-attribute": "8.0.0",
"@svgr/babel-plugin-remove-jsx-empty-expression": "8.0.0",
"@svgr/babel-plugin-replace-jsx-attribute-value": "8.0.0",
"@svgr/babel-plugin-svg-dynamic-title": "8.0.0",
"@svgr/babel-plugin-svg-em-dimensions": "8.0.0",
"@svgr/babel-plugin-transform-react-native-svg": "8.1.0",
"@svgr/babel-plugin-transform-svg-component": "8.0.0"
},
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@babel/core": "^7.0.0-0"
}
},
"node_modules/@svgr/core": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz",
"integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==",
"dev": true,
"dependencies": {
"@babel/core": "^7.21.3",
"@svgr/babel-preset": "8.1.0",
"camelcase": "^6.2.0",
"cosmiconfig": "^8.1.3",
"snake-case": "^3.0.4"
},
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
}
},
"node_modules/@svgr/hast-util-to-babel-ast": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz",
"integrity": "sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==",
"dev": true,
"dependencies": {
"@babel/types": "^7.21.3",
"entities": "^4.4.0"
},
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
}
},
"node_modules/@svgr/plugin-jsx": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz",
"integrity": "sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==",
"dev": true,
"dependencies": {
"@babel/core": "^7.21.3",
"@svgr/babel-preset": "8.1.0",
"@svgr/hast-util-to-babel-ast": "8.0.0",
"svg-parser": "^2.0.4"
},
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@svgr/core": "*"
}
},
"node_modules/@svgr/plugin-svgo": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-8.1.0.tgz",
"integrity": "sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==",
"dev": true,
"dependencies": {
"cosmiconfig": "^8.1.3",
"deepmerge": "^4.3.1",
"svgo": "^3.0.2"
},
"engines": {
"node": ">=14"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
"@svgr/core": "*"
}
},
"node_modules/@testing-library/dom": { "node_modules/@testing-library/dom": {
"version": "10.4.0", "version": "10.4.0",
"resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.0.tgz", "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.0.tgz",
@ -2654,6 +2902,15 @@
"@testing-library/dom": ">=7.21.4" "@testing-library/dom": ">=7.21.4"
} }
}, },
"node_modules/@trysound/sax": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
"integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==",
"dev": true,
"engines": {
"node": ">=10.13.0"
}
},
"node_modules/@types/argparse": { "node_modules/@types/argparse": {
"version": "1.0.38", "version": "1.0.38",
"resolved": "https://registry.npmjs.org/@types/argparse/-/argparse-1.0.38.tgz", "resolved": "https://registry.npmjs.org/@types/argparse/-/argparse-1.0.38.tgz",
@ -3526,6 +3783,12 @@
"integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
"dev": true "dev": true
}, },
"node_modules/boolbase": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
"integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==",
"dev": true
},
"node_modules/brace-expansion": { "node_modules/brace-expansion": {
"version": "2.0.1", "version": "2.0.1",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
@ -3622,6 +3885,18 @@
"node": ">=6" "node": ">=6"
} }
}, },
"node_modules/camelcase": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
"integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
"dev": true,
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/caniuse-lite": { "node_modules/caniuse-lite": {
"version": "1.0.30001669", "version": "1.0.30001669",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz",
@ -3724,6 +3999,15 @@
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true "dev": true
}, },
"node_modules/commander": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
"integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
"dev": true,
"engines": {
"node": ">= 10"
}
},
"node_modules/commondir": { "node_modules/commondir": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
@ -3796,6 +4080,32 @@
"integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==",
"dev": true "dev": true
}, },
"node_modules/cosmiconfig": {
"version": "8.3.6",
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz",
"integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==",
"dev": true,
"dependencies": {
"import-fresh": "^3.3.0",
"js-yaml": "^4.1.0",
"parse-json": "^5.2.0",
"path-type": "^4.0.0"
},
"engines": {
"node": ">=14"
},
"funding": {
"url": "https://github.com/sponsors/d-fischer"
},
"peerDependencies": {
"typescript": ">=4.9.5"
},
"peerDependenciesMeta": {
"typescript": {
"optional": true
}
}
},
"node_modules/cross-spawn": { "node_modules/cross-spawn": {
"version": "7.0.3", "version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
@ -3810,6 +4120,47 @@
"node": ">= 8" "node": ">= 8"
} }
}, },
"node_modules/css-select": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz",
"integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==",
"dev": true,
"dependencies": {
"boolbase": "^1.0.0",
"css-what": "^6.1.0",
"domhandler": "^5.0.2",
"domutils": "^3.0.1",
"nth-check": "^2.0.1"
},
"funding": {
"url": "https://github.com/sponsors/fb55"
}
},
"node_modules/css-tree": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz",
"integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==",
"dev": true,
"dependencies": {
"mdn-data": "2.0.30",
"source-map-js": "^1.0.1"
},
"engines": {
"node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0"
}
},
"node_modules/css-what": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
"integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==",
"dev": true,
"engines": {
"node": ">= 6"
},
"funding": {
"url": "https://github.com/sponsors/fb55"
}
},
"node_modules/css.escape": { "node_modules/css.escape": {
"version": "1.5.1", "version": "1.5.1",
"resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz",
@ -3828,6 +4179,39 @@
"node": ">=4" "node": ">=4"
} }
}, },
"node_modules/csso": {
"version": "5.0.5",
"resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz",
"integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==",
"dev": true,
"dependencies": {
"css-tree": "~2.2.0"
},
"engines": {
"node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0",
"npm": ">=7.0.0"
}
},
"node_modules/csso/node_modules/css-tree": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz",
"integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==",
"dev": true,
"dependencies": {
"mdn-data": "2.0.28",
"source-map-js": "^1.0.1"
},
"engines": {
"node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0",
"npm": ">=7.0.0"
}
},
"node_modules/csso/node_modules/mdn-data": {
"version": "2.0.28",
"resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz",
"integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==",
"dev": true
},
"node_modules/csstype": { "node_modules/csstype": {
"version": "3.1.3", "version": "3.1.3",
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
@ -3872,6 +4256,15 @@
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
"dev": true "dev": true
}, },
"node_modules/deepmerge": {
"version": "4.3.1",
"resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
"integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/define-data-property": { "node_modules/define-data-property": {
"version": "1.1.4", "version": "1.1.4",
"resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
@ -3944,6 +4337,71 @@
"integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==",
"dev": true "dev": true
}, },
"node_modules/dom-serializer": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
"integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
"dev": true,
"dependencies": {
"domelementtype": "^2.3.0",
"domhandler": "^5.0.2",
"entities": "^4.2.0"
},
"funding": {
"url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
}
},
"node_modules/domelementtype": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
"integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/fb55"
}
]
},
"node_modules/domhandler": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
"integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
"dev": true,
"dependencies": {
"domelementtype": "^2.3.0"
},
"engines": {
"node": ">= 4"
},
"funding": {
"url": "https://github.com/fb55/domhandler?sponsor=1"
}
},
"node_modules/domutils": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz",
"integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==",
"dev": true,
"dependencies": {
"dom-serializer": "^2.0.0",
"domelementtype": "^2.3.0",
"domhandler": "^5.0.3"
},
"funding": {
"url": "https://github.com/fb55/domutils?sponsor=1"
}
},
"node_modules/dot-case": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz",
"integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==",
"dev": true,
"dependencies": {
"no-case": "^3.0.4",
"tslib": "^2.0.3"
}
},
"node_modules/ee-first": { "node_modules/ee-first": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
@ -3977,6 +4435,15 @@
"url": "https://github.com/fb55/entities?sponsor=1" "url": "https://github.com/fb55/entities?sponsor=1"
} }
}, },
"node_modules/error-ex": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
"integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
"dev": true,
"dependencies": {
"is-arrayish": "^0.2.1"
}
},
"node_modules/es-define-property": { "node_modules/es-define-property": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz",
@ -5054,6 +5521,12 @@
"url": "https://github.com/sponsors/ljharb" "url": "https://github.com/sponsors/ljharb"
} }
}, },
"node_modules/is-arrayish": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
"integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==",
"dev": true
},
"node_modules/is-callable": { "node_modules/is-callable": {
"version": "1.2.7", "version": "1.2.7",
"resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
@ -5242,6 +5715,12 @@
"integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
"dev": true "dev": true
}, },
"node_modules/json-parse-even-better-errors": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
"integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
"dev": true
},
"node_modules/json-schema-traverse": { "node_modules/json-schema-traverse": {
"version": "0.4.1", "version": "0.4.1",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
@ -5306,6 +5785,12 @@
"node": ">= 0.8.0" "node": ">= 0.8.0"
} }
}, },
"node_modules/lines-and-columns": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
"integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
"dev": true
},
"node_modules/local-pkg": { "node_modules/local-pkg": {
"version": "0.5.0", "version": "0.5.0",
"resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz",
@ -5366,6 +5851,15 @@
"integrity": "sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==", "integrity": "sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==",
"dev": true "dev": true
}, },
"node_modules/lower-case": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz",
"integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==",
"dev": true,
"dependencies": {
"tslib": "^2.0.3"
}
},
"node_modules/lru-cache": { "node_modules/lru-cache": {
"version": "5.1.1", "version": "5.1.1",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
@ -5443,6 +5937,12 @@
"react": ">= 0.14.0" "react": ">= 0.14.0"
} }
}, },
"node_modules/mdn-data": {
"version": "2.0.30",
"resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz",
"integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==",
"dev": true
},
"node_modules/media-typer": { "node_modules/media-typer": {
"version": "0.3.0", "version": "0.3.0",
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
@ -5645,12 +6145,34 @@
"node": ">= 0.6" "node": ">= 0.6"
} }
}, },
"node_modules/no-case": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz",
"integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==",
"dev": true,
"dependencies": {
"lower-case": "^2.0.2",
"tslib": "^2.0.3"
}
},
"node_modules/node-releases": { "node_modules/node-releases": {
"version": "2.0.18", "version": "2.0.18",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz",
"integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==",
"dev": true "dev": true
}, },
"node_modules/nth-check": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
"integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
"dev": true,
"dependencies": {
"boolbase": "^1.0.0"
},
"funding": {
"url": "https://github.com/fb55/nth-check?sponsor=1"
}
},
"node_modules/object-assign": { "node_modules/object-assign": {
"version": "4.1.1", "version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
@ -5778,6 +6300,24 @@
"node": ">=6" "node": ">=6"
} }
}, },
"node_modules/parse-json": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
"integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
"dev": true,
"dependencies": {
"@babel/code-frame": "^7.0.0",
"error-ex": "^1.3.1",
"json-parse-even-better-errors": "^2.3.0",
"lines-and-columns": "^1.1.6"
},
"engines": {
"node": ">=8"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/parseurl": { "node_modules/parseurl": {
"version": "1.3.3", "version": "1.3.3",
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
@ -5863,6 +6403,15 @@
"integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==",
"dev": true "dev": true
}, },
"node_modules/path-type": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
"integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/pathe": { "node_modules/pathe": {
"version": "1.1.2", "version": "1.1.2",
"resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz",
@ -6755,6 +7304,16 @@
"url": "https://github.com/sponsors/ljharb" "url": "https://github.com/sponsors/ljharb"
} }
}, },
"node_modules/snake-case": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz",
"integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==",
"dev": true,
"dependencies": {
"dot-case": "^3.0.4",
"tslib": "^2.0.3"
}
},
"node_modules/source-map": { "node_modules/source-map": {
"version": "0.6.1", "version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@ -6911,6 +7470,37 @@
"url": "https://github.com/sponsors/ljharb" "url": "https://github.com/sponsors/ljharb"
} }
}, },
"node_modules/svg-parser": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz",
"integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==",
"dev": true
},
"node_modules/svgo": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.2.tgz",
"integrity": "sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==",
"dev": true,
"dependencies": {
"@trysound/sax": "0.2.0",
"commander": "^7.2.0",
"css-select": "^5.1.0",
"css-tree": "^2.3.1",
"css-what": "^6.1.0",
"csso": "^5.0.5",
"picocolors": "^1.0.0"
},
"bin": {
"svgo": "bin/svgo"
},
"engines": {
"node": ">=14.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/svgo"
}
},
"node_modules/telejson": { "node_modules/telejson": {
"version": "7.2.0", "version": "7.2.0",
"resolved": "https://registry.npmjs.org/telejson/-/telejson-7.2.0.tgz", "resolved": "https://registry.npmjs.org/telejson/-/telejson-7.2.0.tgz",
@ -7370,6 +7960,20 @@
"vite": "*" "vite": "*"
} }
}, },
"node_modules/vite-plugin-svgr": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/vite-plugin-svgr/-/vite-plugin-svgr-4.3.0.tgz",
"integrity": "sha512-Jy9qLB2/PyWklpYy0xk0UU3TlU0t2UMpJXZvf+hWII1lAmRHrOUKi11Uw8N3rxoNk7atZNYO3pR3vI1f7oi+6w==",
"dev": true,
"dependencies": {
"@rollup/pluginutils": "^5.1.3",
"@svgr/core": "^8.1.0",
"@svgr/plugin-jsx": "^8.1.0"
},
"peerDependencies": {
"vite": ">=2.6.0"
}
},
"node_modules/vite/node_modules/@esbuild/aix-ppc64": { "node_modules/vite/node_modules/@esbuild/aix-ppc64": {
"version": "0.21.5", "version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz",

View File

@ -5,7 +5,7 @@
"type": "git", "type": "git",
"url": "https://github.com/codex-storage/codex-marketplace-ui-components" "url": "https://github.com/codex-storage/codex-marketplace-ui-components"
}, },
"version": "0.0.36", "version": "0.0.37",
"type": "module", "type": "module",
"scripts": { "scripts": {
"prepack": "npm run build", "prepack": "npm run build",
@ -41,6 +41,8 @@
"postcss-nesting": "^13.0.1" "postcss-nesting": "^13.0.1"
}, },
"devDependencies": { "devDependencies": {
"vite-plugin-svgr": "^4.3.0",
"@svgr/plugin-svgo": "^8.1.0",
"@codex-storage/sdk-js": "^0.0.15", "@codex-storage/sdk-js": "^0.0.15",
"@chromatic-com/storybook": "^2.0.2", "@chromatic-com/storybook": "^2.0.2",
"@storybook/addon-essentials": "^8.2.9", "@storybook/addon-essentials": "^8.2.9",

View File

@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<path
fill="#E5E5E5"
d="M137.902 0a48.573 48.573 0 0 0-35.589 15.294 53.965 53.965 0 0 0-15.273 35.64v917.412a48.707 48.707 0 0 0 15.273 35.64 49.971 49.971 0 0 0 35.59 15.293h746.336a48.64 48.64 0 0 0 35.59-15.293 50.37 50.37 0 0 0 15.273-35.64V288.717L646.728 0H137.902z" />
<path
fill="#CCC"
d="M935.102 288.717H697.656c-27.822-.666-50.227-23.076-50.928-50.934V0l288.374 288.717z" />
<path
fill="#FFF"
d="M248.126 365.184h220.518a25.518 25.518 0 0 0 24.192-25.497 25.518 25.518 0 0 0-24.197-25.503H248.126a25.518 25.518 0 0 0-24.197 25.498 25.518 25.518 0 0 0 24.197 25.497zm0 169.825H773.95a25.446 25.446 0 0 0 25.43-25.466 25.446 25.446 0 0 0-25.43-25.467H248.126a25.446 25.446 0 0 0-25.431 25.467 25.446 25.446 0 0 0 25.43 25.466zM773.95 653.896H248.126a25.518 25.518 0 0 0-24.197 25.497 25.518 25.518 0 0 0 24.197 25.503H773.95a25.518 25.518 0 0 0 24.197-25.497A25.518 25.518 0 0 0 773.95 653.9z" />
</svg>

After

Width:  |  Height:  |  Size: 1009 B

View File

@ -0,0 +1,12 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<path
fill="#FFC547"
d="m594.944 0 335.124 341.32v563.2c0 65.996-52.5 119.48-117.294 119.48H209.546c-64.793 0-117.299-53.53-117.299-119.48V119.48C92.252 53.484 144.757 0 209.551 0h385.393z" />
<path
fill="#FFF"
fillOpacity="{0.4}"
d="M930.068 341.32H718.152c-64.748 0-123.208-59.49-123.208-125.492V0l335.124 341.32z" />
<path
fill="#FFF"
d="M568.78 446.464V675.84a27.238 27.238 0 0 1-6.793 18.248 45.66 45.66 0 0 1-17.316 12.38 112.64 112.64 0 0 1-20.803 6.518c-6.937 1.438-13.404 2.186-19.41 2.186-6.052 0-12.523-.748-19.41-2.14a112.456 112.456 0 0 1-20.807-6.564 45.706 45.706 0 0 1-17.316-12.38 27.228 27.228 0 0 1-6.84-18.248c0-6.84 2.33-12.892 6.84-18.248a45.706 45.706 0 0 1 17.316-12.38c6.983-2.934 13.916-5.12 20.807-6.518 6.887-1.484 13.358-2.186 19.405-2.186 14.06 0 26.952 2.652 38.636 8.008V534.528l-154.481 48.548v145.218a27.228 27.228 0 0 1-6.8 18.202 45.66 45.66 0 0 1-17.315 12.38 112.64 112.64 0 0 1-20.803 6.564c-6.937 1.398-13.404 2.14-19.41 2.14-6.052 0-12.523-.696-19.41-2.14a112.502 112.502 0 0 1-20.807-6.518 45.706 45.706 0 0 1-17.311-12.426 27.233 27.233 0 0 1-6.845-18.248c0-6.794 2.33-12.892 6.845-18.196a45.706 45.706 0 0 1 17.31-12.38c6.984-2.934 13.922-5.12 20.808-6.564a94.802 94.802 0 0 1 19.405-2.14c14.06 0 26.957 2.652 38.636 7.956V498.872a19.876 19.876 0 0 1 13.685-18.846l167.286-52.414a17.63 17.63 0 0 1 5.581-.84c5.402 0 9.964 1.91 13.686 5.73 3.773 3.86 5.632 8.468 5.632 13.962z" />
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1,12 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<path
fill="#5895FF"
d="m594.944 0 335.124 341.32v563.2c0 65.996-52.5 119.48-117.294 119.48H209.546c-64.793 0-117.299-53.53-117.299-119.48V119.48C92.252 53.484 144.757 0 209.551 0h385.393z" />
<path
fill="#FFF"
fillOpacity="{0.4}"
d="M930.068 341.32H718.152c-64.748 0-123.208-59.49-123.208-125.492V0l335.124 341.32z" />
<path
fill="#FFF"
d="M427.377 725.32V768H259.814v-42.68h167.563zM594.944 640v42.68h-335.13V640h335.13zm0-85.32v42.64h-335.13v-42.64h335.13zm0-85.36V512h-335.13v-42.68h335.13z" />
</svg>

After

Width:  |  Height:  |  Size: 605 B

View File

@ -0,0 +1,12 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<path
fill="#1ABF74"
d="m594.944 0 335.124 341.32v563.2c0 65.996-52.5 119.48-117.294 119.48H209.546c-64.793 0-117.299-53.53-117.299-119.48V119.48C92.252 53.484 144.757 0 209.551 0h385.393z" />
<path
fill="#FFF"
fillOpacity="{0.4}"
d="M930.068 341.32H718.152c-64.748 0-123.208-59.49-123.208-125.492V0l335.124 341.32z" />
<path
fill="#FFF"
d="M594.616 426.824v.23h.092V768h-27.873v-.051h-83.968.046-83.143.05-139.919v-28.39l.052-.047v-85.826h-.052V625.29h.052v-85.826h-.098v-28.396l.093-.046v-55.854h-.093v-28.39h334.71l.046.046zM371.988 653.686h-84.106v85.826h84.106v-85.826zm83.083 0h-55.245v85.826h55.199v-85.826h.05zm111.76 0h-83.923v85.826h83.876v-85.826h.046zM371.987 539.459h-84.106v85.831h84.106v-85.826zm83.083 0h-55.245v85.831h55.199v-85.826h.05zm111.76 0h-83.923v85.831h83.876v-85.826h.046zm0-84.245H287.881v55.808h278.902v-55.854l.046.051z" />
</svg>

After

Width:  |  Height:  |  Size: 960 B

View File

@ -0,0 +1,12 @@
<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg">
<path
d="M594.944 0l335.12448 341.31968v563.2c0 65.9968-52.50048 119.48032-117.29408 119.48032H209.54624c-64.7936 0-117.2992-53.5296-117.2992-119.48032V119.48032C92.25216 53.48352 144.75776 0 209.55136 0H594.944z"
fill="#36D2AD" />
<path
d="M930.06848 341.31968h-211.9168c-64.74752 0-123.20768-59.48928-123.20768-125.4912V0l335.12448 341.31968z"
fill="#FFFFFF"
fillOpacity="{0.4}" />
<path
d="M613.56032 426.68032H278.4256c-10.24 0-18.61632 8.4736-18.61632 18.944V749.056c0 10.4704 8.37632 18.944 18.61632 18.944h335.1296c10.28608 0 18.61632-8.4736 18.61632-18.944V445.62432a18.80576 18.80576 0 0 0-18.61632-18.944z m-37.23776 284.39552H315.66848v-94.7712l55.8592-56.87296 93.08672 94.81216 55.8592-56.92416 55.84896 56.92416v56.87808-0.0512z m-37.23776-151.64416a37.56032 37.56032 0 0 1-37.23264-37.9392c0-20.9408 16.66048-37.93408 37.23264-37.93408 20.57728 0 37.23776 16.99328 37.23776 37.9392 0 20.9408-16.66048 37.93408-37.23776 37.93408z"
fill="#FFFFFF" />
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1,12 @@
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
<path
d="M594.944 0l335.12448 341.31968v563.2c0 65.9968-52.50048 119.48032-117.29408 119.48032H209.54624c-64.7936 0-117.2992-53.5296-117.2992-119.48032V119.48032C92.25216 53.48352 144.75776 0 209.55136 0H594.944z"
fill="#E94848" />
<path
d="M482.95424 375.48032a40.58624 40.58624 0 0 0-40.02816 40.77568c0 27.78624 15.17056 62.32576 31.1808 94.7712-12.56448 39.8336-26.71616 82.47296-44.82048 118.5024-37.0944 14.7968-70.1952 25.8304-90.0608 42.16832a41.70752 41.70752 0 0 0-12.3904 29.9264c0 22.34368 18.06336 40.77568 40.0384 40.77568a39.33184 39.33184 0 0 0 29.27104-12.47232c14.6176-17.82784 31.88736-50.12992 47.29344-79.6416 35.42016-14.19776 72.60672-28.672 108.44672-37.3248 26.1632 21.4528 64.0512 35.65056 95.18592 35.65056 21.96992 0 40.03328-18.38592 40.03328-40.77568a40.58624 40.58624 0 0 0-40.03328-40.72448c-24.99072 0-61.29664 9.07264-89.0368 18.61632a301.3376 301.3376 0 0 1-58.09152-76.98432c10.65984-33.3312 23.04-66.65728 23.04-92.48768a40.58624 40.58624 0 0 0-40.02816-40.77568z m0 24.43776c8.98048 0 16.01024 7.168 16.01024 16.29184 0 12.2368-6.42048 34.816-13.87008 59.01824C475.136 451.67616 466.944 429.056 466.944 416.256c0-9.1648 7.02464-16.29184 16.01024-16.29184v-0.04608z m6.8864 139.5456a323.57376 323.57376 0 0 0 41.5232 53.76c-23.74144 6.6048-46.91968 15.0784-69.82144 23.92064 11.07968-25.36448 19.9168-51.75808 28.29824-77.72672v0.04608z m157.2352 52.12672c8.98048 0 16.01024 7.12192 16.01024 16.29184 0 9.12384-7.02976 16.29184-16.01536 16.29184-18.05824 0-43.65824-8.28416-64.18432-19.87584 23.552-6.79424 49.2032-12.7488 64.18432-12.7488v0.04096zM408.15104 664.576c-11.264 20.48-22.43584 39.56224-30.2592 49.152a15.0784 15.0784 0 0 1-11.02848 4.18816 15.96416 15.96416 0 0 1-16.01024-16.29184c0.03072-4.16256 1.53088-8.18688 4.23424-11.35616 9.40032-7.3984 29.83424-16.29184 53.06368-25.69216z"
fill="#FFFFFF" />
<path
d="M930.06848 341.31968h-211.9168c-64.74752 0-123.20768-59.48928-123.20768-125.4912V0l335.12448 341.31968z"
fill="#FFFFFF"
fillOpacity=".4" />
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,12 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<path
fill="#8095FF"
d="M137.902 0a48.573 48.573 0 0 0-35.589 15.294 53.965 53.965 0 0 0-15.273 35.64v917.412a48.707 48.707 0 0 0 15.273 35.64 49.971 49.971 0 0 0 35.59 15.293h746.336a48.64 48.64 0 0 0 35.59-15.293 50.37 50.37 0 0 0 15.273-35.64V288.717L646.728 0H137.902z" />
<path
fill="#FFF"
d="M138.24 83.451a42.49 42.49 0 1 0 84.977 0 42.49 42.49 0 0 0-84.977 0zm0 169.825a42.49 42.49 0 1 0 84.977 0 42.49 42.49 0 0 0-84.977 0zm0 169.82a42.49 42.49 0 1 0 84.977.134 42.49 42.49 0 0 0-84.977-.133zm0 169.892a42.49 42.49 0 1 0 42.491-42.49 42.424 42.424 0 0 0-42.49 42.495zm0 169.826a42.49 42.49 0 1 0 84.977.133 42.49 42.49 0 0 0-84.977-.133zm0 169.891a42.49 42.49 0 1 0 84.977 0 42.49 42.49 0 0 0-84.977 0zm658.688-509.608a42.49 42.49 0 1 0 84.977.133 42.49 42.49 0 0 0-84.982-.133zm0 169.891a42.49 42.49 0 1 0 42.486-42.49 42.424 42.424 0 0 0-42.491 42.495zm0 169.826a42.49 42.49 0 1 0 84.977.133 42.49 42.49 0 0 0-84.982-.133zm0 169.891a42.49 42.49 0 1 0 84.977 0 42.49 42.49 0 0 0-84.982 0zM631.091 505.754l-225.08-154.599a16.691 16.691 0 0 0-17.817-.798 17.818 17.818 0 0 0-9.314 15.227v308.331a18.022 18.022 0 0 0 9.308 15.293 16.824 16.824 0 0 0 17.818-.865l225.085-155.392a15.36 15.36 0 0 0 7.645-13.634 18.688 18.688 0 0 0-7.645-13.297v-.266z" />
<path
fill="#FFF"
d="M935.102 288.717H697.656c-27.822-.666-50.227-23.076-50.928-50.934V0l288.374 288.717z"
opacity="{0.4}" />
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

22
src/assets/icons/zip.svg Normal file
View File

@ -0,0 +1,22 @@
<svg
xmlns="http://www.w3.org/2000/svg"
className="svg-icon"
fill="currentColor"
viewBox="0 0 1024 1024">
<path
fill="#D0D8E1"
d="m594.944 0 335.124 341.32v563.2c0 65.996-52.5 119.48-117.294 119.48H209.546c-64.793 0-117.299-53.53-117.299-119.48V119.48C92.252 53.484 144.757 0 209.551 0h385.393z" />
<path
fill="#FFF"
fillOpacity="{0.4}"
d="M930.068 341.32H718.152c-64.748 0-123.208-59.49-123.208-125.492V0l335.124 341.32z" />
<path
fill="#FFF"
d="M516.838 438.042h-31.283c-2.227 0-3.348 1.162-4.464 2.278-1.117 1.116-1.117 3.4-1.117 5.683 2.233 4.557 3.354 10.24 3.354 14.797v147.917l3.348 22.763c0 2.284 2.233 3.4 3.354 4.516 1.116 0 2.232 1.162 2.232 1.162l5.581 3.4a45.148 45.148 0 0 1 29.051 42.122v51.2c0 2.284 1.116 4.516 3.349 4.516 1.116 0 1.116 1.162 2.237 1.162 1.116 0 2.232 0 3.348-1.162a32.63 32.63 0 0 0 13.405-27.274V472.156a31.652 31.652 0 0 0-32.395-34.114zM376.09 460.8 361.564 512a12.288 12.288 0 0 0 2.232 13.64c4.47 4.556 21.228 4.556 25.693 0a15.2 15.2 0 0 0 3.353-13.64l-14.525-51.2h-2.233z" />
<path
fill="#FFF"
d="M366.029 453.96c1.121-3.4 3.353-4.516 5.586-4.516h11.172c2.237 0 4.47 1.116 5.585 4.516l6.708 26.204 8.929-19.364-13.41-31.836v-2.33h-30.151v2.33L349.276 460.8l8.935 21.596 7.818-28.39v-.051z" />
<path
fill="#FFF"
d="m354.396 426.68-11.172 31.842v4.556l11.172 28.442a5.975 5.975 0 0 0 3.395 3.02l2.191.38-4.47 13.68a23.644 23.644 0 0 0 5.581 24.996c4.475 4.562 12.288 6.846 21.228 6.846s16.757-2.284 21.227-6.846a24.294 24.294 0 0 0 6.656-21.453l-5.586-18.345c.789 0 1.536-.512 1.956-1.162l.323-1.116 14.525-28.442a3.492 3.492 0 0 0 .742-3.118l-.742-1.392-14.525-31.888h35.747a33.05 33.05 0 0 1 33.234 29.374l.282 4.746v164.956c0 8.796 4.93 15.923 11.96 19.922l11.495 5.12a32.86 32.86 0 0 1 22.016 26.998l.327 4.884v51.2c0 17.69-12.195 31.652-28.856 33.844l-4.66.276H298.548a33.05 33.05 0 0 1-33.234-29.414l-.281-4.706V460.8c0-17.69 12.196-31.652 28.861-33.843l4.654-.277h55.854zm16.753 284.396h-11.162c-3.353 0-5.586 2.324-5.586 5.724 0 2.744 1.393 4.746 3.723 5.448l1.863.23h11.167c3.354 0 5.586-2.278 5.586-5.678 0-2.744-1.393-4.746-3.722-5.448l-1.864-.23v-.051zm33.515-11.356h-11.172c-3.348 0-5.58 2.324-5.58 5.724 0 2.698 1.392 4.7 3.717 5.396l1.863.282h11.172c3.349 0 5.581-2.33 5.581-5.683 0-2.79-1.393-4.741-3.717-5.443l-1.864-.276zm-33.515-11.362h-11.162c-3.353 0-5.586 2.284-5.586 5.684 0 2.744 1.393 4.746 3.723 5.442l1.863.236h11.167c3.354 0 5.586-2.284 5.586-5.684 0-2.744-1.393-4.746-3.722-5.396l-1.864-.282zm33.515-11.402h-11.172c-3.348 0-5.58 2.33-5.58 5.724 0 2.704 1.392 4.706 3.717 5.402l1.863.276h11.172c3.349 0 5.581-2.278 5.581-5.678 0-2.744-1.393-4.746-3.717-5.442l-1.864-.282zM371.15 665.6h-11.162c-3.353 0-5.586 2.278-5.586 5.683 0 2.74 1.393 4.741 3.723 5.443l1.863.23h11.167c3.354 0 5.586-2.232 5.586-5.678 0-2.698-1.393-4.7-3.722-5.396l-1.87-.282zm33.515-11.356h-11.172c-3.348 0-5.58 2.232-5.58 5.678 0 2.698 1.392 4.7 3.717 5.396l1.863.282h11.172c3.349 0 5.581-2.278 5.581-5.683 0-2.74-1.393-4.741-3.717-5.443l-1.864-.23zm-33.515-11.402h-11.162c-3.353 0-5.586 2.278-5.586 5.678 0 2.744 1.393 4.746 3.723 5.442l1.863.282h11.167c3.354 0 5.586-2.33 5.586-5.724 0-2.704-1.393-4.706-3.722-5.402l-1.864-.276zm33.515-11.362h-11.172c-3.348 0-5.58 2.284-5.58 5.684 0 2.744 1.392 4.746 3.717 5.396l1.863.282h11.172c3.349 0 5.581-2.284 5.581-5.684 0-2.744-1.393-4.746-3.717-5.442l-1.864-.236zm-33.515-11.402h-11.162c-3.353 0-5.586 2.33-5.586 5.683 0 2.79 1.393 4.741 3.723 5.443l1.863.276h11.167c3.354 0 5.586-2.324 5.586-5.724 0-2.698-1.393-4.7-3.722-5.396l-1.864-.282zm33.515-11.356h-11.172c-3.348 0-5.58 2.278-5.58 5.678 0 2.744 1.392 4.746 3.717 5.448l1.863.23h11.172c3.349 0 5.581-2.278 5.581-5.678 0-2.744-1.393-4.746-3.717-5.448l-1.864-.23zM371.15 597.32h-11.162c-3.353 0-5.586 2.324-5.586 5.724 0 2.698 1.393 4.7 3.723 5.396l1.863.282h11.167c3.354 0 5.586-2.33 5.586-5.683 0-2.79-1.393-4.741-3.722-5.443l-1.864-.276zm33.515-11.362h-11.172c-3.348 0-5.58 2.284-5.58 5.684 0 2.744 1.392 4.746 3.717 5.442l1.863.236h11.172c3.349 0 5.581-2.284 5.581-5.684 0-2.744-1.393-4.746-3.717-5.396l-1.864-.282zm-33.515-11.402h-11.162c-3.353 0-5.586 2.33-5.586 5.724 0 2.704 1.393 4.706 3.723 5.402l1.863.276h11.167c3.354 0 5.586-2.278 5.586-5.678 0-2.744-1.393-4.746-3.722-5.442l-1.864-.282zm33.515-11.356h-11.172c-3.348 0-5.58 2.278-5.58 5.683 0 2.74 1.392 4.741 3.717 5.443l1.863.23h11.172c3.349 0 5.581-2.232 5.581-5.678 0-2.698-1.393-4.7-3.717-5.396l-1.864-.282zm-33.515-11.356h-11.162c-3.353 0-5.586 2.232-5.586 5.678 0 2.698 1.393 4.7 3.723 5.396l1.863.282h11.167c3.354 0 5.586-2.278 5.586-5.683 0-2.74-1.393-4.741-3.722-5.443l-1.864-.23z" />
</svg>

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@ -13,7 +13,7 @@
padding: var(--codex-button-padding); padding: var(--codex-button-padding);
display: flex; display: flex;
place-items: center; place-items: center;
gap: 2px; gap: 8px;
font-weight: 500; font-weight: 500;
position: relative; position: relative;
border: none; border: none;
@ -101,8 +101,8 @@
} }
div { div {
width: 16px; width: 20px;
height: 16px; height: 20px;
display: flex; display: flex;
place-items: center; place-items: center;
} }

View File

@ -1,30 +0,0 @@
.collapse {
width: 100%;
}
.collapse-summary {
color: var(--codex-color-primary);
font-weight: 600;
cursor: pointer;
display: flex;
align-items: center;
gap: 0.5rem;
}
.collapse-summary:hover {
text-decoration: underline;
opacity: 0.7;
text-decoration-thickness: 2px;
}
.collapse-details {
max-height: 0;
transition: max-height 0.2s;
overflow: hidden;
word-break: break-word;
color: var(--codex-color);
}
.collapse-details[aria-expanded] {
max-height: 50px;
}

View File

@ -1,57 +0,0 @@
import { useState } from "react";
import "./Collapse.css";
import { attributes } from "../utils/attributes";
type Props = {
/**
* Summary always displayed
*/
summary: string;
/**
* Details to show after the component is collapsed
*/
details: string;
/**
* Apply custom classname.
*/
className?: string;
};
export function Collapse({ summary, details, className = "" }: Props) {
const [expanded, setExpanded] = useState(false);
const onClick = () => setExpanded(!expanded);
return (
<div className={"collapse " + className}>
<span className="collapse-summary" onClick={onClick}>
{summary}
<ArrowRight />
</span>
<div
{...attributes({ "aria-expanded": expanded })}
className={"collapse-details"}
>
{details}
</div>
</div>
);
}
const ArrowRight = () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1rem"
height="1rem"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m6 9 6 6 6-6"></path>
</svg>
);

View File

@ -1,9 +1,14 @@
import "./table.css"; import "./table.css";
import { Search } from "lucide-react"; import {
import { Fragment, ReactElement, ReactNode, useEffect, useState } from "react"; ComponentType,
Fragment,
ReactElement,
ReactNode,
useEffect,
useState,
} from "react";
import { classnames } from "../utils/classnames"; import { classnames } from "../utils/classnames";
import { attributes } from "../utils/attributes"; import { attributes } from "../utils/attributes";
import { SortIcon } from "./SortIcon";
export type TabSortState = "asc" | "desc" | null; export type TabSortState = "asc" | "desc" | null;
@ -24,6 +29,8 @@ type Props = {
className?: string; className?: string;
rows: ReactElement<RowProps, typeof Row>[]; rows: ReactElement<RowProps, typeof Row>[];
SortIcon: ComponentType;
}; };
const nextState = (state: "asc" | "desc" | null) => const nextState = (state: "asc" | "desc" | null) =>
@ -32,6 +39,7 @@ const nextState = (state: "asc" | "desc" | null) =>
export function Table({ export function Table({
headers, headers,
rows, rows,
SortIcon,
defaultSortIndex = -1, defaultSortIndex = -1,
className = "", className = "",
}: Props) { }: Props) {
@ -112,8 +120,7 @@ export function Table({
{!rows.length && ( {!rows.length && (
<div> <div>
<Search /> <p>No data available.</p>
<p>No data.</p>
</div> </div>
)} )}
</div> </div>

View File

@ -1,11 +1,10 @@
import { ChangeEvent, DragEventHandler, useRef } from "react"; import { ChangeEvent, ComponentType, DragEventHandler, useRef } from "react";
import { attributes } from "../utils/attributes.ts"; import { attributes } from "../utils/attributes.ts";
import "./upload.css"; import "./upload.css";
import { UploadFile } from "./UploadFile.tsx"; import { UploadFile } from "./UploadFile.tsx";
import { useUploadStategy } from "./useUploadStrategy.ts"; import { useUploadStategy } from "./useUploadStrategy.ts";
import { classnames } from "../utils/classnames.ts"; import { classnames } from "../utils/classnames.ts";
import { CodexData } from "@codex-storage/sdk-js"; import { CodexData } from "@codex-storage/sdk-js";
import { UploadIcon } from "./UploadIcon.tsx";
type Props = { type Props = {
/** /**
@ -61,6 +60,8 @@ type Props = {
* Default: File uploaded successfully. * Default: File uploaded successfully.
*/ */
successMessage?: string; successMessage?: string;
Icon?: ComponentType;
}; };
export function Upload({ export function Upload({
@ -68,6 +69,7 @@ export function Upload({
onMouseLeave, onMouseLeave,
onClick, onClick,
onFileChange, onFileChange,
Icon,
multiple = true, multiple = true,
editable = true, editable = true,
onDeleteItem, onDeleteItem,
@ -138,7 +140,7 @@ export function Upload({
</small> </small>
</div> </div>
<UploadIcon></UploadIcon> {Icon && <Icon></Icon>}
<input <input
data-testid="upload" data-testid="upload"

View File

@ -5,9 +5,9 @@ import { UploadStatus } from "./types";
import { CircleCheck, TriangleAlert, CircleX, CircleStop } from "lucide-react"; import { CircleCheck, TriangleAlert, CircleX, CircleStop } from "lucide-react";
import { Spinner } from "../Spinner/Spinner"; import { Spinner } from "../Spinner/Spinner";
import { CodexData } from "@codex-storage/sdk-js"; import { CodexData } from "@codex-storage/sdk-js";
import { WebFileIcon } from "../WebFileIcon/WebFileIcon";
import { ButtonIcon } from "../ButtonIcon/ButtonIcon"; import { ButtonIcon } from "../ButtonIcon/ButtonIcon";
import "./UploadFile.css"; import "./UploadFile.css";
import { WebFileIcon } from "../WebFileIcon/WebFileIcon";
type UploadFileProps = { type UploadFileProps = {
file: File; file: File;

View File

@ -1,20 +0,0 @@
type Props = {
width?: number;
fill?: string;
};
export function UploadIcon({ width = 30, fill = "#96969666" }: Props) {
return (
<svg
width={width}
viewBox="0 0 30 28"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M15.621 3.5H28.5C28.8978 3.5 29.2794 3.65804 29.5607 3.93934C29.842 4.22064 30 4.60218 30 5V26C30 26.3978 29.842 26.7794 29.5607 27.0607C29.2794 27.342 28.8978 27.5 28.5 27.5H1.5C1.10218 27.5 0.720644 27.342 0.43934 27.0607C0.158035 26.7794 0 26.3978 0 26V2C0 1.60218 0.158035 1.22064 0.43934 0.93934C0.720644 0.658035 1.10218 0.5 1.5 0.5H12.621L15.621 3.5ZM3 3.5V24.5H27V6.5H14.379L11.379 3.5H3ZM16.5 15.5V21.5H13.5V15.5H9L15 9.5L21 15.5H16.5Z"
fill={fill}
/>
</svg>
);
}

View File

@ -1,20 +0,0 @@
type Props = {
size?: number;
};
export const AnyFileIcon = ({ size }: Props) => (
<svg width={size} xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<path
fill="#E5E5E5"
d="M137.902 0a48.573 48.573 0 0 0-35.589 15.294 53.965 53.965 0 0 0-15.273 35.64v917.412a48.707 48.707 0 0 0 15.273 35.64 49.971 49.971 0 0 0 35.59 15.293h746.336a48.64 48.64 0 0 0 35.59-15.293 50.37 50.37 0 0 0 15.273-35.64V288.717L646.728 0H137.902z"
/>
<path
fill="#CCC"
d="M935.102 288.717H697.656c-27.822-.666-50.227-23.076-50.928-50.934V0l288.374 288.717z"
/>
<path
fill="#FFF"
d="M248.126 365.184h220.518a25.518 25.518 0 0 0 24.192-25.497 25.518 25.518 0 0 0-24.197-25.503H248.126a25.518 25.518 0 0 0-24.197 25.498 25.518 25.518 0 0 0 24.197 25.497zm0 169.825H773.95a25.446 25.446 0 0 0 25.43-25.466 25.446 25.446 0 0 0-25.43-25.467H248.126a25.446 25.446 0 0 0-25.431 25.467 25.446 25.446 0 0 0 25.43 25.466zM773.95 653.896H248.126a25.518 25.518 0 0 0-24.197 25.497 25.518 25.518 0 0 0 24.197 25.503H773.95a25.518 25.518 0 0 0 24.197-25.497A25.518 25.518 0 0 0 773.95 653.9z"
/>
</svg>
);

View File

@ -1,21 +0,0 @@
type Props = {
size?: number;
};
export const AudioIcon = ({ size = 24 }: Props) => (
<svg xmlns="http://www.w3.org/2000/svg" width={size} viewBox="0 0 1024 1024">
<path
fill="#FFC547"
d="m594.944 0 335.124 341.32v563.2c0 65.996-52.5 119.48-117.294 119.48H209.546c-64.793 0-117.299-53.53-117.299-119.48V119.48C92.252 53.484 144.757 0 209.551 0h385.393z"
/>
<path
fill="#FFF"
fillOpacity={0.4}
d="M930.068 341.32H718.152c-64.748 0-123.208-59.49-123.208-125.492V0l335.124 341.32z"
/>
<path
fill="#FFF"
d="M568.78 446.464V675.84a27.238 27.238 0 0 1-6.793 18.248 45.66 45.66 0 0 1-17.316 12.38 112.64 112.64 0 0 1-20.803 6.518c-6.937 1.438-13.404 2.186-19.41 2.186-6.052 0-12.523-.748-19.41-2.14a112.456 112.456 0 0 1-20.807-6.564 45.706 45.706 0 0 1-17.316-12.38 27.228 27.228 0 0 1-6.84-18.248c0-6.84 2.33-12.892 6.84-18.248a45.706 45.706 0 0 1 17.316-12.38c6.983-2.934 13.916-5.12 20.807-6.518 6.887-1.484 13.358-2.186 19.405-2.186 14.06 0 26.952 2.652 38.636 8.008V534.528l-154.481 48.548v145.218a27.228 27.228 0 0 1-6.8 18.202 45.66 45.66 0 0 1-17.315 12.38 112.64 112.64 0 0 1-20.803 6.564c-6.937 1.398-13.404 2.14-19.41 2.14-6.052 0-12.523-.696-19.41-2.14a112.502 112.502 0 0 1-20.807-6.518 45.706 45.706 0 0 1-17.311-12.426 27.233 27.233 0 0 1-6.845-18.248c0-6.794 2.33-12.892 6.845-18.196a45.706 45.706 0 0 1 17.31-12.38c6.984-2.934 13.922-5.12 20.808-6.564a94.802 94.802 0 0 1 19.405-2.14c14.06 0 26.957 2.652 38.636 7.956V498.872a19.876 19.876 0 0 1 13.685-18.846l167.286-52.414a17.63 17.63 0 0 1 5.581-.84c5.402 0 9.964 1.91 13.686 5.73 3.773 3.86 5.632 8.468 5.632 13.962z"
/>
</svg>
);

View File

@ -1,21 +0,0 @@
type Props = {
size?: number;
};
export const DocIcon = ({ size }: Props) => (
<svg xmlns="http://www.w3.org/2000/svg" width={size} viewBox="0 0 1024 1024">
<path
fill="#5895FF"
d="m594.944 0 335.124 341.32v563.2c0 65.996-52.5 119.48-117.294 119.48H209.546c-64.793 0-117.299-53.53-117.299-119.48V119.48C92.252 53.484 144.757 0 209.551 0h385.393z"
/>
<path
fill="#FFF"
fillOpacity={0.4}
d="M930.068 341.32H718.152c-64.748 0-123.208-59.49-123.208-125.492V0l335.124 341.32z"
/>
<path
fill="#FFF"
d="M427.377 725.32V768H259.814v-42.68h167.563zM594.944 640v42.68h-335.13V640h335.13zm0-85.32v42.64h-335.13v-42.64h335.13zm0-85.36V512h-335.13v-42.68h335.13z"
/>
</svg>
);

View File

@ -1,21 +0,0 @@
type Props = {
size?: number;
};
export const ExcelIcon = ({ size }: Props) => (
<svg xmlns="http://www.w3.org/2000/svg" width={size} viewBox="0 0 1024 1024">
<path
fill="#1ABF74"
d="m594.944 0 335.124 341.32v563.2c0 65.996-52.5 119.48-117.294 119.48H209.546c-64.793 0-117.299-53.53-117.299-119.48V119.48C92.252 53.484 144.757 0 209.551 0h385.393z"
/>
<path
fill="#FFF"
fillOpacity={0.4}
d="M930.068 341.32H718.152c-64.748 0-123.208-59.49-123.208-125.492V0l335.124 341.32z"
/>
<path
fill="#FFF"
d="M594.616 426.824v.23h.092V768h-27.873v-.051h-83.968.046-83.143.05-139.919v-28.39l.052-.047v-85.826h-.052V625.29h.052v-85.826h-.098v-28.396l.093-.046v-55.854h-.093v-28.39h334.71l.046.046zM371.988 653.686h-84.106v85.826h84.106v-85.826zm83.083 0h-55.245v85.826h55.199v-85.826h.05zm111.76 0h-83.923v85.826h83.876v-85.826h.046zM371.987 539.459h-84.106v85.831h84.106v-85.826zm83.083 0h-55.245v85.831h55.199v-85.826h.05zm111.76 0h-83.923v85.831h83.876v-85.826h.046zm0-84.245H287.881v55.808h278.902v-55.854l.046.051z"
/>
</svg>
);

View File

@ -1,21 +0,0 @@
type Props = {
size?: number;
};
export const ImageIcon = ({ size = 24 }: Props) => (
<svg width={size} viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg">
<path
d="M594.944 0l335.12448 341.31968v563.2c0 65.9968-52.50048 119.48032-117.29408 119.48032H209.54624c-64.7936 0-117.2992-53.5296-117.2992-119.48032V119.48032C92.25216 53.48352 144.75776 0 209.55136 0H594.944z"
fill="#36D2AD"
/>
<path
d="M930.06848 341.31968h-211.9168c-64.74752 0-123.20768-59.48928-123.20768-125.4912V0l335.12448 341.31968z"
fill="#FFFFFF"
fillOpacity={0.4}
/>
<path
d="M613.56032 426.68032H278.4256c-10.24 0-18.61632 8.4736-18.61632 18.944V749.056c0 10.4704 8.37632 18.944 18.61632 18.944h335.1296c10.28608 0 18.61632-8.4736 18.61632-18.944V445.62432a18.80576 18.80576 0 0 0-18.61632-18.944z m-37.23776 284.39552H315.66848v-94.7712l55.8592-56.87296 93.08672 94.81216 55.8592-56.92416 55.84896 56.92416v56.87808-0.0512z m-37.23776-151.64416a37.56032 37.56032 0 0 1-37.23264-37.9392c0-20.9408 16.66048-37.93408 37.23264-37.93408 20.57728 0 37.23776 16.99328 37.23776 37.9392 0 20.9408-16.66048 37.93408-37.23776 37.93408z"
fill="#FFFFFF"
/>
</svg>
);

View File

@ -1,28 +0,0 @@
type Props = {
size?: number;
};
export function PdfIcon({ size = 24 }: Props) {
return (
<svg
width={size}
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M594.944 0l335.12448 341.31968v563.2c0 65.9968-52.50048 119.48032-117.29408 119.48032H209.54624c-64.7936 0-117.2992-53.5296-117.2992-119.48032V119.48032C92.25216 53.48352 144.75776 0 209.55136 0H594.944z"
fill="#E94848"
/>
<path
d="M482.95424 375.48032a40.58624 40.58624 0 0 0-40.02816 40.77568c0 27.78624 15.17056 62.32576 31.1808 94.7712-12.56448 39.8336-26.71616 82.47296-44.82048 118.5024-37.0944 14.7968-70.1952 25.8304-90.0608 42.16832a41.70752 41.70752 0 0 0-12.3904 29.9264c0 22.34368 18.06336 40.77568 40.0384 40.77568a39.33184 39.33184 0 0 0 29.27104-12.47232c14.6176-17.82784 31.88736-50.12992 47.29344-79.6416 35.42016-14.19776 72.60672-28.672 108.44672-37.3248 26.1632 21.4528 64.0512 35.65056 95.18592 35.65056 21.96992 0 40.03328-18.38592 40.03328-40.77568a40.58624 40.58624 0 0 0-40.03328-40.72448c-24.99072 0-61.29664 9.07264-89.0368 18.61632a301.3376 301.3376 0 0 1-58.09152-76.98432c10.65984-33.3312 23.04-66.65728 23.04-92.48768a40.58624 40.58624 0 0 0-40.02816-40.77568z m0 24.43776c8.98048 0 16.01024 7.168 16.01024 16.29184 0 12.2368-6.42048 34.816-13.87008 59.01824C475.136 451.67616 466.944 429.056 466.944 416.256c0-9.1648 7.02464-16.29184 16.01024-16.29184v-0.04608z m6.8864 139.5456a323.57376 323.57376 0 0 0 41.5232 53.76c-23.74144 6.6048-46.91968 15.0784-69.82144 23.92064 11.07968-25.36448 19.9168-51.75808 28.29824-77.72672v0.04608z m157.2352 52.12672c8.98048 0 16.01024 7.12192 16.01024 16.29184 0 9.12384-7.02976 16.29184-16.01536 16.29184-18.05824 0-43.65824-8.28416-64.18432-19.87584 23.552-6.79424 49.2032-12.7488 64.18432-12.7488v0.04096zM408.15104 664.576c-11.264 20.48-22.43584 39.56224-30.2592 49.152a15.0784 15.0784 0 0 1-11.02848 4.18816 15.96416 15.96416 0 0 1-16.01024-16.29184c0.03072-4.16256 1.53088-8.18688 4.23424-11.35616 9.40032-7.3984 29.83424-16.29184 53.06368-25.69216z"
fill="#FFFFFF"
/>
<path
d="M930.06848 341.31968h-211.9168c-64.74752 0-123.20768-59.48928-123.20768-125.4912V0l335.12448 341.31968z"
fill="#FFFFFF"
fillOpacity=".4"
/>
</svg>
);
}

View File

@ -1,21 +0,0 @@
type Props = {
size?: number;
};
export const VideoIcon = ({ size = 24 }: Props) => (
<svg width={size} xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<path
fill="#8095FF"
d="M137.902 0a48.573 48.573 0 0 0-35.589 15.294 53.965 53.965 0 0 0-15.273 35.64v917.412a48.707 48.707 0 0 0 15.273 35.64 49.971 49.971 0 0 0 35.59 15.293h746.336a48.64 48.64 0 0 0 35.59-15.293 50.37 50.37 0 0 0 15.273-35.64V288.717L646.728 0H137.902z"
/>
<path
fill="#FFF"
d="M138.24 83.451a42.49 42.49 0 1 0 84.977 0 42.49 42.49 0 0 0-84.977 0zm0 169.825a42.49 42.49 0 1 0 84.977 0 42.49 42.49 0 0 0-84.977 0zm0 169.82a42.49 42.49 0 1 0 84.977.134 42.49 42.49 0 0 0-84.977-.133zm0 169.892a42.49 42.49 0 1 0 42.491-42.49 42.424 42.424 0 0 0-42.49 42.495zm0 169.826a42.49 42.49 0 1 0 84.977.133 42.49 42.49 0 0 0-84.977-.133zm0 169.891a42.49 42.49 0 1 0 84.977 0 42.49 42.49 0 0 0-84.977 0zm658.688-509.608a42.49 42.49 0 1 0 84.977.133 42.49 42.49 0 0 0-84.982-.133zm0 169.891a42.49 42.49 0 1 0 42.486-42.49 42.424 42.424 0 0 0-42.491 42.495zm0 169.826a42.49 42.49 0 1 0 84.977.133 42.49 42.49 0 0 0-84.982-.133zm0 169.891a42.49 42.49 0 1 0 84.977 0 42.49 42.49 0 0 0-84.982 0zM631.091 505.754l-225.08-154.599a16.691 16.691 0 0 0-17.817-.798 17.818 17.818 0 0 0-9.314 15.227v308.331a18.022 18.022 0 0 0 9.308 15.293 16.824 16.824 0 0 0 17.818-.865l225.085-155.392a15.36 15.36 0 0 0 7.645-13.634 18.688 18.688 0 0 0-7.645-13.297v-.266z"
/>
<path
fill="#FFF"
d="M935.102 288.717H697.656c-27.822-.666-50.227-23.076-50.928-50.934V0l288.374 288.717z"
opacity={0.4}
/>
</svg>
);

View File

@ -1,64 +0,0 @@
import type { Meta, StoryObj } from "@storybook/react";
import { WebFileIcon } from "./WebFileIcon";
const meta = {
title: "Example/WebFileIcon",
component: WebFileIcon,
parameters: {
layout: "centered",
},
tags: ["autodocs"],
argTypes: {},
} satisfies Meta<typeof WebFileIcon>;
export default meta;
type Story = StoryObj<typeof meta>;
export const Audio: Story = {
args: {
type: "audio/mp3",
},
};
export const Image: Story = {
args: {
type: "image/jpeg",
},
};
export const Video: Story = {
args: {
type: "video/mp4",
},
};
export const Pdf: Story = {
args: {
type: "application/pdf",
},
};
export const Excel: Story = {
args: {
type: "application/vnd.ms-excel",
},
};
export const Doc: Story = {
args: {
type: "application/msdoc",
},
};
export const Other: Story = {
args: {
type: "text/plain",
},
};
export const CustomSize: Story = {
args: {
type: "image/jpeg",
size: 64,
},
};

View File

@ -1,10 +1,10 @@
import { AudioIcon } from "./AudioIcon"; import AudioIcon from "../../assets/icons/audio-file.svg?react";
import { ImageIcon } from "./ImageIcon"; import VideoIcon from "../../assets/icons/video-file.svg?react";
import { VideoIcon } from "./VideoIcon"; import ImageIcon from "../../assets/icons/image-file.svg?react";
import { PdfIcon } from "./PdfIcon"; import PdfIcon from "../../assets/icons/pdf-file.svg?react";
import { ExcelIcon } from "./ExcelIcon"; import ExcelIcon from "../../assets/icons/excel-file.svg?react";
import { DocIcon } from "./DocIcon"; import DocIcon from "../../assets/icons/doc-file.svg?react";
import { AnyFileIcon } from "./AnyFileIcon"; import AnyFileIcon from "../../assets/icons/any-file.svg?react";
type Props = { type Props = {
type: string; type: string;
@ -13,33 +13,33 @@ type Props = {
export function WebFileIcon({ type, size = 24 }: Props) { export function WebFileIcon({ type, size = 24 }: Props) {
if (type.startsWith("audio")) { if (type.startsWith("audio")) {
return <AudioIcon size={size} />; return <AudioIcon width={size} />;
} }
if (type.startsWith("image")) { if (type.startsWith("image")) {
return <ImageIcon size={size} />; return <ImageIcon width={size} />;
} }
if (type.startsWith("video")) { if (type.startsWith("video")) {
return <VideoIcon size={size} />; return <VideoIcon width={size} />;
} }
switch (type) { switch (type) {
case "application/pdf": { case "application/pdf": {
return <PdfIcon size={size} />; return <PdfIcon width={size} />;
} }
case "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": case "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":
case "application/vnd.ms-excel": { case "application/vnd.ms-excel": {
return <ExcelIcon size={size} />; return <ExcelIcon width={size} />;
} }
case "application/msdoc": { case "application/msdoc": {
return <DocIcon size={size} />; return <DocIcon width={size} />;
} }
default: { default: {
return <AnyFileIcon size={size} />; return <AnyFileIcon width={size} />;
} }
} }
} }

View File

@ -1,36 +0,0 @@
export const ZipIcon = () => (
<svg
xmlns="http://www.w3.org/2000/svg"
className="svg-icon"
style={{
width: "1em",
height: "1em",
verticalAlign: "middle",
fill: "currentColor",
overflow: "hidden",
}}
viewBox="0 0 1024 1024"
>
<path
fill="#D0D8E1"
d="m594.944 0 335.124 341.32v563.2c0 65.996-52.5 119.48-117.294 119.48H209.546c-64.793 0-117.299-53.53-117.299-119.48V119.48C92.252 53.484 144.757 0 209.551 0h385.393z"
/>
<path
fill="#FFF"
fillOpacity={0.4}
d="M930.068 341.32H718.152c-64.748 0-123.208-59.49-123.208-125.492V0l335.124 341.32z"
/>
<path
fill="#FFF"
d="M516.838 438.042h-31.283c-2.227 0-3.348 1.162-4.464 2.278-1.117 1.116-1.117 3.4-1.117 5.683 2.233 4.557 3.354 10.24 3.354 14.797v147.917l3.348 22.763c0 2.284 2.233 3.4 3.354 4.516 1.116 0 2.232 1.162 2.232 1.162l5.581 3.4a45.148 45.148 0 0 1 29.051 42.122v51.2c0 2.284 1.116 4.516 3.349 4.516 1.116 0 1.116 1.162 2.237 1.162 1.116 0 2.232 0 3.348-1.162a32.63 32.63 0 0 0 13.405-27.274V472.156a31.652 31.652 0 0 0-32.395-34.114zM376.09 460.8 361.564 512a12.288 12.288 0 0 0 2.232 13.64c4.47 4.556 21.228 4.556 25.693 0a15.2 15.2 0 0 0 3.353-13.64l-14.525-51.2h-2.233z"
/>
<path
fill="#FFF"
d="M366.029 453.96c1.121-3.4 3.353-4.516 5.586-4.516h11.172c2.237 0 4.47 1.116 5.585 4.516l6.708 26.204 8.929-19.364-13.41-31.836v-2.33h-30.151v2.33L349.276 460.8l8.935 21.596 7.818-28.39v-.051z"
/>
<path
fill="#FFF"
d="m354.396 426.68-11.172 31.842v4.556l11.172 28.442a5.975 5.975 0 0 0 3.395 3.02l2.191.38-4.47 13.68a23.644 23.644 0 0 0 5.581 24.996c4.475 4.562 12.288 6.846 21.228 6.846s16.757-2.284 21.227-6.846a24.294 24.294 0 0 0 6.656-21.453l-5.586-18.345c.789 0 1.536-.512 1.956-1.162l.323-1.116 14.525-28.442a3.492 3.492 0 0 0 .742-3.118l-.742-1.392-14.525-31.888h35.747a33.05 33.05 0 0 1 33.234 29.374l.282 4.746v164.956c0 8.796 4.93 15.923 11.96 19.922l11.495 5.12a32.86 32.86 0 0 1 22.016 26.998l.327 4.884v51.2c0 17.69-12.195 31.652-28.856 33.844l-4.66.276H298.548a33.05 33.05 0 0 1-33.234-29.414l-.281-4.706V460.8c0-17.69 12.196-31.652 28.861-33.843l4.654-.277h55.854zm16.753 284.396h-11.162c-3.353 0-5.586 2.324-5.586 5.724 0 2.744 1.393 4.746 3.723 5.448l1.863.23h11.167c3.354 0 5.586-2.278 5.586-5.678 0-2.744-1.393-4.746-3.722-5.448l-1.864-.23v-.051zm33.515-11.356h-11.172c-3.348 0-5.58 2.324-5.58 5.724 0 2.698 1.392 4.7 3.717 5.396l1.863.282h11.172c3.349 0 5.581-2.33 5.581-5.683 0-2.79-1.393-4.741-3.717-5.443l-1.864-.276zm-33.515-11.362h-11.162c-3.353 0-5.586 2.284-5.586 5.684 0 2.744 1.393 4.746 3.723 5.442l1.863.236h11.167c3.354 0 5.586-2.284 5.586-5.684 0-2.744-1.393-4.746-3.722-5.396l-1.864-.282zm33.515-11.402h-11.172c-3.348 0-5.58 2.33-5.58 5.724 0 2.704 1.392 4.706 3.717 5.402l1.863.276h11.172c3.349 0 5.581-2.278 5.581-5.678 0-2.744-1.393-4.746-3.717-5.442l-1.864-.282zM371.15 665.6h-11.162c-3.353 0-5.586 2.278-5.586 5.683 0 2.74 1.393 4.741 3.723 5.443l1.863.23h11.167c3.354 0 5.586-2.232 5.586-5.678 0-2.698-1.393-4.7-3.722-5.396l-1.87-.282zm33.515-11.356h-11.172c-3.348 0-5.58 2.232-5.58 5.678 0 2.698 1.392 4.7 3.717 5.396l1.863.282h11.172c3.349 0 5.581-2.278 5.581-5.683 0-2.74-1.393-4.741-3.717-5.443l-1.864-.23zm-33.515-11.402h-11.162c-3.353 0-5.586 2.278-5.586 5.678 0 2.744 1.393 4.746 3.723 5.442l1.863.282h11.167c3.354 0 5.586-2.33 5.586-5.724 0-2.704-1.393-4.706-3.722-5.402l-1.864-.276zm33.515-11.362h-11.172c-3.348 0-5.58 2.284-5.58 5.684 0 2.744 1.392 4.746 3.717 5.396l1.863.282h11.172c3.349 0 5.581-2.284 5.581-5.684 0-2.744-1.393-4.746-3.717-5.442l-1.864-.236zm-33.515-11.402h-11.162c-3.353 0-5.586 2.33-5.586 5.683 0 2.79 1.393 4.741 3.723 5.443l1.863.276h11.167c3.354 0 5.586-2.324 5.586-5.724 0-2.698-1.393-4.7-3.722-5.396l-1.864-.282zm33.515-11.356h-11.172c-3.348 0-5.58 2.278-5.58 5.678 0 2.744 1.392 4.746 3.717 5.448l1.863.23h11.172c3.349 0 5.581-2.278 5.581-5.678 0-2.744-1.393-4.746-3.717-5.448l-1.864-.23zM371.15 597.32h-11.162c-3.353 0-5.586 2.324-5.586 5.724 0 2.698 1.393 4.7 3.723 5.396l1.863.282h11.167c3.354 0 5.586-2.33 5.586-5.683 0-2.79-1.393-4.741-3.722-5.443l-1.864-.276zm33.515-11.362h-11.172c-3.348 0-5.58 2.284-5.58 5.684 0 2.744 1.392 4.746 3.717 5.442l1.863.236h11.172c3.349 0 5.581-2.284 5.581-5.684 0-2.744-1.393-4.746-3.717-5.396l-1.864-.282zm-33.515-11.402h-11.162c-3.353 0-5.586 2.33-5.586 5.724 0 2.704 1.393 4.706 3.723 5.402l1.863.276h11.167c3.354 0 5.586-2.278 5.586-5.678 0-2.744-1.393-4.746-3.722-5.442l-1.864-.282zm33.515-11.356h-11.172c-3.348 0-5.58 2.278-5.58 5.683 0 2.74 1.392 4.741 3.717 5.443l1.863.23h11.172c3.349 0 5.581-2.232 5.581-5.678 0-2.698-1.393-4.7-3.717-5.396l-1.864-.282zm-33.515-11.356h-11.162c-3.353 0-5.586 2.232-5.586 5.678 0 2.698 1.393 4.7 3.723 5.396l1.863.282h11.167c3.354 0 5.586-2.278 5.586-5.683 0-2.74-1.393-4.741-3.722-5.443l-1.864-.23z"
/>
</svg>
);

View File

@ -1,4 +1,5 @@
/// <reference types='vite/client' /> /// <reference types='vite/client' />
/// <reference types="vite-plugin-svgr/client" />
interface ImportMetaEnv { interface ImportMetaEnv {
VITE_CODEX_API_URL: string; VITE_CODEX_API_URL: string;

View File

@ -3,7 +3,6 @@ export { ButtonIcon } from "./components/ButtonIcon/ButtonIcon";
export { Input } from "./components/Input/Input"; export { Input } from "./components/Input/Input";
export { InputGroup } from "./components/InputGroup/InputGroup"; export { InputGroup } from "./components/InputGroup/InputGroup";
export * from "./components/Upload/Upload"; export * from "./components/Upload/Upload";
export { UploadIcon } from "./components/Upload/UploadIcon";
export { Card } from "./components/Card/Card"; export { Card } from "./components/Card/Card";
export { Select } from "./components/Select/Select"; export { Select } from "./components/Select/Select";
export { Toast } from "./components/Toast/Toast"; export { Toast } from "./components/Toast/Toast";
@ -13,12 +12,10 @@ export { Dropdown, type DropdownOption } from "./components/Dropdown/Dropdown";
export { Failure } from "./components/Failure/Failure"; export { Failure } from "./components/Failure/Failure";
export { Alert } from "./components/Alert/Alert"; export { Alert } from "./components/Alert/Alert";
export { Spinner } from "./components/Spinner/Spinner"; export { Spinner } from "./components/Spinner/Spinner";
export { WebFileIcon } from "./components/WebFileIcon/WebFileIcon";
export { Stepper } from "./components/Stepper/Stepper"; export { Stepper } from "./components/Stepper/Stepper";
export { Backdrop } from "./components/Backdrop/Backdrop"; export { Backdrop } from "./components/Backdrop/Backdrop";
export * from "./components/Table/Table"; export * from "./components/Table/Table";
export { Tooltip } from "./components/Tooltip/Tooltip"; export { Tooltip } from "./components/Tooltip/Tooltip";
export { Collapse } from "./components/Collapse/Collapse";
export { Placeholder } from "./components/Placeholder/Placeholder"; export { Placeholder } from "./components/Placeholder/Placeholder";
export { Sheets } from "./components/Sheets/Sheets"; export { Sheets } from "./components/Sheets/Sheets";
export { Tabs, type TabProps } from "./components/Tabs/Tabs"; export { Tabs, type TabProps } from "./components/Tabs/Tabs";

View File

@ -1,3 +0,0 @@
.collapse-demo {
min-width: 250px;
}

View File

@ -1,24 +0,0 @@
import type { Meta, StoryObj } from "@storybook/react";
import { Collapse } from "../src/components/Collapse/Collapse";
import "./Collapse.stories.css";
const meta = {
title: "Components/Collapse",
component: Collapse,
parameters: {
layout: "centered",
},
tags: ["autodocs"],
argTypes: {},
} satisfies Meta<typeof Collapse>;
export default meta;
type Story = StoryObj<typeof meta>;
export const Default: Story = {
args: {
summary: "Read more",
details: "More details for collapse component",
className: "collapse-demo",
},
};

View File

@ -1,19 +0,0 @@
import type { Meta, StoryObj } from "@storybook/react";
import { Spinner } from "../src/components/Spinner/Spinner";
const meta = {
title: "Overlays/Spinner",
component: Spinner,
parameters: {
layout: "centered",
},
tags: ["autodocs"],
argTypes: {},
} satisfies Meta<typeof Spinner>;
export default meta;
type Story = StoryObj<typeof meta>;
export const Default: Story = {
args: { width: "32" },
};

1
vite-env.d.ts vendored
View File

@ -1,4 +1,5 @@
/// <reference types='vite/client' /> /// <reference types='vite/client' />
/// <reference types="vite-plugin-svgr/client" />
interface ImportMetaEnv { interface ImportMetaEnv {
VITE_CODEX_API_URL: string; VITE_CODEX_API_URL: string;

View File

@ -6,6 +6,7 @@ import { libInjectCss } from "vite-plugin-lib-inject-css";
import { extname, relative } from "path"; import { extname, relative } from "path";
import { fileURLToPath } from "node:url"; import { fileURLToPath } from "node:url";
import { globSync } from "glob"; import { globSync } from "glob";
import svgr from "vite-plugin-svgr";
// https://vitejs.dev/config/ // https://vitejs.dev/config/
export default defineConfig({ export default defineConfig({
@ -26,6 +27,15 @@ export default defineConfig({
tsconfigPath: "./tsconfig.build.json", tsconfigPath: "./tsconfig.build.json",
rollupTypes: true, rollupTypes: true,
}), }),
svgr({
svgrOptions: {
plugins: ["@svgr/plugin-svgo", "@svgr/plugin-jsx"],
svgoConfig: {
floatPrecision: 2,
},
},
// ...
})
], ],
build: { build: {
lib: { lib: {