mirror of
https://github.com/feathericons/feather.git
synced 2023-08-10 21:13:24 +03:00
build: Add sync-algolia script
This commit is contained in:
34
bin/sync-algolia.js
Normal file
34
bin/sync-algolia.js
Normal file
@ -0,0 +1,34 @@
|
||||
/* eslint-disable import/no-extraneous-dependencies */
|
||||
import algolia from 'algoliasearch';
|
||||
import icons from '../dist/icons.json';
|
||||
import tags from '../src/tags.json';
|
||||
|
||||
const ALGOLIA_APP_ID = '5EEOG744D0';
|
||||
|
||||
if (
|
||||
process.env.TRAVIS_PULL_REQUEST === 'false' &&
|
||||
process.env.TRAVIS_BRANCH === 'master'
|
||||
) {
|
||||
syncAlgolia();
|
||||
}
|
||||
|
||||
function syncAlgolia() {
|
||||
const client = algolia(ALGOLIA_APP_ID, process.env.ALGOLIA_ADMIN_KEY);
|
||||
|
||||
const index = client.initIndex('icons');
|
||||
|
||||
const records = Object.keys(icons).map(name => ({
|
||||
name,
|
||||
tags: tags[name] || [],
|
||||
}));
|
||||
|
||||
index.clearIndex((err, content) => {
|
||||
if (err) throw err;
|
||||
console.log(content); // eslint-disable-line no-console
|
||||
});
|
||||
|
||||
index.addObjects(records, (err, content) => {
|
||||
if (err) throw err;
|
||||
console.log(content); // eslint-disable-line no-console
|
||||
});
|
||||
}
|
Reference in New Issue
Block a user