goodteditor-ui 1.0.9 → 1.0.12

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 (75) hide show
  1. package/.eslintrc.js +7 -7
  2. package/.idea/codeStyles/Project.xml +51 -0
  3. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  4. package/.idea/goodt-ui.iml +12 -0
  5. package/.idea/inspectionProfiles/Project_Default.xml +6 -0
  6. package/.idea/modules.xml +8 -0
  7. package/.idea/vcs.xml +6 -0
  8. package/.prettierrc +14 -14
  9. package/README.md +35 -35
  10. package/babel.config.js +5 -5
  11. package/index.js +51 -47
  12. package/jsconfig.json +13 -13
  13. package/package.json +57 -57
  14. package/src/App.vue +36 -36
  15. package/src/components/ui/Avatar.md +68 -0
  16. package/src/components/ui/Avatar.vue +177 -0
  17. package/src/components/ui/Badge.md +20 -20
  18. package/src/components/ui/Badge.vue +75 -75
  19. package/src/components/ui/Collapse.md +90 -90
  20. package/src/components/ui/Collapse.vue +86 -86
  21. package/src/components/ui/ColorPicker/Alpha.vue +114 -114
  22. package/src/components/ui/ColorPicker/Colors.vue +117 -117
  23. package/src/components/ui/ColorPicker/Hue.vue +113 -113
  24. package/src/components/ui/ColorPicker/Preview.vue +55 -55
  25. package/src/components/ui/ColorPicker/Saturation.vue +123 -123
  26. package/src/components/ui/ColorPicker/mixin.js +105 -105
  27. package/src/components/ui/ColorPicker.md +17 -17
  28. package/src/components/ui/ColorPicker.vue +314 -314
  29. package/src/components/ui/Datalist.md +41 -41
  30. package/src/components/ui/Datalist.vue +157 -157
  31. package/src/components/ui/DatePicker.md +168 -168
  32. package/src/components/ui/DatePicker.vue +527 -527
  33. package/src/components/ui/FileSelector.md +105 -105
  34. package/src/components/ui/FileSelector.vue +82 -82
  35. package/src/components/ui/Grid.md +130 -130
  36. package/src/components/ui/Grid.vue +92 -92
  37. package/src/components/ui/Image.md +59 -59
  38. package/src/components/ui/Image.vue +57 -57
  39. package/src/components/ui/InputAutocomplete.md +115 -115
  40. package/src/components/ui/InputAutocomplete.vue +341 -341
  41. package/src/components/ui/InputColorPicker.md +51 -51
  42. package/src/components/ui/InputColorPicker.vue +151 -151
  43. package/src/components/ui/InputDatePicker.md +121 -121
  44. package/src/components/ui/InputDatePicker.vue +310 -310
  45. package/src/components/ui/InputTags.md +51 -51
  46. package/src/components/ui/InputTags.vue +184 -184
  47. package/src/components/ui/InputTimePicker.md +25 -25
  48. package/src/components/ui/InputTimePicker.vue +253 -253
  49. package/src/components/ui/InputUnits.md +20 -20
  50. package/src/components/ui/InputUnits.vue +257 -257
  51. package/src/components/ui/Lazy.md +37 -37
  52. package/src/components/ui/Lazy.vue +92 -92
  53. package/src/components/ui/Pagination.md +74 -74
  54. package/src/components/ui/Pagination.vue +138 -138
  55. package/src/components/ui/Paginator.md +34 -34
  56. package/src/components/ui/Paginator.vue +83 -83
  57. package/src/components/ui/Popover.md +34 -34
  58. package/src/components/ui/Popover.vue +209 -209
  59. package/src/components/ui/Popup.md +59 -59
  60. package/src/components/ui/Popup.vue +150 -150
  61. package/src/components/ui/ResponsiveContainer.md +58 -0
  62. package/src/components/ui/ResponsiveContainer.vue +99 -0
  63. package/src/components/ui/Select.md +187 -187
  64. package/src/components/ui/Select.vue +420 -420
  65. package/src/components/ui/TimePicker.md +50 -50
  66. package/src/components/ui/TimePicker.vue +252 -252
  67. package/src/components/ui/Tooltip.md +52 -52
  68. package/src/components/ui/Tooltip.vue +113 -113
  69. package/src/components/ui/utils/FormComponent.js +107 -107
  70. package/src/components/ui/utils/Helpers.js +61 -61
  71. package/src/components/ui/utils/WithPopover.js +81 -81
  72. package/src/main.js +8 -8
  73. package/styleguide.config.js +37 -37
  74. package/vue.config.js +8 -8
  75. package/dist/js.png +0 -0
@@ -1,187 +1,187 @@
1
- Simple example
2
-
3
- ```vue
4
- <template>
5
- <div
6
- class="pad-l5"
7
- :class="{ 'scroll-y': overflow }"
8
- :style="{ 'max-height': overflow ? '200px' : 'none' }"
9
- >
10
- <p>
11
- <label>
12
- <input class="checkbox checkbox-small" type="checkbox" v-model="overflow" />
13
- <span class="pad-left-2 v-mid">container overflow: auto</span>
14
- </label>
15
- </p>
16
- <p>
17
- <label>
18
- <input
19
- class="checkbox checkbox-small"
20
- type="checkbox"
21
- v-model="props.appendToBody"
22
- />
23
- <span class="pad-left-2 v-mid">appendToBody</span>
24
- </label>
25
- </p>
26
- <p>
27
- <label>
28
- <input class="checkbox checkbox-small" type="checkbox" v-model="props.multiple" />
29
- <span class="pad-left-2 v-mid">multiple</span>
30
- </label>
31
- </p>
32
- <ui-select class="w-6-12 p" v-model="model" v-bind="props"></ui-select>
33
- <p>model: {{ model }}</p>
34
- </div>
35
- </template>
36
- <script>
37
- import UiSelect from './Select.vue';
38
-
39
- let options = [
40
- 'angular',
41
- 'aurelia',
42
- 'backbone',
43
- 'ember',
44
- 'meteor',
45
- 'react',
46
- 'riot',
47
- 'stencil',
48
- 'svelte',
49
- 'vue',
50
- ].map((label, i) => ({ value: i, label }));
51
-
52
- export default {
53
- components: { UiSelect },
54
- data() {
55
- return {
56
- model: null,
57
- props: {
58
- options: [{ value: null, label: 'nullish value' }, ...options],
59
- placeholder: 'Select something',
60
- appendToBody: false,
61
- multiple: false,
62
- },
63
- overflow: false,
64
- };
65
- },
66
- };
67
- </script>
68
- ```
69
-
70
- Advanced example. Using value object, multi selection, slots
71
-
72
- ```vue
73
- <template>
74
- <div class="pad-l5 ">
75
- <ui-select class="p w-6-12" v-model="model" v-bind="props">
76
- <template #icon-close>
77
- <i class="mdi mdi-plus"></i>
78
- </template>
79
- <template #icon-open>
80
- <i class="mdi mdi-minus"></i>
81
- </template>
82
- <template #label-multiple="{ option, value, label, deselectOption}">
83
- <code class="cursor-pointer" @click.stop="deselectOption(option)">{{ label }}</code>
84
- </template>
85
- <template
86
- #option="{ option, value, label, index, isSelected, cursorIndex, toggleOption }"
87
- >
88
- <li
89
- :class="{
90
- 'text-bold': index == cursorIndex,
91
- 'bg-green': isSelected,
92
- }"
93
- :key="index"
94
- @click="toggleOption(option)"
95
- >
96
- {{ label }}
97
- </li>
98
- </template>
99
- </ui-select>
100
- <p>model: {{ model }}</p>
101
- </div>
102
- </template>
103
- <script>
104
- import UiSelect from './Select.vue';
105
-
106
- let options = [
107
- 'angular',
108
- 'aurelia',
109
- 'backbone',
110
- 'ember',
111
- 'meteor',
112
- 'react',
113
- 'riot',
114
- 'stencil',
115
- 'svelte',
116
- 'vue',
117
- ].map(value => ({ value, label: value }));
118
-
119
- export default {
120
- components: { UiSelect },
121
- data() {
122
- return {
123
- model: [{ value: 'vue', label: 'vue' }],
124
- props: {
125
- options,
126
- multiple: true,
127
- valueObjects: true,
128
- placeholder: 'Select something',
129
- },
130
- };
131
- },
132
- };
133
- </script>
134
- ```
135
-
136
- Runtime options
137
-
138
- ```vue
139
- <template>
140
- <div class="pad-l5">
141
- <ui-select class="w-6-12 p" v-model="model" v-bind="props"></ui-select>
142
- <p>
143
- <label>
144
- <input class="checkbox checkbox-small" type="checkbox" v-model="props.multiple" />
145
- <span class="pad-left-2 v-mid">multiple</span>
146
- </label>
147
- </p>
148
- <p><div class="btn btn-primary" @click="toggleOptions">toggle options</div></p>
149
- <p>model: {{ model }}</p>
150
- </div>
151
- </template>
152
- <script>
153
- import UiSelect from './Select.vue';
154
-
155
- let options = [
156
- 'angular',
157
- 'aurelia',
158
- 'backbone',
159
- 'ember',
160
- 'meteor',
161
- 'react',
162
- 'riot',
163
- 'stencil',
164
- 'svelte',
165
- 'vue',
166
- ];
167
-
168
- export default {
169
- components: { UiSelect },
170
- data() {
171
- return {
172
- model: 'vue',
173
- props: {
174
- options: [],
175
- multiple: false,
176
- },
177
- overflow: false,
178
- };
179
- },
180
- methods: {
181
- toggleOptions() {
182
- this.props.options = this.props.options.length ? [] : options;
183
- },
184
- },
185
- };
186
- </script>
187
- ```
1
+ Simple example
2
+
3
+ ```vue
4
+ <template>
5
+ <div
6
+ class="pad-l5"
7
+ :class="{ 'scroll-y': overflow }"
8
+ :style="{ 'max-height': overflow ? '200px' : 'none' }"
9
+ >
10
+ <p>
11
+ <label>
12
+ <input class="checkbox checkbox-small" type="checkbox" v-model="overflow" />
13
+ <span class="pad-left-2 v-mid">container overflow: auto</span>
14
+ </label>
15
+ </p>
16
+ <p>
17
+ <label>
18
+ <input
19
+ class="checkbox checkbox-small"
20
+ type="checkbox"
21
+ v-model="props.appendToBody"
22
+ />
23
+ <span class="pad-left-2 v-mid">appendToBody</span>
24
+ </label>
25
+ </p>
26
+ <p>
27
+ <label>
28
+ <input class="checkbox checkbox-small" type="checkbox" v-model="props.multiple" />
29
+ <span class="pad-left-2 v-mid">multiple</span>
30
+ </label>
31
+ </p>
32
+ <ui-select class="w-6-12 p" v-model="model" v-bind="props"></ui-select>
33
+ <p>model: {{ model }}</p>
34
+ </div>
35
+ </template>
36
+ <script>
37
+ import UiSelect from './Select.vue';
38
+
39
+ let options = [
40
+ 'angular',
41
+ 'aurelia',
42
+ 'backbone',
43
+ 'ember',
44
+ 'meteor',
45
+ 'react',
46
+ 'riot',
47
+ 'stencil',
48
+ 'svelte',
49
+ 'vue',
50
+ ].map((label, i) => ({ value: i, label }));
51
+
52
+ export default {
53
+ components: { UiSelect },
54
+ data() {
55
+ return {
56
+ model: null,
57
+ props: {
58
+ options: [{ value: null, label: 'nullish value' }, ...options],
59
+ placeholder: 'Select something',
60
+ appendToBody: false,
61
+ multiple: false,
62
+ },
63
+ overflow: false,
64
+ };
65
+ },
66
+ };
67
+ </script>
68
+ ```
69
+
70
+ Advanced example. Using value object, multi selection, slots
71
+
72
+ ```vue
73
+ <template>
74
+ <div class="pad-l5 ">
75
+ <ui-select class="p w-6-12" v-model="model" v-bind="props">
76
+ <template #icon-close>
77
+ <i class="mdi mdi-plus"></i>
78
+ </template>
79
+ <template #icon-open>
80
+ <i class="mdi mdi-minus"></i>
81
+ </template>
82
+ <template #label-multiple="{ option, value, label, deselectOption}">
83
+ <code class="cursor-pointer" @click.stop="deselectOption(option)">{{ label }}</code>
84
+ </template>
85
+ <template
86
+ #option="{ option, value, label, index, isSelected, cursorIndex, toggleOption }"
87
+ >
88
+ <li
89
+ :class="{
90
+ 'text-bold': index == cursorIndex,
91
+ 'bg-green': isSelected,
92
+ }"
93
+ :key="index"
94
+ @click="toggleOption(option)"
95
+ >
96
+ {{ label }}
97
+ </li>
98
+ </template>
99
+ </ui-select>
100
+ <p>model: {{ model }}</p>
101
+ </div>
102
+ </template>
103
+ <script>
104
+ import UiSelect from './Select.vue';
105
+
106
+ let options = [
107
+ 'angular',
108
+ 'aurelia',
109
+ 'backbone',
110
+ 'ember',
111
+ 'meteor',
112
+ 'react',
113
+ 'riot',
114
+ 'stencil',
115
+ 'svelte',
116
+ 'vue',
117
+ ].map(value => ({ value, label: value }));
118
+
119
+ export default {
120
+ components: { UiSelect },
121
+ data() {
122
+ return {
123
+ model: [{ value: 'vue', label: 'vue' }],
124
+ props: {
125
+ options,
126
+ multiple: true,
127
+ valueObjects: true,
128
+ placeholder: 'Select something',
129
+ },
130
+ };
131
+ },
132
+ };
133
+ </script>
134
+ ```
135
+
136
+ Runtime options
137
+
138
+ ```vue
139
+ <template>
140
+ <div class="pad-l5">
141
+ <ui-select class="w-6-12 p" v-model="model" v-bind="props"></ui-select>
142
+ <p>
143
+ <label>
144
+ <input class="checkbox checkbox-small" type="checkbox" v-model="props.multiple" />
145
+ <span class="pad-left-2 v-mid">multiple</span>
146
+ </label>
147
+ </p>
148
+ <p><div class="btn btn-primary" @click="toggleOptions">toggle options</div></p>
149
+ <p>model: {{ model }}</p>
150
+ </div>
151
+ </template>
152
+ <script>
153
+ import UiSelect from './Select.vue';
154
+
155
+ let options = [
156
+ 'angular',
157
+ 'aurelia',
158
+ 'backbone',
159
+ 'ember',
160
+ 'meteor',
161
+ 'react',
162
+ 'riot',
163
+ 'stencil',
164
+ 'svelte',
165
+ 'vue',
166
+ ];
167
+
168
+ export default {
169
+ components: { UiSelect },
170
+ data() {
171
+ return {
172
+ model: 'vue',
173
+ props: {
174
+ options: [],
175
+ multiple: false,
176
+ },
177
+ overflow: false,
178
+ };
179
+ },
180
+ methods: {
181
+ toggleOptions() {
182
+ this.props.options = this.props.options.length ? [] : options;
183
+ },
184
+ },
185
+ };
186
+ </script>
187
+ ```