mirror of
https://github.com/tabler/tabler-icons.git
synced 2025-08-22 21:53:17 +02:00
Generate icons list for build (#1050)
This commit is contained in:
@@ -95,3 +95,20 @@ export const buildJsIcons = ({
|
||||
fs.writeFileSync(path.resolve(DIST_DIR, `./src/aliases.ts`), aliasesStr || `export {};`, 'utf-8')
|
||||
}
|
||||
|
||||
export const buildIconsList = (name) => {
|
||||
const DIST_DIR = path.resolve(PACKAGES_DIR, name);
|
||||
const allIcons = getAllIcons(false, true)
|
||||
|
||||
let index = []
|
||||
Object.entries(allIcons).forEach(([type, icons]) => {
|
||||
icons.forEach((icon, i) => {
|
||||
process.stdout.write(`Building \`${name}\` ${type} ${i}/${icons.length}: ${icon.name.padEnd(42)}\r`)
|
||||
|
||||
const iconName = `${icon.name}${type !== 'outline' ? `-${type}` : ''}`
|
||||
|
||||
index.push(iconName)
|
||||
})
|
||||
})
|
||||
|
||||
fs.writeFileSync(path.resolve(DIST_DIR, `./src/icons-list.ts`), `export default ${JSON.stringify(index, null, 2)};`, 'utf-8')
|
||||
}
|
||||
|
1
packages/icons-preact/.gitignore
vendored
1
packages/icons-preact/.gitignore
vendored
@@ -1 +1,2 @@
|
||||
src/aliases.ts
|
||||
src/icons-list.ts
|
||||
|
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
import { buildJsIcons } from '../../.build/build-icons.mjs'
|
||||
import { buildJsIcons, buildIconsList } from '../../.build/build-icons.mjs'
|
||||
|
||||
const componentTemplate = ({
|
||||
type,
|
||||
@@ -27,3 +27,5 @@ buildJsIcons({
|
||||
indexFile: 'index.ts',
|
||||
extension: 'ts'
|
||||
})
|
||||
|
||||
buildIconsList('icons-preact')
|
||||
|
@@ -1,5 +1,6 @@
|
||||
export * from './icons/index';
|
||||
export * as icons from './icons/index';
|
||||
export * as iconsList from './icons-list';
|
||||
export * from './aliases';
|
||||
|
||||
export { default as createReactComponent } from './createPreactComponent';
|
||||
|
1
packages/icons-react-native/.gitignore
vendored
1
packages/icons-react-native/.gitignore
vendored
@@ -1 +1,2 @@
|
||||
src/aliases.ts
|
||||
src/icons-list.ts
|
||||
|
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
import { buildJsIcons } from '../../.build/build-icons.mjs'
|
||||
import { buildJsIcons, buildIconsList } from '../../.build/build-icons.mjs'
|
||||
|
||||
const componentTemplate = ({
|
||||
type,
|
||||
@@ -27,3 +27,5 @@ buildJsIcons({
|
||||
pascalCase: true,
|
||||
extension: 'ts'
|
||||
})
|
||||
|
||||
buildIconsList('icons-react-native')
|
||||
|
@@ -1,5 +1,6 @@
|
||||
export * from './icons/index';
|
||||
export * as icons from './icons/index';
|
||||
export * as iconsList from './icons-list';
|
||||
export * from './aliases';
|
||||
export { default as createReactComponent } from './createReactNativeComponent';
|
||||
|
||||
|
1
packages/icons-react/.gitignore
vendored
1
packages/icons-react/.gitignore
vendored
@@ -1 +1,2 @@
|
||||
src/aliases.ts
|
||||
src/icons-list.ts
|
||||
|
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
import { buildJsIcons } from '../../.build/build-icons.mjs'
|
||||
import { buildJsIcons, buildIconsList } from '../../.build/build-icons.mjs'
|
||||
|
||||
const componentTemplate = ({
|
||||
type,
|
||||
@@ -27,3 +27,5 @@ buildJsIcons({
|
||||
pascalCase: true,
|
||||
extension: 'ts'
|
||||
})
|
||||
|
||||
buildIconsList('icons-react')
|
||||
|
@@ -1,5 +1,6 @@
|
||||
export * from './icons/index';
|
||||
export * as icons from './icons/index';
|
||||
export * as iconsList from './icons-list';
|
||||
export * from './aliases';
|
||||
export { default as createReactComponent } from './createReactComponent';
|
||||
|
||||
|
1
packages/icons-solidjs/.gitignore
vendored
1
packages/icons-solidjs/.gitignore
vendored
@@ -1 +1,2 @@
|
||||
src/aliases.ts
|
||||
src/icons-list.ts
|
||||
|
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
import { buildJsIcons } from '../../.build/build-icons.mjs'
|
||||
import { buildJsIcons, buildIconsList } from '../../.build/build-icons.mjs'
|
||||
|
||||
const componentTemplate = ({
|
||||
type,
|
||||
@@ -27,3 +27,5 @@ buildJsIcons({
|
||||
extension: 'ts',
|
||||
indexFile: 'index.ts'
|
||||
})
|
||||
|
||||
buildIconsList('icons-solidjs')
|
||||
|
@@ -1,5 +1,6 @@
|
||||
export * from './icons/index';
|
||||
export * as icons from './icons/index';
|
||||
export * as iconsList from './icons-list';
|
||||
export * from './aliases';
|
||||
|
||||
export { default as createSolidComponent } from './createSolidComponent';
|
||||
|
1
packages/icons-svelte/.gitignore
vendored
1
packages/icons-svelte/.gitignore
vendored
@@ -1,3 +1,4 @@
|
||||
src/icons/*.svelte
|
||||
.svelte-kit
|
||||
src/aliases.ts
|
||||
src/icons-list.ts
|
||||
|
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
import { buildJsIcons } from '../../.build/build-icons.mjs'
|
||||
import { buildJsIcons, buildIconsList } from '../../.build/build-icons.mjs'
|
||||
import { readFileSync, writeFileSync } from 'fs'
|
||||
import { getAllIcons, toPascalCase } from '../../.build/helpers.mjs'
|
||||
|
||||
@@ -72,3 +72,4 @@ buildJsIcons({
|
||||
})
|
||||
|
||||
updatePackageJson()
|
||||
buildIconsList('icons-svelte')
|
||||
|
@@ -1,5 +1,6 @@
|
||||
export * from "./icons/index.js";
|
||||
export * as icons from "./icons/index.js";
|
||||
export * as iconsList from './icons-list';
|
||||
export * from "./aliases.js";
|
||||
export { default as defaultAttributes } from './defaultAttributes'
|
||||
|
||||
|
1
packages/icons-vue/.gitignore
vendored
1
packages/icons-vue/.gitignore
vendored
@@ -1 +1,2 @@
|
||||
src/aliases.ts
|
||||
src/icons-list.ts
|
||||
|
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
import { buildJsIcons } from '../../.build/build-icons.mjs'
|
||||
import { buildJsIcons, buildIconsList } from '../../.build/build-icons.mjs'
|
||||
|
||||
const componentTemplate = ({
|
||||
type,
|
||||
@@ -26,3 +26,5 @@ buildJsIcons({
|
||||
extension: 'ts',
|
||||
indexFile: 'index.ts',
|
||||
})
|
||||
|
||||
buildIconsList('icons-vue')
|
||||
|
@@ -1,5 +1,6 @@
|
||||
export * from './icons/index';
|
||||
export * as icons from './icons/index';
|
||||
export * as iconsList from './icons-list';
|
||||
export * from './aliases';
|
||||
|
||||
export { default as createVueComponent } from './createVueComponent';
|
||||
|
Reference in New Issue
Block a user