diff --git a/CHANGELOG.zh_CN.md b/CHANGELOG.zh_CN.md
index d6d0db05..1bd738bf 100644
--- a/CHANGELOG.zh_CN.md
+++ b/CHANGELOG.zh_CN.md
@@ -7,6 +7,9 @@
### ✨ Features
- axios 支持 form-data 格式请求
+- 新增图标选择器组件
+- 新增修改密码界面
+- 新增部门管理示例界面
### ⚡ Performance Improvements
diff --git a/build/gen/generateIconJson.ts b/build/gen/generateIconJson.ts
new file mode 100644
index 00000000..13f7dece
--- /dev/null
+++ b/build/gen/generateIconJson.ts
@@ -0,0 +1,56 @@
+import path from 'path';
+import fs from 'fs-extra';
+import inquirer from 'inquirer';
+import chalk from 'chalk';
+import pkg from '../../package.json';
+
+async function generateIcon() {
+ const dir = path.resolve(process.cwd(), 'node_modules/@iconify/json');
+
+ const raw = await fs.readJSON(path.join(dir, 'collections.json'));
+
+ const collections = Object.entries(raw).map(([id, v]) => ({
+ ...(v as any),
+ id,
+ }));
+
+ const choices = collections.map((item) => ({ key: item.id, value: item.id, name: item.name }));
+
+ inquirer
+ .prompt([
+ {
+ type: 'checkbox',
+ name: 'iconSet',
+ choices: choices,
+ message: 'Select the icon set that needs to be generated?',
+ default: true,
+ },
+ {
+ type: 'input',
+ name: 'output',
+ message: 'Select the icon set that needs to be generated?',
+ default: 'src/components/Icon/json',
+ },
+ ])
+ .then(async (answers) => {
+ const { iconSet, output } = answers;
+ const outputDir = path.resolve(process.cwd(), output);
+ fs.ensureDir(outputDir);
+ const genCollections = collections.filter((item) => iconSet.includes(item.id));
+ const prefixSet: string[] = [];
+ for (const info of genCollections) {
+ const data = await fs.readJSON(path.join(dir, 'json', `${info.id}.json`));
+ if (data) {
+ const { prefix } = data;
+ const icons = Object.keys(data.icons).map((item) => `${prefix}:${item}`);
+ await fs.writeJSON(path.join(output, `${prefix}-info.json`), icons);
+ prefixSet.push(prefix);
+ }
+ }
+ console.log(
+ `✨ ${chalk.cyan(`[${pkg.name}]`)}` + ' - Icon generated successfully:' + `[${prefixSet}]`
+ );
+ });
+}
+
+generateIcon();
diff --git a/package.json b/package.json
index 0d8db8a4..bc9bcdcd 100644
--- a/package.json
+++ b/package.json
@@ -22,7 +22,9 @@
"test:gzip": "http-server dist --cors --gzip -c-1",
"test:br": "http-server dist --cors --brotli -c-1",
"reinstall": "rimraf yarn.lock && rimraf package.lock.json && rimraf node_modules && npm run bootstrap",
- "postinstall": "is-ci || husky install"
+ "install:husky": "is-ci || husky install",
+ "gen:icon": "esno ./build/gen/generateIconJson.ts",
+ "postinstall": "npm run install:husky"
},
"dependencies": {
"@iconify/iconify": "^2.0.0-rc.6",
@@ -55,8 +57,9 @@
"@ls-lint/ls-lint": "^1.9.2",
"@purge-icons/generated": "^0.7.0",
"@types/crypto-js": "^4.0.1",
- "@types/fs-extra": "^9.0.7",
+ "@types/fs-extra": "^9.0.8",
"@types/http-proxy": "^1.17.5",
+ "@types/inquirer": "^7.3.1",
"@types/lodash-es": "^4.17.4",
"@types/mockjs": "^1.0.3",
"@types/nprogress": "^0.2.0",
@@ -84,6 +87,7 @@
"fs-extra": "^9.1.0",
"http-server": "^0.12.3",
"husky": "^5.1.2",
+ "inquirer": "^8.0.0",
"is-ci": "^3.0.0",
"less": "^4.1.1",
"lint-staged": "^10.5.4",
diff --git a/src/components/Icon/index.ts b/src/components/Icon/index.ts
index ae16c57d..853eb917 100644
--- a/src/components/Icon/index.ts
+++ b/src/components/Icon/index.ts
@@ -1,4 +1,6 @@
import Icon from './src/index.vue';
+import IconPicker from './src/IconPicker.vue';
+
+export { Icon, IconPicker };
-export { Icon };
export default Icon;
diff --git a/src/components/Icon/json/ion-info.json b/src/components/Icon/json/ion-info.json
new file mode 100644
index 00000000..c1fbea19
--- /dev/null
+++ b/src/components/Icon/json/ion-info.json
@@ -0,0 +1,2338 @@
+[
+ "ion:accessibility",
+ "ion:accessibility-outline",
+ "ion:accessibility-sharp",
+ "ion:add",
+ "ion:add-circle",
+ "ion:add-circle-outline",
+ "ion:add-circle-sharp",
+ "ion:add-outline",
+ "ion:add-sharp",
+ "ion:airplane",
+ "ion:airplane-outline",
+ "ion:airplane-sharp",
+ "ion:alarm",
+ "ion:alarm-outline",
+ "ion:alarm-sharp",
+ "ion:albums",
+ "ion:albums-outline",
+ "ion:albums-sharp",
+ "ion:alert",
+ "ion:alert-circle",
+ "ion:alert-circle-outline",
+ "ion:alert-circle-sharp",
+ "ion:alert-circled",
+ "ion:alert-outline",
+ "ion:alert-sharp",
+ "ion:american-football",
+ "ion:american-football-outline",
+ "ion:american-football-sharp",
+ "ion:analytics",
+ "ion:analytics-outline",
+ "ion:analytics-sharp",
+ "ion:android-bulb",
+ "ion:android-checkbox-outline-blank",
+ "ion:android-contact",
+ "ion:android-favorite-outline",
+ "ion:android-hangout",
+ "ion:android-more-horizontal",
+ "ion:android-plane",
+ "ion:android-sunny",
+ "ion:android-time",
+ "ion:android-train",
+ "ion:aperture",
+ "ion:aperture-outline",
+ "ion:aperture-sharp",
+ "ion:apps",
+ "ion:apps-outline",
+ "ion:apps-sharp",
+ "ion:archive",
+ "ion:archive-outline",
+ "ion:archive-sharp",
+ "ion:arrow-back",
+ "ion:arrow-back-circle",
+ "ion:arrow-back-circle-outline",
+ "ion:arrow-back-circle-sharp",
+ "ion:arrow-back-outline",
+ "ion:arrow-back-sharp",
+ "ion:arrow-down",
+ "ion:arrow-down-a",
+ "ion:arrow-down-b",
+ "ion:arrow-down-c",
+ "ion:arrow-down-circle",
+ "ion:arrow-down-circle-outline",
+ "ion:arrow-down-circle-sharp",
+ "ion:arrow-down-outline",
+ "ion:arrow-down-sharp",
+ "ion:arrow-expand",
+ "ion:arrow-forward",
+ "ion:arrow-forward-circle",
+ "ion:arrow-forward-circle-outline",
+ "ion:arrow-forward-circle-sharp",
+ "ion:arrow-forward-outline",
+ "ion:arrow-forward-sharp",
+ "ion:arrow-graph-down-left",
+ "ion:arrow-graph-down-right",
+ "ion:arrow-graph-up-left",
+ "ion:arrow-graph-up-right",
+ "ion:arrow-left-a",
+ "ion:arrow-left-b",
+ "ion:arrow-left-c",
+ "ion:arrow-move",
+ "ion:arrow-redo",
+ "ion:arrow-redo-circle",
+ "ion:arrow-redo-circle-outline",
+ "ion:arrow-redo-circle-sharp",
+ "ion:arrow-redo-outline",
+ "ion:arrow-redo-sharp",
+ "ion:arrow-resize",
+ "ion:arrow-return-left",
+ "ion:arrow-return-right",
+ "ion:arrow-right-a",
+ "ion:arrow-right-b",
+ "ion:arrow-right-c",
+ "ion:arrow-shrink",
+ "ion:arrow-swap",
+ "ion:arrow-undo",
+ "ion:arrow-undo-circle",
+ "ion:arrow-undo-circle-outline",
+ "ion:arrow-undo-circle-sharp",
+ "ion:arrow-undo-outline",
+ "ion:arrow-undo-sharp",
+ "ion:arrow-up",
+ "ion:arrow-up-a",
+ "ion:arrow-up-b",
+ "ion:arrow-up-c",
+ "ion:arrow-up-circle",
+ "ion:arrow-up-circle-outline",
+ "ion:arrow-up-circle-sharp",
+ "ion:arrow-up-outline",
+ "ion:arrow-up-sharp",
+ "ion:asterisk",
+ "ion:at",
+ "ion:at-circle",
+ "ion:at-circle-outline",
+ "ion:at-circle-sharp",
+ "ion:at-outline",
+ "ion:at-sharp",
+ "ion:attach",
+ "ion:attach-outline",
+ "ion:attach-sharp",
+ "ion:backspace",
+ "ion:backspace-outline",
+ "ion:backspace-sharp",
+ "ion:bag",
+ "ion:bag-add",
+ "ion:bag-add-outline",
+ "ion:bag-add-sharp",
+ "ion:bag-check",
+ "ion:bag-check-outline",
+ "ion:bag-check-sharp",
+ "ion:bag-handle",
+ "ion:bag-handle-outline",
+ "ion:bag-handle-sharp",
+ "ion:bag-outline",
+ "ion:bag-remove",
+ "ion:bag-remove-outline",
+ "ion:bag-remove-sharp",
+ "ion:bag-sharp",
+ "ion:balloon",
+ "ion:balloon-outline",
+ "ion:balloon-sharp",
+ "ion:ban",
+ "ion:ban-outline",
+ "ion:ban-sharp",
+ "ion:bandage",
+ "ion:bandage-outline",
+ "ion:bandage-sharp",
+ "ion:bar-chart",
+ "ion:bar-chart-outline",
+ "ion:bar-chart-sharp",
+ "ion:barbell",
+ "ion:barbell-outline",
+ "ion:barbell-sharp",
+ "ion:barcode",
+ "ion:barcode-outline",
+ "ion:barcode-sharp",
+ "ion:baseball",
+ "ion:baseball-outline",
+ "ion:baseball-sharp",
+ "ion:basket",
+ "ion:basket-outline",
+ "ion:basket-sharp",
+ "ion:basketball",
+ "ion:basketball-outline",
+ "ion:basketball-sharp",
+ "ion:battery-charging",
+ "ion:battery-charging-outline",
+ "ion:battery-charging-sharp",
+ "ion:battery-dead",
+ "ion:battery-dead-outline",
+ "ion:battery-dead-sharp",
+ "ion:battery-empty",
+ "ion:battery-full",
+ "ion:battery-full-outline",
+ "ion:battery-full-sharp",
+ "ion:battery-half",
+ "ion:battery-half-outline",
+ "ion:battery-half-sharp",
+ "ion:battery-low",
+ "ion:beaker",
+ "ion:beaker-outline",
+ "ion:beaker-sharp",
+ "ion:bed",
+ "ion:bed-outline",
+ "ion:bed-sharp",
+ "ion:beer",
+ "ion:beer-outline",
+ "ion:beer-sharp",
+ "ion:bicycle",
+ "ion:bicycle-outline",
+ "ion:bicycle-sharp",
+ "ion:bluetooth",
+ "ion:bluetooth-outline",
+ "ion:bluetooth-sharp",
+ "ion:boat",
+ "ion:boat-outline",
+ "ion:boat-sharp",
+ "ion:body",
+ "ion:body-outline",
+ "ion:body-sharp",
+ "ion:bonfire",
+ "ion:bonfire-outline",
+ "ion:bonfire-sharp",
+ "ion:book",
+ "ion:book-outline",
+ "ion:book-sharp",
+ "ion:bookmark",
+ "ion:bookmark-outline",
+ "ion:bookmark-sharp",
+ "ion:bookmarks",
+ "ion:bookmarks-outline",
+ "ion:bookmarks-sharp",
+ "ion:bowling-ball",
+ "ion:bowling-ball-outline",
+ "ion:bowling-ball-sharp",
+ "ion:bowtie",
+ "ion:briefcase",
+ "ion:briefcase-outline",
+ "ion:briefcase-sharp",
+ "ion:browsers",
+ "ion:browsers-outline",
+ "ion:browsers-sharp",
+ "ion:brush",
+ "ion:brush-outline",
+ "ion:brush-sharp",
+ "ion:bug",
+ "ion:bug-outline",
+ "ion:bug-sharp",
+ "ion:build",
+ "ion:build-outline",
+ "ion:build-sharp",
+ "ion:bulb",
+ "ion:bulb-outline",
+ "ion:bulb-sharp",
+ "ion:bus",
+ "ion:bus-outline",
+ "ion:bus-sharp",
+ "ion:business",
+ "ion:business-outline",
+ "ion:business-sharp",
+ "ion:cafe",
+ "ion:cafe-outline",
+ "ion:cafe-sharp",
+ "ion:calculator",
+ "ion:calculator-outline",
+ "ion:calculator-sharp",
+ "ion:calendar",
+ "ion:calendar-clear",
+ "ion:calendar-clear-outline",
+ "ion:calendar-clear-sharp",
+ "ion:calendar-number",
+ "ion:calendar-number-outline",
+ "ion:calendar-number-sharp",
+ "ion:calendar-outline",
+ "ion:calendar-sharp",
+ "ion:call",
+ "ion:call-outline",
+ "ion:call-sharp",
+ "ion:camera",
+ "ion:camera-outline",
+ "ion:camera-reverse",
+ "ion:camera-reverse-outline",
+ "ion:camera-reverse-sharp",
+ "ion:camera-sharp",
+ "ion:car",
+ "ion:car-outline",
+ "ion:car-sharp",
+ "ion:car-sport",
+ "ion:car-sport-outline",
+ "ion:car-sport-sharp",
+ "ion:card",
+ "ion:card-outline",
+ "ion:card-sharp",
+ "ion:caret-back",
+ "ion:caret-back-circle",
+ "ion:caret-back-circle-outline",
+ "ion:caret-back-circle-sharp",
+ "ion:caret-back-outline",
+ "ion:caret-back-sharp",
+ "ion:caret-down",
+ "ion:caret-down-circle",
+ "ion:caret-down-circle-outline",
+ "ion:caret-down-circle-sharp",
+ "ion:caret-down-outline",
+ "ion:caret-down-sharp",
+ "ion:caret-forward",
+ "ion:caret-forward-circle",
+ "ion:caret-forward-circle-outline",
+ "ion:caret-forward-circle-sharp",
+ "ion:caret-forward-outline",
+ "ion:caret-forward-sharp",
+ "ion:caret-up",
+ "ion:caret-up-circle",
+ "ion:caret-up-circle-outline",
+ "ion:caret-up-circle-sharp",
+ "ion:caret-up-outline",
+ "ion:caret-up-sharp",
+ "ion:cart",
+ "ion:cart-outline",
+ "ion:cart-sharp",
+ "ion:cash",
+ "ion:cash-outline",
+ "ion:cash-sharp",
+ "ion:cellular",
+ "ion:cellular-outline",
+ "ion:cellular-sharp",
+ "ion:chatbox",
+ "ion:chatbox-ellipses",
+ "ion:chatbox-ellipses-outline",
+ "ion:chatbox-ellipses-sharp",
+ "ion:chatbox-outline",
+ "ion:chatbox-sharp",
+ "ion:chatbox-working",
+ "ion:chatboxes",
+ "ion:chatbubble",
+ "ion:chatbubble-ellipses",
+ "ion:chatbubble-ellipses-outline",
+ "ion:chatbubble-ellipses-sharp",
+ "ion:chatbubble-outline",
+ "ion:chatbubble-sharp",
+ "ion:chatbubble-working",
+ "ion:chatbubbles",
+ "ion:chatbubbles-outline",
+ "ion:chatbubbles-sharp",
+ "ion:checkbox",
+ "ion:checkbox-outline",
+ "ion:checkbox-sharp",
+ "ion:checkmark",
+ "ion:checkmark-circle",
+ "ion:checkmark-circle-outline",
+ "ion:checkmark-circle-sharp",
+ "ion:checkmark-circled",
+ "ion:checkmark-done",
+ "ion:checkmark-done-circle",
+ "ion:checkmark-done-circle-outline",
+ "ion:checkmark-done-circle-sharp",
+ "ion:checkmark-done-outline",
+ "ion:checkmark-done-sharp",
+ "ion:checkmark-outline",
+ "ion:checkmark-round",
+ "ion:checkmark-sharp",
+ "ion:chevron-back",
+ "ion:chevron-back-circle",
+ "ion:chevron-back-circle-outline",
+ "ion:chevron-back-circle-sharp",
+ "ion:chevron-back-outline",
+ "ion:chevron-back-sharp",
+ "ion:chevron-down",
+ "ion:chevron-down-circle",
+ "ion:chevron-down-circle-outline",
+ "ion:chevron-down-circle-sharp",
+ "ion:chevron-down-outline",
+ "ion:chevron-down-sharp",
+ "ion:chevron-forward",
+ "ion:chevron-forward-circle",
+ "ion:chevron-forward-circle-outline",
+ "ion:chevron-forward-circle-sharp",
+ "ion:chevron-forward-outline",
+ "ion:chevron-forward-sharp",
+ "ion:chevron-left",
+ "ion:chevron-right",
+ "ion:chevron-up",
+ "ion:chevron-up-circle",
+ "ion:chevron-up-circle-outline",
+ "ion:chevron-up-circle-sharp",
+ "ion:chevron-up-outline",
+ "ion:chevron-up-sharp",
+ "ion:clipboard",
+ "ion:clipboard-outline",
+ "ion:clipboard-sharp",
+ "ion:clock",
+ "ion:close",
+ "ion:close-circle",
+ "ion:close-circle-outline",
+ "ion:close-circle-sharp",
+ "ion:close-circled",
+ "ion:close-outline",
+ "ion:close-round",
+ "ion:close-sharp",
+ "ion:closed-captioning",
+ "ion:cloud",
+ "ion:cloud-circle",
+ "ion:cloud-circle-outline",
+ "ion:cloud-circle-sharp",
+ "ion:cloud-done",
+ "ion:cloud-done-outline",
+ "ion:cloud-done-sharp",
+ "ion:cloud-download",
+ "ion:cloud-download-outline",
+ "ion:cloud-download-sharp",
+ "ion:cloud-offline",
+ "ion:cloud-offline-outline",
+ "ion:cloud-offline-sharp",
+ "ion:cloud-outline",
+ "ion:cloud-sharp",
+ "ion:cloud-upload",
+ "ion:cloud-upload-outline",
+ "ion:cloud-upload-sharp",
+ "ion:cloudy",
+ "ion:cloudy-night",
+ "ion:cloudy-night-outline",
+ "ion:cloudy-night-sharp",
+ "ion:cloudy-outline",
+ "ion:cloudy-sharp",
+ "ion:code",
+ "ion:code-download",
+ "ion:code-download-outline",
+ "ion:code-download-sharp",
+ "ion:code-outline",
+ "ion:code-sharp",
+ "ion:code-slash",
+ "ion:code-slash-outline",
+ "ion:code-slash-sharp",
+ "ion:code-working",
+ "ion:code-working-outline",
+ "ion:code-working-sharp",
+ "ion:coffee",
+ "ion:cog",
+ "ion:cog-outline",
+ "ion:cog-sharp",
+ "ion:color-fill",
+ "ion:color-fill-outline",
+ "ion:color-fill-sharp",
+ "ion:color-filter",
+ "ion:color-filter-outline",
+ "ion:color-filter-sharp",
+ "ion:color-palette",
+ "ion:color-palette-outline",
+ "ion:color-palette-sharp",
+ "ion:color-wand",
+ "ion:color-wand-outline",
+ "ion:color-wand-sharp",
+ "ion:compass",
+ "ion:compass-outline",
+ "ion:compass-sharp",
+ "ion:compose",
+ "ion:connection-bars",
+ "ion:construct",
+ "ion:construct-outline",
+ "ion:construct-sharp",
+ "ion:contract",
+ "ion:contract-outline",
+ "ion:contract-sharp",
+ "ion:contrast",
+ "ion:contrast-outline",
+ "ion:contrast-sharp",
+ "ion:copy",
+ "ion:copy-outline",
+ "ion:copy-sharp",
+ "ion:create",
+ "ion:create-outline",
+ "ion:create-sharp",
+ "ion:crop",
+ "ion:crop-outline",
+ "ion:crop-sharp",
+ "ion:cube",
+ "ion:cube-outline",
+ "ion:cube-sharp",
+ "ion:cut",
+ "ion:cut-outline",
+ "ion:cut-sharp",
+ "ion:desktop",
+ "ion:desktop-outline",
+ "ion:desktop-sharp",
+ "ion:diamond",
+ "ion:diamond-outline",
+ "ion:diamond-sharp",
+ "ion:dice",
+ "ion:dice-outline",
+ "ion:dice-sharp",
+ "ion:disc",
+ "ion:disc-outline",
+ "ion:disc-sharp",
+ "ion:document",
+ "ion:document-attach",
+ "ion:document-attach-outline",
+ "ion:document-attach-sharp",
+ "ion:document-lock",
+ "ion:document-lock-outline",
+ "ion:document-lock-sharp",
+ "ion:document-outline",
+ "ion:document-sharp",
+ "ion:document-text",
+ "ion:document-text-outline",
+ "ion:document-text-sharp",
+ "ion:documents",
+ "ion:documents-outline",
+ "ion:documents-sharp",
+ "ion:download",
+ "ion:download-outline",
+ "ion:download-sharp",
+ "ion:drag",
+ "ion:duplicate",
+ "ion:duplicate-outline",
+ "ion:duplicate-sharp",
+ "ion:ear",
+ "ion:ear-outline",
+ "ion:ear-sharp",
+ "ion:earth",
+ "ion:earth-outline",
+ "ion:earth-sharp",
+ "ion:easel",
+ "ion:easel-outline",
+ "ion:easel-sharp",
+ "ion:edit",
+ "ion:egg",
+ "ion:egg-outline",
+ "ion:egg-sharp",
+ "ion:eject",
+ "ion:ellipse",
+ "ion:ellipse-outline",
+ "ion:ellipse-sharp",
+ "ion:ellipsis-horizontal",
+ "ion:ellipsis-horizontal-circle",
+ "ion:ellipsis-horizontal-circle-outline",
+ "ion:ellipsis-horizontal-circle-sharp",
+ "ion:ellipsis-horizontal-outline",
+ "ion:ellipsis-horizontal-sharp",
+ "ion:ellipsis-vertical",
+ "ion:ellipsis-vertical-circle",
+ "ion:ellipsis-vertical-circle-outline",
+ "ion:ellipsis-vertical-circle-sharp",
+ "ion:ellipsis-vertical-outline",
+ "ion:ellipsis-vertical-sharp",
+ "ion:email",
+ "ion:email-unread",
+ "ion:enter",
+ "ion:enter-outline",
+ "ion:enter-sharp",
+ "ion:erlenmeyer-flask",
+ "ion:erlenmeyer-flask-bubbles",
+ "ion:exit",
+ "ion:exit-outline",
+ "ion:exit-sharp",
+ "ion:expand",
+ "ion:expand-outline",
+ "ion:expand-sharp",
+ "ion:extension-puzzle",
+ "ion:extension-puzzle-outline",
+ "ion:extension-puzzle-sharp",
+ "ion:eye",
+ "ion:eye-disabled",
+ "ion:eye-off",
+ "ion:eye-off-outline",
+ "ion:eye-off-sharp",
+ "ion:eye-outline",
+ "ion:eye-sharp",
+ "ion:eyedrop",
+ "ion:eyedrop-outline",
+ "ion:eyedrop-sharp",
+ "ion:fast-food",
+ "ion:fast-food-outline",
+ "ion:fast-food-sharp",
+ "ion:female",
+ "ion:female-outline",
+ "ion:female-sharp",
+ "ion:file-tray",
+ "ion:file-tray-full",
+ "ion:file-tray-full-outline",
+ "ion:file-tray-full-sharp",
+ "ion:file-tray-outline",
+ "ion:file-tray-sharp",
+ "ion:file-tray-stacked",
+ "ion:file-tray-stacked-outline",
+ "ion:file-tray-stacked-sharp",
+ "ion:filing",
+ "ion:film",
+ "ion:film-marker",
+ "ion:film-outline",
+ "ion:film-sharp",
+ "ion:filter",
+ "ion:filter-circle",
+ "ion:filter-circle-outline",
+ "ion:filter-circle-sharp",
+ "ion:filter-outline",
+ "ion:filter-sharp",
+ "ion:finger-print",
+ "ion:finger-print-outline",
+ "ion:finger-print-sharp",
+ "ion:fireball",
+ "ion:fish",
+ "ion:fish-outline",
+ "ion:fish-sharp",
+ "ion:fitness",
+ "ion:fitness-outline",
+ "ion:fitness-sharp",
+ "ion:flag",
+ "ion:flag-outline",
+ "ion:flag-sharp",
+ "ion:flame",
+ "ion:flame-outline",
+ "ion:flame-sharp",
+ "ion:flash",
+ "ion:flash-off",
+ "ion:flash-off-outline",
+ "ion:flash-off-sharp",
+ "ion:flash-outline",
+ "ion:flash-sharp",
+ "ion:flashlight",
+ "ion:flashlight-outline",
+ "ion:flashlight-sharp",
+ "ion:flask",
+ "ion:flask-outline",
+ "ion:flask-sharp",
+ "ion:flower",
+ "ion:flower-outline",
+ "ion:flower-sharp",
+ "ion:folder",
+ "ion:folder-open",
+ "ion:folder-open-outline",
+ "ion:folder-open-sharp",
+ "ion:folder-outline",
+ "ion:folder-sharp",
+ "ion:football",
+ "ion:football-outline",
+ "ion:football-sharp",
+ "ion:footsteps",
+ "ion:footsteps-outline",
+ "ion:footsteps-sharp",
+ "ion:fork",
+ "ion:fork-repo",
+ "ion:forward",
+ "ion:funnel",
+ "ion:funnel-outline",
+ "ion:funnel-sharp",
+ "ion:game-controller",
+ "ion:game-controller-outline",
+ "ion:game-controller-sharp",
+ "ion:gear-a",
+ "ion:gear-b",
+ "ion:gift",
+ "ion:gift-outline",
+ "ion:gift-sharp",
+ "ion:git-branch",
+ "ion:git-branch-outline",
+ "ion:git-branch-sharp",
+ "ion:git-commit",
+ "ion:git-commit-outline",
+ "ion:git-commit-sharp",
+ "ion:git-compare",
+ "ion:git-compare-outline",
+ "ion:git-compare-sharp",
+ "ion:git-merge",
+ "ion:git-merge-outline",
+ "ion:git-merge-sharp",
+ "ion:git-network",
+ "ion:git-network-outline",
+ "ion:git-network-sharp",
+ "ion:git-pull-request",
+ "ion:git-pull-request-outline",
+ "ion:git-pull-request-sharp",
+ "ion:glasses",
+ "ion:glasses-outline",
+ "ion:glasses-sharp",
+ "ion:globe",
+ "ion:globe-outline",
+ "ion:globe-sharp",
+ "ion:golf",
+ "ion:golf-outline",
+ "ion:golf-sharp",
+ "ion:grid",
+ "ion:grid-outline",
+ "ion:grid-sharp",
+ "ion:hammer",
+ "ion:hammer-outline",
+ "ion:hammer-sharp",
+ "ion:hand-left",
+ "ion:hand-left-outline",
+ "ion:hand-left-sharp",
+ "ion:hand-right",
+ "ion:hand-right-outline",
+ "ion:hand-right-sharp",
+ "ion:happy",
+ "ion:happy-outline",
+ "ion:happy-sharp",
+ "ion:hardware-chip",
+ "ion:hardware-chip-outline",
+ "ion:hardware-chip-sharp",
+ "ion:headphone",
+ "ion:headset",
+ "ion:headset-outline",
+ "ion:headset-sharp",
+ "ion:heart",
+ "ion:heart-broken",
+ "ion:heart-circle",
+ "ion:heart-circle-outline",
+ "ion:heart-circle-sharp",
+ "ion:heart-dislike",
+ "ion:heart-dislike-circle",
+ "ion:heart-dislike-circle-outline",
+ "ion:heart-dislike-circle-sharp",
+ "ion:heart-dislike-outline",
+ "ion:heart-dislike-sharp",
+ "ion:heart-half",
+ "ion:heart-half-outline",
+ "ion:heart-half-sharp",
+ "ion:heart-outline",
+ "ion:heart-sharp",
+ "ion:help",
+ "ion:help-buoy",
+ "ion:help-buoy-outline",
+ "ion:help-buoy-sharp",
+ "ion:help-circle",
+ "ion:help-circle-outline",
+ "ion:help-circle-sharp",
+ "ion:help-circled",
+ "ion:help-outline",
+ "ion:help-sharp",
+ "ion:home",
+ "ion:home-outline",
+ "ion:home-sharp",
+ "ion:hourglass",
+ "ion:hourglass-outline",
+ "ion:hourglass-sharp",
+ "ion:ice-cream",
+ "ion:ice-cream-outline",
+ "ion:ice-cream-sharp",
+ "ion:icecream",
+ "ion:id-card",
+ "ion:id-card-outline",
+ "ion:id-card-sharp",
+ "ion:image",
+ "ion:image-outline",
+ "ion:image-sharp",
+ "ion:images",
+ "ion:images-outline",
+ "ion:images-sharp",
+ "ion:infinite",
+ "ion:infinite-outline",
+ "ion:infinite-sharp",
+ "ion:information",
+ "ion:information-circle",
+ "ion:information-circle-outline",
+ "ion:information-circle-sharp",
+ "ion:information-circled",
+ "ion:information-outline",
+ "ion:information-sharp",
+ "ion:invert-mode",
+ "ion:invert-mode-outline",
+ "ion:invert-mode-sharp",
+ "ion:ionic",
+ "ion:ios-add",
+ "ion:ios-add-circle",
+ "ion:ios-add-circle-outline",
+ "ion:ios-airplane",
+ "ion:ios-alarm",
+ "ion:ios-alarm-outline",
+ "ion:ios-albums",
+ "ion:ios-albums-outline",
+ "ion:ios-alert",
+ "ion:ios-american-football",
+ "ion:ios-americanfootball",
+ "ion:ios-americanfootball-outline",
+ "ion:ios-analytics",
+ "ion:ios-analytics-outline",
+ "ion:ios-aperture",
+ "ion:ios-apps",
+ "ion:ios-appstore",
+ "ion:ios-archive",
+ "ion:ios-arrow-back",
+ "ion:ios-arrow-down",
+ "ion:ios-arrow-dropdown",
+ "ion:ios-arrow-dropdown-circle",
+ "ion:ios-arrow-dropleft",
+ "ion:ios-arrow-dropleft-circle",
+ "ion:ios-arrow-dropright",
+ "ion:ios-arrow-dropright-circle",
+ "ion:ios-arrow-dropup",
+ "ion:ios-arrow-dropup-circle",
+ "ion:ios-arrow-forward",
+ "ion:ios-arrow-left",
+ "ion:ios-arrow-right",
+ "ion:ios-arrow-round-back",
+ "ion:ios-arrow-round-down",
+ "ion:ios-arrow-round-forward",
+ "ion:ios-arrow-round-up",
+ "ion:ios-arrow-thin-down",
+ "ion:ios-arrow-thin-left",
+ "ion:ios-arrow-thin-right",
+ "ion:ios-arrow-thin-up",
+ "ion:ios-arrow-up",
+ "ion:ios-at",
+ "ion:ios-at-outline",
+ "ion:ios-attach",
+ "ion:ios-backspace",
+ "ion:ios-barcode",
+ "ion:ios-barcode-outline",
+ "ion:ios-baseball",
+ "ion:ios-baseball-outline",
+ "ion:ios-basket",
+ "ion:ios-basketball",
+ "ion:ios-basketball-outline",
+ "ion:ios-battery-charging",
+ "ion:ios-battery-dead",
+ "ion:ios-battery-full",
+ "ion:ios-beaker",
+ "ion:ios-bed",
+ "ion:ios-beer",
+ "ion:ios-bell",
+ "ion:ios-bell-outline",
+ "ion:ios-bicycle",
+ "ion:ios-bluetooth",
+ "ion:ios-boat",
+ "ion:ios-body",
+ "ion:ios-body-outline",
+ "ion:ios-bolt",
+ "ion:ios-bolt-outline",
+ "ion:ios-bonfire",
+ "ion:ios-book",
+ "ion:ios-book-outline",
+ "ion:ios-bookmark",
+ "ion:ios-bookmarks",
+ "ion:ios-bookmarks-outline",
+ "ion:ios-bowtie",
+ "ion:ios-box",
+ "ion:ios-box-outline",
+ "ion:ios-briefcase",
+ "ion:ios-briefcase-outline",
+ "ion:ios-browsers",
+ "ion:ios-browsers-outline",
+ "ion:ios-brush",
+ "ion:ios-bug",
+ "ion:ios-build",
+ "ion:ios-bulb",
+ "ion:ios-bus",
+ "ion:ios-business",
+ "ion:ios-cafe",
+ "ion:ios-calculator",
+ "ion:ios-calculator-outline",
+ "ion:ios-calendar",
+ "ion:ios-calendar-outline",
+ "ion:ios-call",
+ "ion:ios-camera",
+ "ion:ios-camera-outline",
+ "ion:ios-car",
+ "ion:ios-card",
+ "ion:ios-cart",
+ "ion:ios-cart-outline",
+ "ion:ios-cash",
+ "ion:ios-cellular",
+ "ion:ios-chatboxes",
+ "ion:ios-chatboxes-outline",
+ "ion:ios-chatbubble",
+ "ion:ios-chatbubble-outline",
+ "ion:ios-chatbubbles",
+ "ion:ios-checkbox",
+ "ion:ios-checkbox-outline",
+ "ion:ios-checkmark",
+ "ion:ios-checkmark-circle",
+ "ion:ios-checkmark-circle-outline",
+ "ion:ios-checkmark-empty",
+ "ion:ios-checkmark-outline",
+ "ion:ios-circle-filled",
+ "ion:ios-circle-outline",
+ "ion:ios-clipboard",
+ "ion:ios-clock",
+ "ion:ios-clock-outline",
+ "ion:ios-close",
+ "ion:ios-close-circle",
+ "ion:ios-close-circle-outline",
+ "ion:ios-close-empty",
+ "ion:ios-close-outline",
+ "ion:ios-cloud",
+ "ion:ios-cloud-circle",
+ "ion:ios-cloud-done",
+ "ion:ios-cloud-download",
+ "ion:ios-cloud-download-outline",
+ "ion:ios-cloud-outline",
+ "ion:ios-cloud-upload",
+ "ion:ios-cloud-upload-outline",
+ "ion:ios-cloudy",
+ "ion:ios-cloudy-night",
+ "ion:ios-cloudy-night-outline",
+ "ion:ios-cloudy-outline",
+ "ion:ios-code",
+ "ion:ios-code-download",
+ "ion:ios-code-working",
+ "ion:ios-cog",
+ "ion:ios-cog-outline",
+ "ion:ios-color-fill",
+ "ion:ios-color-filter",
+ "ion:ios-color-filter-outline",
+ "ion:ios-color-palette",
+ "ion:ios-color-wand",
+ "ion:ios-color-wand-outline",
+ "ion:ios-compass",
+ "ion:ios-compose",
+ "ion:ios-compose-outline",
+ "ion:ios-construct",
+ "ion:ios-contact",
+ "ion:ios-contact-outline",
+ "ion:ios-contacts",
+ "ion:ios-contract",
+ "ion:ios-contrast",
+ "ion:ios-copy",
+ "ion:ios-copy-outline",
+ "ion:ios-create",
+ "ion:ios-crop",
+ "ion:ios-crop-strong",
+ "ion:ios-cube",
+ "ion:ios-cut",
+ "ion:ios-desktop",
+ "ion:ios-disc",
+ "ion:ios-document",
+ "ion:ios-done-all",
+ "ion:ios-download",
+ "ion:ios-download-outline",
+ "ion:ios-easel",
+ "ion:ios-egg",
+ "ion:ios-email",
+ "ion:ios-email-outline",
+ "ion:ios-exit",
+ "ion:ios-expand",
+ "ion:ios-eye",
+ "ion:ios-eye-off",
+ "ion:ios-eye-outline",
+ "ion:ios-fastforward",
+ "ion:ios-fastforward-outline",
+ "ion:ios-female",
+ "ion:ios-filing",
+ "ion:ios-filing-outline",
+ "ion:ios-film",
+ "ion:ios-film-outline",
+ "ion:ios-finger-print",
+ "ion:ios-fitness",
+ "ion:ios-flag",
+ "ion:ios-flag-outline",
+ "ion:ios-flame",
+ "ion:ios-flame-outline",
+ "ion:ios-flash",
+ "ion:ios-flash-off",
+ "ion:ios-flashlight",
+ "ion:ios-flask",
+ "ion:ios-flask-outline",
+ "ion:ios-flower",
+ "ion:ios-flower-outline",
+ "ion:ios-folder",
+ "ion:ios-folder-open",
+ "ion:ios-folder-outline",
+ "ion:ios-football",
+ "ion:ios-football-outline",
+ "ion:ios-funnel",
+ "ion:ios-game-controller-a",
+ "ion:ios-game-controller-a-outline",
+ "ion:ios-game-controller-b",
+ "ion:ios-game-controller-b-outline",
+ "ion:ios-gear",
+ "ion:ios-gear-outline",
+ "ion:ios-gift",
+ "ion:ios-git-branch",
+ "ion:ios-git-commit",
+ "ion:ios-git-compare",
+ "ion:ios-git-merge",
+ "ion:ios-git-network",
+ "ion:ios-git-pull-request",
+ "ion:ios-glasses",
+ "ion:ios-glasses-outline",
+ "ion:ios-globe",
+ "ion:ios-grid",
+ "ion:ios-grid-view",
+ "ion:ios-grid-view-outline",
+ "ion:ios-hammer",
+ "ion:ios-hand",
+ "ion:ios-happy",
+ "ion:ios-headset",
+ "ion:ios-heart",
+ "ion:ios-heart-dislike",
+ "ion:ios-heart-empty",
+ "ion:ios-heart-half",
+ "ion:ios-heart-outline",
+ "ion:ios-help",
+ "ion:ios-help-buoy",
+ "ion:ios-help-circle",
+ "ion:ios-help-circle-outline",
+ "ion:ios-help-empty",
+ "ion:ios-help-outline",
+ "ion:ios-home",
+ "ion:ios-home-outline",
+ "ion:ios-hourglass",
+ "ion:ios-ice-cream",
+ "ion:ios-image",
+ "ion:ios-images",
+ "ion:ios-infinite",
+ "ion:ios-infinite-outline",
+ "ion:ios-information",
+ "ion:ios-information-circle",
+ "ion:ios-information-circle-outline",
+ "ion:ios-information-empty",
+ "ion:ios-information-outline",
+ "ion:ios-ionic-outline",
+ "ion:ios-jet",
+ "ion:ios-journal",
+ "ion:ios-key",
+ "ion:ios-keypad",
+ "ion:ios-keypad-outline",
+ "ion:ios-laptop",
+ "ion:ios-leaf",
+ "ion:ios-lightbulb",
+ "ion:ios-lightbulb-outline",
+ "ion:ios-link",
+ "ion:ios-list",
+ "ion:ios-list-box",
+ "ion:ios-list-outline",
+ "ion:ios-locate",
+ "ion:ios-location",
+ "ion:ios-location-outline",
+ "ion:ios-lock",
+ "ion:ios-locked",
+ "ion:ios-locked-outline",
+ "ion:ios-log-in",
+ "ion:ios-log-out",
+ "ion:ios-loop",
+ "ion:ios-loop-strong",
+ "ion:ios-magnet",
+ "ion:ios-mail",
+ "ion:ios-mail-open",
+ "ion:ios-mail-unread",
+ "ion:ios-male",
+ "ion:ios-man",
+ "ion:ios-map",
+ "ion:ios-medal",
+ "ion:ios-medical",
+ "ion:ios-medical-outline",
+ "ion:ios-medkit",
+ "ion:ios-medkit-outline",
+ "ion:ios-megaphone",
+ "ion:ios-menu",
+ "ion:ios-mic",
+ "ion:ios-mic-off",
+ "ion:ios-mic-outline",
+ "ion:ios-microphone",
+ "ion:ios-minus",
+ "ion:ios-minus-empty",
+ "ion:ios-minus-outline",
+ "ion:ios-monitor",
+ "ion:ios-monitor-outline",
+ "ion:ios-moon",
+ "ion:ios-moon-outline",
+ "ion:ios-more",
+ "ion:ios-more-outline",
+ "ion:ios-move",
+ "ion:ios-musical-note",
+ "ion:ios-musical-notes",
+ "ion:ios-navigate",
+ "ion:ios-navigate-outline",
+ "ion:ios-notifications",
+ "ion:ios-notifications-off",
+ "ion:ios-notifications-outline",
+ "ion:ios-nuclear",
+ "ion:ios-nutrition",
+ "ion:ios-nutrition-outline",
+ "ion:ios-open",
+ "ion:ios-options",
+ "ion:ios-outlet",
+ "ion:ios-paper",
+ "ion:ios-paper-outline",
+ "ion:ios-paper-plane",
+ "ion:ios-paperplane",
+ "ion:ios-paperplane-outline",
+ "ion:ios-partly-sunny",
+ "ion:ios-partlysunny",
+ "ion:ios-partlysunny-outline",
+ "ion:ios-pause",
+ "ion:ios-pause-outline",
+ "ion:ios-paw",
+ "ion:ios-paw-outline",
+ "ion:ios-people",
+ "ion:ios-people-outline",
+ "ion:ios-person",
+ "ion:ios-person-add",
+ "ion:ios-person-outline",
+ "ion:ios-personadd",
+ "ion:ios-personadd-outline",
+ "ion:ios-phone-landscape",
+ "ion:ios-phone-portrait",
+ "ion:ios-photos",
+ "ion:ios-photos-outline",
+ "ion:ios-pie",
+ "ion:ios-pie-outline",
+ "ion:ios-pin",
+ "ion:ios-pint",
+ "ion:ios-pint-outline",
+ "ion:ios-pizza",
+ "ion:ios-planet",
+ "ion:ios-play",
+ "ion:ios-play-circle",
+ "ion:ios-play-outline",
+ "ion:ios-plus",
+ "ion:ios-plus-empty",
+ "ion:ios-plus-outline",
+ "ion:ios-podium",
+ "ion:ios-power",
+ "ion:ios-pricetag",
+ "ion:ios-pricetag-outline",
+ "ion:ios-pricetags",
+ "ion:ios-pricetags-outline",
+ "ion:ios-print",
+ "ion:ios-printer",
+ "ion:ios-printer-outline",
+ "ion:ios-pulse",
+ "ion:ios-pulse-strong",
+ "ion:ios-qr-scanner",
+ "ion:ios-quote",
+ "ion:ios-radio",
+ "ion:ios-radio-button-off",
+ "ion:ios-radio-button-on",
+ "ion:ios-rainy",
+ "ion:ios-rainy-outline",
+ "ion:ios-recording",
+ "ion:ios-recording-outline",
+ "ion:ios-redo",
+ "ion:ios-redo-outline",
+ "ion:ios-refresh",
+ "ion:ios-refresh-circle",
+ "ion:ios-refresh-empty",
+ "ion:ios-refresh-outline",
+ "ion:ios-reload",
+ "ion:ios-remove",
+ "ion:ios-remove-circle",
+ "ion:ios-remove-circle-outline",
+ "ion:ios-reorder",
+ "ion:ios-repeat",
+ "ion:ios-resize",
+ "ion:ios-restaurant",
+ "ion:ios-return-left",
+ "ion:ios-return-right",
+ "ion:ios-reverse-camera",
+ "ion:ios-reverse-camera-outline",
+ "ion:ios-rewind",
+ "ion:ios-rewind-outline",
+ "ion:ios-ribbon",
+ "ion:ios-rocket",
+ "ion:ios-rose",
+ "ion:ios-rose-outline",
+ "ion:ios-sad",
+ "ion:ios-save",
+ "ion:ios-school",
+ "ion:ios-search",
+ "ion:ios-search-strong",
+ "ion:ios-send",
+ "ion:ios-settings",
+ "ion:ios-settings-strong",
+ "ion:ios-share",
+ "ion:ios-share-alt",
+ "ion:ios-shirt",
+ "ion:ios-shuffle",
+ "ion:ios-shuffle-strong",
+ "ion:ios-skip-backward",
+ "ion:ios-skip-forward",
+ "ion:ios-skipbackward",
+ "ion:ios-skipbackward-outline",
+ "ion:ios-skipforward",
+ "ion:ios-skipforward-outline",
+ "ion:ios-snow",
+ "ion:ios-snowy",
+ "ion:ios-speedometer",
+ "ion:ios-speedometer-outline",
+ "ion:ios-square",
+ "ion:ios-square-outline",
+ "ion:ios-star",
+ "ion:ios-star-half",
+ "ion:ios-star-outline",
+ "ion:ios-stats",
+ "ion:ios-stopwatch",
+ "ion:ios-stopwatch-outline",
+ "ion:ios-subway",
+ "ion:ios-sunny",
+ "ion:ios-sunny-outline",
+ "ion:ios-swap",
+ "ion:ios-switch",
+ "ion:ios-sync",
+ "ion:ios-tablet-landscape",
+ "ion:ios-tablet-portrait",
+ "ion:ios-telephone",
+ "ion:ios-telephone-outline",
+ "ion:ios-tennisball",
+ "ion:ios-tennisball-outline",
+ "ion:ios-text",
+ "ion:ios-thermometer",
+ "ion:ios-thumbs-down",
+ "ion:ios-thumbs-up",
+ "ion:ios-thunderstorm",
+ "ion:ios-thunderstorm-outline",
+ "ion:ios-time",
+ "ion:ios-time-outline",
+ "ion:ios-timer",
+ "ion:ios-timer-outline",
+ "ion:ios-today",
+ "ion:ios-toggle",
+ "ion:ios-toggle-outline",
+ "ion:ios-train",
+ "ion:ios-transgender",
+ "ion:ios-trash",
+ "ion:ios-trash-outline",
+ "ion:ios-trending-down",
+ "ion:ios-trending-up",
+ "ion:ios-trophy",
+ "ion:ios-tv",
+ "ion:ios-umbrella",
+ "ion:ios-undo",
+ "ion:ios-undo-outline",
+ "ion:ios-unlock",
+ "ion:ios-unlocked",
+ "ion:ios-unlocked-outline",
+ "ion:ios-upload",
+ "ion:ios-upload-outline",
+ "ion:ios-videocam",
+ "ion:ios-videocam-outline",
+ "ion:ios-volume-high",
+ "ion:ios-volume-low",
+ "ion:ios-volume-mute",
+ "ion:ios-volume-off",
+ "ion:ios-walk",
+ "ion:ios-wallet",
+ "ion:ios-warning",
+ "ion:ios-watch",
+ "ion:ios-water",
+ "ion:ios-wifi",
+ "ion:ios-wine",
+ "ion:ios-wineglass",
+ "ion:ios-wineglass-outline",
+ "ion:ios-woman",
+ "ion:ios-world",
+ "ion:ios-world-outline",
+ "ion:ipad",
+ "ion:iphone",
+ "ion:ipod",
+ "ion:jet",
+ "ion:journal",
+ "ion:journal-outline",
+ "ion:journal-sharp",
+ "ion:key",
+ "ion:key-outline",
+ "ion:key-sharp",
+ "ion:keypad",
+ "ion:keypad-outline",
+ "ion:keypad-sharp",
+ "ion:knife",
+ "ion:language",
+ "ion:language-outline",
+ "ion:language-sharp",
+ "ion:laptop",
+ "ion:laptop-outline",
+ "ion:laptop-sharp",
+ "ion:layers",
+ "ion:layers-outline",
+ "ion:layers-sharp",
+ "ion:leaf",
+ "ion:leaf-outline",
+ "ion:leaf-sharp",
+ "ion:levels",
+ "ion:library",
+ "ion:library-outline",
+ "ion:library-sharp",
+ "ion:lightbulb",
+ "ion:link",
+ "ion:link-outline",
+ "ion:link-sharp",
+ "ion:list",
+ "ion:list-circle",
+ "ion:list-circle-outline",
+ "ion:list-circle-sharp",
+ "ion:list-outline",
+ "ion:list-sharp",
+ "ion:load-a",
+ "ion:load-b",
+ "ion:load-c",
+ "ion:load-d",
+ "ion:locate",
+ "ion:locate-outline",
+ "ion:locate-sharp",
+ "ion:location",
+ "ion:location-outline",
+ "ion:location-sharp",
+ "ion:lock-closed",
+ "ion:lock-closed-outline",
+ "ion:lock-closed-sharp",
+ "ion:lock-combination",
+ "ion:lock-open",
+ "ion:lock-open-outline",
+ "ion:lock-open-sharp",
+ "ion:locked",
+ "ion:log-in",
+ "ion:log-in-outline",
+ "ion:log-in-sharp",
+ "ion:log-out",
+ "ion:log-out-outline",
+ "ion:log-out-sharp",
+ "ion:logo-alipay",
+ "ion:logo-amazon",
+ "ion:logo-amplify",
+ "ion:logo-android",
+ "ion:logo-angular",
+ "ion:logo-apple",
+ "ion:logo-apple-appstore",
+ "ion:logo-apple-ar",
+ "ion:logo-behance",
+ "ion:logo-bitbucket",
+ "ion:logo-bitcoin",
+ "ion:logo-buffer",
+ "ion:logo-capacitor",
+ "ion:logo-chrome",
+ "ion:logo-closed-captioning",
+ "ion:logo-codepen",
+ "ion:logo-css3",
+ "ion:logo-designernews",
+ "ion:logo-deviantart",
+ "ion:logo-discord",
+ "ion:logo-docker",
+ "ion:logo-dribbble",
+ "ion:logo-dropbox",
+ "ion:logo-edge",
+ "ion:logo-electron",
+ "ion:logo-euro",
+ "ion:logo-facebook",
+ "ion:logo-figma",
+ "ion:logo-firebase",
+ "ion:logo-firefox",
+ "ion:logo-flickr",
+ "ion:logo-foursquare",
+ "ion:logo-freebsd-devil",
+ "ion:logo-game-controller-a",
+ "ion:logo-game-controller-b",
+ "ion:logo-github",
+ "ion:logo-gitlab",
+ "ion:logo-google",
+ "ion:logo-google-playstore",
+ "ion:logo-googleplus",
+ "ion:logo-hackernews",
+ "ion:logo-html5",
+ "ion:logo-instagram",
+ "ion:logo-ionic",
+ "ion:logo-ionitron",
+ "ion:logo-javascript",
+ "ion:logo-laravel",
+ "ion:logo-linkedin",
+ "ion:logo-markdown",
+ "ion:logo-mastodon",
+ "ion:logo-medium",
+ "ion:logo-microsoft",
+ "ion:logo-model-s",
+ "ion:logo-no-smoking",
+ "ion:logo-nodejs",
+ "ion:logo-npm",
+ "ion:logo-octocat",
+ "ion:logo-paypal",
+ "ion:logo-pinterest",
+ "ion:logo-playstation",
+ "ion:logo-polymer",
+ "ion:logo-pwa",
+ "ion:logo-python",
+ "ion:logo-react",
+ "ion:logo-reddit",
+ "ion:logo-rss",
+ "ion:logo-sass",
+ "ion:logo-skype",
+ "ion:logo-slack",
+ "ion:logo-snapchat",
+ "ion:logo-soundcloud",
+ "ion:logo-stackoverflow",
+ "ion:logo-steam",
+ "ion:logo-stencil",
+ "ion:logo-tableau",
+ "ion:logo-tiktok",
+ "ion:logo-tumblr",
+ "ion:logo-tux",
+ "ion:logo-twitch",
+ "ion:logo-twitter",
+ "ion:logo-usd",
+ "ion:logo-venmo",
+ "ion:logo-vercel",
+ "ion:logo-vimeo",
+ "ion:logo-vk",
+ "ion:logo-vue",
+ "ion:logo-web-component",
+ "ion:logo-wechat",
+ "ion:logo-whatsapp",
+ "ion:logo-windows",
+ "ion:logo-wordpress",
+ "ion:logo-xbox",
+ "ion:logo-xing",
+ "ion:logo-yahoo",
+ "ion:logo-yen",
+ "ion:logo-youtube",
+ "ion:loop",
+ "ion:magnet",
+ "ion:magnet-outline",
+ "ion:magnet-sharp",
+ "ion:mail",
+ "ion:mail-open",
+ "ion:mail-open-outline",
+ "ion:mail-open-sharp",
+ "ion:mail-outline",
+ "ion:mail-sharp",
+ "ion:mail-unread",
+ "ion:mail-unread-outline",
+ "ion:mail-unread-sharp",
+ "ion:male",
+ "ion:male-female",
+ "ion:male-female-outline",
+ "ion:male-female-sharp",
+ "ion:male-outline",
+ "ion:male-sharp",
+ "ion:man",
+ "ion:man-outline",
+ "ion:man-sharp",
+ "ion:map",
+ "ion:map-outline",
+ "ion:map-sharp",
+ "ion:md-add",
+ "ion:md-add-circle",
+ "ion:md-add-circle-outline",
+ "ion:md-airplane",
+ "ion:md-alarm",
+ "ion:md-albums",
+ "ion:md-alert",
+ "ion:md-american-football",
+ "ion:md-analytics",
+ "ion:md-aperture",
+ "ion:md-apps",
+ "ion:md-appstore",
+ "ion:md-archive",
+ "ion:md-arrow-back",
+ "ion:md-arrow-down",
+ "ion:md-arrow-dropdown",
+ "ion:md-arrow-dropdown-circle",
+ "ion:md-arrow-dropleft",
+ "ion:md-arrow-dropleft-circle",
+ "ion:md-arrow-dropright",
+ "ion:md-arrow-dropright-circle",
+ "ion:md-arrow-dropup",
+ "ion:md-arrow-dropup-circle",
+ "ion:md-arrow-forward",
+ "ion:md-arrow-round-back",
+ "ion:md-arrow-round-down",
+ "ion:md-arrow-round-forward",
+ "ion:md-arrow-round-up",
+ "ion:md-arrow-up",
+ "ion:md-at",
+ "ion:md-attach",
+ "ion:md-backspace",
+ "ion:md-barcode",
+ "ion:md-baseball",
+ "ion:md-basket",
+ "ion:md-basketball",
+ "ion:md-battery-charging",
+ "ion:md-battery-dead",
+ "ion:md-battery-full",
+ "ion:md-beaker",
+ "ion:md-bed",
+ "ion:md-beer",
+ "ion:md-bicycle",
+ "ion:md-bluetooth",
+ "ion:md-boat",
+ "ion:md-body",
+ "ion:md-bonfire",
+ "ion:md-book",
+ "ion:md-bookmark",
+ "ion:md-bookmarks",
+ "ion:md-bowtie",
+ "ion:md-briefcase",
+ "ion:md-browsers",
+ "ion:md-brush",
+ "ion:md-bug",
+ "ion:md-build",
+ "ion:md-bulb",
+ "ion:md-bus",
+ "ion:md-business",
+ "ion:md-cafe",
+ "ion:md-calculator",
+ "ion:md-calendar",
+ "ion:md-call",
+ "ion:md-camera",
+ "ion:md-car",
+ "ion:md-card",
+ "ion:md-cart",
+ "ion:md-cash",
+ "ion:md-cellular",
+ "ion:md-chatboxes",
+ "ion:md-chatbubbles",
+ "ion:md-checkbox",
+ "ion:md-checkbox-outline",
+ "ion:md-checkmark",
+ "ion:md-checkmark-circle",
+ "ion:md-checkmark-circle-outline",
+ "ion:md-clipboard",
+ "ion:md-clock",
+ "ion:md-close",
+ "ion:md-close-circle",
+ "ion:md-close-circle-outline",
+ "ion:md-cloud",
+ "ion:md-cloud-circle",
+ "ion:md-cloud-done",
+ "ion:md-cloud-download",
+ "ion:md-cloud-outline",
+ "ion:md-cloud-upload",
+ "ion:md-cloudy",
+ "ion:md-cloudy-night",
+ "ion:md-code",
+ "ion:md-code-download",
+ "ion:md-code-working",
+ "ion:md-cog",
+ "ion:md-color-fill",
+ "ion:md-color-filter",
+ "ion:md-color-palette",
+ "ion:md-color-wand",
+ "ion:md-compass",
+ "ion:md-construct",
+ "ion:md-contact",
+ "ion:md-contacts",
+ "ion:md-contract",
+ "ion:md-contrast",
+ "ion:md-copy",
+ "ion:md-create",
+ "ion:md-crop",
+ "ion:md-cube",
+ "ion:md-cut",
+ "ion:md-desktop",
+ "ion:md-disc",
+ "ion:md-document",
+ "ion:md-done-all",
+ "ion:md-download",
+ "ion:md-easel",
+ "ion:md-egg",
+ "ion:md-exit",
+ "ion:md-expand",
+ "ion:md-eye",
+ "ion:md-eye-off",
+ "ion:md-fastforward",
+ "ion:md-female",
+ "ion:md-filing",
+ "ion:md-film",
+ "ion:md-finger-print",
+ "ion:md-fitness",
+ "ion:md-flag",
+ "ion:md-flame",
+ "ion:md-flash",
+ "ion:md-flash-off",
+ "ion:md-flashlight",
+ "ion:md-flask",
+ "ion:md-flower",
+ "ion:md-folder",
+ "ion:md-folder-open",
+ "ion:md-football",
+ "ion:md-funnel",
+ "ion:md-gift",
+ "ion:md-git-branch",
+ "ion:md-git-commit",
+ "ion:md-git-compare",
+ "ion:md-git-merge",
+ "ion:md-git-network",
+ "ion:md-git-pull-request",
+ "ion:md-glasses",
+ "ion:md-globe",
+ "ion:md-grid",
+ "ion:md-hammer",
+ "ion:md-hand",
+ "ion:md-happy",
+ "ion:md-headset",
+ "ion:md-heart",
+ "ion:md-heart-dislike",
+ "ion:md-heart-empty",
+ "ion:md-heart-half",
+ "ion:md-help",
+ "ion:md-help-buoy",
+ "ion:md-help-circle",
+ "ion:md-help-circle-outline",
+ "ion:md-home",
+ "ion:md-hourglass",
+ "ion:md-ice-cream",
+ "ion:md-image",
+ "ion:md-images",
+ "ion:md-infinite",
+ "ion:md-information",
+ "ion:md-information-circle",
+ "ion:md-information-circle-outline",
+ "ion:md-jet",
+ "ion:md-journal",
+ "ion:md-key",
+ "ion:md-keypad",
+ "ion:md-laptop",
+ "ion:md-leaf",
+ "ion:md-link",
+ "ion:md-list",
+ "ion:md-list-box",
+ "ion:md-locate",
+ "ion:md-lock",
+ "ion:md-log-in",
+ "ion:md-log-out",
+ "ion:md-magnet",
+ "ion:md-mail",
+ "ion:md-mail-open",
+ "ion:md-mail-unread",
+ "ion:md-male",
+ "ion:md-man",
+ "ion:md-map",
+ "ion:md-medal",
+ "ion:md-medical",
+ "ion:md-medkit",
+ "ion:md-megaphone",
+ "ion:md-menu",
+ "ion:md-mic",
+ "ion:md-mic-off",
+ "ion:md-microphone",
+ "ion:md-moon",
+ "ion:md-more",
+ "ion:md-move",
+ "ion:md-musical-note",
+ "ion:md-musical-notes",
+ "ion:md-navigate",
+ "ion:md-notifications",
+ "ion:md-notifications-off",
+ "ion:md-notifications-outline",
+ "ion:md-nuclear",
+ "ion:md-nutrition",
+ "ion:md-open",
+ "ion:md-options",
+ "ion:md-outlet",
+ "ion:md-paper",
+ "ion:md-paper-plane",
+ "ion:md-partly-sunny",
+ "ion:md-pause",
+ "ion:md-paw",
+ "ion:md-people",
+ "ion:md-person",
+ "ion:md-person-add",
+ "ion:md-phone-landscape",
+ "ion:md-phone-portrait",
+ "ion:md-photos",
+ "ion:md-pie",
+ "ion:md-pin",
+ "ion:md-pint",
+ "ion:md-pizza",
+ "ion:md-planet",
+ "ion:md-play",
+ "ion:md-play-circle",
+ "ion:md-podium",
+ "ion:md-power",
+ "ion:md-pricetag",
+ "ion:md-pricetags",
+ "ion:md-print",
+ "ion:md-pulse",
+ "ion:md-qr-scanner",
+ "ion:md-quote",
+ "ion:md-radio",
+ "ion:md-radio-button-off",
+ "ion:md-radio-button-on",
+ "ion:md-rainy",
+ "ion:md-recording",
+ "ion:md-redo",
+ "ion:md-refresh",
+ "ion:md-refresh-circle",
+ "ion:md-remove",
+ "ion:md-remove-circle",
+ "ion:md-remove-circle-outline",
+ "ion:md-reorder",
+ "ion:md-repeat",
+ "ion:md-resize",
+ "ion:md-restaurant",
+ "ion:md-return-left",
+ "ion:md-return-right",
+ "ion:md-reverse-camera",
+ "ion:md-rewind",
+ "ion:md-ribbon",
+ "ion:md-rocket",
+ "ion:md-rose",
+ "ion:md-sad",
+ "ion:md-save",
+ "ion:md-school",
+ "ion:md-search",
+ "ion:md-send",
+ "ion:md-settings",
+ "ion:md-share",
+ "ion:md-share-alt",
+ "ion:md-shirt",
+ "ion:md-shuffle",
+ "ion:md-skip-backward",
+ "ion:md-skip-forward",
+ "ion:md-snow",
+ "ion:md-speedometer",
+ "ion:md-square",
+ "ion:md-square-outline",
+ "ion:md-star",
+ "ion:md-star-half",
+ "ion:md-star-outline",
+ "ion:md-stats",
+ "ion:md-stopwatch",
+ "ion:md-subway",
+ "ion:md-sunny",
+ "ion:md-swap",
+ "ion:md-switch",
+ "ion:md-sync",
+ "ion:md-tablet-landscape",
+ "ion:md-tablet-portrait",
+ "ion:md-tennisball",
+ "ion:md-text",
+ "ion:md-thermometer",
+ "ion:md-thumbs-down",
+ "ion:md-thumbs-up",
+ "ion:md-thunderstorm",
+ "ion:md-time",
+ "ion:md-timer",
+ "ion:md-today",
+ "ion:md-train",
+ "ion:md-transgender",
+ "ion:md-trash",
+ "ion:md-trending-down",
+ "ion:md-trending-up",
+ "ion:md-trophy",
+ "ion:md-tv",
+ "ion:md-umbrella",
+ "ion:md-undo",
+ "ion:md-unlock",
+ "ion:md-videocam",
+ "ion:md-volume-high",
+ "ion:md-volume-low",
+ "ion:md-volume-mute",
+ "ion:md-volume-off",
+ "ion:md-walk",
+ "ion:md-wallet",
+ "ion:md-warning",
+ "ion:md-watch",
+ "ion:md-water",
+ "ion:md-wifi",
+ "ion:md-wine",
+ "ion:md-woman",
+ "ion:medal",
+ "ion:medal-outline",
+ "ion:medal-sharp",
+ "ion:medical",
+ "ion:medical-outline",
+ "ion:medical-sharp",
+ "ion:medkit",
+ "ion:medkit-outline",
+ "ion:medkit-sharp",
+ "ion:megaphone",
+ "ion:megaphone-outline",
+ "ion:megaphone-sharp",
+ "ion:menu",
+ "ion:menu-outline",
+ "ion:menu-sharp",
+ "ion:merge",
+ "ion:mic",
+ "ion:mic-a",
+ "ion:mic-b",
+ "ion:mic-c",
+ "ion:mic-circle",
+ "ion:mic-circle-outline",
+ "ion:mic-circle-sharp",
+ "ion:mic-off",
+ "ion:mic-off-circle",
+ "ion:mic-off-circle-outline",
+ "ion:mic-off-circle-sharp",
+ "ion:mic-off-outline",
+ "ion:mic-off-sharp",
+ "ion:mic-outline",
+ "ion:mic-sharp",
+ "ion:minus",
+ "ion:minus-circled",
+ "ion:minus-round",
+ "ion:model-s",
+ "ion:monitor",
+ "ion:moon",
+ "ion:moon-outline",
+ "ion:moon-sharp",
+ "ion:more",
+ "ion:mouse",
+ "ion:move",
+ "ion:move-outline",
+ "ion:move-sharp",
+ "ion:music-note",
+ "ion:musical-note",
+ "ion:musical-note-outline",
+ "ion:musical-note-sharp",
+ "ion:musical-notes",
+ "ion:musical-notes-outline",
+ "ion:musical-notes-sharp",
+ "ion:navicon",
+ "ion:navicon-round",
+ "ion:navigate",
+ "ion:navigate-circle",
+ "ion:navigate-circle-outline",
+ "ion:navigate-circle-sharp",
+ "ion:navigate-outline",
+ "ion:navigate-sharp",
+ "ion:network",
+ "ion:newspaper",
+ "ion:newspaper-outline",
+ "ion:newspaper-sharp",
+ "ion:no-smoking",
+ "ion:notifications",
+ "ion:notifications-circle",
+ "ion:notifications-circle-outline",
+ "ion:notifications-circle-sharp",
+ "ion:notifications-off",
+ "ion:notifications-off-circle",
+ "ion:notifications-off-circle-outline",
+ "ion:notifications-off-circle-sharp",
+ "ion:notifications-off-outline",
+ "ion:notifications-off-sharp",
+ "ion:notifications-outline",
+ "ion:notifications-sharp",
+ "ion:nuclear",
+ "ion:nuclear-outline",
+ "ion:nuclear-sharp",
+ "ion:nutrition",
+ "ion:nutrition-outline",
+ "ion:nutrition-sharp",
+ "ion:open",
+ "ion:open-outline",
+ "ion:open-sharp",
+ "ion:options",
+ "ion:options-outline",
+ "ion:options-sharp",
+ "ion:outlet",
+ "ion:paintbrush",
+ "ion:paintbucket",
+ "ion:paper-airplane",
+ "ion:paper-plane",
+ "ion:paper-plane-outline",
+ "ion:paper-plane-sharp",
+ "ion:paperclip",
+ "ion:partly-sunny",
+ "ion:partly-sunny-outline",
+ "ion:partly-sunny-sharp",
+ "ion:pause",
+ "ion:pause-circle",
+ "ion:pause-circle-outline",
+ "ion:pause-circle-sharp",
+ "ion:pause-outline",
+ "ion:pause-sharp",
+ "ion:paw",
+ "ion:paw-outline",
+ "ion:paw-sharp",
+ "ion:pencil",
+ "ion:pencil-outline",
+ "ion:pencil-sharp",
+ "ion:people",
+ "ion:people-circle",
+ "ion:people-circle-outline",
+ "ion:people-circle-sharp",
+ "ion:people-outline",
+ "ion:people-sharp",
+ "ion:person",
+ "ion:person-add",
+ "ion:person-add-outline",
+ "ion:person-add-sharp",
+ "ion:person-circle",
+ "ion:person-circle-outline",
+ "ion:person-circle-sharp",
+ "ion:person-outline",
+ "ion:person-remove",
+ "ion:person-remove-outline",
+ "ion:person-remove-sharp",
+ "ion:person-sharp",
+ "ion:person-stalker",
+ "ion:phone-landscape",
+ "ion:phone-landscape-outline",
+ "ion:phone-landscape-sharp",
+ "ion:phone-portrait",
+ "ion:phone-portrait-outline",
+ "ion:phone-portrait-sharp",
+ "ion:pie-chart",
+ "ion:pie-chart-outline",
+ "ion:pie-chart-sharp",
+ "ion:pin",
+ "ion:pin-outline",
+ "ion:pin-sharp",
+ "ion:pinpoint",
+ "ion:pint",
+ "ion:pint-outline",
+ "ion:pint-sharp",
+ "ion:pizza",
+ "ion:pizza-outline",
+ "ion:pizza-sharp",
+ "ion:plane",
+ "ion:planet",
+ "ion:planet-outline",
+ "ion:planet-sharp",
+ "ion:play",
+ "ion:play-back",
+ "ion:play-back-circle",
+ "ion:play-back-circle-outline",
+ "ion:play-back-circle-sharp",
+ "ion:play-back-outline",
+ "ion:play-back-sharp",
+ "ion:play-circle",
+ "ion:play-circle-outline",
+ "ion:play-circle-sharp",
+ "ion:play-forward",
+ "ion:play-forward-circle",
+ "ion:play-forward-circle-outline",
+ "ion:play-forward-circle-sharp",
+ "ion:play-forward-outline",
+ "ion:play-forward-sharp",
+ "ion:play-outline",
+ "ion:play-sharp",
+ "ion:play-skip-back",
+ "ion:play-skip-back-circle",
+ "ion:play-skip-back-circle-outline",
+ "ion:play-skip-back-circle-sharp",
+ "ion:play-skip-back-outline",
+ "ion:play-skip-back-sharp",
+ "ion:play-skip-forward",
+ "ion:play-skip-forward-circle",
+ "ion:play-skip-forward-circle-outline",
+ "ion:play-skip-forward-circle-sharp",
+ "ion:play-skip-forward-outline",
+ "ion:play-skip-forward-sharp",
+ "ion:playstation",
+ "ion:plus",
+ "ion:plus-circled",
+ "ion:plus-round",
+ "ion:podium",
+ "ion:podium-outline",
+ "ion:podium-sharp",
+ "ion:pound",
+ "ion:power",
+ "ion:power-outline",
+ "ion:power-sharp",
+ "ion:pricetag",
+ "ion:pricetag-outline",
+ "ion:pricetag-sharp",
+ "ion:pricetags",
+ "ion:pricetags-outline",
+ "ion:pricetags-sharp",
+ "ion:print",
+ "ion:print-outline",
+ "ion:print-sharp",
+ "ion:printer",
+ "ion:prism",
+ "ion:prism-outline",
+ "ion:prism-sharp",
+ "ion:pull-request",
+ "ion:pulse",
+ "ion:pulse-outline",
+ "ion:pulse-sharp",
+ "ion:push",
+ "ion:push-outline",
+ "ion:push-sharp",
+ "ion:qr-code",
+ "ion:qr-code-outline",
+ "ion:qr-code-sharp",
+ "ion:qr-scanner",
+ "ion:quote",
+ "ion:radio",
+ "ion:radio-button-off",
+ "ion:radio-button-off-outline",
+ "ion:radio-button-off-sharp",
+ "ion:radio-button-on",
+ "ion:radio-button-on-outline",
+ "ion:radio-button-on-sharp",
+ "ion:radio-outline",
+ "ion:radio-sharp",
+ "ion:radio-waves",
+ "ion:rainy",
+ "ion:rainy-outline",
+ "ion:rainy-sharp",
+ "ion:reader",
+ "ion:reader-outline",
+ "ion:reader-sharp",
+ "ion:receipt",
+ "ion:receipt-outline",
+ "ion:receipt-sharp",
+ "ion:record",
+ "ion:recording",
+ "ion:recording-outline",
+ "ion:recording-sharp",
+ "ion:refresh",
+ "ion:refresh-circle",
+ "ion:refresh-circle-outline",
+ "ion:refresh-circle-sharp",
+ "ion:refresh-outline",
+ "ion:refresh-sharp",
+ "ion:reload",
+ "ion:reload-circle",
+ "ion:reload-circle-outline",
+ "ion:reload-circle-sharp",
+ "ion:reload-outline",
+ "ion:reload-sharp",
+ "ion:remove",
+ "ion:remove-circle",
+ "ion:remove-circle-outline",
+ "ion:remove-circle-sharp",
+ "ion:remove-outline",
+ "ion:remove-sharp",
+ "ion:reorder-four",
+ "ion:reorder-four-outline",
+ "ion:reorder-four-sharp",
+ "ion:reorder-three",
+ "ion:reorder-three-outline",
+ "ion:reorder-three-sharp",
+ "ion:reorder-two",
+ "ion:reorder-two-outline",
+ "ion:reorder-two-sharp",
+ "ion:repeat",
+ "ion:repeat-outline",
+ "ion:repeat-sharp",
+ "ion:reply",
+ "ion:reply-all",
+ "ion:resize",
+ "ion:resize-outline",
+ "ion:resize-sharp",
+ "ion:restaurant",
+ "ion:restaurant-outline",
+ "ion:restaurant-sharp",
+ "ion:return-down-back",
+ "ion:return-down-back-outline",
+ "ion:return-down-back-sharp",
+ "ion:return-down-forward",
+ "ion:return-down-forward-outline",
+ "ion:return-down-forward-sharp",
+ "ion:return-up-back",
+ "ion:return-up-back-outline",
+ "ion:return-up-back-sharp",
+ "ion:return-up-forward",
+ "ion:return-up-forward-outline",
+ "ion:return-up-forward-sharp",
+ "ion:ribbon",
+ "ion:ribbon-a",
+ "ion:ribbon-b",
+ "ion:ribbon-outline",
+ "ion:ribbon-sharp",
+ "ion:rocket",
+ "ion:rocket-outline",
+ "ion:rocket-sharp",
+ "ion:rose",
+ "ion:rose-outline",
+ "ion:rose-sharp",
+ "ion:sad",
+ "ion:sad-outline",
+ "ion:sad-sharp",
+ "ion:save",
+ "ion:save-outline",
+ "ion:save-sharp",
+ "ion:scale",
+ "ion:scale-outline",
+ "ion:scale-sharp",
+ "ion:scan",
+ "ion:scan-circle",
+ "ion:scan-circle-outline",
+ "ion:scan-circle-sharp",
+ "ion:scan-outline",
+ "ion:scan-sharp",
+ "ion:school",
+ "ion:school-outline",
+ "ion:school-sharp",
+ "ion:scissors",
+ "ion:search",
+ "ion:search-circle",
+ "ion:search-circle-outline",
+ "ion:search-circle-sharp",
+ "ion:search-outline",
+ "ion:search-sharp",
+ "ion:send",
+ "ion:send-outline",
+ "ion:send-sharp",
+ "ion:server",
+ "ion:server-outline",
+ "ion:server-sharp",
+ "ion:settings",
+ "ion:settings-outline",
+ "ion:settings-sharp",
+ "ion:shapes",
+ "ion:shapes-outline",
+ "ion:shapes-sharp",
+ "ion:share",
+ "ion:share-outline",
+ "ion:share-sharp",
+ "ion:share-social",
+ "ion:share-social-outline",
+ "ion:share-social-sharp",
+ "ion:shield",
+ "ion:shield-checkmark",
+ "ion:shield-checkmark-outline",
+ "ion:shield-checkmark-sharp",
+ "ion:shield-half",
+ "ion:shield-half-outline",
+ "ion:shield-half-sharp",
+ "ion:shield-outline",
+ "ion:shield-sharp",
+ "ion:shirt",
+ "ion:shirt-outline",
+ "ion:shirt-sharp",
+ "ion:shuffle",
+ "ion:shuffle-outline",
+ "ion:shuffle-sharp",
+ "ion:skip-backward",
+ "ion:skip-forward",
+ "ion:skull",
+ "ion:skull-outline",
+ "ion:skull-sharp",
+ "ion:snow",
+ "ion:snow-outline",
+ "ion:snow-sharp",
+ "ion:social-android-outline",
+ "ion:social-angular-outline",
+ "ion:social-apple-outline",
+ "ion:social-bitcoin-outline",
+ "ion:social-buffer-outline",
+ "ion:social-chrome-outline",
+ "ion:social-codepen-outline",
+ "ion:social-css3-outline",
+ "ion:social-designernews-outline",
+ "ion:social-dribbble",
+ "ion:social-dropbox-outline",
+ "ion:social-euro-outline",
+ "ion:social-facebook",
+ "ion:social-facebook-outline",
+ "ion:social-foursquare-outline",
+ "ion:social-github-outline",
+ "ion:social-google",
+ "ion:social-google-outline",
+ "ion:social-googleplus",
+ "ion:social-googleplus-outline",
+ "ion:social-hackernews-outline",
+ "ion:social-html5-outline",
+ "ion:social-instagram",
+ "ion:social-instagram-outline",
+ "ion:social-javascript-outline",
+ "ion:social-linkedin-outline",
+ "ion:social-octocat",
+ "ion:social-pinterest-outline",
+ "ion:social-reddit",
+ "ion:social-rss-outline",
+ "ion:social-skype-outline",
+ "ion:social-snapchat-outline",
+ "ion:social-tumblr-outline",
+ "ion:social-tux",
+ "ion:social-twitch",
+ "ion:social-twitter-outline",
+ "ion:social-usd-outline",
+ "ion:social-vimeo",
+ "ion:social-vimeo-outline",
+ "ion:social-whatsapp-outline",
+ "ion:social-windows-outline",
+ "ion:social-wordpress-outline",
+ "ion:social-yahoo-outline",
+ "ion:social-yen-outline",
+ "ion:social-youtube-outline",
+ "ion:soup-can",
+ "ion:soup-can-outline",
+ "ion:sparkles",
+ "ion:sparkles-outline",
+ "ion:sparkles-sharp",
+ "ion:speakerphone",
+ "ion:speedometer",
+ "ion:speedometer-outline",
+ "ion:speedometer-sharp",
+ "ion:spoon",
+ "ion:square",
+ "ion:square-outline",
+ "ion:square-sharp",
+ "ion:star",
+ "ion:star-half",
+ "ion:star-half-outline",
+ "ion:star-half-sharp",
+ "ion:star-outline",
+ "ion:star-sharp",
+ "ion:stats-bars",
+ "ion:stats-chart",
+ "ion:stats-chart-outline",
+ "ion:stats-chart-sharp",
+ "ion:steam",
+ "ion:stop",
+ "ion:stop-circle",
+ "ion:stop-circle-outline",
+ "ion:stop-circle-sharp",
+ "ion:stop-outline",
+ "ion:stop-sharp",
+ "ion:stopwatch",
+ "ion:stopwatch-outline",
+ "ion:stopwatch-sharp",
+ "ion:storefront",
+ "ion:storefront-outline",
+ "ion:storefront-sharp",
+ "ion:subway",
+ "ion:subway-outline",
+ "ion:subway-sharp",
+ "ion:sunny",
+ "ion:sunny-outline",
+ "ion:sunny-sharp",
+ "ion:swap-horizontal",
+ "ion:swap-horizontal-outline",
+ "ion:swap-horizontal-sharp",
+ "ion:swap-vertical",
+ "ion:swap-vertical-outline",
+ "ion:swap-vertical-sharp",
+ "ion:sync",
+ "ion:sync-circle",
+ "ion:sync-circle-outline",
+ "ion:sync-circle-sharp",
+ "ion:sync-outline",
+ "ion:sync-sharp",
+ "ion:tablet-landscape",
+ "ion:tablet-landscape-outline",
+ "ion:tablet-landscape-sharp",
+ "ion:tablet-portrait",
+ "ion:tablet-portrait-outline",
+ "ion:tablet-portrait-sharp",
+ "ion:telescope",
+ "ion:telescope-outline",
+ "ion:telescope-sharp",
+ "ion:tennisball",
+ "ion:tennisball-outline",
+ "ion:tennisball-sharp",
+ "ion:terminal",
+ "ion:terminal-outline",
+ "ion:terminal-sharp",
+ "ion:text",
+ "ion:text-outline",
+ "ion:text-sharp",
+ "ion:thermometer",
+ "ion:thermometer-outline",
+ "ion:thermometer-sharp",
+ "ion:thumbs-down",
+ "ion:thumbs-down-outline",
+ "ion:thumbs-down-sharp",
+ "ion:thumbs-up",
+ "ion:thumbs-up-outline",
+ "ion:thumbs-up-sharp",
+ "ion:thumbsdown",
+ "ion:thumbsup",
+ "ion:thunderstorm",
+ "ion:thunderstorm-outline",
+ "ion:thunderstorm-sharp",
+ "ion:ticket",
+ "ion:ticket-outline",
+ "ion:ticket-sharp",
+ "ion:time",
+ "ion:time-outline",
+ "ion:time-sharp",
+ "ion:timer",
+ "ion:timer-outline",
+ "ion:timer-sharp",
+ "ion:today",
+ "ion:today-outline",
+ "ion:today-sharp",
+ "ion:toggle",
+ "ion:toggle-filled",
+ "ion:toggle-outline",
+ "ion:toggle-sharp",
+ "ion:trail-sign",
+ "ion:trail-sign-outline",
+ "ion:trail-sign-sharp",
+ "ion:train",
+ "ion:train-outline",
+ "ion:train-sharp",
+ "ion:transgender",
+ "ion:transgender-outline",
+ "ion:transgender-sharp",
+ "ion:trash",
+ "ion:trash-a",
+ "ion:trash-b",
+ "ion:trash-bin",
+ "ion:trash-bin-outline",
+ "ion:trash-bin-sharp",
+ "ion:trash-outline",
+ "ion:trash-sharp",
+ "ion:trending-down",
+ "ion:trending-down-outline",
+ "ion:trending-down-sharp",
+ "ion:trending-up",
+ "ion:trending-up-outline",
+ "ion:trending-up-sharp",
+ "ion:triangle",
+ "ion:triangle-outline",
+ "ion:triangle-sharp",
+ "ion:trophy",
+ "ion:trophy-outline",
+ "ion:trophy-sharp",
+ "ion:tshirt",
+ "ion:tshirt-outline",
+ "ion:tv",
+ "ion:tv-outline",
+ "ion:tv-sharp",
+ "ion:umbrella",
+ "ion:umbrella-outline",
+ "ion:umbrella-sharp",
+ "ion:university",
+ "ion:unlink",
+ "ion:unlink-outline",
+ "ion:unlink-sharp",
+ "ion:unlocked",
+ "ion:upload",
+ "ion:usb",
+ "ion:videocam",
+ "ion:videocam-off",
+ "ion:videocam-off-outline",
+ "ion:videocam-off-sharp",
+ "ion:videocam-outline",
+ "ion:videocam-sharp",
+ "ion:videocamera",
+ "ion:volume-high",
+ "ion:volume-high-outline",
+ "ion:volume-high-sharp",
+ "ion:volume-low",
+ "ion:volume-low-outline",
+ "ion:volume-low-sharp",
+ "ion:volume-medium",
+ "ion:volume-medium-outline",
+ "ion:volume-medium-sharp",
+ "ion:volume-mute",
+ "ion:volume-mute-outline",
+ "ion:volume-mute-sharp",
+ "ion:volume-off",
+ "ion:volume-off-outline",
+ "ion:volume-off-sharp",
+ "ion:walk",
+ "ion:walk-outline",
+ "ion:walk-sharp",
+ "ion:wallet",
+ "ion:wallet-outline",
+ "ion:wallet-sharp",
+ "ion:wand",
+ "ion:warning",
+ "ion:warning-outline",
+ "ion:warning-sharp",
+ "ion:watch",
+ "ion:watch-outline",
+ "ion:watch-sharp",
+ "ion:water",
+ "ion:water-outline",
+ "ion:water-sharp",
+ "ion:waterdrop",
+ "ion:wifi",
+ "ion:wifi-outline",
+ "ion:wifi-sharp",
+ "ion:wine",
+ "ion:wine-outline",
+ "ion:wine-sharp",
+ "ion:wineglass",
+ "ion:woman",
+ "ion:woman-outline",
+ "ion:woman-sharp",
+ "ion:wrench",
+ "ion:xbox"
+]
diff --git a/src/components/Icon/src/IconPicker.vue b/src/components/Icon/src/IconPicker.vue
new file mode 100644
index 00000000..fb1a6e48
--- /dev/null
+++ b/src/components/Icon/src/IconPicker.vue
@@ -0,0 +1,170 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/Icon/src/index.vue b/src/components/Icon/src/index.vue
index 2f86a82a..aae9e5af 100644
--- a/src/components/Icon/src/index.vue
+++ b/src/components/Icon/src/index.vue
@@ -16,6 +16,7 @@
import Iconify from '@purge-icons/generated';
import { isString } from '/@/utils/is';
import { propTypes } from '/@/utils/propTypes';
+
export default defineComponent({
name: 'GIcon',
props: {
diff --git a/src/components/SimpleMenu/src/index.less b/src/components/SimpleMenu/src/index.less
index 5ef67015..6d82dcbc 100644
--- a/src/components/SimpleMenu/src/index.less
+++ b/src/components/SimpleMenu/src/index.less
@@ -51,7 +51,7 @@
}
&--dot {
- top: calc(50% - 4px);
+ top: calc(50% - 2px);
width: 6px;
height: 6px;
padding: 0;
diff --git a/src/design/ant/index.less b/src/design/ant/index.less
index 9483cc72..22c2d298 100644
--- a/src/design/ant/index.less
+++ b/src/design/ant/index.less
@@ -14,7 +14,7 @@
}
span.anticon:not(.app-iconify) {
- vertical-align: 0.125em;
+ vertical-align: 0.135em;
}
.ant-back-top {
diff --git a/src/hooks/web/usePagination.ts b/src/hooks/web/usePagination.ts
new file mode 100644
index 00000000..1e199139
--- /dev/null
+++ b/src/hooks/web/usePagination.ts
@@ -0,0 +1,34 @@
+import type { Ref } from 'vue';
+import { ref, unref, computed } from 'vue';
+
+function pagination(list: T[], pageNo: number, pageSize: number): T[] {
+ const offset = (pageNo - 1) * Number(pageSize);
+ const ret =
+ offset + Number(pageSize) >= list.length
+ ? list.slice(offset, list.length)
+ : list.slice(offset, offset + Number(pageSize));
+ return ret;
+}
+
+export function usePagination(list: Ref, pageSize: number) {
+ const currentPage = ref(1);
+ const pageSizeRef = ref(pageSize);
+
+ const getPaginationList = computed(() => {
+ return pagination(unref(list), unref(currentPage), unref(pageSizeRef));
+ });
+
+ const getTotal = computed(() => {
+ return unref(list).length;
+ });
+
+ function setCurrentPage(page: number) {
+ currentPage.value = page;
+ }
+
+ function setPageSize(pageSize: number) {
+ pageSizeRef.value = pageSize;
+ }
+
+ return { setCurrentPage, getTotal, setPageSize, getPaginationList };
+}
diff --git a/src/locales/lang/en/component/icon.ts b/src/locales/lang/en/component/icon.ts
new file mode 100644
index 00000000..75c31797
--- /dev/null
+++ b/src/locales/lang/en/component/icon.ts
@@ -0,0 +1,5 @@
+export default {
+ placeholder: 'Click the select icon',
+ search: 'Search icon',
+ copy: 'Copy icon successfully!',
+};
diff --git a/src/locales/lang/zh_CN/component/icon.ts b/src/locales/lang/zh_CN/component/icon.ts
new file mode 100644
index 00000000..fab538a0
--- /dev/null
+++ b/src/locales/lang/zh_CN/component/icon.ts
@@ -0,0 +1,5 @@
+export default {
+ placeholder: '点击选择图标',
+ search: '搜索图标',
+ copy: '复制图标成功!',
+};
diff --git a/src/router/menus/modules/demo/comp.ts b/src/router/menus/modules/demo/comp.ts
index 3a7c59e5..da1fc78b 100644
--- a/src/router/menus/modules/demo/comp.ts
+++ b/src/router/menus/modules/demo/comp.ts
@@ -6,9 +6,7 @@ const menu: MenuModule = {
menu: {
name: t('routes.demo.comp.comp'),
path: '/comp',
- tag: {
- dot: true,
- },
+
children: [
{
path: 'basic',
@@ -52,9 +50,7 @@ const menu: MenuModule = {
{
path: 'table',
name: t('routes.demo.table.table'),
- tag: {
- dot: true,
- },
+
children: [
{
path: 'basic',
@@ -111,16 +107,10 @@ const menu: MenuModule = {
{
path: 'editCellTable',
name: t('routes.demo.table.editCellTable'),
- tag: {
- dot: true,
- },
},
{
path: 'editRowTable',
name: t('routes.demo.table.editRowTable'),
- tag: {
- dot: true,
- },
},
],
},
diff --git a/src/router/menus/modules/demo/feat.ts b/src/router/menus/modules/demo/feat.ts
index 3cd1a3f6..c66d4150 100644
--- a/src/router/menus/modules/demo/feat.ts
+++ b/src/router/menus/modules/demo/feat.ts
@@ -14,6 +14,9 @@ const menu: MenuModule = {
{
path: 'icon',
name: t('routes.demo.feat.icon'),
+ tag: {
+ content: 'new',
+ },
},
{
path: 'tabs',
@@ -51,9 +54,6 @@ const menu: MenuModule = {
{
path: 'ripple',
name: t('routes.demo.feat.ripple'),
- tag: {
- content: 'new',
- },
},
{
path: 'full-screen',
@@ -89,9 +89,7 @@ const menu: MenuModule = {
{
name: t('routes.demo.feat.breadcrumb'),
path: 'breadcrumb',
- tag: {
- content: 'new',
- },
+
children: [
{
path: 'flat',
diff --git a/src/router/menus/modules/demo/system.ts b/src/router/menus/modules/demo/system.ts
index be001077..a847785f 100644
--- a/src/router/menus/modules/demo/system.ts
+++ b/src/router/menus/modules/demo/system.ts
@@ -6,20 +6,33 @@ const menu: MenuModule = {
menu: {
name: t('routes.demo.system.moduleName'),
path: '/system',
+ tag: {
+ dot: true,
+ },
children: [
{
path: 'account',
name: t('routes.demo.system.account'),
+ tag: {
+ dot: true,
+ type: 'warn',
+ },
},
{
path: 'dept',
name: t('routes.demo.system.dept'),
+ tag: {
+ content: 'new',
+ },
},
{
path: 'changePassword',
name: t('routes.demo.system.password'),
+ tag: {
+ content: 'new',
+ },
},
],
},
diff --git a/src/settings/projectSetting.ts b/src/settings/projectSetting.ts
index 49a5429d..db877800 100644
--- a/src/settings/projectSetting.ts
+++ b/src/settings/projectSetting.ts
@@ -19,7 +19,7 @@ const setting: ProjectConfig = {
settingButtonPosition: SettingButtonPositionEnum.AUTO,
// Permission mode
- permissionMode: PermissionModeEnum.BACK,
+ permissionMode: PermissionModeEnum.ROLE,
// Permission-related cache is stored in sessionStorage or localStorage
permissionCacheType: CacheTypeEnum.SESSION,
diff --git a/src/views/demo/feat/icon/index.vue b/src/views/demo/feat/icon/index.vue
index f7fb10dc..f5fc3459 100644
--- a/src/views/demo/feat/icon/index.vue
+++ b/src/views/demo/feat/icon/index.vue
@@ -14,17 +14,23 @@
-
-
-
-
+
+
+
+
+
+
+
+
+
+
Iconify 图标大全
@@ -43,7 +49,7 @@
CodepenCircleFilled,
} from '@ant-design/icons-vue';
- import Icon from '/@/components/Icon/index';
+ import { Icon, IconPicker } from '/@/components/Icon/index';
import { openWindow } from '/@/utils';
import { PageWrapper } from '/@/components/Page';
@@ -61,6 +67,7 @@
CodepenCircleFilled,
Icon,
Alert,
+ IconPicker,
},
setup() {
return {
diff --git a/windi.config.ts b/windi.config.ts
index e3334bdc..1499b008 100644
--- a/windi.config.ts
+++ b/windi.config.ts
@@ -2,13 +2,17 @@ import lineClamp from 'windicss/plugin/line-clamp';
import colors from 'windicss/colors';
import { defineConfig } from 'vite-plugin-windicss';
+import { primaryColor } from './build/config/themeConfig';
export default defineConfig({
darkMode: 'class',
plugins: [lineClamp, createEnterPlugin()],
theme: {
extend: {
- colors,
+ colors: {
+ ...colors,
+ primary: primaryColor,
+ },
screens: {
sm: '576px',
md: '768px',
diff --git a/yarn.lock b/yarn.lock
index 34b03d55..131d432d 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1307,10 +1307,10 @@
resolved "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f"
integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==
-"@types/fs-extra@^9.0.7":
- version "9.0.7"
- resolved "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.7.tgz#a9ef2ffdab043def080c5bec94c03402f793577f"
- integrity sha512-YGq2A6Yc3bldrLUlm17VNWOnUbnEzJ9CMgOeLFtQF3HOCN5lQBO8VyjG00a5acA5NNSM30kHVGp1trZgnVgi1Q==
+"@types/fs-extra@^9.0.8":
+ version "9.0.8"
+ resolved "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.8.tgz#32c3c07ddf8caa5020f84b5f65a48470519f78ba"
+ integrity sha512-bnlTVTwq03Na7DpWxFJ1dvnORob+Otb8xHyUqUWhqvz/Ksg8+JXPlR52oeMSZ37YEOa5PyccbgUNutiQdi13TA==
dependencies:
"@types/node" "*"
@@ -1379,6 +1379,14 @@
dependencies:
"@types/node" "*"
+"@types/inquirer@^7.3.1":
+ version "7.3.1"
+ resolved "https://registry.npmjs.org/@types/inquirer/-/inquirer-7.3.1.tgz#1f231224e7df11ccfaf4cf9acbcc3b935fea292d"
+ integrity sha512-osD38QVIfcdgsPCT0V3lD7eH0OFurX71Jft18bZrsVQWVRt6TuxRzlr0GJLrxoHZR2V5ph7/qP8se/dcnI7o0g==
+ dependencies:
+ "@types/through" "*"
+ rxjs "^6.4.0"
+
"@types/json-schema@^7.0.3":
version "7.0.7"
resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz#98a993516c859eb0d5c4c8f098317a9ea68db9ad"
@@ -1480,6 +1488,13 @@
resolved "https://registry.npmjs.org/@types/svgo/-/svgo-1.3.3.tgz#4684af265b4e1125c738f5aaafb302c723f4efe0"
integrity sha512-eDLVUvvTn+mol3NpP211DTH9JzSS6YKssRIhHNmXk5BiCl+gc4s+xQQjRFTSsGBohmka5qBsHX6qhL4x88Wkvg==
+"@types/through@*":
+ version "0.0.30"
+ resolved "https://registry.npmjs.org/@types/through/-/through-0.0.30.tgz#e0e42ce77e897bd6aead6f6ea62aeb135b8a3895"
+ integrity sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==
+ dependencies:
+ "@types/node" "*"
+
"@types/tinycolor2@^1.4.2":
version "1.4.2"
resolved "https://registry.npmjs.org/@types/tinycolor2/-/tinycolor2-1.4.2.tgz#721ca5c5d1a2988b4a886e35c2ffc5735b6afbdf"
@@ -1802,7 +1817,7 @@ ansi-escapes@^3.2.0:
resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b"
integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==
-ansi-escapes@^4.3.0:
+ansi-escapes@^4.2.1, ansi-escapes@^4.3.0:
version "4.3.1"
resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61"
integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==
@@ -2537,6 +2552,11 @@ cli-width@^2.0.0:
resolved "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48"
integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==
+cli-width@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6"
+ integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==
+
cliui@^5.0.0:
version "5.0.0"
resolved "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5"
@@ -4015,7 +4035,7 @@ figures@^2.0.0:
dependencies:
escape-string-regexp "^1.0.5"
-figures@^3.2.0:
+figures@^3.0.0, figures@^3.2.0:
version "3.2.0"
resolved "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af"
integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==
@@ -5000,6 +5020,25 @@ inquirer@6.5.2:
strip-ansi "^5.1.0"
through "^2.3.6"
+inquirer@^8.0.0:
+ version "8.0.0"
+ resolved "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz#957a46db1abcf0fdd2ab82deb7470e90afc7d0ac"
+ integrity sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==
+ dependencies:
+ ansi-escapes "^4.2.1"
+ chalk "^4.1.0"
+ cli-cursor "^3.1.0"
+ cli-width "^3.0.0"
+ external-editor "^3.0.3"
+ figures "^3.0.0"
+ lodash "^4.17.21"
+ mute-stream "0.0.8"
+ run-async "^2.4.0"
+ rxjs "^6.6.6"
+ string-width "^4.1.0"
+ strip-ansi "^6.0.0"
+ through "^2.3.6"
+
interpret@^1.0.0:
version "1.4.0"
resolved "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e"
@@ -5720,6 +5759,11 @@ lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17
resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52"
integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==
+lodash@^4.17.21:
+ version "4.17.21"
+ resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
+ integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
+
log-symbols@^4.0.0:
version "4.0.0"
resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920"
@@ -6176,6 +6220,11 @@ mute-stream@0.0.7:
resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=
+mute-stream@0.0.8:
+ version "0.0.8"
+ resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d"
+ integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==
+
nanoid@^3.0.1, nanoid@^3.1.20:
version "3.1.20"
resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz#badc263c6b1dcf14b71efaa85f6ab4c1d6cfc788"
@@ -7536,7 +7585,7 @@ rollup@^2.39.0:
optionalDependencies:
fsevents "~2.3.1"
-run-async@^2.2.0:
+run-async@^2.2.0, run-async@^2.4.0:
version "2.4.1"
resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455"
integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==
@@ -7553,6 +7602,13 @@ rxjs@^6.4.0, rxjs@^6.6.3:
dependencies:
tslib "^1.9.0"
+rxjs@^6.6.6:
+ version "6.6.6"
+ resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.6.tgz#14d8417aa5a07c5e633995b525e1e3c0dec03b70"
+ integrity sha512-/oTwee4N4iWzAMAL9xdGKjkEHmIwupR3oXbQjCKywF1BeFohswF3vZdogbmEF6pZkOsXTzWkrZszrWpQTByYVg==
+ dependencies:
+ tslib "^1.9.0"
+
safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
version "5.1.2"
resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"