fit2cloud-ui-plus 0.0.1-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +16 -0
  3. package/lib/favicon.bmp +0 -0
  4. package/lib/fit2cloud-ui-plus.es.js +3796 -0
  5. package/lib/fit2cloud-ui-plus.umd.js +1 -0
  6. package/package.json +48 -0
  7. package/src/components/filter-bar/FuFilter.vue +175 -0
  8. package/src/components/filter-bar/FuFilterBar.vue +75 -0
  9. package/src/components/filter-bar/FuFilterConditions.vue +29 -0
  10. package/src/components/filter-bar/FuSearchInput.vue +31 -0
  11. package/src/components/filter-bar/filter-components/FuFilterDate.vue +62 -0
  12. package/src/components/filter-bar/filter-components/FuFilterDateTime.vue +65 -0
  13. package/src/components/filter-bar/filter-components/FuFilterOption.vue +38 -0
  14. package/src/components/filter-bar/filter-components/FuFilterSelect.vue +143 -0
  15. package/src/components/filter-bar/index.ts +19 -0
  16. package/src/components/filter-bar/types.ts +31 -0
  17. package/src/components/read-write-switch/FuInputRwSwitch.vue +44 -0
  18. package/src/components/read-write-switch/FuReadWriteSwitch.vue +91 -0
  19. package/src/components/read-write-switch/FuSelectRwSwitch.vue +53 -0
  20. package/src/components/read-write-switch/index.ts +13 -0
  21. package/src/components/search-bar/FuComplexSearch.vue +108 -0
  22. package/src/components/search-bar/FuQuickSearch.vue +43 -0
  23. package/src/components/search-bar/FuSearchBar.vue +165 -0
  24. package/src/components/search-bar/FuSearchBarButton.vue +14 -0
  25. package/src/components/search-bar/FuSearchContions.vue +24 -0
  26. package/src/components/search-bar/index.ts +13 -0
  27. package/src/components/search-bar/store.ts +25 -0
  28. package/src/components/speed-dial/FuSpeedDial.vue +280 -0
  29. package/src/components/speed-dial/FuSpeedDialActionButton.vue +88 -0
  30. package/src/components/speed-dial/FuSpeedDialButton.vue +42 -0
  31. package/src/components/speed-dial/FuSpeedDialItem.vue +88 -0
  32. package/src/components/speed-dial/index.ts +11 -0
  33. package/src/components/split-pane/FuSplitPane.vue +228 -0
  34. package/src/components/split-pane/index.ts +8 -0
  35. package/src/components/steps/FuHorizontalNavigation.vue +18 -0
  36. package/src/components/steps/FuHorizontalSteps.vue +94 -0
  37. package/src/components/steps/FuStep.vue +13 -0
  38. package/src/components/steps/FuSteps.vue +22 -0
  39. package/src/components/steps/FuStepsFooter.ts +79 -0
  40. package/src/components/steps/FuVerticalNavigation.vue +35 -0
  41. package/src/components/steps/FuVerticalSteps.vue +79 -0
  42. package/src/components/steps/Stepper.ts +188 -0
  43. package/src/components/steps/index.ts +11 -0
  44. package/src/components/table/FuTable.vue +145 -0
  45. package/src/components/table/FuTableBody.ts +40 -0
  46. package/src/components/table/FuTablePagination.vue +42 -0
  47. package/src/components/table/index.ts +15 -0
  48. package/src/components/table/table-column-dropdown/FuTableColumnDropdown.vue +102 -0
  49. package/src/components/table/table-column-dropdown/index.ts +7 -0
  50. package/src/components/table/table-column-select/FuTableColumnSelect.vue +22 -0
  51. package/src/components/table/table-column-select/FuTableColumnSelectDialog.vue +99 -0
  52. package/src/components/table/table-column-select/FuTableColumnSelectPopover.vue +80 -0
  53. package/src/components/table/table-column-select/index.ts +8 -0
  54. package/src/components/table/table-column-select/utils.ts +59 -0
  55. package/src/components/table/table-operations/FuTableButton.vue +19 -0
  56. package/src/components/table/table-operations/FuTableMoreButton.vue +52 -0
  57. package/src/components/table/table-operations/FuTableOperations.vue +88 -0
  58. package/src/components/table/table-operations/index.ts +12 -0
  59. package/src/components/tabs/FuTabs.vue +84 -0
  60. package/src/components/tabs/index.ts +8 -0
  61. package/src/components/virtual-scroller/FuVirtualHorizontalScroll.js +96 -0
  62. package/src/components/virtual-scroller/FuVirtualScroll.js +15 -0
  63. package/src/components/virtual-scroller/FuVirtualVerticalScroll.js +95 -0
  64. package/src/components/virtual-scroller/index.js +10 -0
  65. package/src/hooks/index.ts +3 -0
  66. package/src/hooks/use-global-config/index.ts +32 -0
  67. package/src/hooks/use-locale/index.ts +47 -0
  68. package/src/index.ts +19 -0
  69. package/src/locale/index.ts +12 -0
  70. package/src/locale/lang/en.ts +58 -0
  71. package/src/locale/lang/zh-cn.ts +58 -0
  72. package/src/locale/lang/zh-tw.ts +58 -0
  73. package/src/styles/common/config.scss +5 -0
  74. package/src/styles/common/function.scss +81 -0
  75. package/src/styles/common/mixins.scss +85 -0
  76. package/src/styles/common/variables.scss +28 -0
  77. package/src/styles/components/filter-bar.scss +227 -0
  78. package/src/styles/components/read-write-switch.scss +6 -0
  79. package/src/styles/components/search-bar.scss +285 -0
  80. package/src/styles/components/speed-dial.scss +107 -0
  81. package/src/styles/components/split-pane.scss +111 -0
  82. package/src/styles/components/steps.scss +110 -0
  83. package/src/styles/components/table.scss +105 -0
  84. package/src/styles/components/tabs.scss +10 -0
  85. package/src/styles/components/virtual-scroller.scss +24 -0
  86. package/src/styles/index.scss +11 -0
  87. package/src/tools/theme.ts +23 -0
  88. package/src/tools/time.ts +30 -0
  89. package/src/tools/utils.ts +60 -0
@@ -0,0 +1,47 @@
1
+ import { computed, isRef, ref, unref } from 'vue'
2
+ import { get } from 'lodash-unified'
3
+ import Chinese from '@/locale/lang/zh-cn'
4
+ import { useGlobalConfig } from '../use-global-config'
5
+ import type { MaybeRef } from '@vueuse/core'
6
+ import type { Ref } from 'vue'
7
+ import type { Language } from '@/locale'
8
+
9
+ export type TranslatorOption = Record<string, string | number>
10
+ export type Translator = (path: string, option?: TranslatorOption) => string
11
+ export type LocaleContext = {
12
+ locale: Ref<Language>
13
+ lang: Ref<string>
14
+ t: Translator
15
+ }
16
+
17
+ export const buildTranslator =
18
+ (locale: MaybeRef<Language>): Translator =>
19
+ (path, option) =>
20
+ translate(path, option, unref(locale))
21
+
22
+ export const translate = (
23
+ path: string,
24
+ option: undefined | TranslatorOption,
25
+ locale: Language
26
+ ): string =>
27
+ (get(locale, path, path) as string).replace(
28
+ /\{(\w+)\}/g,
29
+ (_, key) => `${option?.[key] ?? `{${key}}`}`
30
+ )
31
+
32
+ export const buildLocaleContext = (
33
+ locale: MaybeRef<Language>
34
+ ): LocaleContext => {
35
+ const lang = computed(() => unref(locale).name)
36
+ const localeRef = isRef(locale) ? locale : ref(locale)
37
+ return {
38
+ lang,
39
+ locale: localeRef,
40
+ t: buildTranslator(locale),
41
+ }
42
+ }
43
+
44
+ export const useLocale = () => {
45
+ const locale = useGlobalConfig('locale')
46
+ return buildLocaleContext(computed(() => locale.value || Chinese))
47
+ }
package/src/index.ts ADDED
@@ -0,0 +1,19 @@
1
+ import PackageJSON from "../package.json"
2
+
3
+ import type { App } from 'vue'
4
+ const components = import.meta.globEager('@/components/*/index.ts');
5
+
6
+ const install = (app: App): void => {
7
+ Object.keys(components).forEach(key => {
8
+ let component = components[key].default;
9
+ app.use(component)
10
+ })
11
+ }
12
+
13
+ const plugin = {
14
+ name: "Fit2CloudUIPlus",
15
+ version: PackageJSON.version,
16
+ install,
17
+ }
18
+
19
+ export default plugin
@@ -0,0 +1,12 @@
1
+ export { default as en } from './lang/en'
2
+ export { default as zhCn } from './lang/zh-cn'
3
+ export { default as zhTw } from './lang/zh-tw'
4
+
5
+ export type TranslatePair = {
6
+ [key: string]: string | string[] | TranslatePair
7
+ }
8
+
9
+ export type Language = {
10
+ name: string
11
+ el: TranslatePair
12
+ }
@@ -0,0 +1,58 @@
1
+ export default {
2
+ name: 'en',
3
+ fu: {
4
+ filter_bar: {
5
+ filter: "Filter",
6
+ results: "Items",
7
+ clear: "Clear",
8
+ drawer_title: "Filter",
9
+ cancel: "Cancel",
10
+ search: "Search",
11
+ select_all: "Select All",
12
+ more: "More"
13
+ },
14
+ search_bar: {
15
+ search: "Search",
16
+ adv_search: "Advanced Search",
17
+ ok: "OK",
18
+ cancel: "Cancel",
19
+ please_select: "Please select",
20
+ please_input: "Please input",
21
+ like: "Contains",
22
+ not_like: "not included",
23
+ in: "belongs to",
24
+ not_in: "Does not belong",
25
+ gt: "Greater Than",
26
+ ge: "Greater than or equal",
27
+ lt: "Less than",
28
+ le: "Less than or equal to",
29
+ eq: "equal to",
30
+ ne: "not equal to",
31
+ between: "Between",
32
+ select_date: 'Select date',
33
+ start_date: 'Start date',
34
+ end_date: 'End date',
35
+ select_date_time: 'Select date and time',
36
+ start_date_time: 'Start date and time',
37
+ end_date_time: 'End date and time',
38
+ range_separator: "to",
39
+ data_time_error: "The start date cannot be greater than the end date",
40
+ clean: "Clean",
41
+ refresh: "Refresh"
42
+ },
43
+ table: {
44
+ ok: "OK",
45
+ reset: "Reset",
46
+ custom_table_fields: "Custom table fields",
47
+ custom_table_fields_desc: "Fixed field is unselectable, others can be checked and dragged",
48
+ custom_table_rows: "Table rows",
49
+ more: "More"
50
+ },
51
+ steps: {
52
+ cancel: "Cancel",
53
+ next: "Next",
54
+ prev: "Prev",
55
+ finish: "OK",
56
+ }
57
+ }
58
+ }
@@ -0,0 +1,58 @@
1
+ export default {
2
+ name: 'zh-cn',
3
+ fu: {
4
+ filter_bar: {
5
+ filter: "筛选",
6
+ results: "个结果",
7
+ clear: "清空条件",
8
+ drawer_title: "筛选条件",
9
+ cancel: "取消",
10
+ search: "查询",
11
+ select_all: "全选",
12
+ more: "更多"
13
+ },
14
+ search_bar: {
15
+ search: "搜索",
16
+ adv_search: "高级搜索",
17
+ ok: "确定",
18
+ cancel: "取消",
19
+ please_select: "请选择",
20
+ please_input: "请输入",
21
+ like: "包含",
22
+ not_like: "不包含",
23
+ in: "属于",
24
+ not_in: "不属于",
25
+ gt: "大于",
26
+ ge: "大于等于",
27
+ lt: "小于",
28
+ le: "小于等于",
29
+ eq: "等于",
30
+ ne: "不等于",
31
+ between: "之间",
32
+ select_date: '选择日期',
33
+ start_date: '开始日期',
34
+ end_date: '结束日期',
35
+ select_date_time: '选择日期时间',
36
+ start_date_time: '开始日期时间',
37
+ end_date_time: '结束日期时间',
38
+ range_separator: "至",
39
+ data_time_error: "开始日期不能大于结束日期",
40
+ clean: "清空",
41
+ refresh: "刷新",
42
+ },
43
+ table: {
44
+ ok: "确定",
45
+ reset: "重置",
46
+ custom_table_fields: "自定义表格字段",
47
+ custom_table_fields_desc: "固定字段不在选择范围,可拖拽自定义顺序",
48
+ custom_table_rows: "选项列",
49
+ more: "更多"
50
+ },
51
+ steps: {
52
+ cancel: "取消",
53
+ next: "下一步",
54
+ prev: "上一步",
55
+ finish: "完成",
56
+ }
57
+ }
58
+ }
@@ -0,0 +1,58 @@
1
+ export default {
2
+ name: 'zh-tw',
3
+ fu: {
4
+ filter_bar: {
5
+ filter: "篩選",
6
+ results: "個結果",
7
+ clear: "清空條件",
8
+ drawer_title: "篩選條件",
9
+ cancel: "取消",
10
+ search: "查詢",
11
+ select_all: "全選",
12
+ more: "更多"
13
+ },
14
+ search_bar: {
15
+ search: "搜索",
16
+ adv_search: "高級搜索",
17
+ ok: "確定",
18
+ cancel: "取消",
19
+ please_select: "請選擇",
20
+ please_input: "請輸入",
21
+ like: "包含",
22
+ not_like: "不包含",
23
+ in: "屬於",
24
+ not_in: "不屬於",
25
+ gt: "大於",
26
+ ge: "大於等於",
27
+ lt: "小於",
28
+ le: "小於等於",
29
+ eq: "等於",
30
+ ne: "不等於",
31
+ between: "之間",
32
+ select_date: '選擇日期',
33
+ start_date: '開始日期',
34
+ end_date: '結束日期',
35
+ select_date_time: '選擇日期時間',
36
+ start_date_time: '開始日期時間',
37
+ end_date_time: '結束日期時間',
38
+ range_separator: "至",
39
+ data_time_error: "開始日期不能大於結束日期",
40
+ clean: "清空",
41
+ refresh: "刷新",
42
+ },
43
+ table: {
44
+ ok: "確定",
45
+ reset: "重置",
46
+ custom_table_fields: "自定義表格字段",
47
+ custom_table_fields_desc: "固定欄位不在選擇範圍,可拖拽自定義順序",
48
+ custom_table_rows: "選項列",
49
+ more: "更多"
50
+ },
51
+ steps: {
52
+ cancel: "取消",
53
+ next: "下一步",
54
+ prev: "上一步",
55
+ finish: "完成",
56
+ }
57
+ }
58
+ }
@@ -0,0 +1,5 @@
1
+ $namespace: 'fu' !default;
2
+ $common-separator: '-';
3
+ $element-separator: '__';
4
+ $modifier-separator: '--';
5
+ $state-prefix: 'is-';
@@ -0,0 +1,81 @@
1
+ @use 'config';
2
+
3
+ // BEM support Func
4
+ @function selectorToString($selector) {
5
+ $selector: inspect($selector);
6
+ $selector: str-slice($selector, 2, -2);
7
+ @return $selector;
8
+ }
9
+
10
+ @function containsModifier($selector) {
11
+ $selector: selectorToString($selector);
12
+
13
+ @if str-index($selector, config.$modifier-separator) {
14
+ @return true;
15
+ } @else {
16
+ @return false;
17
+ }
18
+ }
19
+
20
+ @function containWhenFlag($selector) {
21
+ $selector: selectorToString($selector);
22
+
23
+ @if str-index($selector, '.' + config.$state-prefix) {
24
+ @return true;
25
+ } @else {
26
+ @return false;
27
+ }
28
+ }
29
+
30
+ @function containPseudoClass($selector) {
31
+ $selector: selectorToString($selector);
32
+
33
+ @if str-index($selector, ':') {
34
+ @return true;
35
+ } @else {
36
+ @return false;
37
+ }
38
+ }
39
+
40
+ @function hitAllSpecialNestRule($selector) {
41
+ @return containsModifier($selector) or containWhenFlag($selector) or
42
+ containPseudoClass($selector);
43
+ }
44
+
45
+ // join var name
46
+ // joinVarName(('button', 'text-color')) => '--el-button-text-color'
47
+ @function joinVarName($list) {
48
+ $name: '--' + config.$namespace;
49
+ @each $item in $list {
50
+ @if $item != '' {
51
+ $name: $name + '-' + $item;
52
+ }
53
+ }
54
+ @return $name;
55
+ }
56
+
57
+ // getCssVarName('button', 'text-color') => '--el-button-text-color'
58
+ @function getCssVarName($args...) {
59
+ @return joinVarName($args);
60
+ }
61
+
62
+ // getCssVar('button', 'text-color') => var(--el-button-text-color)
63
+ @function getCssVar($args...) {
64
+ @return var(#{joinVarName($args)});
65
+ }
66
+
67
+ // bem('block', 'element', 'modifier') => 'el-block__element--modifier'
68
+ @function bem($block, $element: '', $modifier: '') {
69
+ $name: config.$namespace + config.$common-separator + $block;
70
+
71
+ @if $element != '' {
72
+ $name: $name + config.$element-separator + $element;
73
+ }
74
+
75
+ @if $modifier != '' {
76
+ $name: $name + config.$modifier-separator + $modifier;
77
+ }
78
+
79
+ // @debug $name;
80
+ @return $name;
81
+ }
@@ -0,0 +1,85 @@
1
+ @use 'function' as *;
2
+ @use 'variables' as *;
3
+ // forward mixins
4
+ @forward 'config';
5
+ @forward 'function';
6
+ @use 'config' as *;
7
+
8
+ // BEM
9
+ @mixin b($block) {
10
+ $B: $namespace + '-' + $block !global;
11
+
12
+ .#{$B} {
13
+ @content;
14
+ }
15
+ }
16
+
17
+ @mixin e($element) {
18
+ $E: $element !global;
19
+ $selector: &;
20
+ $currentSelector: "";
21
+ @each $unit in $element {
22
+ $currentSelector: #{$currentSelector + "." + $B + $element-separator + $unit + ","};
23
+ }
24
+
25
+ @if hitAllSpecialNestRule($selector) {
26
+ @at-root {
27
+ #{$selector} {
28
+ #{$currentSelector} {
29
+ @content;
30
+ }
31
+ }
32
+ }
33
+ } @else {
34
+ @at-root {
35
+ #{$currentSelector} {
36
+ @content;
37
+ }
38
+ }
39
+ }
40
+ }
41
+
42
+ @mixin m($modifier) {
43
+ $selector: &;
44
+ $currentSelector: "";
45
+ @each $unit in $modifier {
46
+ $currentSelector: #{$currentSelector + & + $modifier-separator + $unit + ","};
47
+ }
48
+
49
+ @at-root {
50
+ #{$currentSelector} {
51
+ @content;
52
+ }
53
+ }
54
+ }
55
+
56
+ @mixin when($state) {
57
+ @at-root {
58
+ &.#{$state-prefix + $state} {
59
+ @content;
60
+ }
61
+ }
62
+ }
63
+
64
+ @mixin pseudo($pseudo) {
65
+ @at-root #{&}#{':#{$pseudo}'} {
66
+ @content
67
+ }
68
+ }
69
+
70
+ @mixin flex-row($justify: flex-start, $align: stretch) {
71
+ display: flex;
72
+ @if $justify != flex-start {
73
+ justify-content: $justify;
74
+ }
75
+ @if $align != stretch {
76
+ align-items: $align;
77
+ }
78
+ }
79
+
80
+ @mixin active-scale($scale:0.95) {
81
+ &:active {
82
+ transform: scale($scale);
83
+ }
84
+ }
85
+
@@ -0,0 +1,28 @@
1
+
2
+ @forward 'element-plus/theme-chalk/src/common/var.scss' with (
3
+ $colors: (
4
+ 'primary': (
5
+ 'base': #004A71,
6
+ ),
7
+ ),
8
+ $table: (
9
+ 'border-color' : rgba(31, 35, 41, 0.15),
10
+ 'header-text-color': '#646A73',
11
+ 'text-color': '#1F2329',
12
+
13
+ )
14
+ );
15
+
16
+ // fit2cloud ui variables
17
+
18
+ $filter-color: #646A73 !default;
19
+ $filter-drawer-color: #646A73 !default;
20
+ $filter-condition-color: #0C296E !default;
21
+ $filter-condition-bgColor: rgba(51, 112, 255, 0.1) !default;
22
+ $filter-option-bgColor: #F5F6F7 !default;
23
+ $filter-scroll-bgColor: rgba(31, 35, 41, 0.1) !default;
24
+
25
+ // $fu-search-bar-width: 100% !default;
26
+ // $fu-search-bar-height: 48px !default;
27
+ // $fu-search-bar-condition-color: #424242 !default;
28
+ // $fu-search-bar-condition-bgColor: #E6E6E6 !default;
@@ -0,0 +1,227 @@
1
+ @use "../common/mixins.scss" as *;
2
+ @use "../common/variables.scss" as *;
3
+
4
+ @include b(filter-bar) {
5
+ border-radius: 4px;
6
+ @include e(top) {
7
+ display: flex;
8
+ .top_left {
9
+ width: 50%;
10
+ display: flex;
11
+ }
12
+
13
+ .top_right {
14
+ width: 50%;
15
+ display: flex;
16
+ justify-content: flex-end;
17
+ }
18
+
19
+ }
20
+ }
21
+
22
+ @include b(search-input) {
23
+ width: 240px;
24
+ margin-right: 10px;
25
+ .el-input__prefix, .el-input__suffix {
26
+ .el-input__icon {
27
+ color: $filter-color;
28
+ font-size: 14px
29
+ }
30
+ }
31
+
32
+ .el-icon-circle-close:before {
33
+ content: "\e79d"
34
+ }
35
+ }
36
+
37
+ @include b(filter) {
38
+ display: flex;
39
+ align-items: center;
40
+ padding: 16px 0;
41
+
42
+ @include e(result) {
43
+ font-style: normal;
44
+ font-weight: 400;
45
+ font-size: 14px;
46
+ line-height: 22px;
47
+ white-space: nowrap;
48
+ }
49
+
50
+ @include e(split) {
51
+ background-color: $filter-color;
52
+ height: 16px;
53
+ width: 1px;
54
+ margin: 2px 8px;
55
+ }
56
+ @include e(scroll) {
57
+ display: flex;
58
+ align-items: center;
59
+ justify-content: center;
60
+ min-width: 24px;
61
+ height: 24px;
62
+ cursor: pointer;
63
+ margin: 0 2px;
64
+
65
+ &:hover {
66
+ background: $filter-scroll-bgColor;
67
+ border-radius: 4px;
68
+ }
69
+
70
+ &:active {
71
+ transform: scale(0.9)
72
+ }
73
+ }
74
+ @include e(clear) {
75
+ display: flex;
76
+ align-items: center;
77
+ justify-content: space-between;
78
+ font-size: 14px;
79
+ line-height: 22px;
80
+ height: 22px;
81
+ min-width: 76px;
82
+ max-width: 76px;
83
+ color: $filter-color;
84
+ cursor: pointer;
85
+ margin-left: 6px;
86
+ }
87
+
88
+ @include e(drawer) {
89
+ .el-drawer__header {
90
+ font-weight: 500;
91
+ font-size: 16px;
92
+ line-height: 24px;
93
+ height: 56px;
94
+ padding: 16px 24px;
95
+ margin-bottom: 0;
96
+ border-bottom: 1px solid rgba(187, 191, 196, 0.5);
97
+ box-sizing: border-box;
98
+ }
99
+
100
+ .drawer-body {
101
+ position: absolute;
102
+ top: 56px;
103
+ bottom: 72px;
104
+ width: 100%;
105
+ padding: 12px 24px;
106
+ overflow-y: auto;
107
+ }
108
+
109
+ .drawer-footer {
110
+ position: absolute;
111
+ bottom: 0;
112
+ width: 100%;
113
+ height: 72px;
114
+ padding: 0 24px;
115
+ display: flex;
116
+ justify-content: flex-end;
117
+ align-items: center;
118
+ }
119
+ }
120
+ }
121
+
122
+ @include b(filter-conditions) {
123
+ display: flex;
124
+ align-items: center;
125
+ white-space: nowrap;
126
+ overflow-x: scroll;
127
+
128
+ &::-webkit-scrollbar {
129
+ height: 0;
130
+ }
131
+
132
+ @include e(item) {
133
+ display: flex;
134
+ flex-direction: row;
135
+ align-items: center;
136
+ padding: 1px 6px;
137
+ box-sizing: border-box;
138
+ height: 24px;
139
+ background-color: $filter-condition-bgColor;
140
+ border-radius: 2px;
141
+ color: $filter-condition-color;
142
+
143
+ & + & {
144
+ margin-left: 8px;
145
+ }
146
+
147
+ .condition-text {
148
+ font-size: 14px;
149
+ line-height: 22px;
150
+ height: 22px;
151
+ white-space: nowrap;
152
+ text-overflow: ellipsis;
153
+ overflow: hidden;
154
+ word-break: break-all;
155
+ max-width: 254px;
156
+ margin-right: 6px;
157
+ }
158
+ }
159
+ }
160
+
161
+ @include b(filter-component) {
162
+ display: flex;
163
+ min-height: 46px;
164
+
165
+ @include e(label) {
166
+ font-size: 14px;
167
+ line-height: 22px;
168
+ min-width: 122px;
169
+ margin: 12px 0;
170
+ }
171
+
172
+ @include e(content) {
173
+ display: flex;
174
+ align-items: center;
175
+ flex-wrap: wrap;
176
+ }
177
+ }
178
+
179
+ @include b(filter-component-popover) {
180
+ &.el-popover.el-popper {
181
+ display: flex;
182
+ align-items: center;
183
+ box-shadow: none;
184
+ border: none;
185
+ padding: 0;
186
+ width: 240px;
187
+
188
+ .el-select {
189
+ width: 100%;
190
+ }
191
+ }
192
+ }
193
+
194
+ @include b(filter-option) {
195
+ display: flex;
196
+ align-items: center;
197
+ padding: 1px 6px;
198
+ font-size: 14px;
199
+ line-height: 22px;
200
+ background-color: $filter-option-bgColor;
201
+ border-radius: 2px;
202
+ cursor: pointer;
203
+ margin: 6px;
204
+
205
+ &.is-selected, &:hover {
206
+ background: $filter-condition-bgColor;
207
+ color: $filter-condition-color;
208
+ }
209
+
210
+ &:active {
211
+ transform: scale(0.9)
212
+ }
213
+ }
214
+
215
+ @include b(filter-date) {
216
+ margin-left: 6px;
217
+ &.el-date-editor {
218
+ width: 100% !important;
219
+ }
220
+ }
221
+
222
+ @include b(scale-click) {
223
+ cursor: pointer;
224
+ &:active {
225
+ transform: scale(0.9)
226
+ }
227
+ }
@@ -0,0 +1,6 @@
1
+ @use "../common/mixins.scss" as *;
2
+ @use "../common/variables.scss" as *;
3
+
4
+ @include b(read-write-switch) {
5
+ min-height: 20px;
6
+ }