quasar-ui-sellmate-ui-kit 2.3.2 → 3.0.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 (68) hide show
  1. package/.eslintrc.cjs +73 -0
  2. package/.prettierrc +25 -0
  3. package/README.md +156 -142
  4. package/dist/index.common.js +2 -2
  5. package/dist/index.css +3 -8
  6. package/dist/index.esm.js +2 -2
  7. package/dist/index.min.css +2 -2
  8. package/dist/index.rtl.css +3 -8
  9. package/dist/index.rtl.min.css +2 -2
  10. package/dist/index.umd.js +3820 -3822
  11. package/dist/index.umd.min.js +2 -2
  12. package/package.json +83 -75
  13. package/src/assets/icons.js +28 -28
  14. package/src/components/SBreadcrumbs.vue +55 -55
  15. package/src/components/SButton.vue +206 -206
  16. package/src/components/SButtonGroup.vue +41 -41
  17. package/src/components/SButtonToggle.vue +200 -200
  18. package/src/components/SCaution.vue +102 -102
  19. package/src/components/SCheckbox.vue +123 -123
  20. package/src/components/SChip.vue +99 -99
  21. package/src/components/SDate.vue +717 -717
  22. package/src/components/SDateAutoRangePicker.vue +341 -341
  23. package/src/components/SDatePicker.vue +472 -472
  24. package/src/components/SDateRange.vue +470 -470
  25. package/src/components/SDateRangePicker.vue +660 -660
  26. package/src/components/SDateTimePicker.vue +349 -349
  27. package/src/components/SDialog.vue +250 -250
  28. package/src/components/SDropdown.vue +216 -216
  29. package/src/components/SEditor.vue +490 -490
  30. package/src/components/SFilePicker.vue +207 -207
  31. package/src/components/SHelp.vue +146 -146
  32. package/src/components/SInput.vue +343 -343
  33. package/src/components/SInputCounter.vue +46 -46
  34. package/src/components/SInputNumber.vue +179 -179
  35. package/src/components/SList.vue +29 -29
  36. package/src/components/SMarkupTable.vue +141 -141
  37. package/src/components/SPagination.vue +266 -266
  38. package/src/components/SRadio.vue +78 -78
  39. package/src/components/SRouteTab.vue +67 -67
  40. package/src/components/SSelect.vue +294 -294
  41. package/src/components/SSelectCheckbox.vue +222 -222
  42. package/src/components/SSelectCustom.vue +189 -189
  43. package/src/components/SSelectGroupCheckbox.vue +235 -235
  44. package/src/components/SSelectSearch.vue +261 -261
  45. package/src/components/SSelectSearchAutoComplete.vue +172 -172
  46. package/src/components/SSelectSearchCheckbox.vue +356 -356
  47. package/src/components/SStringToInput.vue +66 -66
  48. package/src/components/STab.vue +77 -77
  49. package/src/components/STable.vue +425 -425
  50. package/src/components/STableTree.vue +210 -208
  51. package/src/components/STabs.vue +32 -32
  52. package/src/components/STimePicker.vue +159 -159
  53. package/src/components/SToggle.vue +68 -68
  54. package/src/components/STooltip.vue +209 -209
  55. package/src/components/SelelctItem.vue +21 -21
  56. package/src/components/TimePickerCard.vue +352 -352
  57. package/src/composables/date.js +11 -11
  58. package/src/composables/modelBinder.js +13 -13
  59. package/src/composables/table/use-navigator.js +110 -110
  60. package/src/composables/table/use-resizable.js +80 -80
  61. package/src/css/app.scss +90 -90
  62. package/src/css/default.scss +875 -875
  63. package/src/css/extends.scss +154 -154
  64. package/src/css/quasar.variables.scss +189 -189
  65. package/src/directives/Directive.js +7 -8
  66. package/src/index.scss +3 -9
  67. package/src/vue-plugin.js +91 -92
  68. package/tsconfig.json +35 -0
@@ -1,206 +1,206 @@
1
- <template>
2
- <q-btn
3
- class="s-button"
4
- no-caps
5
- no-wrap
6
- unelevated
7
- :color="color"
8
- :ripple="false"
9
- :class="{
10
- 's-button-md': size === 'md',
11
- 's-button-sm': size === 'sm',
12
- 's-button-xs': size === 'xs',
13
- 'icon-with': $attrs.icon && $attrs.label,
14
- 'icon-only': $attrs.icon && !$attrs.label,
15
- 'no-hover': noHover,
16
- }"
17
- >
18
- <template v-for="(_, slotName, index) in $slots" :key="index">
19
- <slot :name="slotName"></slot>
20
- </template>
21
- </q-btn>
22
- </template>
23
-
24
- <script>
25
- import { defineComponent } from 'vue';
26
- import { QBtn } from 'quasar';
27
-
28
- export default defineComponent({
29
- name: 'SButton',
30
- components: { QBtn },
31
- props: {
32
- size: {
33
- type: String,
34
- default: 'sm',
35
- },
36
- color: {
37
- type: String,
38
- default: 'Blue_B_Default',
39
- },
40
- noHover: {
41
- type: Boolean,
42
- default: false,
43
- },
44
- },
45
- });
46
- </script>
47
-
48
- <style lang="scss">
49
- @import "../css/quasar.variables.scss";
50
-
51
- // TODO: hover 색 맞추기
52
- .s-button {
53
- &.q-btn {
54
- min-height: 0;
55
- height: fit-content;
56
- justify-content: center;
57
- &.icon-with {
58
- > .q-btn__content {
59
- align-items: center;
60
- }
61
- }
62
- &.icon-only {
63
- padding: 5px;
64
- }
65
- > .q-btn__content {
66
- height: 100%;
67
- > span {
68
- height: 100%;
69
- }
70
- }
71
- }
72
- &:hover {
73
- &.q-focusable:focus,
74
- &.q-manual-focusable--focused,
75
- &.q-hoverable:hover {
76
- > .q-focus-helper {
77
- opacity: 0.3;
78
- transition: opacity 0.4s cubic-bezier(0.25, 0.8, 0.5, 1);
79
- &:before {
80
- opacity: 1.4;
81
- transition: none;
82
- }
83
- &:after {
84
- opacity: 0;
85
- transition: none;
86
- }
87
- }
88
- }
89
- }
90
-
91
- &.q-btn--outline {
92
- &:hover {
93
- &.q-focusable:focus,
94
- &.q-manual-focusable--focused,
95
- &.q-hoverable:hover {
96
- > .q-focus-helper {
97
- &:before {
98
- opacity: 0;
99
- }
100
- &:after {
101
- opacity: 0.55;
102
- }
103
- }
104
- }
105
- }
106
- }
107
- }
108
- .s-button-xs {
109
- &.q-btn {
110
- height: 24px;
111
- padding: $button-padding-xs;
112
- font-weight: $default-font-weight;
113
- font-size: $default-font;
114
- line-height: $default-content-height;
115
- min-width: 60px;
116
- &.icon-with {
117
- padding: $button-with-icon-padding-xs;
118
- .q-icon {
119
- font-size: $icon-size-sm;
120
- }
121
- .on-left {
122
- margin-right: $between-margin-sm;
123
- }
124
- }
125
- &.icon-only {
126
- min-width: 24px;
127
- min-height: 24px;
128
- padding: 4px !important;
129
- .q-icon {
130
- font-size: $default-icon-size;
131
- }
132
- }
133
- > .q-btn__content {
134
- height: $default-content-height;
135
- }
136
- }
137
- }
138
- .s-button-sm {
139
- &.q-btn {
140
- height: 28px;
141
- padding: $button-padding-sm;
142
- font-weight: $default-font-weight;
143
- font-size: $default-font;
144
- line-height: $default-content-height;
145
- min-width: 70px;
146
- &.icon-with {
147
- padding: $button-with-icon-padding-sm;
148
- .q-icon {
149
- font-size: $default-icon-size;
150
- }
151
- .on-left {
152
- margin-right: $between-margin-sm;
153
- }
154
- }
155
- &.icon-only {
156
- min-width: 28px;
157
- min-height: 28px;
158
- padding: 6px !important;
159
- .q-icon {
160
- font-size: $default-icon-size;
161
- }
162
- }
163
- > .q-btn__content {
164
- height: $default-content-height;
165
- }
166
- }
167
- }
168
- .s-button-md {
169
- padding: $button-padding-md;
170
- font-weight: $default-font-weight;
171
- font-size: $font-md;
172
- line-height: $line-height-md;
173
- min-width: 100px;
174
- &.icon-with {
175
- padding: $button-with-icon-padding-md;
176
- .q-icon {
177
- font-size: $icon-size;
178
- }
179
- .on-left {
180
- margin-right: $between-margin-md;
181
- }
182
- }
183
- &.icon-only {
184
- min-width: 34px;
185
- min-height: 34px;
186
- padding: 5px !important ;
187
- .q-icon {
188
- font-size: $icon-size;
189
- }
190
- }
191
- > .q-btn__content {
192
- max-height: $line-height-md;
193
- }
194
- }
195
-
196
- .s-button.q-btn--outline.disabled,
197
- .s-button.disabled {
198
- background: $Grey_Lighten-3 !important;
199
- opacity: 1 !important;
200
- color: $Grey_Default !important;
201
- border: none !important;
202
- &:before {
203
- border: 1px solid $Grey_Lighten-2;
204
- }
205
- }
206
- </style>
1
+ <template>
2
+ <q-btn
3
+ class="s-button"
4
+ no-caps
5
+ no-wrap
6
+ unelevated
7
+ :color="color"
8
+ :ripple="false"
9
+ :class="{
10
+ 's-button-md': size === 'md',
11
+ 's-button-sm': size === 'sm',
12
+ 's-button-xs': size === 'xs',
13
+ 'icon-with': $attrs.icon && $attrs.label,
14
+ 'icon-only': $attrs.icon && !$attrs.label,
15
+ 'no-hover': noHover,
16
+ }"
17
+ >
18
+ <template v-for="(_, slotName, index) in $slots" :key="index">
19
+ <slot :name="slotName"></slot>
20
+ </template>
21
+ </q-btn>
22
+ </template>
23
+
24
+ <script>
25
+ import { defineComponent } from 'vue';
26
+ import { QBtn } from 'quasar';
27
+
28
+ export default defineComponent({
29
+ name: 'SButton',
30
+ components: { QBtn },
31
+ props: {
32
+ size: {
33
+ type: String,
34
+ default: 'sm',
35
+ },
36
+ color: {
37
+ type: String,
38
+ default: 'Blue_B_Default',
39
+ },
40
+ noHover: {
41
+ type: Boolean,
42
+ default: false,
43
+ },
44
+ },
45
+ });
46
+ </script>
47
+
48
+ <style lang="scss">
49
+ @import "../css/quasar.variables.scss";
50
+
51
+ // TODO: hover 색 맞추기
52
+ .s-button {
53
+ &.q-btn {
54
+ min-height: 0;
55
+ height: fit-content;
56
+ justify-content: center;
57
+ &.icon-with {
58
+ > .q-btn__content {
59
+ align-items: center;
60
+ }
61
+ }
62
+ &.icon-only {
63
+ padding: 5px;
64
+ }
65
+ > .q-btn__content {
66
+ height: 100%;
67
+ > span {
68
+ height: 100%;
69
+ }
70
+ }
71
+ }
72
+ &:hover {
73
+ &.q-focusable:focus,
74
+ &.q-manual-focusable--focused,
75
+ &.q-hoverable:hover {
76
+ > .q-focus-helper {
77
+ opacity: 0.3;
78
+ transition: opacity 0.4s cubic-bezier(0.25, 0.8, 0.5, 1);
79
+ &:before {
80
+ opacity: 1.4;
81
+ transition: none;
82
+ }
83
+ &:after {
84
+ opacity: 0;
85
+ transition: none;
86
+ }
87
+ }
88
+ }
89
+ }
90
+
91
+ &.q-btn--outline {
92
+ &:hover {
93
+ &.q-focusable:focus,
94
+ &.q-manual-focusable--focused,
95
+ &.q-hoverable:hover {
96
+ > .q-focus-helper {
97
+ &:before {
98
+ opacity: 0;
99
+ }
100
+ &:after {
101
+ opacity: 0.55;
102
+ }
103
+ }
104
+ }
105
+ }
106
+ }
107
+ }
108
+ .s-button-xs {
109
+ &.q-btn {
110
+ height: 24px;
111
+ padding: $button-padding-xs;
112
+ font-weight: $default-font-weight;
113
+ font-size: $default-font;
114
+ line-height: $default-content-height;
115
+ min-width: 60px;
116
+ &.icon-with {
117
+ padding: $button-with-icon-padding-xs;
118
+ .q-icon {
119
+ font-size: $icon-size-sm;
120
+ }
121
+ .on-left {
122
+ margin-right: $between-margin-sm;
123
+ }
124
+ }
125
+ &.icon-only {
126
+ min-width: 24px;
127
+ min-height: 24px;
128
+ padding: 4px !important;
129
+ .q-icon {
130
+ font-size: $default-icon-size;
131
+ }
132
+ }
133
+ > .q-btn__content {
134
+ height: $default-content-height;
135
+ }
136
+ }
137
+ }
138
+ .s-button-sm {
139
+ &.q-btn {
140
+ height: 28px;
141
+ padding: $button-padding-sm;
142
+ font-weight: $default-font-weight;
143
+ font-size: $default-font;
144
+ line-height: $default-content-height;
145
+ min-width: 70px;
146
+ &.icon-with {
147
+ padding: $button-with-icon-padding-sm;
148
+ .q-icon {
149
+ font-size: $default-icon-size;
150
+ }
151
+ .on-left {
152
+ margin-right: $between-margin-sm;
153
+ }
154
+ }
155
+ &.icon-only {
156
+ min-width: 28px;
157
+ min-height: 28px;
158
+ padding: 6px !important;
159
+ .q-icon {
160
+ font-size: $default-icon-size;
161
+ }
162
+ }
163
+ > .q-btn__content {
164
+ height: $default-content-height;
165
+ }
166
+ }
167
+ }
168
+ .s-button-md {
169
+ padding: $button-padding-md;
170
+ font-weight: $default-font-weight;
171
+ font-size: $font-md;
172
+ line-height: $line-height-md;
173
+ min-width: 100px;
174
+ &.icon-with {
175
+ padding: $button-with-icon-padding-md;
176
+ .q-icon {
177
+ font-size: $icon-size;
178
+ }
179
+ .on-left {
180
+ margin-right: $between-margin-md;
181
+ }
182
+ }
183
+ &.icon-only {
184
+ min-width: 34px;
185
+ min-height: 34px;
186
+ padding: 5px !important ;
187
+ .q-icon {
188
+ font-size: $icon-size;
189
+ }
190
+ }
191
+ > .q-btn__content {
192
+ max-height: $line-height-md;
193
+ }
194
+ }
195
+
196
+ .s-button.q-btn--outline.disabled,
197
+ .s-button.disabled {
198
+ background: $Grey_Lighten-3 !important;
199
+ opacity: 1 !important;
200
+ color: $Grey_Default !important;
201
+ border: none !important;
202
+ &:before {
203
+ border: 1px solid $Grey_Lighten-2;
204
+ }
205
+ }
206
+ </style>
@@ -1,41 +1,41 @@
1
- <template>
2
- <q-btn-group
3
- class="s-btn-group"
4
- :class="{ 'no-hover': noHover }"
5
- flat
6
- unelevated
7
- >
8
- <slot></slot>
9
- </q-btn-group>
10
- </template>
11
-
12
- <script>
13
- import { defineComponent } from 'vue';
14
- import { QBtnGroup } from 'quasar';
15
-
16
- export default defineComponent({
17
- name: 'SButtonGroup',
18
- components: {
19
- QBtnGroup,
20
- },
21
- props: {
22
- noHover: {
23
- type: Boolean,
24
- default: false,
25
- },
26
- },
27
- });
28
- </script>
29
-
30
- <style lang="scss">
31
- @import "../css/quasar.variables.scss";
32
-
33
- .s-btn-group {
34
- .disabled {
35
- border: none;
36
- &::before {
37
- border: 1px solid $Grey_Lighten-2;
38
- }
39
- }
40
- }
41
- </style>
1
+ <template>
2
+ <q-btn-group
3
+ class="s-btn-group"
4
+ :class="{ 'no-hover': noHover }"
5
+ flat
6
+ unelevated
7
+ >
8
+ <slot></slot>
9
+ </q-btn-group>
10
+ </template>
11
+
12
+ <script>
13
+ import { defineComponent } from 'vue';
14
+ import { QBtnGroup } from 'quasar';
15
+
16
+ export default defineComponent({
17
+ name: 'SButtonGroup',
18
+ components: {
19
+ QBtnGroup,
20
+ },
21
+ props: {
22
+ noHover: {
23
+ type: Boolean,
24
+ default: false,
25
+ },
26
+ },
27
+ });
28
+ </script>
29
+
30
+ <style lang="scss">
31
+ @import "../css/quasar.variables.scss";
32
+
33
+ .s-btn-group {
34
+ .disabled {
35
+ border: none;
36
+ &::before {
37
+ border: 1px solid $Grey_Lighten-2;
38
+ }
39
+ }
40
+ }
41
+ </style>