diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 0efbde55..a40dadab 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -46,6 +46,8 @@ jobs: run: node scripts/release/reformat-markdown.js "${{ steps.get-version.outputs.version }}" - name: Update SDK Typescript definitions run: node scripts/release/update-sdk-ts-defs.js + - name: Minify icons data file + run: node scripts/release/minify-icons-data.js - name: Build NodeJS package run: npm run build - name: Deploy to NPM diff --git a/scripts/release/minify-icons-data.js b/scripts/release/minify-icons-data.js new file mode 100644 index 00000000..4e09713c --- /dev/null +++ b/scripts/release/minify-icons-data.js @@ -0,0 +1,9 @@ +/** + * @file + * Minify _data/simple-icons.json file. + */ +import {getIconsData} from '../../sdk.mjs'; +import {writeIconsData} from '../utils.js'; + +const icons = await getIconsData(); +await writeIconsData({icons}, undefined, true); diff --git a/scripts/utils.js b/scripts/utils.js index ca568016..2ee6b2f7 100644 --- a/scripts/utils.js +++ b/scripts/utils.js @@ -32,14 +32,16 @@ export const getJsonSchemaData = async ( * Write icons data to _data/simple-icons.json. * @param {{icons: IconData[]}} iconsData Icons data object. * @param {string} rootDirectory Path to the root directory of the project. + * @param {boolean} minify Whether to minify the JSON output. */ export const writeIconsData = async ( iconsData, rootDirectory = path.resolve(__dirname, '..'), + minify, ) => { await fs.writeFile( getIconDataPath(rootDirectory), - `${JSON.stringify(iconsData, null, 4)}\n`, + `${JSON.stringify(iconsData, null, minify ? 0 : 4)}\n`, 'utf8', ); };