mirror of
https://github.com/lucide-icons/lucide.git
synced 2025-12-25 17:39:21 +01:00
Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b323bbd28e | ||
|
|
514e88bbf9 | ||
|
|
de6ed26152 | ||
|
|
b8cc9ea3c8 | ||
|
|
cc2ac8bfcd | ||
|
|
0e340a2679 | ||
|
|
c15e3914a6 | ||
|
|
ff81fbfd9a | ||
|
|
5317abb867 | ||
|
|
ac80b9e58f |
5
.github/workflows/release.yml
vendored
5
.github/workflows/release.yml
vendored
@@ -3,7 +3,7 @@ name: Release Packages
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "v*"
|
||||
- 'v*'
|
||||
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
@@ -639,7 +639,7 @@ jobs:
|
||||
mkdir lucide-font
|
||||
pnpm build:outline-icons --outputDir=converted_icons && fontcustom compile "./converted_icons" -h -n "lucide" -o ./lucide-font -F
|
||||
|
||||
- name: "Upload to Artifacts"
|
||||
- name: 'Upload to Artifacts'
|
||||
uses: actions/upload-artifact@v1
|
||||
with:
|
||||
name: lucide-font
|
||||
@@ -742,6 +742,7 @@ jobs:
|
||||
run: |
|
||||
mv lucide-package-json/package.json packages/lucide/package.json
|
||||
mv lucide-react-package-json/package.json packages/lucide-react/package.json
|
||||
mv lucide-react-native-package-json/package.json packages/lucide-react-native/package.json
|
||||
mv lucide-vue-package-json/package.json packages/lucide-vue/package.json
|
||||
mv lucide-preact-package-json/package.json packages/lucide-preact/package.json
|
||||
mv lucide-svelte-package-json/package.json packages/lucide-svelte/package.json
|
||||
|
||||
18
icons/cat.svg
Normal file
18
icons/cat.svg
Normal file
@@ -0,0 +1,18 @@
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
stroke-width="2"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path d="M14 5.256A8.148 8.148 0 0 0 12 5a9.04 9.04 0 0 0-2 .227M20.098 10c.572 1.068.902 2.24.902 3.444C21 17.89 16.97 21 12 21s-9-3-9-7.556c0-1.251.288-2.41.792-3.444"/>
|
||||
<path d="M3.75 10S2.11 3.58 3.5 3C4.89 2.42 8 3 9.781 5"/>
|
||||
<path d="M20.172 10.002s1.64-6.42.25-7c-1.39-.58-4.5 0-6.282 2"/>
|
||||
<path d="M8 14v.5"/>
|
||||
<path d="M16 14v.5"/>
|
||||
<path d="M11.25 16.25h1.5L12 17l-.75-.75Z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 605 B |
18
icons/dog.svg
Normal file
18
icons/dog.svg
Normal file
@@ -0,0 +1,18 @@
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="24"
|
||||
height="24"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
stroke-width="2"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path d="M10 5.172C10 3.782 8.423 2.679 6.5 3c-2.823.47-4.113 6.006-4 7 .08.703 1.725 1.722 3.656 1 1.261-.472 1.96-1.45 2.344-2.5"/>
|
||||
<path d="M14.267 5.172c0-1.39 1.577-2.493 3.5-2.172 2.823.47 4.113 6.006 4 7-.08.703-1.725 1.722-3.656 1-1.261-.472-1.855-1.45-2.239-2.5"/>
|
||||
<path d="M8 14v.5"/>
|
||||
<path d="M16 14v.5"/>
|
||||
<path d="M11.25 16.25h1.5L12 17l-.75-.75Z"/>
|
||||
<path d="M4.42 11.247A13.152 13.152 0 0 0 4 14.556C4 18.728 7.582 21 12 21s8-2.272 8-6.444c0-1.061-.162-2.2-.493-3.309m-9.243-6.082A8.801 8.801 0 0 1 12 5c.78 0 1.5.108 2.161.306"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 764 B |
@@ -17,7 +17,8 @@
|
||||
"generate:supersprite": "node ./scripts/generateSuperSVG.mjs",
|
||||
"optimize": "node ./scripts/optimizeSvgs.mjs",
|
||||
"addtags": "node ./scripts/addMissingKeysToTags.mjs",
|
||||
"generate:changelog": "node ./scripts/generateChangelog.mjs"
|
||||
"generate:changelog": "node ./scripts/generateChangelog.mjs",
|
||||
"postinstall": "husky install"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@atomico/rollup-plugin-sizes": "^1.1.4",
|
||||
@@ -39,7 +40,7 @@
|
||||
"eslint-config-prettier": "^2.10.0",
|
||||
"eslint-plugin-import": "^2.26.0",
|
||||
"eslint-plugin-prettier": "^2.7.0",
|
||||
"husky": "^4.3.8",
|
||||
"husky": "^8.0.0",
|
||||
"jest": "^28.1.3",
|
||||
"lint-staged": "^10.5.4",
|
||||
"minimist": "^1.2.6",
|
||||
@@ -62,5 +63,6 @@
|
||||
},
|
||||
"lint-staged": {
|
||||
"icons/*.svg": "node ./scripts/optimizeStagedSvgs.mjs"
|
||||
}
|
||||
},
|
||||
"packageManager": "pnpm@7.14.0"
|
||||
}
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
"serve": "vite preview"
|
||||
},
|
||||
"dependencies": {
|
||||
"@emotion/core": "^10.0.14",
|
||||
"minimist": "^1.2.6",
|
||||
"react": "^17.0.0",
|
||||
"react-dom": "^17.0.0"
|
||||
|
||||
@@ -6,7 +6,7 @@ Implementation of the lucide icon library for React Native applications.
|
||||
|
||||
## Installation
|
||||
|
||||
First, ensure that you have `react-native-svg@^12.0.0` installed. Then, install the package:
|
||||
First, ensure that you have`react-native-svg@^12.0.0` or `react-native-svg@^13.0.0` installed. Then, install the package:
|
||||
|
||||
```sh
|
||||
yarn add lucide-react-native
|
||||
@@ -25,11 +25,11 @@ Each icon can be imported as a react component.
|
||||
|
||||
You can pass additional props to adjust the icon.
|
||||
|
||||
``` js
|
||||
```js
|
||||
import { Camera } from 'lucide-react-native';
|
||||
|
||||
const App = () => {
|
||||
return <Camera color="red" size={48}/>
|
||||
return <Camera color="red" size={48} />;
|
||||
};
|
||||
|
||||
export default App;
|
||||
@@ -37,19 +37,19 @@ export default App;
|
||||
|
||||
### Props
|
||||
|
||||
| name | type | default
|
||||
| ------------ | -------- | --------
|
||||
| `size` | *Number* | 24
|
||||
| `color` | *String* | currentColor
|
||||
| `strokeWidth`| *Number* | 2
|
||||
| name | type | default |
|
||||
| ------------- | -------- | ------------ |
|
||||
| `size` | _Number_ | 24 |
|
||||
| `color` | _String_ | currentColor |
|
||||
| `strokeWidth` | _Number_ | 2 |
|
||||
|
||||
### Custom props
|
||||
|
||||
You can also pass custom props that will be added in the svg as attributes.
|
||||
|
||||
``` js
|
||||
```js
|
||||
const App = () => {
|
||||
return <Camera fill="red"/>
|
||||
return <Camera fill="red" />;
|
||||
};
|
||||
```
|
||||
|
||||
@@ -59,13 +59,13 @@ It is possible to create a generic icon component to load icons.
|
||||
|
||||
> :warning: The example below is importing all ES modules. This is **not** recommended when you using a bundler since your application build size will grow substantially.
|
||||
|
||||
``` js
|
||||
```js
|
||||
import * as icons from 'lucide-react-native';
|
||||
|
||||
const Icon = ({name, color, size}) => {
|
||||
const Icon = ({ name, color, size }) => {
|
||||
const LucideIcon = icons[name];
|
||||
|
||||
return <LucideIcon color={color} size={size} />
|
||||
return <LucideIcon color={color} size={size} />;
|
||||
};
|
||||
|
||||
export default Icon;
|
||||
|
||||
@@ -19,7 +19,9 @@
|
||||
"typings": "dist/lucide-react-native.d.ts",
|
||||
"react-native": "dist/esm/lucide-react-native.js",
|
||||
"sideEffects": false,
|
||||
"files": ["dist"],
|
||||
"files": [
|
||||
"dist"
|
||||
],
|
||||
"scripts": {
|
||||
"build": "pnpm clean && pnpm copy:license && pnpm build:icons && pnpm build:bundles && pnpm build:types",
|
||||
"copy:license": "cp ../../LICENSE ./LICENSE",
|
||||
@@ -38,12 +40,12 @@
|
||||
"react": "^18.0.0",
|
||||
"react-dom": "^18.0.0",
|
||||
"react-native": "^0.69.0",
|
||||
"react-native-svg": "^12.0.0"
|
||||
"react-native-svg": "^13.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"prop-types": "^15.7.2",
|
||||
"react": "^16.5.1 || ^17.0.0 || ^18.0.0",
|
||||
"react-native": ">=0.50.0",
|
||||
"react-native-svg": "^12.0.0"
|
||||
"react-native": "*",
|
||||
"react-native-svg": "^12.0.0 || ^13.0.0"
|
||||
}
|
||||
}
|
||||
|
||||
173
pnpm-lock.yaml
generated
173
pnpm-lock.yaml
generated
@@ -24,7 +24,7 @@ importers:
|
||||
eslint-config-prettier: ^2.10.0
|
||||
eslint-plugin-import: ^2.26.0
|
||||
eslint-plugin-prettier: ^2.7.0
|
||||
husky: ^4.3.8
|
||||
husky: ^8.0.0
|
||||
jest: ^28.1.3
|
||||
lint-staged: ^10.5.4
|
||||
minimist: ^1.2.6
|
||||
@@ -59,7 +59,7 @@ importers:
|
||||
eslint-config-prettier: 2.10.0_eslint@4.19.1
|
||||
eslint-plugin-import: 2.26.0_eslint@4.19.1
|
||||
eslint-plugin-prettier: 2.7.0_prettier@1.17.1
|
||||
husky: 4.3.8
|
||||
husky: 8.0.1
|
||||
jest: 28.1.3
|
||||
lint-staged: 10.5.4
|
||||
minimist: 1.2.6
|
||||
@@ -138,7 +138,6 @@ importers:
|
||||
|
||||
packages/lucide-figma:
|
||||
specifiers:
|
||||
'@emotion/core': ^10.0.14
|
||||
'@figma/plugin-typings': ^1.36.0
|
||||
'@types/react': ^17.0.0
|
||||
'@types/react-dom': ^17.0.0
|
||||
@@ -150,7 +149,6 @@ importers:
|
||||
vite: ^2.6.4
|
||||
vite-plugin-singlefile: ^0.5.1
|
||||
dependencies:
|
||||
'@emotion/core': 10.3.1_react@17.0.2
|
||||
minimist: 1.2.6
|
||||
react: 17.0.2
|
||||
react-dom: 17.0.2_react@17.0.2
|
||||
@@ -200,7 +198,7 @@ importers:
|
||||
react: ^18.0.0
|
||||
react-dom: ^18.0.0
|
||||
react-native: ^0.69.0
|
||||
react-native-svg: ^12.0.0
|
||||
react-native-svg: ^13.0.0
|
||||
devDependencies:
|
||||
'@testing-library/react': 11.2.7_zpnidt7m3osuk7shl3s4oenomq
|
||||
babel-preset-react-app: 10.0.1
|
||||
@@ -209,7 +207,7 @@ importers:
|
||||
react: 18.0.0
|
||||
react-dom: 18.0.0_react@18.0.0
|
||||
react-native: 0.69.3_zfzkngtuypffuickx4fuv5ptvi
|
||||
react-native-svg: 12.4.3_w3kncuvwqnzhwf3ziybn5l7dja
|
||||
react-native-svg: 13.4.0_w3kncuvwqnzhwf3ziybn5l7dja
|
||||
|
||||
packages/lucide-solid:
|
||||
specifiers:
|
||||
@@ -304,8 +302,6 @@ importers:
|
||||
site:
|
||||
specifiers:
|
||||
'@chakra-ui/react': 1.8.8
|
||||
'@emotion/react': ^11
|
||||
'@emotion/styled': ^11
|
||||
'@mdx-js/loader': ^1.6.22
|
||||
'@mdx-js/react': ^1.6.22
|
||||
'@next/eslint-plugin-next': ^12.2.5
|
||||
@@ -346,8 +342,6 @@ importers:
|
||||
typescript: ^4.3.5
|
||||
dependencies:
|
||||
'@chakra-ui/react': 1.8.8_kmzl3anmvi2yu5ttixzemblrsq
|
||||
'@emotion/react': 11.10.0_7zo56kuumdiaav2fjs2ysfihj4
|
||||
'@emotion/styled': 11.10.0_gradirrgrhdgjyorcjqyna7b2e
|
||||
'@mdx-js/loader': 1.6.22_react@17.0.2
|
||||
'@mdx-js/react': 1.6.22_react@17.0.2
|
||||
'@next/mdx': 11.1.4_6vwedlnwdegenaf6jioaeirvlu
|
||||
@@ -5372,15 +5366,6 @@ packages:
|
||||
stylis: 4.0.13
|
||||
dev: false
|
||||
|
||||
/@emotion/cache/10.0.29:
|
||||
resolution: {integrity: sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ==}
|
||||
dependencies:
|
||||
'@emotion/sheet': 0.9.4
|
||||
'@emotion/stylis': 0.8.5
|
||||
'@emotion/utils': 0.11.3
|
||||
'@emotion/weak-memoize': 0.2.5
|
||||
dev: false
|
||||
|
||||
/@emotion/cache/11.10.2:
|
||||
resolution: {integrity: sha512-GPR4PovENRvYDbCEnDRecPZYJzWdNMsM+Jn+13MC5uImVNbMyKwzv95DUHy5PDcgfPtKoDtfLU6emF1grrbQDg==}
|
||||
dependencies:
|
||||
@@ -5391,32 +5376,6 @@ packages:
|
||||
stylis: 4.0.13
|
||||
dev: false
|
||||
|
||||
/@emotion/core/10.3.1_react@17.0.2:
|
||||
resolution: {integrity: sha512-447aUEjPIm0MnE6QYIaFz9VQOHSXf4Iu6EWOIqq11EAPqinkSZmfymPTmlOE3QjLv846lH4JVZBUOtwGbuQoww==}
|
||||
peerDependencies:
|
||||
react: '>=16.3.0'
|
||||
dependencies:
|
||||
'@babel/runtime': 7.18.9
|
||||
'@emotion/cache': 10.0.29
|
||||
'@emotion/css': 10.0.27
|
||||
'@emotion/serialize': 0.11.16
|
||||
'@emotion/sheet': 0.9.4
|
||||
'@emotion/utils': 0.11.3
|
||||
react: 17.0.2
|
||||
dev: false
|
||||
|
||||
/@emotion/css/10.0.27:
|
||||
resolution: {integrity: sha512-6wZjsvYeBhyZQYNrGoR5yPMYbMBNEnanDrqmsqS1mzDm1cOTu12shvl2j4QHNS36UaTE0USIJawCH9C8oW34Zw==}
|
||||
dependencies:
|
||||
'@emotion/serialize': 0.11.16
|
||||
'@emotion/utils': 0.11.3
|
||||
babel-plugin-emotion: 10.2.2
|
||||
dev: false
|
||||
|
||||
/@emotion/hash/0.8.0:
|
||||
resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==}
|
||||
dev: false
|
||||
|
||||
/@emotion/hash/0.9.0:
|
||||
resolution: {integrity: sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==}
|
||||
dev: false
|
||||
@@ -5438,6 +5397,7 @@ packages:
|
||||
/@emotion/memoize/0.7.4:
|
||||
resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==}
|
||||
dev: false
|
||||
optional: true
|
||||
|
||||
/@emotion/memoize/0.8.0:
|
||||
resolution: {integrity: sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==}
|
||||
@@ -5467,16 +5427,6 @@ packages:
|
||||
react: 17.0.2
|
||||
dev: false
|
||||
|
||||
/@emotion/serialize/0.11.16:
|
||||
resolution: {integrity: sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg==}
|
||||
dependencies:
|
||||
'@emotion/hash': 0.8.0
|
||||
'@emotion/memoize': 0.7.4
|
||||
'@emotion/unitless': 0.7.5
|
||||
'@emotion/utils': 0.11.3
|
||||
csstype: 2.6.20
|
||||
dev: false
|
||||
|
||||
/@emotion/serialize/1.1.0:
|
||||
resolution: {integrity: sha512-F1ZZZW51T/fx+wKbVlwsfchr5q97iW8brAnXmsskz4d0hVB4O3M/SiA3SaeH06x02lSNzkkQv+n3AX3kCXKSFA==}
|
||||
dependencies:
|
||||
@@ -5487,10 +5437,6 @@ packages:
|
||||
csstype: 3.1.0
|
||||
dev: false
|
||||
|
||||
/@emotion/sheet/0.9.4:
|
||||
resolution: {integrity: sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA==}
|
||||
dev: false
|
||||
|
||||
/@emotion/sheet/1.2.0:
|
||||
resolution: {integrity: sha512-OiTkRgpxescko+M51tZsMq7Puu/KP55wMT8BgpcXVG2hqXc0Vo0mfymJ/Uj24Hp0i083ji/o0aLddh08UEjq8w==}
|
||||
dev: false
|
||||
@@ -5519,30 +5465,14 @@ packages:
|
||||
react: 17.0.2
|
||||
dev: false
|
||||
|
||||
/@emotion/stylis/0.8.5:
|
||||
resolution: {integrity: sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==}
|
||||
dev: false
|
||||
|
||||
/@emotion/unitless/0.7.5:
|
||||
resolution: {integrity: sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==}
|
||||
dev: false
|
||||
|
||||
/@emotion/unitless/0.8.0:
|
||||
resolution: {integrity: sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==}
|
||||
dev: false
|
||||
|
||||
/@emotion/utils/0.11.3:
|
||||
resolution: {integrity: sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw==}
|
||||
dev: false
|
||||
|
||||
/@emotion/utils/1.2.0:
|
||||
resolution: {integrity: sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==}
|
||||
dev: false
|
||||
|
||||
/@emotion/weak-memoize/0.2.5:
|
||||
resolution: {integrity: sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==}
|
||||
dev: false
|
||||
|
||||
/@emotion/weak-memoize/0.3.0:
|
||||
resolution: {integrity: sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==}
|
||||
dev: false
|
||||
@@ -9105,21 +9035,6 @@ packages:
|
||||
dependencies:
|
||||
object.assign: 4.1.4
|
||||
|
||||
/babel-plugin-emotion/10.2.2:
|
||||
resolution: {integrity: sha512-SMSkGoqTbTyUTDeuVuPIWifPdUGkTk1Kf9BWRiXIOIcuyMfsdp2EjeiiFvOzX8NOBvEh/ypKYvUh2rkgAJMCLA==}
|
||||
dependencies:
|
||||
'@babel/helper-module-imports': 7.18.6
|
||||
'@emotion/hash': 0.8.0
|
||||
'@emotion/memoize': 0.7.4
|
||||
'@emotion/serialize': 0.11.16
|
||||
babel-plugin-macros: 2.8.0
|
||||
babel-plugin-syntax-jsx: 6.18.0
|
||||
convert-source-map: 1.8.0
|
||||
escape-string-regexp: 1.0.5
|
||||
find-root: 1.1.0
|
||||
source-map: 0.5.7
|
||||
dev: false
|
||||
|
||||
/babel-plugin-extract-import-names/1.6.22:
|
||||
resolution: {integrity: sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==}
|
||||
dependencies:
|
||||
@@ -9181,14 +9096,6 @@ packages:
|
||||
html-entities: 2.3.2
|
||||
dev: true
|
||||
|
||||
/babel-plugin-macros/2.8.0:
|
||||
resolution: {integrity: sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==}
|
||||
dependencies:
|
||||
'@babel/runtime': 7.18.9
|
||||
cosmiconfig: 6.0.0
|
||||
resolve: 1.22.1
|
||||
dev: false
|
||||
|
||||
/babel-plugin-macros/3.1.0:
|
||||
resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==}
|
||||
engines: {node: '>=10', npm: '>=6'}
|
||||
@@ -9311,10 +9218,6 @@ packages:
|
||||
'@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.18.13
|
||||
dev: false
|
||||
|
||||
/babel-plugin-syntax-jsx/6.18.0:
|
||||
resolution: {integrity: sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==}
|
||||
dev: false
|
||||
|
||||
/babel-plugin-syntax-trailing-function-commas/7.0.0-beta.0:
|
||||
resolution: {integrity: sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==}
|
||||
dev: true
|
||||
@@ -10309,10 +10212,6 @@ packages:
|
||||
resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==}
|
||||
dev: true
|
||||
|
||||
/compare-versions/3.6.0:
|
||||
resolution: {integrity: sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==}
|
||||
dev: true
|
||||
|
||||
/component-emitter/1.3.0:
|
||||
resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==}
|
||||
dev: true
|
||||
@@ -10672,17 +10571,6 @@ packages:
|
||||
parse-json: 4.0.0
|
||||
dev: true
|
||||
|
||||
/cosmiconfig/6.0.0:
|
||||
resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==}
|
||||
engines: {node: '>=8'}
|
||||
dependencies:
|
||||
'@types/parse-json': 4.0.0
|
||||
import-fresh: 3.3.0
|
||||
parse-json: 5.2.0
|
||||
path-type: 4.0.0
|
||||
yaml: 1.10.2
|
||||
dev: false
|
||||
|
||||
/cosmiconfig/7.0.1:
|
||||
resolution: {integrity: sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==}
|
||||
engines: {node: '>=10'}
|
||||
@@ -10958,6 +10846,7 @@ packages:
|
||||
|
||||
/csstype/2.6.20:
|
||||
resolution: {integrity: sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==}
|
||||
dev: true
|
||||
|
||||
/csstype/3.0.9:
|
||||
resolution: {integrity: sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw==}
|
||||
@@ -11334,7 +11223,7 @@ packages:
|
||||
dependencies:
|
||||
domelementtype: 2.3.0
|
||||
domhandler: 5.0.3
|
||||
entities: 4.3.1
|
||||
entities: 4.4.0
|
||||
dev: true
|
||||
|
||||
/dom-walk/0.1.2:
|
||||
@@ -11540,6 +11429,7 @@ packages:
|
||||
/entities/4.3.1:
|
||||
resolution: {integrity: sha512-o4q/dYJlmyjP2zfnaWDUC6A3BQFmVTX+tZPezK7k0GLSU9QYCauscf5Y+qcEPzKL+EixVouYDgLQK5H9GrLpkg==}
|
||||
engines: {node: '>=0.12'}
|
||||
dev: false
|
||||
|
||||
/entities/4.4.0:
|
||||
resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==}
|
||||
@@ -13099,13 +12989,6 @@ packages:
|
||||
locate-path: 6.0.0
|
||||
path-exists: 4.0.0
|
||||
|
||||
/find-versions/4.0.0:
|
||||
resolution: {integrity: sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==}
|
||||
engines: {node: '>=10'}
|
||||
dependencies:
|
||||
semver-regex: 3.1.4
|
||||
dev: true
|
||||
|
||||
/flat-cache/1.3.4:
|
||||
resolution: {integrity: sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
@@ -13952,22 +13835,10 @@ packages:
|
||||
ms: 2.1.3
|
||||
dev: true
|
||||
|
||||
/husky/4.3.8:
|
||||
resolution: {integrity: sha512-LCqqsB0PzJQ/AlCgfrfzRe3e3+NvmefAdKQhRYpxS4u6clblBoDdzzvHi8fmxKRzvMxPY/1WZWzomPZww0Anow==}
|
||||
engines: {node: '>=10'}
|
||||
/husky/8.0.1:
|
||||
resolution: {integrity: sha512-xs7/chUH/CKdOCs7Zy0Aev9e/dKOMZf3K1Az1nar3tzlv0jfqnYtu235bstsWTmXOR0EfINrPa97yy4Lz6RiKw==}
|
||||
engines: {node: '>=14'}
|
||||
hasBin: true
|
||||
requiresBuild: true
|
||||
dependencies:
|
||||
chalk: 4.1.2
|
||||
ci-info: 2.0.0
|
||||
compare-versions: 3.6.0
|
||||
cosmiconfig: 7.0.1
|
||||
find-versions: 4.0.0
|
||||
opencollective-postinstall: 2.0.3
|
||||
pkg-dir: 5.0.0
|
||||
please-upgrade-node: 3.2.0
|
||||
slash: 3.0.0
|
||||
which-pm-runs: 1.1.0
|
||||
dev: true
|
||||
|
||||
/iconv-lite/0.4.24:
|
||||
@@ -17695,11 +17566,6 @@ packages:
|
||||
is-wsl: 2.2.0
|
||||
dev: true
|
||||
|
||||
/opencollective-postinstall/2.0.3:
|
||||
resolution: {integrity: sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==}
|
||||
hasBin: true
|
||||
dev: true
|
||||
|
||||
/optionator/0.8.3:
|
||||
resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==}
|
||||
engines: {node: '>= 0.8.0'}
|
||||
@@ -18099,6 +17965,7 @@ packages:
|
||||
engines: {node: '>=10'}
|
||||
dependencies:
|
||||
find-up: 5.0.0
|
||||
dev: false
|
||||
|
||||
/please-upgrade-node/3.2.0:
|
||||
resolution: {integrity: sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==}
|
||||
@@ -19393,11 +19260,11 @@ packages:
|
||||
resolution: {integrity: sha512-+4JpbIx42zGTONhBTIXSyfyHICHC29VTvhkkoUOJAh/XHPEixpuBduYgf6Y4y9wsN1ARlQhBBoptTvXvAFQf5g==}
|
||||
dev: true
|
||||
|
||||
/react-native-svg/12.4.3_w3kncuvwqnzhwf3ziybn5l7dja:
|
||||
resolution: {integrity: sha512-8OF+vvXsI854YlHBOQkanNcyio+7oQO0nQsS/Noji2VmPoMnLiJiMaxmOD9RHxGkbbo7lzbYWdxVdNibjN/8IA==}
|
||||
/react-native-svg/13.4.0_w3kncuvwqnzhwf3ziybn5l7dja:
|
||||
resolution: {integrity: sha512-B3TwK+H0+JuRhYPzF21AgqMt4fjhCwDZ9QUtwNstT5XcslJBXC0FoTkdZo8IEb1Sv4suSqhZwlAY6lwOv3tHag==}
|
||||
peerDependencies:
|
||||
react: '*'
|
||||
react-native: '>=0.50.0'
|
||||
react-native: '*'
|
||||
dependencies:
|
||||
css-select: 5.1.0
|
||||
css-tree: 1.1.3
|
||||
@@ -20334,11 +20201,6 @@ packages:
|
||||
semver: 5.7.1
|
||||
dev: true
|
||||
|
||||
/semver-regex/3.1.4:
|
||||
resolution: {integrity: sha512-6IiqeZNgq01qGf0TId0t3NvKzSvUsjcpdEO3AQNeIjR6A2+ckTnQlDpl4qu1bjRv0RzN3FP9hzFmws3lKqRWkA==}
|
||||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/semver/5.7.1:
|
||||
resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==}
|
||||
hasBin: true
|
||||
@@ -22776,11 +22638,6 @@ packages:
|
||||
resolution: {integrity: sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==}
|
||||
dev: true
|
||||
|
||||
/which-pm-runs/1.1.0:
|
||||
resolution: {integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==}
|
||||
engines: {node: '>=4'}
|
||||
dev: true
|
||||
|
||||
/which/1.3.1:
|
||||
resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
|
||||
hasBin: true
|
||||
|
||||
@@ -16,8 +16,6 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@chakra-ui/react": "1.8.8",
|
||||
"@emotion/react": "^11",
|
||||
"@emotion/styled": "^11",
|
||||
"@mdx-js/loader": "^1.6.22",
|
||||
"@mdx-js/react": "^1.6.22",
|
||||
"@next/mdx": "^11.0.0",
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import { Button, Flex, Link, WrapItem, Text, Wrap, Heading } from '@chakra-ui/react';
|
||||
import download from 'downloadjs';
|
||||
import JSZip from 'jszip';
|
||||
import { Download, Github } from 'lucide-react';
|
||||
import NextLink from 'next/link';
|
||||
import { IconCustomizerDrawer } from './IconCustomizerDrawer';
|
||||
@@ -20,6 +19,8 @@ import { IconEntity } from '../types';
|
||||
type IconContent = [icon: string, src:string];
|
||||
|
||||
async function generateZip(icons: IconContent[]) {
|
||||
const JSZip = (await import('jszip')).default
|
||||
|
||||
const zip = new JSZip();
|
||||
|
||||
const addingZipPromises = icons.map(([name, src]) =>
|
||||
@@ -73,6 +74,12 @@ const Header = ({ data }: HeaderProps) => {
|
||||
href: '/docs/lucide-react',
|
||||
label: 'Lucide documentation for React',
|
||||
},
|
||||
{
|
||||
name: 'lucide-react-native',
|
||||
Logo: ReactLogo,
|
||||
href: '/docs/lucide-react-native',
|
||||
label: 'Lucide documentation for React Native',
|
||||
},
|
||||
{
|
||||
name: 'lucide-vue',
|
||||
Logo: VueLogo,
|
||||
|
||||
@@ -87,7 +87,7 @@ const Package = ({ name, description, icon, shields, source, documentation }: Pa
|
||||
<Text mb={3}>{description}</Text>
|
||||
<ButtonGroup spacing={2}>
|
||||
{shields.map(({ alt, src, href }, index) => (
|
||||
<Link href={href} passHref>
|
||||
<Link key={index} href={href} passHref>
|
||||
<a target="_blank">
|
||||
{/* eslint-disable-next-line @next/next/no-img-element */}
|
||||
<img {...{ alt, src }} key={index} />
|
||||
|
||||
@@ -76,6 +76,10 @@ const docsMenuTree = [
|
||||
title: 'Lucide React',
|
||||
href: 'lucide-react'
|
||||
},
|
||||
{
|
||||
title: 'Lucide React Native',
|
||||
href: 'lucide-react-native'
|
||||
},
|
||||
{
|
||||
title: 'Lucide Vue',
|
||||
href: 'lucide-vue'
|
||||
|
||||
@@ -11,7 +11,7 @@ const IGNORE_COMMIT_MESSAGES = ['fork', 'optimize'];
|
||||
|
||||
function getContentHashOfFile(path) {
|
||||
return new Promise((resolve, reject) => {
|
||||
const hash = crypto.createHash('md4');
|
||||
const hash = crypto.createHash('sha256');
|
||||
const stream = fs.createReadStream(path);
|
||||
stream.on('error', err => reject(err));
|
||||
stream.on('data', chunk => hash.update(chunk));
|
||||
|
||||
@@ -23,14 +23,18 @@ const PackagesPage = ({ packages, thirdPartyPackages }: PackagesPageProps): JSX.
|
||||
Packages
|
||||
</Heading>
|
||||
<Stack spacing={8} align="center">
|
||||
{packages.length ? packages.map(packageItem => <Package {...packageItem} />) : null}
|
||||
{packages.length
|
||||
? packages.map((packageItem) => <Package key={packageItem.name} {...packageItem} />)
|
||||
: null}
|
||||
</Stack>
|
||||
|
||||
<Heading as="h1" marginBottom={6} marginTop={12} textAlign="center">
|
||||
Third party packages
|
||||
</Heading>
|
||||
<Stack spacing={8} marginBottom={6} align="center">
|
||||
{thirdPartyPackages.length ? thirdPartyPackages.map(packageItem => <Package {...packageItem} />) : null}
|
||||
{thirdPartyPackages.length
|
||||
? thirdPartyPackages.map((packageItem) => (<Package key={packageItem.name} {...packageItem} />))
|
||||
: null}
|
||||
</Stack>
|
||||
</Layout>
|
||||
</HeadingNavigationProvider>
|
||||
|
||||
Reference in New Issue
Block a user