quill-table-up 3.1.2 → 3.2.1

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 (111) hide show
  1. package/README.md +15 -8
  2. package/dist/index.css +1 -1
  3. package/dist/index.d.ts +168 -146
  4. package/dist/index.js +47 -47
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.umd.js +52 -52
  7. package/dist/index.umd.js.map +1 -1
  8. package/package.json +22 -24
  9. package/src/__tests__/e2e/custom-creator.test.ts +44 -44
  10. package/src/__tests__/e2e/editor-page.ts +77 -77
  11. package/src/__tests__/e2e/table-align.test.ts +104 -104
  12. package/src/__tests__/e2e/table-blots.test.ts +169 -169
  13. package/src/__tests__/e2e/table-caption.test.ts +134 -134
  14. package/src/__tests__/e2e/table-clipboard.test.ts +20 -20
  15. package/src/__tests__/e2e/table-hack.test.ts +151 -151
  16. package/src/__tests__/e2e/table-keyboard-handler.test.ts +20 -4
  17. package/src/__tests__/e2e/table-menu.test.ts +172 -172
  18. package/src/__tests__/e2e/table-resize.test.ts +654 -9
  19. package/src/__tests__/e2e/table-scrollbar.test.ts +144 -144
  20. package/src/__tests__/e2e/table-selection.test.ts +563 -563
  21. package/src/__tests__/e2e/types.d.ts +8 -7
  22. package/src/__tests__/e2e/utils.ts +52 -52
  23. package/src/__tests__/unit/table-blots.test.ts +720 -720
  24. package/src/__tests__/unit/table-caption.test.ts +234 -234
  25. package/src/__tests__/unit/table-cell-merge.test.ts +713 -724
  26. package/src/__tests__/unit/table-clipboard.test.ts +2176 -2176
  27. package/src/__tests__/unit/table-hack.test.ts +1014 -1014
  28. package/src/__tests__/unit/table-insert.test.ts +915 -926
  29. package/src/__tests__/unit/table-redo-undo.test.ts +2429 -2429
  30. package/src/__tests__/unit/table-remove.test.ts +313 -343
  31. package/src/__tests__/unit/utils.test-d.ts +49 -49
  32. package/src/__tests__/unit/utils.test.ts +711 -711
  33. package/src/__tests__/unit/utils.ts +307 -307
  34. package/src/__tests__/unit/vitest.d.ts +14 -14
  35. package/src/formats/container-format.ts +107 -107
  36. package/src/formats/overrides/block-embed.ts +72 -72
  37. package/src/formats/overrides/block.ts +95 -95
  38. package/src/formats/overrides/index.ts +3 -3
  39. package/src/formats/overrides/scroll.ts +70 -70
  40. package/src/formats/table-body-format.ts +52 -52
  41. package/src/formats/table-caption-format.ts +116 -116
  42. package/src/formats/table-cell-format.ts +304 -304
  43. package/src/formats/table-cell-inner-format.ts +403 -398
  44. package/src/formats/table-colgroup-format.ts +136 -136
  45. package/src/formats/table-foot-format.ts +7 -7
  46. package/src/formats/table-head-format.ts +7 -7
  47. package/src/formats/table-main-format.ts +1 -1
  48. package/src/formats/table-row-format.ts +218 -210
  49. package/src/formats/utils.ts +6 -6
  50. package/src/index.ts +19 -19
  51. package/src/modules/index.ts +7 -7
  52. package/src/modules/table-align.ts +131 -131
  53. package/src/modules/table-clipboard/table-clipboard.ts +6 -8
  54. package/src/modules/table-dom-selector.ts +33 -33
  55. package/src/modules/table-menu/constants.ts +223 -223
  56. package/src/modules/table-menu/index.ts +4 -4
  57. package/src/modules/table-menu/table-menu-common.ts +330 -329
  58. package/src/modules/table-menu/table-menu-contextmenu.ts +111 -118
  59. package/src/modules/table-menu/table-menu-select.ts +96 -94
  60. package/src/modules/table-resize/index.ts +5 -5
  61. package/src/modules/table-resize/table-resize-box.ts +714 -363
  62. package/src/modules/table-resize/table-resize-common.ts +246 -382
  63. package/src/modules/table-resize/table-resize-drag.ts +241 -0
  64. package/src/modules/table-resize/table-resize-line.ts +244 -182
  65. package/src/modules/table-resize/table-resize-scale.ts +174 -173
  66. package/src/modules/table-resize/utils.ts +84 -3
  67. package/src/modules/table-scrollbar.ts +292 -292
  68. package/src/modules/table-selection.ts +613 -669
  69. package/src/style/button.less +45 -45
  70. package/src/style/color-picker.less +136 -136
  71. package/src/style/dialog.less +53 -53
  72. package/src/style/functions.less +9 -9
  73. package/src/style/index.less +120 -120
  74. package/src/style/input.less +64 -64
  75. package/src/style/select-box.less +52 -52
  76. package/src/style/table-creator.less +56 -56
  77. package/src/style/table-menu.less +125 -125
  78. package/src/style/table-resize-scale.less +31 -31
  79. package/src/style/table-resize.less +249 -202
  80. package/src/style/table-scrollbar.less +49 -49
  81. package/src/style/table-selection.less +23 -23
  82. package/src/style/tooltip.less +19 -19
  83. package/src/style/variables.less +1 -1
  84. package/src/svg/arrow-up-down.svg +11 -11
  85. package/src/svg/convert-cell.svg +7 -7
  86. package/src/table-up.ts +1363 -1360
  87. package/src/types.d.ts +4 -4
  88. package/src/utils/bem.ts +23 -23
  89. package/src/utils/blot-helper.ts +101 -105
  90. package/src/utils/color.ts +109 -109
  91. package/src/utils/components/button.ts +22 -22
  92. package/src/utils/components/color-picker.ts +236 -236
  93. package/src/utils/components/dialog.ts +83 -41
  94. package/src/utils/components/index.ts +6 -6
  95. package/src/utils/components/input.ts +74 -74
  96. package/src/utils/components/table/creator.ts +89 -89
  97. package/src/utils/components/table/index.ts +2 -2
  98. package/src/utils/components/table/select-box.ts +78 -78
  99. package/src/utils/components/tooltip.ts +179 -189
  100. package/src/utils/constants.ts +125 -124
  101. package/src/utils/drag-helper.ts +112 -0
  102. package/src/utils/index.ts +15 -14
  103. package/src/utils/is.ts +9 -9
  104. package/src/utils/position.ts +60 -60
  105. package/src/utils/resize-observer-helper.ts +47 -47
  106. package/src/utils/scroll.ts +145 -47
  107. package/src/utils/style-helper.ts +47 -47
  108. package/src/utils/transformer.ts +10 -10
  109. package/src/utils/transition-event-helper.ts +8 -8
  110. package/src/utils/types.ts +156 -157
  111. package/src/utils/utils.ts +12 -12
@@ -1,120 +1,120 @@
1
- .ql-toolbar {
2
- .ql-picker:not(.ql-color-picker):not(.ql-icon-picker).ql-table-up {
3
- width: 28px;
4
- .ql-picker-label {
5
- padding: 2px 4px;
6
- svg {
7
- position: static;
8
- margin-top: 0;
9
- }
10
- }
11
- }
12
- .ql-picker.ql-expanded .ql-picker-options {
13
- z-index: 1;
14
- }
15
- }
16
-
17
- .ql-editor {
18
- .ql {
19
- &-table {
20
- display: table;
21
- border-collapse: collapse;
22
- table-layout: fixed;
23
- width: auto;
24
- &[data-full] {
25
- width: 100%;
26
- }
27
- &-wrapper {
28
- width: 100%;
29
- overflow: auto;
30
- }
31
- &-caption {
32
- position: relative;
33
- word-break: break-word;
34
- outline: none;
35
- .ql-table-caption--switch {
36
- display: flex;
37
- align-items: center;
38
- justify-content: center;
39
- padding: 2px;
40
- border-radius: 4px;
41
- border: 1px solid #0003;
42
- font-size: 12px;
43
- cursor: pointer;
44
- background-color: #ffffff;
45
- &:hover {
46
- background-color: #eeeeee;
47
- }
48
- }
49
- }
50
- &-cell {
51
- padding: 8px 12px;
52
- border-color: transparent;
53
- font-size: 14px;
54
- outline: none;
55
- overflow: auto;
56
- &-inner {
57
- display: inline-block;
58
- min-width: 100%;
59
- word-break: break-word;
60
- outline: none;
61
- counter-reset: list-0;
62
- }
63
- }
64
- col {
65
- border-collapse: separate;
66
- text-indent: initial;
67
- display: table-column;
68
- table-layout: fixed;
69
- }
70
- tr + tr {
71
- td,
72
- th {
73
- border-top: none;
74
- }
75
- }
76
- td,
77
- th {
78
- border: 1px solid #a1a1aa;
79
- & + td,
80
- & + th {
81
- border-left: none;
82
- }
83
- }
84
- }
85
- }
86
- }
87
-
88
- .@{namespace} {
89
- &-toolbox {
90
- position: absolute;
91
- top: 0px;
92
- left: 0px;
93
- width: 100%;
94
- height: 100%;
95
- overflow: hidden;
96
- pointer-events: none;
97
- * {
98
- pointer-events: all;
99
- }
100
- }
101
- }
102
-
103
- @import './tooltip.less';
104
- @import './dialog.less';
105
- @import './color-picker.less';
106
-
107
- .@{namespace}-tooltip {
108
- .@{namespace}-color-picker {
109
- .setCssVar(color-picker-bg-color, transparent);
110
- box-shadow: none;
111
- width: 252px;
112
- padding: 8px 0px;
113
- }
114
- }
115
-
116
- @import './table-selection.less';
117
- @import './table-resize.less';
118
- @import './table-resize-scale.less';
119
- @import './table-scrollbar.less';
120
- @import './table-menu.less';
1
+ .ql-toolbar {
2
+ .ql-picker:not(.ql-color-picker):not(.ql-icon-picker).ql-table-up {
3
+ width: 28px;
4
+ .ql-picker-label {
5
+ padding: 2px 4px;
6
+ svg {
7
+ position: static;
8
+ margin-top: 0;
9
+ }
10
+ }
11
+ }
12
+ .ql-picker.ql-expanded .ql-picker-options {
13
+ z-index: 1;
14
+ }
15
+ }
16
+
17
+ .ql-editor {
18
+ .ql {
19
+ &-table {
20
+ display: table;
21
+ border-collapse: collapse;
22
+ table-layout: fixed;
23
+ width: auto;
24
+ &[data-full] {
25
+ width: 100%;
26
+ }
27
+ &-wrapper {
28
+ width: 100%;
29
+ overflow: auto;
30
+ }
31
+ &-caption {
32
+ position: relative;
33
+ word-break: break-word;
34
+ outline: none;
35
+ .ql-table-caption--switch {
36
+ display: flex;
37
+ align-items: center;
38
+ justify-content: center;
39
+ padding: 2px;
40
+ border-radius: 4px;
41
+ border: 1px solid #0003;
42
+ font-size: 12px;
43
+ cursor: pointer;
44
+ background-color: #ffffff;
45
+ &:hover {
46
+ background-color: #eeeeee;
47
+ }
48
+ }
49
+ }
50
+ &-cell {
51
+ padding: 8px 12px;
52
+ border-color: transparent;
53
+ font-size: 14px;
54
+ outline: none;
55
+ overflow: auto;
56
+ &-inner {
57
+ display: inline-block;
58
+ min-width: 100%;
59
+ word-break: break-word;
60
+ outline: none;
61
+ counter-reset: list-0;
62
+ }
63
+ }
64
+ col {
65
+ border-collapse: separate;
66
+ text-indent: initial;
67
+ display: table-column;
68
+ table-layout: fixed;
69
+ }
70
+ tr + tr {
71
+ td,
72
+ th {
73
+ border-top: none;
74
+ }
75
+ }
76
+ td,
77
+ th {
78
+ border: 1px solid #a1a1aa;
79
+ & + td,
80
+ & + th {
81
+ border-left: none;
82
+ }
83
+ }
84
+ }
85
+ }
86
+ }
87
+
88
+ .@{namespace} {
89
+ &-toolbox {
90
+ position: absolute;
91
+ top: 0px;
92
+ left: 0px;
93
+ width: 100%;
94
+ height: 100%;
95
+ overflow: hidden;
96
+ pointer-events: none;
97
+ * {
98
+ pointer-events: all;
99
+ }
100
+ }
101
+ }
102
+
103
+ @import './tooltip.less';
104
+ @import './dialog.less';
105
+ @import './color-picker.less';
106
+
107
+ .@{namespace}-tooltip {
108
+ .@{namespace}-color-picker {
109
+ .setCssVar(color-picker-bg-color, transparent);
110
+ box-shadow: none;
111
+ width: 252px;
112
+ padding: 8px 0px;
113
+ }
114
+ }
115
+
116
+ @import './table-selection.less';
117
+ @import './table-resize.less';
118
+ @import './table-resize-scale.less';
119
+ @import './table-scrollbar.less';
120
+ @import './table-menu.less';
@@ -1,64 +1,64 @@
1
- @import './variables.less';
2
- @import './functions.less';
3
-
4
- .@{namespace}-input {
5
- &__item {
6
- .setCssVar(input-height, 32px);
7
- .setCssVar(input-inner-height, calc(.getCssVar(input-height) [] - 2px));
8
- .setCssVar(input-color-text, #606266);
9
- .setCssVar(input-color-boxshaow, #dcdfe6);
10
- .setCssVar(input-color-focus, #409eff);
11
- .setCssVar(input-color-error, #f56c6c);
12
- .setCssVar(input-boxshaow, 0 0 0 1px .getCssVar(input-color-boxshaow) [] inset);
13
- .setCssVar(input-boxshaow-focus, 0 0 0 1px .getCssVar(input-color-focus) [] inset);
14
- .setCssVar(input-boxshaow-error, 0 0 0 1px .getCssVar(input-color-error) [] inset);
15
-
16
- display: flex;
17
- align-items: center;
18
- & + & {
19
- margin-top: 18px;
20
- }
21
- }
22
- &__label {
23
- width: 80px;
24
- flex-shrink: 0;
25
- }
26
- &__input {
27
- box-sizing: border-box;
28
- position: relative;
29
- display: flex;
30
- flex-wrap: wrap;
31
- width: 100%;
32
- height: .getCssVar(input-height) [];
33
- line-height: .getCssVar(input-height) [];
34
- padding: 1px 8px;
35
- border-radius: 4px;
36
- box-shadow: .getCssVar(input-boxshaow) [];
37
- transition: box-shadow 0.2s linear;
38
- &.focus {
39
- box-shadow: .getCssVar(input-boxshaow-focus) [];
40
- }
41
- input {
42
- width: 100%;
43
- height: .getCssVar(input-inner-height) [];
44
- line-height: .getCssVar(input-inner-height) [];
45
- flex-grow: 1;
46
- font-size: 14px;
47
- color: .getCssVar(input-color-text) [];
48
- outline: none;
49
- border: 0;
50
- padding: 0;
51
- }
52
- &.error {
53
- box-shadow: .getCssVar(input-boxshaow-error) [];
54
- }
55
- }
56
- &__error-tip {
57
- position: absolute;
58
- top: 100%;
59
- left: 0;
60
- font-size: 12px;
61
- color: .getCssVar(input-color-error) [];
62
- line-height: 16px;
63
- }
64
- }
1
+ @import './variables.less';
2
+ @import './functions.less';
3
+
4
+ .@{namespace}-input {
5
+ &__item {
6
+ .setCssVar(input-height, 32px);
7
+ .setCssVar(input-inner-height, calc(.getCssVar(input-height) [] - 2px));
8
+ .setCssVar(input-color-text, #606266);
9
+ .setCssVar(input-color-boxshaow, #dcdfe6);
10
+ .setCssVar(input-color-focus, #409eff);
11
+ .setCssVar(input-color-error, #f56c6c);
12
+ .setCssVar(input-boxshaow, 0 0 0 1px .getCssVar(input-color-boxshaow) [] inset);
13
+ .setCssVar(input-boxshaow-focus, 0 0 0 1px .getCssVar(input-color-focus) [] inset);
14
+ .setCssVar(input-boxshaow-error, 0 0 0 1px .getCssVar(input-color-error) [] inset);
15
+
16
+ display: flex;
17
+ align-items: center;
18
+ & + & {
19
+ margin-top: 18px;
20
+ }
21
+ }
22
+ &__label {
23
+ width: 80px;
24
+ flex-shrink: 0;
25
+ }
26
+ &__input {
27
+ box-sizing: border-box;
28
+ position: relative;
29
+ display: flex;
30
+ flex-wrap: wrap;
31
+ width: 100%;
32
+ height: .getCssVar(input-height) [];
33
+ line-height: .getCssVar(input-height) [];
34
+ padding: 1px 8px;
35
+ border-radius: 4px;
36
+ box-shadow: .getCssVar(input-boxshaow) [];
37
+ transition: box-shadow 0.2s linear;
38
+ &.focus {
39
+ box-shadow: .getCssVar(input-boxshaow-focus) [];
40
+ }
41
+ input {
42
+ width: 100%;
43
+ height: .getCssVar(input-inner-height) [];
44
+ line-height: .getCssVar(input-inner-height) [];
45
+ flex-grow: 1;
46
+ font-size: 14px;
47
+ color: .getCssVar(input-color-text) [];
48
+ outline: none;
49
+ border: 0;
50
+ padding: 0;
51
+ }
52
+ &.error {
53
+ box-shadow: .getCssVar(input-boxshaow-error) [];
54
+ }
55
+ }
56
+ &__error-tip {
57
+ position: absolute;
58
+ top: 100%;
59
+ left: 0;
60
+ font-size: 12px;
61
+ color: .getCssVar(input-color-error) [];
62
+ line-height: 16px;
63
+ }
64
+ }
@@ -1,52 +1,52 @@
1
- @import './variables.less';
2
- @import './functions.less';
3
-
4
- .ql-snow {
5
- .@{namespace}-select-box {
6
- .setCssVar(select-box-color-bg-hover, rgb(245, 245, 245));
7
- .setCssVar(select-box-color-bg-active, rgb(224, 242, 254));
8
- .setCssVar(select-box-custom-color-text, rgb(13, 13, 13));
9
- .setCssVar(select-box-custom-color-bg, transparent);
10
- .setCssVar(select-box-custom-color-bg-hover, rgb(235, 235, 235));
11
- }
12
- }
13
- .@{namespace}-select-box {
14
- .setCssVar(select-box-color-border, #e5e7eb);
15
- .setCssVar(select-box-border, 1px solid .getCssVar(select-box-color-border) []);
16
- .setCssVar(select-box-color-active, rgb(14, 165, 233));
17
- .setCssVar(select-box-color-bg-hover, rgb(245, 245, 245));
18
- .setCssVar(select-box-color-bg-active, transparent);
19
- .setCssVar(select-box-custom-color-text, rgb(245, 245, 245));
20
- .setCssVar(select-box-custom-color-bg, transparent);
21
- .setCssVar(select-box-custom-color-bg-hover, rgb(44, 44, 44));
22
-
23
- &__block {
24
- display: flex;
25
- width: 160px;
26
- flex-wrap: wrap;
27
- align-items: center;
28
- justify-content: center;
29
- }
30
- &__item {
31
- margin: 2px;
32
- height: 16px;
33
- width: 16px;
34
- border: .getCssVar(select-box-border) [];
35
- cursor: pointer;
36
- &.active {
37
- border-color: .getCssVar(select-box-color-active) [];
38
- background-color: .getCssVar(select-box-color-bg-active) [];
39
- }
40
- }
41
- &__custom {
42
- padding: 8px;
43
- color: .getCssVar(select-box-custom-color-text) [];
44
- background-color: .getCssVar(select-box-custom-color-bg) [];
45
- font-size: 16px;
46
- text-align: center;
47
- cursor: pointer;
48
- &:hover {
49
- background-color: .getCssVar(select-box-custom-color-bg-hover) [];
50
- }
51
- }
52
- }
1
+ @import './variables.less';
2
+ @import './functions.less';
3
+
4
+ .ql-snow {
5
+ .@{namespace}-select-box {
6
+ .setCssVar(select-box-color-bg-hover, rgb(245, 245, 245));
7
+ .setCssVar(select-box-color-bg-active, rgb(224, 242, 254));
8
+ .setCssVar(select-box-custom-color-text, rgb(13, 13, 13));
9
+ .setCssVar(select-box-custom-color-bg, transparent);
10
+ .setCssVar(select-box-custom-color-bg-hover, rgb(235, 235, 235));
11
+ }
12
+ }
13
+ .@{namespace}-select-box {
14
+ .setCssVar(select-box-color-border, #e5e7eb);
15
+ .setCssVar(select-box-border, 1px solid .getCssVar(select-box-color-border) []);
16
+ .setCssVar(select-box-color-active, rgb(14, 165, 233));
17
+ .setCssVar(select-box-color-bg-hover, rgb(245, 245, 245));
18
+ .setCssVar(select-box-color-bg-active, transparent);
19
+ .setCssVar(select-box-custom-color-text, rgb(245, 245, 245));
20
+ .setCssVar(select-box-custom-color-bg, transparent);
21
+ .setCssVar(select-box-custom-color-bg-hover, rgb(44, 44, 44));
22
+
23
+ &__block {
24
+ display: flex;
25
+ width: 160px;
26
+ flex-wrap: wrap;
27
+ align-items: center;
28
+ justify-content: center;
29
+ }
30
+ &__item {
31
+ margin: 2px;
32
+ height: 16px;
33
+ width: 16px;
34
+ border: .getCssVar(select-box-border) [];
35
+ cursor: pointer;
36
+ &.active {
37
+ border-color: .getCssVar(select-box-color-active) [];
38
+ background-color: .getCssVar(select-box-color-bg-active) [];
39
+ }
40
+ }
41
+ &__custom {
42
+ padding: 8px;
43
+ color: .getCssVar(select-box-custom-color-text) [];
44
+ background-color: .getCssVar(select-box-custom-color-bg) [];
45
+ font-size: 16px;
46
+ text-align: center;
47
+ cursor: pointer;
48
+ &:hover {
49
+ background-color: .getCssVar(select-box-custom-color-bg-hover) [];
50
+ }
51
+ }
52
+ }
@@ -1,56 +1,56 @@
1
- @import './variables.less';
2
- @import './functions.less';
3
- @import './input.less';
4
- @import './select-box.less';
5
-
6
- .@{namespace}-creator {
7
- padding: 24px;
8
- &__input {
9
- display: flex;
10
- flex-direction: column;
11
- width: 100%;
12
- }
13
- &__control {
14
- margin-top: 16px;
15
- text-align: right;
16
- }
17
- &__checkbox {
18
- .setCssVar(check-color, #212121);
19
- .setCssVar(checked-color, #506eec);
20
-
21
- display: flex;
22
- align-items: center;
23
- margin-top: 4px;
24
- cursor: pointer;
25
- font-size: 12px;
26
- user-select: none;
27
- input {
28
- appearance: none;
29
- width: 18px;
30
- height: 18px;
31
- border: 1px solid .getCssVar(check-color) [];
32
- border-radius: 5px;
33
- background-color: transparent;
34
- display: inline-block;
35
- position: relative;
36
- margin-right: 10px;
37
- cursor: pointer;
38
- &:before {
39
- content: '';
40
- background-color: .getCssVar(checked-color) [];
41
- display: block;
42
- position: absolute;
43
- top: 50%;
44
- left: 50%;
45
- transform: translate(-50%, -50%) scale(0);
46
- width: 10px;
47
- height: 10px;
48
- border-radius: 3px;
49
- transition: all 0.2s ease-in-out;
50
- }
51
- &:checked:before {
52
- transform: translate(-50%, -50%) scale(1);
53
- }
54
- }
55
- }
56
- }
1
+ @import './variables.less';
2
+ @import './functions.less';
3
+ @import './input.less';
4
+ @import './select-box.less';
5
+
6
+ .@{namespace}-creator {
7
+ padding: 24px;
8
+ &__input {
9
+ display: flex;
10
+ flex-direction: column;
11
+ width: 100%;
12
+ }
13
+ &__control {
14
+ margin-top: 16px;
15
+ text-align: right;
16
+ }
17
+ &__checkbox {
18
+ .setCssVar(check-color, #212121);
19
+ .setCssVar(checked-color, #506eec);
20
+
21
+ display: flex;
22
+ align-items: center;
23
+ margin-top: 4px;
24
+ cursor: pointer;
25
+ font-size: 12px;
26
+ user-select: none;
27
+ input {
28
+ appearance: none;
29
+ width: 18px;
30
+ height: 18px;
31
+ border: 1px solid .getCssVar(check-color) [];
32
+ border-radius: 5px;
33
+ background-color: transparent;
34
+ display: inline-block;
35
+ position: relative;
36
+ margin-right: 10px;
37
+ cursor: pointer;
38
+ &:before {
39
+ content: '';
40
+ background-color: .getCssVar(checked-color) [];
41
+ display: block;
42
+ position: absolute;
43
+ top: 50%;
44
+ left: 50%;
45
+ transform: translate(-50%, -50%) scale(0);
46
+ width: 10px;
47
+ height: 10px;
48
+ border-radius: 3px;
49
+ transition: all 0.2s ease-in-out;
50
+ }
51
+ &:checked:before {
52
+ transform: translate(-50%, -50%) scale(1);
53
+ }
54
+ }
55
+ }
56
+ }