From 89e6701ff88cb67f66f424a5f25f4875bce2a19a Mon Sep 17 00:00:00 2001 From: 07akioni <07akioni2@gmail.com> Date: Tue, 3 Nov 2020 13:04:24 +0800 Subject: [PATCH] refactor: tree-shakable style imports --- package.json | 1 + scripts/generate-style-imports.js | 24 ++ scripts/generate-style-index.js | 23 ++ src/_base/loading/styles/index.js | 2 + src/_base/menu-mask/styles/index.js | 2 + src/_base/select-menu/styles/index.js | 2 + src/_base/selection/styles/index.js | 2 + src/_base/slot-machine/styles/index.js | 2 + src/affix/styles/index.js | 2 + src/alert/styles/index.js | 2 + src/anchor/styles/index.js | 2 + src/auto-complete/styles/index.js | 2 + src/avatar/styles/index.js | 2 + src/back-top/styles/index.js | 2 + src/badge/styles/index.js | 2 + src/breadcrumb/styles/index.js | 2 + src/button/styles/index.js | 2 + src/card/styles/index.js | 2 + src/cascader/styles/index.js | 2 + src/checkbox/styles/index.js | 2 + src/code/styles/index.js | 2 + src/collapse/styles/index.js | 2 + src/data-table/styles/index.js | 2 + src/date-picker/styles/index.js | 2 + src/descriptions/styles/index.js | 2 + src/dialog/styles/index.js | 2 + src/divider/styles/index.js | 2 + src/drawer/styles/index.js | 2 + src/dropdown/styles/index.js | 2 + src/dynamic-input/styles/index.js | 2 + src/dynamic-tags/styles/index.js | 2 + src/empty/styles/index.js | 2 + src/form/styles/index.js | 2 + src/gradient-text/styles/index.js | 2 + src/grid/styles/index.js | 2 + src/icon/styles/index.js | 2 + src/index.js | 270 +---------------------- src/input-group-label/styles/index.js | 2 + src/input-number/styles/index.js | 2 + src/input/styles/index.js | 2 + src/layout/styles/index.js | 2 + src/list/styles/index.js | 2 + src/loading-bar/styles/index.js | 2 + src/log/styles/index.js | 2 + src/menu/styles/index.js | 2 + src/message/styles/index.js | 2 + src/modal/styles/index.js | 2 + src/notification/styles/index.js | 2 + src/pagination/styles/dark.js | 2 +- src/pagination/styles/index.js | 4 +- src/pagination/styles/light.js | 2 +- src/popconfirm/styles/index.js | 2 + src/popover/styles/index.js | 2 + src/popselect/styles/index.js | 2 + src/progress/styles/index.js | 2 + src/radio/styles/index.js | 2 + src/rate/styles/index.js | 2 + src/result/styles/index.js | 2 + src/scrollbar/styles/index.js | 2 + src/select/styles/index.js | 2 + src/slider/styles/index.js | 2 + src/space/styles/index.js | 2 + src/spin/styles/index.js | 2 + src/statistic/styles/index.js | 2 + src/steps/styles/index.js | 2 + src/styles/index.js | 294 +++++++++++++++++++++++++ src/switch/styles/index.js | 2 + src/table/styles/index.js | 2 + src/tabs/styles/index.js | 2 + src/tag/styles/index.js | 2 + src/thing/styles/index.js | 2 + src/time-picker/styles/index.js | 2 + src/time/styles/index.js | 2 + src/timeline/styles/index.js | 2 + src/tooltip/styles/index.js | 2 + src/transfer/styles/index.js | 2 + src/tree/styles/index.js | 2 + src/typography/styles/index.js | 2 + src/upload/styles/index.js | 2 + 79 files changed, 490 insertions(+), 272 deletions(-) create mode 100644 scripts/generate-style-imports.js create mode 100644 scripts/generate-style-index.js create mode 100644 src/_base/loading/styles/index.js create mode 100644 src/_base/menu-mask/styles/index.js create mode 100644 src/_base/select-menu/styles/index.js create mode 100644 src/_base/selection/styles/index.js create mode 100644 src/_base/slot-machine/styles/index.js create mode 100644 src/affix/styles/index.js create mode 100644 src/alert/styles/index.js create mode 100644 src/anchor/styles/index.js create mode 100644 src/auto-complete/styles/index.js create mode 100644 src/avatar/styles/index.js create mode 100644 src/back-top/styles/index.js create mode 100644 src/badge/styles/index.js create mode 100644 src/breadcrumb/styles/index.js create mode 100644 src/button/styles/index.js create mode 100644 src/card/styles/index.js create mode 100644 src/cascader/styles/index.js create mode 100644 src/checkbox/styles/index.js create mode 100644 src/code/styles/index.js create mode 100644 src/collapse/styles/index.js create mode 100644 src/data-table/styles/index.js create mode 100644 src/date-picker/styles/index.js create mode 100644 src/descriptions/styles/index.js create mode 100644 src/dialog/styles/index.js create mode 100644 src/divider/styles/index.js create mode 100644 src/drawer/styles/index.js create mode 100644 src/dropdown/styles/index.js create mode 100644 src/dynamic-input/styles/index.js create mode 100644 src/dynamic-tags/styles/index.js create mode 100644 src/empty/styles/index.js create mode 100644 src/form/styles/index.js create mode 100644 src/gradient-text/styles/index.js create mode 100644 src/grid/styles/index.js create mode 100644 src/icon/styles/index.js create mode 100644 src/input-group-label/styles/index.js create mode 100644 src/input-number/styles/index.js create mode 100644 src/input/styles/index.js create mode 100644 src/layout/styles/index.js create mode 100644 src/list/styles/index.js create mode 100644 src/loading-bar/styles/index.js create mode 100644 src/log/styles/index.js create mode 100644 src/menu/styles/index.js create mode 100644 src/message/styles/index.js create mode 100644 src/modal/styles/index.js create mode 100644 src/notification/styles/index.js create mode 100644 src/popconfirm/styles/index.js create mode 100644 src/popover/styles/index.js create mode 100644 src/popselect/styles/index.js create mode 100644 src/progress/styles/index.js create mode 100644 src/radio/styles/index.js create mode 100644 src/rate/styles/index.js create mode 100644 src/result/styles/index.js create mode 100644 src/scrollbar/styles/index.js create mode 100644 src/select/styles/index.js create mode 100644 src/slider/styles/index.js create mode 100644 src/space/styles/index.js create mode 100644 src/spin/styles/index.js create mode 100644 src/statistic/styles/index.js create mode 100644 src/steps/styles/index.js create mode 100644 src/styles/index.js create mode 100644 src/switch/styles/index.js create mode 100644 src/table/styles/index.js create mode 100644 src/tabs/styles/index.js create mode 100644 src/tag/styles/index.js create mode 100644 src/thing/styles/index.js create mode 100644 src/time-picker/styles/index.js create mode 100644 src/time/styles/index.js create mode 100644 src/timeline/styles/index.js create mode 100644 src/tooltip/styles/index.js create mode 100644 src/transfer/styles/index.js create mode 100644 src/tree/styles/index.js create mode 100644 src/typography/styles/index.js create mode 100644 src/upload/styles/index.js diff --git a/package.json b/package.json index b61674e30..6a138c673 100644 --- a/package.json +++ b/package.json @@ -54,6 +54,7 @@ "eslint": "^7.12.1", "eslint-plugin-vue": "^7.1.0", "jest": "^26.6.2", + "lodash": "^4.17.20", "marked": "^1.2.0", "ncp": "^2.0.0", "rollup": "^2.32.1", diff --git a/scripts/generate-style-imports.js b/scripts/generate-style-imports.js new file mode 100644 index 000000000..5377f8e6b --- /dev/null +++ b/scripts/generate-style-imports.js @@ -0,0 +1,24 @@ +const fs = require('fs').promises +const path = require('path') +const { camelCase } = require('lodash') + +;(async () => { + const srcPath = path.resolve(__dirname, '..', 'src') + const files = await fs.opendir( + srcPath + ) + let code = '' + for await (const file of files) { + if (file.isDirectory() && !file.name.startsWith('_')) { + if (await fs.stat(path.resolve(srcPath, file.name, 'styles')).then(() => false).catch(() => { + return true + })) continue + code += `export { + ${camelCase(file.name)}Dark, + ${camelCase(file.name)}Light +} from '../${file.name}/styles\n` + // await fs.writeFile(path.resolve(srcPath, file.name, 'styles', 'index.js'), code) + } + } + console.log(code) +})() diff --git a/scripts/generate-style-index.js b/scripts/generate-style-index.js new file mode 100644 index 000000000..995d1019e --- /dev/null +++ b/scripts/generate-style-index.js @@ -0,0 +1,23 @@ +const fs = require('fs').promises +const path = require('path') +const { camelCase } = require('lodash') + +;(async () => { + const srcPath = path.resolve(__dirname, '..', 'src') + const files = await fs.opendir( + srcPath + ) + for await (const file of files) { + if (file.isDirectory() && !file.name.startsWith('_')) { + console.log(file.name) + if (await fs.stat(path.resolve(srcPath, file.name, 'styles')).then(() => false).catch(() => { + return true + })) continue + const code = + `export { default as ${camelCase(file.name)}Dark } from './dark.js'\n` + + `export { default as ${camelCase(file.name)}Light } from './light.js'\n` + console.log(file.name) + await fs.writeFile(path.resolve(srcPath, file.name, 'styles', 'index.js'), code) + } + } +})() diff --git a/src/_base/loading/styles/index.js b/src/_base/loading/styles/index.js new file mode 100644 index 000000000..218576588 --- /dev/null +++ b/src/_base/loading/styles/index.js @@ -0,0 +1,2 @@ +export { default as baseLoadingLight } from './light' +export { default as baseLoadingDark } from './dark' diff --git a/src/_base/menu-mask/styles/index.js b/src/_base/menu-mask/styles/index.js new file mode 100644 index 000000000..54c7380d7 --- /dev/null +++ b/src/_base/menu-mask/styles/index.js @@ -0,0 +1,2 @@ +export { default as baseMenuMaskLight } from './light' +export { default as baseMenuMaskDark } from './dark' diff --git a/src/_base/select-menu/styles/index.js b/src/_base/select-menu/styles/index.js new file mode 100644 index 000000000..a84fbe1f1 --- /dev/null +++ b/src/_base/select-menu/styles/index.js @@ -0,0 +1,2 @@ +export { default as baseSelectMenuLight } from './light' +export { default as baseSelectMenuDark } from './dark' diff --git a/src/_base/selection/styles/index.js b/src/_base/selection/styles/index.js new file mode 100644 index 000000000..98b01a251 --- /dev/null +++ b/src/_base/selection/styles/index.js @@ -0,0 +1,2 @@ +export { default as baseSelectionLight } from './light' +export { default as baseSelectionDark } from './dark' diff --git a/src/_base/slot-machine/styles/index.js b/src/_base/slot-machine/styles/index.js new file mode 100644 index 000000000..fa91c1f58 --- /dev/null +++ b/src/_base/slot-machine/styles/index.js @@ -0,0 +1,2 @@ +export { default as baseSlotMachineLight } from './light' +export { default as baseSlotMachineDark } from './dark' diff --git a/src/affix/styles/index.js b/src/affix/styles/index.js new file mode 100644 index 000000000..13cc04d56 --- /dev/null +++ b/src/affix/styles/index.js @@ -0,0 +1,2 @@ +export { default as affixDark } from './dark.js' +export { default as affixLight } from './light.js' diff --git a/src/alert/styles/index.js b/src/alert/styles/index.js new file mode 100644 index 000000000..f3c55e073 --- /dev/null +++ b/src/alert/styles/index.js @@ -0,0 +1,2 @@ +export { default as alertDark } from './dark.js' +export { default as alertLight } from './light.js' diff --git a/src/anchor/styles/index.js b/src/anchor/styles/index.js new file mode 100644 index 000000000..fcd90ff81 --- /dev/null +++ b/src/anchor/styles/index.js @@ -0,0 +1,2 @@ +export { default as anchorDark } from './dark.js' +export { default as anchorLight } from './light.js' diff --git a/src/auto-complete/styles/index.js b/src/auto-complete/styles/index.js new file mode 100644 index 000000000..e6f5fe589 --- /dev/null +++ b/src/auto-complete/styles/index.js @@ -0,0 +1,2 @@ +export { default as autoCompleteDark } from './dark.js' +export { default as autoCompleteLight } from './light.js' diff --git a/src/avatar/styles/index.js b/src/avatar/styles/index.js new file mode 100644 index 000000000..0a5edfb31 --- /dev/null +++ b/src/avatar/styles/index.js @@ -0,0 +1,2 @@ +export { default as avatarDark } from './dark.js' +export { default as avatarLight } from './light.js' diff --git a/src/back-top/styles/index.js b/src/back-top/styles/index.js new file mode 100644 index 000000000..f608f3d04 --- /dev/null +++ b/src/back-top/styles/index.js @@ -0,0 +1,2 @@ +export { default as backTopDark } from './dark.js' +export { default as backTopLight } from './light.js' diff --git a/src/badge/styles/index.js b/src/badge/styles/index.js new file mode 100644 index 000000000..5e1c3f3b3 --- /dev/null +++ b/src/badge/styles/index.js @@ -0,0 +1,2 @@ +export { default as badgeDark } from './dark.js' +export { default as badgeLight } from './light.js' diff --git a/src/breadcrumb/styles/index.js b/src/breadcrumb/styles/index.js new file mode 100644 index 000000000..8694a724b --- /dev/null +++ b/src/breadcrumb/styles/index.js @@ -0,0 +1,2 @@ +export { default as breadcrumbDark } from './dark.js' +export { default as breadcrumbLight } from './light.js' diff --git a/src/button/styles/index.js b/src/button/styles/index.js new file mode 100644 index 000000000..6824d3e75 --- /dev/null +++ b/src/button/styles/index.js @@ -0,0 +1,2 @@ +export { default as buttonDark } from './dark.js' +export { default as buttonLight } from './light.js' diff --git a/src/card/styles/index.js b/src/card/styles/index.js new file mode 100644 index 000000000..920abf2be --- /dev/null +++ b/src/card/styles/index.js @@ -0,0 +1,2 @@ +export { default as cardDark } from './dark.js' +export { default as cardLight } from './light.js' diff --git a/src/cascader/styles/index.js b/src/cascader/styles/index.js new file mode 100644 index 000000000..4415eeacf --- /dev/null +++ b/src/cascader/styles/index.js @@ -0,0 +1,2 @@ +export { default as cascaderDark } from './dark.js' +export { default as cascaderLight } from './light.js' diff --git a/src/checkbox/styles/index.js b/src/checkbox/styles/index.js new file mode 100644 index 000000000..e8ef9c24d --- /dev/null +++ b/src/checkbox/styles/index.js @@ -0,0 +1,2 @@ +export { default as checkboxDark } from './dark.js' +export { default as checkboxLight } from './light.js' diff --git a/src/code/styles/index.js b/src/code/styles/index.js new file mode 100644 index 000000000..194a0083d --- /dev/null +++ b/src/code/styles/index.js @@ -0,0 +1,2 @@ +export { default as codeDark } from './dark.js' +export { default as codeLight } from './light.js' diff --git a/src/collapse/styles/index.js b/src/collapse/styles/index.js new file mode 100644 index 000000000..c97adbf3c --- /dev/null +++ b/src/collapse/styles/index.js @@ -0,0 +1,2 @@ +export { default as collapseDark } from './dark.js' +export { default as collapseLight } from './light.js' diff --git a/src/data-table/styles/index.js b/src/data-table/styles/index.js new file mode 100644 index 000000000..df48226d0 --- /dev/null +++ b/src/data-table/styles/index.js @@ -0,0 +1,2 @@ +export { default as dataTableDark } from './dark.js' +export { default as dataTableLight } from './light.js' diff --git a/src/date-picker/styles/index.js b/src/date-picker/styles/index.js new file mode 100644 index 000000000..c6257170f --- /dev/null +++ b/src/date-picker/styles/index.js @@ -0,0 +1,2 @@ +export { default as datePickerDark } from './dark.js' +export { default as datePickerLight } from './light.js' diff --git a/src/descriptions/styles/index.js b/src/descriptions/styles/index.js new file mode 100644 index 000000000..9dd5813cc --- /dev/null +++ b/src/descriptions/styles/index.js @@ -0,0 +1,2 @@ +export { default as descriptionsDark } from './dark.js' +export { default as descriptionsLight } from './light.js' diff --git a/src/dialog/styles/index.js b/src/dialog/styles/index.js new file mode 100644 index 000000000..01f8ed321 --- /dev/null +++ b/src/dialog/styles/index.js @@ -0,0 +1,2 @@ +export { default as dialogDark } from './dark.js' +export { default as dialogLight } from './light.js' diff --git a/src/divider/styles/index.js b/src/divider/styles/index.js new file mode 100644 index 000000000..218de9c6a --- /dev/null +++ b/src/divider/styles/index.js @@ -0,0 +1,2 @@ +export { default as dividerDark } from './dark.js' +export { default as dividerLight } from './light.js' diff --git a/src/drawer/styles/index.js b/src/drawer/styles/index.js new file mode 100644 index 000000000..c365fce45 --- /dev/null +++ b/src/drawer/styles/index.js @@ -0,0 +1,2 @@ +export { default as drawerDark } from './dark.js' +export { default as drawerLight } from './light.js' diff --git a/src/dropdown/styles/index.js b/src/dropdown/styles/index.js new file mode 100644 index 000000000..1c9afa20b --- /dev/null +++ b/src/dropdown/styles/index.js @@ -0,0 +1,2 @@ +export { default as dropdownDark } from './dark.js' +export { default as dropdownLight } from './light.js' diff --git a/src/dynamic-input/styles/index.js b/src/dynamic-input/styles/index.js new file mode 100644 index 000000000..727a991c8 --- /dev/null +++ b/src/dynamic-input/styles/index.js @@ -0,0 +1,2 @@ +export { default as dynamicInputDark } from './dark.js' +export { default as dynamicInputLight } from './light.js' diff --git a/src/dynamic-tags/styles/index.js b/src/dynamic-tags/styles/index.js new file mode 100644 index 000000000..f7c25a81c --- /dev/null +++ b/src/dynamic-tags/styles/index.js @@ -0,0 +1,2 @@ +export { default as dynamicTagsDark } from './dark.js' +export { default as dynamicTagsLight } from './light.js' diff --git a/src/empty/styles/index.js b/src/empty/styles/index.js new file mode 100644 index 000000000..50b7fc874 --- /dev/null +++ b/src/empty/styles/index.js @@ -0,0 +1,2 @@ +export { default as emptyDark } from './dark.js' +export { default as emptyLight } from './light.js' diff --git a/src/form/styles/index.js b/src/form/styles/index.js new file mode 100644 index 000000000..c7e1e4c62 --- /dev/null +++ b/src/form/styles/index.js @@ -0,0 +1,2 @@ +export { default as formDark } from './dark.js' +export { default as formLight } from './light.js' diff --git a/src/gradient-text/styles/index.js b/src/gradient-text/styles/index.js new file mode 100644 index 000000000..4d4f8fa83 --- /dev/null +++ b/src/gradient-text/styles/index.js @@ -0,0 +1,2 @@ +export { default as gradientTextDark } from './dark.js' +export { default as gradientTextLight } from './light.js' diff --git a/src/grid/styles/index.js b/src/grid/styles/index.js new file mode 100644 index 000000000..77cf1b45d --- /dev/null +++ b/src/grid/styles/index.js @@ -0,0 +1,2 @@ +export { default as gridDark } from './dark.js' +export { default as gridLight } from './light.js' diff --git a/src/icon/styles/index.js b/src/icon/styles/index.js new file mode 100644 index 000000000..fef92c86a --- /dev/null +++ b/src/icon/styles/index.js @@ -0,0 +1,2 @@ +export { default as iconDark } from './dark.js' +export { default as iconLight } from './light.js' diff --git a/src/index.js b/src/index.js index a42440c85..576dff937 100644 --- a/src/index.js +++ b/src/index.js @@ -73,137 +73,7 @@ import Upload from './upload' import zhCN from './locale/zhCN' import enUS from './locale/enUS' -import baseDarkStyle from './styles/base/dark' -import baseLightStyle from './styles/base/light' - -import affixDarkStyle from './affix/styles/dark' -import affixLightStyle from './affix/styles/light' -import alertDarkStyle from './alert/styles/dark' -import alertLightStyle from './alert/styles/light' -import anchorDarkStyle from './anchor/styles/dark' -import anchorLightStyle from './anchor/styles/light' -import autoComplateDarkStyle from './auto-complete/styles/dark' -import autoComplateLightStyle from './auto-complete/styles/light' -import avatarDarkStyle from './avatar/styles/dark' -import avatarLightStyle from './avatar/styles/light' -import backTopDarkStyle from './back-top/styles/dark' -import backTopLightStyle from './back-top/styles/light' -import badgeDarkStyle from './badge/styles/dark' -import badgeLightStyle from './badge/styles/light' -import breadcrumbDarkStyle from './breadcrumb/styles/dark' -import breadcrumbLightStyle from './breadcrumb/styles/light' -import buttonDarkStyle from './button/styles/dark' -import buttonLightStyle from './button/styles/light' -import cardDarkStyle from './card/styles/dark' -import cardLightStyle from './card/styles/light' -import codeDarkStyle from './code/styles/dark' -import codeLightStyle from './code/styles/light' -import collapseDarkStyle from './collapse/styles/dark' -import collapseLightStyle from './collapse/styles/light' -import dialogDarkStyle from './dialog/styles/dark' -import dialogLightStyle from './dialog/styles/light' -import dataTableDarkStyle from './data-table/styles/dark' -import dataTableLightStyle from './data-table/styles/light' -import datePickerDarkStyle from './date-picker/styles/dark' -import datePickerLightStyle from './date-picker/styles/light' -import dividerDarkStyle from './divider/styles/dark' -import dividerLightStyle from './divider/styles/light' -import drawerDarkStyle from './drawer/styles/dark' -import drawerLightStyle from './drawer/styles/light' -import dropdownDarkStyle from './dropdown/styles/dark' -import dropdownLightStyle from './dropdown/styles/light' -import dynamicInputDarkStyle from './dynamic-input/styles/dark' -import dynamicInputLightStyle from './dynamic-input/styles/light' -import dynamicTagsDarkStyle from './dynamic-tags/styles/dark' -import dynamicTagsLightStyle from './dynamic-tags/styles/light' -import emptyDarkStyle from './empty/styles/dark' -import emptyLightStyle from './empty/styles/light' -import gradientTextDarkStyle from './gradient-text/styles/dark' -import gradientTextLightStyle from './gradient-text/styles/light' -import inputDarkStyle from './input/styles/dark' -import inputGroupLabelDarkStyle from './input-group-label/styles/dark' -import inputGroupLabelLightStyle from './input-group-label/styles/light' -import inputLightStyle from './input/styles/light' -import inputNumberDarkStyle from './input-number/styles/dark' -import inputNumberLightStyle from './input-number/styles/light' -import progressDarkStyle from './progress/styles/dark' -import progressLightStyle from './progress/styles/light' -import tagDarkStyle from './tag/styles/dark' -import tagLightStyle from './tag/styles/light' -import transferDarkStyle from './transfer/styles/dark' -import transferLightStyle from './transfer/styles/light' -import typographyDarkStyle from './typography/styles/light' -import typographyLightStyle from './typography/styles/dark' -import listDarkStyle from './list/styles/dark' -import listLightStyle from './list/styles/light' -import logDarkStyle from './log/styles/dark' -import logLightStyle from './log/styles/light' -import iconDarkStyle from './icon/styles/dark' -import iconLightStyle from './icon/styles/light' -import spaceDarkStyle from './space/styles/dark' -import spaceLightStyle from './space/styles/light' -import loadingBarLightStyle from './loading-bar/styles/light' -import loadingBarDarkStyle from './loading-bar/styles/dark' -import menuDarkStyle from './menu/styles/dark' -import menuLightStyle from './menu/styles/light' -import modalDarkStyle from './modal/styles/dark' -import modalLightStyle from './modal/styles/light' -import popConfirmDarkStyle from './popconfirm/styles/dark' -import popConfirmLightStyle from './popconfirm/styles/light' -import popSelectLightStyle from './popselect/styles/light' -import popSelectDarkStyle from './popselect/styles/dark' -import resultDarkStyle from './result/styles/dark' -import resultLightStyle from './result/styles/light' -import stepsDarkStyle from './steps/styles/dark' -import stepsLightStyle from './steps/styles/light' -import selectDarkStyle from './select/styles/dark' -import selectLightStyle from './select/styles/light' -import scrollBarLightStyle from './scrollbar/styles/light' -import scrollBarDarkStyle from './scrollbar/styles/dark' -import cascaderLightStyle from './cascader/styles/light' -import cascaderDarkStyle from './cascader/styles/dark' -import checkboxLightStyle from './checkbox/styles/light' -import checkboxDarkStyle from './checkbox/styles/dark' -import spinDarkStyle from './spin/styles/dark' -import spinLightStyle from './spin/styles/light' -import statisticLightStyle from './statistic/styles/light' -import statisticDarkStyle from './statistic/styles/dark' -import thingLightStyle from './thing/styles/light' -import thingDarkStyle from './thing/styles/dark' -import switchLightStyle from './switch/styles/light' -import switchDarkStyle from './switch/styles/dark' -import radioLightStyle from './radio/styles/light' -import radioDarkStyle from './radio/styles/dark' -import messageLightStyle from './message/styles/light' -import messageDarkStyle from './message/styles/dark' -import notificationLightStyle from './notification/styles/light' -import notificationDarkStyle from './notification/styles/dark' -import layoutDarkStyle from './layout/styles/dark' -import layoutLightStyle from './layout/styles/light' -import treeLightStyle from './tree/styles/light' -import treeDarkStyle from './tree/styles/dark' -import paginationLightStyle from './pagination/styles/light' -import paginationDarkStyle from './pagination/styles/dark' -import sliderLightStyle from './slider/styles/light' -import sliderDarkStyle from './slider/styles/dark' -import timePickerLightStyle from './time-picker/styles/light' -import timePickerDarkStyle from './time-picker/styles/dark' -import timelineLightStyle from './timeline/styles/light' -import timelineDarkStyle from './timeline/styles/dark' -import tabsLightStyle from './tabs/styles/light' -import tabsDarkStyle from './tabs/styles/dark' -import tableLightStyle from './table/styles/light' -import tableDarkStyle from './table/styles/dark' -import popoverLightStyle from './popover/styles/light' -import popoverDarkStyle from './popover/styles/dark' -import uploadLightStyle from './upload/styles/light' -import uploadDarkStyle from './upload/styles/dark' -import descriptionsLightStyle from './descriptions/styles/light' -import descriptionsDarkStyle from './descriptions/styles/dark' -import formLightStyle from './form/styles/light' -import formDarkStyle from './form/styles/dark' -import rateLightStyle from './rate/styles/light' -import rateDarkStyle from './rate/styles/dark' +import * as styles from './styles' // Can be remove after refactoring import baseSelectionLightStyle from './_base/selection/styles/light' @@ -299,143 +169,7 @@ export default create({ // Deprecated NimbusServiceLayout ], - styles: [ - // base style, essential - baseLightStyle, - baseDarkStyle, - // components style - buttonLightStyle, - buttonDarkStyle, - badgeLightStyle, - badgeDarkStyle, - progressLightStyle, - progressDarkStyle, - inputLightStyle, - inputDarkStyle, - inputGroupLabelLightStyle, - inputGroupLabelDarkStyle, - inputNumberLightStyle, - inputNumberDarkStyle, - tagLightStyle, - tagDarkStyle, - dynamicTagsLightStyle, - dynamicTagsDarkStyle, - alertLightStyle, - alertDarkStyle, - avatarLightStyle, - avatarDarkStyle, - affixLightStyle, - affixDarkStyle, - drawerLightStyle, - drawerDarkStyle, - dataTableLightStyle, - dataTableDarkStyle, - transferLightStyle, - transferDarkStyle, - typographyLightStyle, - typographyDarkStyle, - autoComplateLightStyle, - autoComplateDarkStyle, - backTopLightStyle, - backTopDarkStyle, - codeLightStyle, - codeDarkStyle, - cardLightStyle, - cardDarkStyle, - anchorLightStyle, - anchorDarkStyle, - breadcrumbLightStyle, - breadcrumbDarkStyle, - emptyLightStyle, - emptyDarkStyle, - dropdownLightStyle, - dropdownDarkStyle, - collapseLightStyle, - collapseDarkStyle, - dividerLightStyle, - dividerDarkStyle, - dynamicInputLightStyle, - dynamicInputDarkStyle, - dialogLightStyle, - dialogDarkStyle, - gradientTextLightStyle, - gradientTextDarkStyle, - listDarkStyle, - listLightStyle, - logDarkStyle, - logLightStyle, - iconDarkStyle, - iconLightStyle, - loadingBarDarkStyle, - loadingBarLightStyle, - modalDarkStyle, - modalLightStyle, - popConfirmDarkStyle, - popConfirmLightStyle, - popSelectLightStyle, - popSelectDarkStyle, - resultDarkStyle, - resultLightStyle, - menuDarkStyle, - menuLightStyle, - datePickerDarkStyle, - datePickerLightStyle, - stepsDarkStyle, - stepsLightStyle, - selectDarkStyle, - selectLightStyle, - scrollBarLightStyle, - scrollBarDarkStyle, - cascaderLightStyle, - cascaderDarkStyle, - checkboxDarkStyle, - checkboxLightStyle, - spinDarkStyle, - spinLightStyle, - statisticLightStyle, - statisticDarkStyle, - thingLightStyle, - thingDarkStyle, - switchLightStyle, - switchDarkStyle, - radioLightStyle, - radioDarkStyle, - messageLightStyle, - messageDarkStyle, - notificationLightStyle, - notificationDarkStyle, - layoutDarkStyle, - layoutLightStyle, - treeLightStyle, - treeDarkStyle, - paginationLightStyle, - paginationDarkStyle, - sliderLightStyle, - sliderDarkStyle, - timePickerLightStyle, - timePickerDarkStyle, - timelineLightStyle, - timelineDarkStyle, - tabsLightStyle, - tabsDarkStyle, - tableLightStyle, - tableDarkStyle, - popoverLightStyle, - popoverDarkStyle, - uploadLightStyle, - uploadDarkStyle, - descriptionsLightStyle, - descriptionsDarkStyle, - formLightStyle, - formDarkStyle, - spaceDarkStyle, - spaceLightStyle, - rateDarkStyle, - rateLightStyle, - // Can be remove after refactoring - baseSelectionLightStyle, - baseSelectionDarkStyle - ], + styles: Object.keys(styles).map(key => styles[key]), // deprecated styleSchemes: { light: lightStyleScheme, diff --git a/src/input-group-label/styles/index.js b/src/input-group-label/styles/index.js new file mode 100644 index 000000000..0f48c4a24 --- /dev/null +++ b/src/input-group-label/styles/index.js @@ -0,0 +1,2 @@ +export { default as inputGroupLabelDark } from './dark.js' +export { default as inputGroupLabelLight } from './light.js' diff --git a/src/input-number/styles/index.js b/src/input-number/styles/index.js new file mode 100644 index 000000000..dbbd80145 --- /dev/null +++ b/src/input-number/styles/index.js @@ -0,0 +1,2 @@ +export { default as inputNumberDark } from './dark.js' +export { default as inputNumberLight } from './light.js' diff --git a/src/input/styles/index.js b/src/input/styles/index.js new file mode 100644 index 000000000..f2db78cc4 --- /dev/null +++ b/src/input/styles/index.js @@ -0,0 +1,2 @@ +export { default as inputDark } from './dark.js' +export { default as inputLight } from './light.js' diff --git a/src/layout/styles/index.js b/src/layout/styles/index.js new file mode 100644 index 000000000..02ad332c8 --- /dev/null +++ b/src/layout/styles/index.js @@ -0,0 +1,2 @@ +export { default as layoutDark } from './dark.js' +export { default as layoutLight } from './light.js' diff --git a/src/list/styles/index.js b/src/list/styles/index.js new file mode 100644 index 000000000..b3abe89d2 --- /dev/null +++ b/src/list/styles/index.js @@ -0,0 +1,2 @@ +export { default as listDark } from './dark.js' +export { default as listLight } from './light.js' diff --git a/src/loading-bar/styles/index.js b/src/loading-bar/styles/index.js new file mode 100644 index 000000000..ce4a30ab4 --- /dev/null +++ b/src/loading-bar/styles/index.js @@ -0,0 +1,2 @@ +export { default as loadingBarDark } from './dark.js' +export { default as loadingBarLight } from './light.js' diff --git a/src/log/styles/index.js b/src/log/styles/index.js new file mode 100644 index 000000000..2ec66cbbf --- /dev/null +++ b/src/log/styles/index.js @@ -0,0 +1,2 @@ +export { default as logDark } from './dark.js' +export { default as logLight } from './light.js' diff --git a/src/menu/styles/index.js b/src/menu/styles/index.js new file mode 100644 index 000000000..687e62509 --- /dev/null +++ b/src/menu/styles/index.js @@ -0,0 +1,2 @@ +export { default as menuDark } from './dark.js' +export { default as menuLight } from './light.js' diff --git a/src/message/styles/index.js b/src/message/styles/index.js new file mode 100644 index 000000000..7aced914f --- /dev/null +++ b/src/message/styles/index.js @@ -0,0 +1,2 @@ +export { default as messageDark } from './dark.js' +export { default as messageLight } from './light.js' diff --git a/src/modal/styles/index.js b/src/modal/styles/index.js new file mode 100644 index 000000000..47d8a96c1 --- /dev/null +++ b/src/modal/styles/index.js @@ -0,0 +1,2 @@ +export { default as modalDark } from './dark.js' +export { default as modalLight } from './light.js' diff --git a/src/notification/styles/index.js b/src/notification/styles/index.js new file mode 100644 index 000000000..fd5ef0fcf --- /dev/null +++ b/src/notification/styles/index.js @@ -0,0 +1,2 @@ +export { default as notificationDark } from './dark.js' +export { default as notificationLight } from './light.js' diff --git a/src/pagination/styles/dark.js b/src/pagination/styles/dark.js index fd99dafb6..49f4648a8 100644 --- a/src/pagination/styles/dark.js +++ b/src/pagination/styles/dark.js @@ -1,7 +1,7 @@ import create from '../../_styles/utils/create-component-base' import { changeColor } from '../../_utils/color/index' import { baseSuffixDark } from '../../_base/suffix/styles' -import { baseDark } from '../../styles/base' +import { baseDark } from '../../styles' export default create({ name: 'Pagination', diff --git a/src/pagination/styles/index.js b/src/pagination/styles/index.js index 0c2465ace..3ac39ce38 100644 --- a/src/pagination/styles/index.js +++ b/src/pagination/styles/index.js @@ -1,2 +1,2 @@ -export { default as paginationLight } from './light' -export { default as paginationDark } from './dark' +export { default as paginationDark } from './dark.js' +export { default as paginationLight } from './light.js' diff --git a/src/pagination/styles/light.js b/src/pagination/styles/light.js index dbf9fdd52..cf24e44ff 100644 --- a/src/pagination/styles/light.js +++ b/src/pagination/styles/light.js @@ -1,6 +1,6 @@ import create from '../../_styles/utils/create-component-base' import { baseSuffixLight } from '../../_base/suffix/styles' -import { baseLight } from '../../styles/base' +import { baseLight } from '../../styles' export default create({ name: 'Pagination', diff --git a/src/popconfirm/styles/index.js b/src/popconfirm/styles/index.js new file mode 100644 index 000000000..82c7e49c1 --- /dev/null +++ b/src/popconfirm/styles/index.js @@ -0,0 +1,2 @@ +export { default as popconfirmDark } from './dark.js' +export { default as popconfirmLight } from './light.js' diff --git a/src/popover/styles/index.js b/src/popover/styles/index.js new file mode 100644 index 000000000..17a000255 --- /dev/null +++ b/src/popover/styles/index.js @@ -0,0 +1,2 @@ +export { default as popoverDark } from './dark.js' +export { default as popoverLight } from './light.js' diff --git a/src/popselect/styles/index.js b/src/popselect/styles/index.js new file mode 100644 index 000000000..8dcab6870 --- /dev/null +++ b/src/popselect/styles/index.js @@ -0,0 +1,2 @@ +export { default as popselectDark } from './dark.js' +export { default as popselectLight } from './light.js' diff --git a/src/progress/styles/index.js b/src/progress/styles/index.js new file mode 100644 index 000000000..6c16a4994 --- /dev/null +++ b/src/progress/styles/index.js @@ -0,0 +1,2 @@ +export { default as progressDark } from './dark.js' +export { default as progressLight } from './light.js' diff --git a/src/radio/styles/index.js b/src/radio/styles/index.js new file mode 100644 index 000000000..2389a8047 --- /dev/null +++ b/src/radio/styles/index.js @@ -0,0 +1,2 @@ +export { default as radioDark } from './dark.js' +export { default as radioLight } from './light.js' diff --git a/src/rate/styles/index.js b/src/rate/styles/index.js new file mode 100644 index 000000000..fec7c9e1b --- /dev/null +++ b/src/rate/styles/index.js @@ -0,0 +1,2 @@ +export { default as rateDark } from './dark.js' +export { default as rateLight } from './light.js' diff --git a/src/result/styles/index.js b/src/result/styles/index.js new file mode 100644 index 000000000..b7b5b8465 --- /dev/null +++ b/src/result/styles/index.js @@ -0,0 +1,2 @@ +export { default as resultDark } from './dark.js' +export { default as resultLight } from './light.js' diff --git a/src/scrollbar/styles/index.js b/src/scrollbar/styles/index.js new file mode 100644 index 000000000..ae8c4088b --- /dev/null +++ b/src/scrollbar/styles/index.js @@ -0,0 +1,2 @@ +export { default as scrollbarDark } from './dark.js' +export { default as scrollbarLight } from './light.js' diff --git a/src/select/styles/index.js b/src/select/styles/index.js new file mode 100644 index 000000000..f251fb4ef --- /dev/null +++ b/src/select/styles/index.js @@ -0,0 +1,2 @@ +export { default as selectDark } from './dark.js' +export { default as selectLight } from './light.js' diff --git a/src/slider/styles/index.js b/src/slider/styles/index.js new file mode 100644 index 000000000..37fbd2885 --- /dev/null +++ b/src/slider/styles/index.js @@ -0,0 +1,2 @@ +export { default as sliderDark } from './dark.js' +export { default as sliderLight } from './light.js' diff --git a/src/space/styles/index.js b/src/space/styles/index.js new file mode 100644 index 000000000..f902b0b39 --- /dev/null +++ b/src/space/styles/index.js @@ -0,0 +1,2 @@ +export { default as spaceDark } from './dark.js' +export { default as spaceLight } from './light.js' diff --git a/src/spin/styles/index.js b/src/spin/styles/index.js new file mode 100644 index 000000000..5a5a0885a --- /dev/null +++ b/src/spin/styles/index.js @@ -0,0 +1,2 @@ +export { default as spinDark } from './dark.js' +export { default as spinLight } from './light.js' diff --git a/src/statistic/styles/index.js b/src/statistic/styles/index.js new file mode 100644 index 000000000..34b43dab9 --- /dev/null +++ b/src/statistic/styles/index.js @@ -0,0 +1,2 @@ +export { default as statisticDark } from './dark.js' +export { default as statisticLight } from './light.js' diff --git a/src/steps/styles/index.js b/src/steps/styles/index.js new file mode 100644 index 000000000..a87e2acb8 --- /dev/null +++ b/src/steps/styles/index.js @@ -0,0 +1,2 @@ +export { default as stepsDark } from './dark.js' +export { default as stepsLight } from './light.js' diff --git a/src/styles/index.js b/src/styles/index.js new file mode 100644 index 000000000..8a131e4d1 --- /dev/null +++ b/src/styles/index.js @@ -0,0 +1,294 @@ +/** internal style */ +export { + baseMenuMaskDark, + baseMenuMaskLight +} from '../_base/menu-mask/styles' +export { + baseSelectMenuDark, + baseSelectMenuLight +} from '../_base/select-menu/styles' +export { + baseSelectionDark, + baseSelectionLight +} from '../_base/selection/styles' +export { + baseSlotMachineDark, + baseSlotMachineLight +} from '../_base/slot-machine/styles' +export { + baseLoadingDark, + baseLoadingLight +} from '../_base/loading/styles' +/** exposed style */ +export { + baseDark, + baseLight +} from './base' +export { + tabsDark, + tabsLight +} from '../tabs/styles' +export { + treeDark, + treeLight +} from '../tree/styles' +export { + rateDark, + rateLight +} from '../rate/styles' +export { + dropdownDark, + dropdownLight +} from '../dropdown/styles' +export { + drawerDark, + drawerLight +} from '../drawer/styles' +export { + paginationDark, + paginationLight +} from '../pagination/styles' +export { + formDark, + formLight +} from '../form/styles' +export { + tooltipDark, + tooltipLight +} from '../tooltip/styles' +export { + resultDark, + resultLight +} from '../result/styles' +export { + radioDark, + radioLight +} from '../radio/styles' +export { + cardDark, + cardLight +} from '../card/styles' +export { + emptyDark, + emptyLight +} from '../empty/styles' +export { + inputNumberDark, + inputNumberLight +} from '../input-number/styles' +export { + autoCompleteDark, + autoCompleteLight +} from '../auto-complete/styles' +export { + progressDark, + progressLight +} from '../progress/styles' +export { + timePickerDark, + timePickerLight +} from '../time-picker/styles' +export { + inputDark, + inputLight +} from '../input/styles' +export { + notificationDark, + notificationLight +} from '../notification/styles' +export { + alertDark, + alertLight +} from '../alert/styles' +export { + popconfirmDark, + popconfirmLight +} from '../popconfirm/styles' +export { + layoutDark, + layoutLight +} from '../layout/styles' +export { + dynamicInputDark, + dynamicInputLight +} from '../dynamic-input/styles' +export { + cascaderDark, + cascaderLight +} from '../cascader/styles' +export { + checkboxDark, + checkboxLight +} from '../checkbox/styles' +export { + transferDark, + transferLight +} from '../transfer/styles' +export { + codeDark, + codeLight +} from '../code/styles' +export { + dynamicTagsDark, + dynamicTagsLight +} from '../dynamic-tags/styles' +export { + descriptionsDark, + descriptionsLight +} from '../descriptions/styles' +export { + sliderDark, + sliderLight +} from '../slider/styles' +export { + messageDark, + messageLight +} from '../message/styles' +export { + collapseDark, + collapseLight +} from '../collapse/styles' +export { + backTopDark, + backTopLight +} from '../back-top/styles' +export { + spinDark, + spinLight +} from '../spin/styles' +export { + popselectDark, + popselectLight +} from '../popselect/styles' +export { + timeDark, + timeLight +} from '../time/styles' +export { + dialogDark, + dialogLight +} from '../dialog/styles' +export { + thingDark, + thingLight +} from '../thing/styles' +export { + popoverDark, + popoverLight +} from '../popover/styles' +export { + buttonDark, + buttonLight +} from '../button/styles' +export { + stepsDark, + stepsLight +} from '../steps/styles' +export { + datePickerDark, + datePickerLight +} from '../date-picker/styles' +export { + tableDark, + tableLight +} from '../table/styles' +export { + loadingBarDark, + loadingBarLight +} from '../loading-bar/styles' +export { + listDark, + listLight +} from '../list/styles' +export { + dividerDark, + dividerLight +} from '../divider/styles' +export { + menuDark, + menuLight +} from '../menu/styles' +export { + avatarDark, + avatarLight +} from '../avatar/styles' +export { + typographyDark, + typographyLight +} from '../typography/styles' +export { + switchDark, + switchLight +} from '../switch/styles' +export { + logDark, + logLight +} from '../log/styles' +export { + anchorDark, + anchorLight +} from '../anchor/styles' +export { + selectDark, + selectLight +} from '../select/styles' +export { + statisticDark, + statisticLight +} from '../statistic/styles' +export { + breadcrumbDark, + breadcrumbLight +} from '../breadcrumb/styles' +export { + iconDark, + iconLight +} from '../icon/styles' +export { + modalDark, + modalLight +} from '../modal/styles' +export { + spaceDark, + spaceLight +} from '../space/styles' +export { + timelineDark, + timelineLight +} from '../timeline/styles' +export { + inputGroupLabelDark, + inputGroupLabelLight +} from '../input-group-label/styles' +export { + tagDark, + tagLight +} from '../tag/styles' +export { + scrollbarDark, + scrollbarLight +} from '../scrollbar/styles' +export { + affixDark, + affixLight +} from '../affix/styles' +export { + uploadDark, + uploadLight +} from '../upload/styles' +export { + gridDark, + gridLight +} from '../grid/styles' +export { + badgeDark, + badgeLight +} from '../badge/styles' +export { + dataTableDark, + dataTableLight +} from '../data-table/styles' +export { + gradientTextDark, + gradientTextLight +} from '../gradient-text/styles' diff --git a/src/switch/styles/index.js b/src/switch/styles/index.js new file mode 100644 index 000000000..4aebdbed9 --- /dev/null +++ b/src/switch/styles/index.js @@ -0,0 +1,2 @@ +export { default as switchDark } from './dark.js' +export { default as switchLight } from './light.js' diff --git a/src/table/styles/index.js b/src/table/styles/index.js new file mode 100644 index 000000000..7489aa95a --- /dev/null +++ b/src/table/styles/index.js @@ -0,0 +1,2 @@ +export { default as tableDark } from './dark.js' +export { default as tableLight } from './light.js' diff --git a/src/tabs/styles/index.js b/src/tabs/styles/index.js new file mode 100644 index 000000000..706a0cca6 --- /dev/null +++ b/src/tabs/styles/index.js @@ -0,0 +1,2 @@ +export { default as tabsDark } from './dark.js' +export { default as tabsLight } from './light.js' diff --git a/src/tag/styles/index.js b/src/tag/styles/index.js new file mode 100644 index 000000000..7edd5f681 --- /dev/null +++ b/src/tag/styles/index.js @@ -0,0 +1,2 @@ +export { default as tagDark } from './dark.js' +export { default as tagLight } from './light.js' diff --git a/src/thing/styles/index.js b/src/thing/styles/index.js new file mode 100644 index 000000000..a6b46eca0 --- /dev/null +++ b/src/thing/styles/index.js @@ -0,0 +1,2 @@ +export { default as thingDark } from './dark.js' +export { default as thingLight } from './light.js' diff --git a/src/time-picker/styles/index.js b/src/time-picker/styles/index.js new file mode 100644 index 000000000..538af51e1 --- /dev/null +++ b/src/time-picker/styles/index.js @@ -0,0 +1,2 @@ +export { default as timePickerDark } from './dark.js' +export { default as timePickerLight } from './light.js' diff --git a/src/time/styles/index.js b/src/time/styles/index.js new file mode 100644 index 000000000..a2e00ae2d --- /dev/null +++ b/src/time/styles/index.js @@ -0,0 +1,2 @@ +export { default as timeDark } from './dark.js' +export { default as timeLight } from './light.js' diff --git a/src/timeline/styles/index.js b/src/timeline/styles/index.js new file mode 100644 index 000000000..4b63acf10 --- /dev/null +++ b/src/timeline/styles/index.js @@ -0,0 +1,2 @@ +export { default as timelineDark } from './dark.js' +export { default as timelineLight } from './light.js' diff --git a/src/tooltip/styles/index.js b/src/tooltip/styles/index.js new file mode 100644 index 000000000..3cf4ca989 --- /dev/null +++ b/src/tooltip/styles/index.js @@ -0,0 +1,2 @@ +export { default as tooltipDark } from './dark.js' +export { default as tooltipLight } from './light.js' diff --git a/src/transfer/styles/index.js b/src/transfer/styles/index.js new file mode 100644 index 000000000..242f1cd48 --- /dev/null +++ b/src/transfer/styles/index.js @@ -0,0 +1,2 @@ +export { default as transferDark } from './dark.js' +export { default as transferLight } from './light.js' diff --git a/src/tree/styles/index.js b/src/tree/styles/index.js new file mode 100644 index 000000000..9497a0ef3 --- /dev/null +++ b/src/tree/styles/index.js @@ -0,0 +1,2 @@ +export { default as treeDark } from './dark.js' +export { default as treeLight } from './light.js' diff --git a/src/typography/styles/index.js b/src/typography/styles/index.js new file mode 100644 index 000000000..7682c329a --- /dev/null +++ b/src/typography/styles/index.js @@ -0,0 +1,2 @@ +export { default as typographyDark } from './dark.js' +export { default as typographyLight } from './light.js' diff --git a/src/upload/styles/index.js b/src/upload/styles/index.js new file mode 100644 index 000000000..bc73052e5 --- /dev/null +++ b/src/upload/styles/index.js @@ -0,0 +1,2 @@ +export { default as uploadDark } from './dark.js' +export { default as uploadLight } from './light.js'