@netang/quasar 0.0.102 → 0.0.103

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 (162) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +11 -11
  3. package/_docs/docs/.vuepress/client.js +8 -8
  4. package/_docs/docs/.vuepress/config.js +40 -40
  5. package/_docs/docs/.vuepress/configs/index.js +2 -2
  6. package/_docs/docs/.vuepress/configs/navbar/index.js +1 -1
  7. package/_docs/docs/.vuepress/configs/navbar/zh.js +16 -16
  8. package/_docs/docs/.vuepress/configs/sidebar/index.js +1 -1
  9. package/_docs/docs/.vuepress/configs/sidebar/zh.js +75 -75
  10. package/_docs/docs/.vuepress/public/css/index.css +3 -3
  11. package/_docs/docs/.vuepress/styles/index.scss +3 -3
  12. package/_docs/docs/components/column-title.md +25 -25
  13. package/_docs/docs/components/data.md +66 -66
  14. package/_docs/docs/components/dialog.md +59 -59
  15. package/_docs/docs/components/dragger.md +26 -26
  16. package/_docs/docs/components/editor-code.md +16 -16
  17. package/_docs/docs/components/empty.md +13 -13
  18. package/_docs/docs/components/field-date.md +16 -16
  19. package/_docs/docs/components/field-text.md +57 -57
  20. package/_docs/docs/components/field-tree.md +14 -14
  21. package/_docs/docs/components/img.md +25 -25
  22. package/_docs/docs/components/input-number.md +21 -21
  23. package/_docs/docs/components/list-menu-item.md +21 -21
  24. package/_docs/docs/components/list-menu.md +21 -21
  25. package/_docs/docs/components/power-page.md +21 -21
  26. package/_docs/docs/components/price.md +21 -21
  27. package/_docs/docs/components/render.md +12 -12
  28. package/_docs/docs/components/search-item.md +10 -10
  29. package/_docs/docs/components/search.md +12 -12
  30. package/_docs/docs/components/select.md +11 -11
  31. package/_docs/docs/components/splitter.md +15 -15
  32. package/_docs/docs/components/table-column-fixed.md +20 -20
  33. package/_docs/docs/components/table-pagination.md +20 -20
  34. package/_docs/docs/components/table-splitter.md +20 -20
  35. package/_docs/docs/components/table-summary.md +20 -20
  36. package/_docs/docs/components/table.md +25 -25
  37. package/_docs/docs/components/thumbnail.md +18 -18
  38. package/_docs/docs/components/toolbar.md +9 -9
  39. package/_docs/docs/components/uploader-query.md +19 -19
  40. package/_docs/docs/components/uploader.md +16 -16
  41. package/_docs/docs/components/value-format.md +26 -26
  42. package/_docs/docs/index.md +1 -1
  43. package/_docs/docs/utils/alert.md +26 -26
  44. package/_docs/docs/utils/area.md +112 -112
  45. package/_docs/docs/utils/arr.md +80 -80
  46. package/_docs/docs/utils/auth.md +101 -101
  47. package/_docs/docs/utils/bus.md +18 -18
  48. package/_docs/docs/utils/confirm.md +31 -31
  49. package/_docs/docs/utils/copy.md +22 -22
  50. package/_docs/docs/utils/dialog.md +98 -98
  51. package/_docs/docs/utils/dict.md +50 -50
  52. package/_docs/docs/utils/dictOptions.md +27 -27
  53. package/_docs/docs/utils/form.md +33 -33
  54. package/_docs/docs/utils/getData.md +60 -60
  55. package/_docs/docs/utils/getFile.md +21 -21
  56. package/_docs/docs/utils/getImage.md +33 -33
  57. package/_docs/docs/utils/getTime.md +51 -51
  58. package/_docs/docs/utils/index.md +1 -1
  59. package/_docs/docs/utils/loading.md +18 -18
  60. package/_docs/docs/utils/notify.md +29 -29
  61. package/_docs/docs/utils/power.md +353 -353
  62. package/_docs/docs/utils/previewImage.md +11 -11
  63. package/_docs/docs/utils/price.md +45 -45
  64. package/_docs/docs/utils/rule.md +30 -30
  65. package/_docs/docs/utils/ruleValid.md +31 -31
  66. package/_docs/docs/utils/symbols.md +30 -30
  67. package/_docs/docs/utils/table.md +194 -194
  68. package/_docs/docs/utils/timestamp.md +27 -27
  69. package/_docs/docs/utils/toast.md +27 -27
  70. package/_docs/docs/utils/tree.md +174 -174
  71. package/_docs/docs/utils/uploader.md +29 -29
  72. package/_docs/package.json +11 -11
  73. package/components/column-title/index.vue +37 -37
  74. package/components/data/index.vue +20 -20
  75. package/components/dialog/index.vue +372 -372
  76. package/components/dragger/index.vue +203 -203
  77. package/components/drawer/index.vue +303 -303
  78. package/components/editor-code/index.vue +289 -289
  79. package/components/empty/index.vue +71 -71
  80. package/components/field-date/index.vue +850 -850
  81. package/components/field-date/methods.js +100 -100
  82. package/components/field-table/index.vue +1222 -1222
  83. package/components/field-text/index.vue +165 -165
  84. package/components/field-tree/index.vue +103 -81
  85. package/components/img/index.vue +202 -202
  86. package/components/input-number/index.vue +546 -546
  87. package/components/list-menu/index.vue +149 -149
  88. package/components/list-menu-item/index.vue +79 -79
  89. package/components/power-page/index.vue +92 -92
  90. package/components/price/index.vue +188 -188
  91. package/components/private/components/index.js +11 -11
  92. package/components/private/components/move-to-tree/index.vue +154 -154
  93. package/components/private/edit-power-data/index.vue +816 -816
  94. package/components/private/table-visible-columns-button/index.vue +109 -109
  95. package/components/render/index.vue +150 -150
  96. package/components/search/index.vue +222 -222
  97. package/components/search-item/index.vue +210 -210
  98. package/components/splitter/index.vue +415 -415
  99. package/components/table/index.vue +456 -456
  100. package/components/table-column-fixed/index.vue +112 -112
  101. package/components/table-pagination/index.vue +192 -192
  102. package/components/table-splitter/index.vue +360 -360
  103. package/components/table-summary/index.vue +110 -110
  104. package/components/thumbnail/index.vue +72 -72
  105. package/components/toolbar/container.vue +31 -31
  106. package/components/toolbar/index.vue +136 -136
  107. package/components/uploader/index.vue +158 -158
  108. package/components/uploader-query/index.vue +758 -758
  109. package/components/value-format/index.vue +274 -274
  110. package/configs/area3.js +1 -1
  111. package/docs/css/index.css +3 -3
  112. package/package.json +1 -1
  113. package/sass/common.scss +174 -174
  114. package/sass/index.scss +14 -14
  115. package/sass/line.scss +39 -39
  116. package/sass/quasar/btn.scss +46 -46
  117. package/sass/quasar/common.scss +3 -3
  118. package/sass/quasar/dialog.scss +7 -7
  119. package/sass/quasar/drawer.scss +6 -6
  120. package/sass/quasar/field.scss +243 -243
  121. package/sass/quasar/loading.scss +6 -6
  122. package/sass/quasar/menu.scss +8 -8
  123. package/sass/quasar/table.scss +150 -150
  124. package/sass/quasar/toolbar.scss +22 -22
  125. package/store/index.js +29 -29
  126. package/utils/$auth.js +127 -127
  127. package/utils/$form.js +56 -56
  128. package/utils/$power.js +1215 -1215
  129. package/utils/$rule.js +13 -13
  130. package/utils/$ruleValid.js +10 -10
  131. package/utils/$table.js +999 -999
  132. package/utils/$tree.js +713 -713
  133. package/utils/alert.js +12 -12
  134. package/utils/area.js +400 -400
  135. package/utils/arr.js +51 -51
  136. package/utils/bus.js +6 -6
  137. package/utils/config.js +52 -52
  138. package/utils/confirm.js +11 -11
  139. package/utils/copy.js +30 -30
  140. package/utils/dialog.js +36 -36
  141. package/utils/dict.js +21 -21
  142. package/utils/dictOptions.js +28 -28
  143. package/utils/getData.js +73 -73
  144. package/utils/getFile.js +40 -40
  145. package/utils/getImage.js +153 -153
  146. package/utils/getTime.js +106 -106
  147. package/utils/index.js +61 -61
  148. package/utils/loading.js +15 -15
  149. package/utils/notify.js +13 -13
  150. package/utils/previewImage.js +10 -10
  151. package/utils/price.js +18 -18
  152. package/utils/symbols.js +18 -18
  153. package/utils/timestamp.js +18 -18
  154. package/utils/toast.js +13 -13
  155. package/utils/uploader/aliyun.js +6 -6
  156. package/utils/uploader/local.js +8 -8
  157. package/utils/uploader/qiniu.js +321 -321
  158. package/utils/uploader.js +1059 -1059
  159. package/utils/useAuth.js +30 -30
  160. package/utils/useRouter.js +47 -47
  161. package/utils/useSearch.js +0 -6
  162. package/utils/useUploader.js +53 -53
@@ -1,222 +1,222 @@
1
- <template>
2
- <div class="flex column absolute-full" v-if="isValidArray(options)">
3
- <q-scroll-area class="n-flex-1">
4
-
5
- <div class="n-search q-pa-sm q-pt-sm q-gutter-sm">
6
-
7
- <template
8
- v-for="(item, itemIndex) in options"
9
- >
10
- <template v-if="! item.hide">
11
-
12
- <!-- 如果有 name 插槽 -->
13
- <slot
14
- :name="`name-${item.name}`"
15
- :item="item"
16
- :item-index="itemIndex"
17
- v-if="$slots[`name-${item.name}`]"
18
- />
19
-
20
- <!-- 否则自定义组件 -->
21
- <n-search-item
22
- :data="item"
23
- v-model="modelValue[itemIndex]"
24
- v-slot="{ label, index, multiple }"
25
- v-else
26
- >
27
- <!-- 日期 -->
28
- <template v-if="item.type === 'date'">
29
-
30
- <!-- 日期 -->
31
- <n-field-date
32
- class="n-field-fieldset n-flex-1"
33
- :label="label"
34
- v-model="modelValue[itemIndex][index].value"
35
- :type="modelValue[itemIndex][0].dateType"
36
- dense
37
- :is-end-date="index === 1"
38
- outlined
39
- clearable
40
- />
41
-
42
- <!-- 日期类型 -->
43
- <q-select
44
- v-model="modelValue[itemIndex][0].dateType"
45
- :options="[
46
- { label: '年', value: 'year' },
47
- { label: '月', value: 'month' },
48
- { label: '日', value: 'day' },
49
- { label: '时', value: 'datetime' },
50
- ]"
51
- map-options
52
- emit-value
53
- outlined
54
- dense
55
- options-dense
56
- v-if="index === 0"
57
- />
58
- </template>
59
-
60
- <!-- 数字输入框 价格 -->
61
- <n-input-number
62
- class="n-field-fieldset"
63
- :label="label"
64
- v-model="modelValue[itemIndex][index].value"
65
- dense
66
- outlined
67
- clearable
68
-
69
- :decimal-length="2"
70
- :cent-to-yuan="centToYuan"
71
-
72
- v-bind="item.input"
73
- v-else-if="item.type === 'price'"
74
- />
75
-
76
- <!-- 输入框 -->
77
- <template v-else-if="item.searchType === 'input'">
78
- <q-input
79
- class="n-field-fieldset"
80
- :label="label"
81
- v-model="modelValue[itemIndex][index].value"
82
- dense
83
- outlined
84
- clearable
85
- v-bind="item.input"
86
- />
87
- </template>
88
-
89
- <!-- 下拉列表 -->
90
- <q-select
91
- class="n-field-fieldset"
92
- :label="label"
93
- v-model="modelValue[itemIndex][index].value"
94
- map-options
95
- emit-value
96
- outlined
97
- dense
98
- :multiple="multiple"
99
- :use-chips="multiple"
100
- options-dense
101
- clearable
102
- v-bind="item.select"
103
- v-else-if="item.searchType === 'select'"
104
- />
105
-
106
- <!-- 下拉树 -->
107
- <n-field-tree
108
- class="n-field-fieldset"
109
- :label="label"
110
- v-model="modelValue[itemIndex][index].value"
111
- dense
112
- outlined
113
- :multiple="multiple"
114
- v-bind="item.tree"
115
- v-else-if="item.searchType === 'tree'"
116
- />
117
-
118
- <!-- 下拉表格 -->
119
- <n-field-table
120
- class="n-field-fieldset"
121
- :label="label"
122
- v-model="modelValue[itemIndex][index].value"
123
- dense
124
- outlined
125
- :value-type="multiple ? 'stringArray' : 'string'"
126
- :multiple="multiple"
127
- v-bind="item.table"
128
- v-else-if="item.searchType === 'table'"
129
- />
130
-
131
- </n-search-item>
132
- </template>
133
- </template>
134
- </div>
135
- </q-scroll-area>
136
-
137
- <!-- 底部 -->
138
- <q-toolbar
139
- class="q-footer q-footer--bordered"
140
- :class="{
141
- 'bg-grey-2': ! $q.dark.isActive,
142
- }"
143
- >
144
- <div class="row n-flex-1 q-gutter-sm">
145
- <q-btn
146
- class="n-flex-1"
147
- color="default"
148
- outline
149
- label="搜索"
150
- icon="search"
151
- @click="onSearch"
152
- unelevated
153
- />
154
- <q-btn
155
- class="q-pl-md"
156
- color="default"
157
- outline
158
- label="重置"
159
- @click="onReset"
160
- unelevated
161
- />
162
- </div>
163
- </q-toolbar>
164
- </div>
165
- </template>
166
-
167
- <script>
168
- import NSearchItem from '../search-item'
169
- import NFieldDate from '../field-date'
170
- import NInputNumber from '../input-number'
171
- import NFieldTree from '../field-tree'
172
- import NFieldTable from '../field-table'
173
-
174
- import $n_isValidArray from '@netang/utils/isValidArray'
175
-
176
- import $n_config from '../../utils/config'
177
-
178
- export default {
179
-
180
- /**
181
- * 标识
182
- */
183
- name: 'NSearch',
184
-
185
- /**
186
- * 组件
187
- */
188
- components: {
189
- NSearchItem,
190
- NFieldDate,
191
- NInputNumber,
192
- NFieldTree,
193
- NFieldTable,
194
- },
195
-
196
- /**
197
- * 声明属性
198
- */
199
- props: {
200
- // 值
201
- modelValue: Array,
202
- // 参数
203
- options: Array,
204
- // 搜索
205
- onSearch: Function,
206
- // 重置
207
- onReset: Function,
208
- },
209
-
210
- /**
211
- * 组合式
212
- */
213
- setup() {
214
- return {
215
- // 如果金额为分
216
- centToYuan: $n_config('priceCentToYuan') === true,
217
-
218
- isValidArray: $n_isValidArray,
219
- }
220
- }
221
- }
222
- </script>
1
+ <template>
2
+ <div class="flex column absolute-full" v-if="isValidArray(options)">
3
+ <q-scroll-area class="n-flex-1">
4
+
5
+ <div class="n-search q-pa-sm q-pt-sm q-gutter-sm">
6
+
7
+ <template
8
+ v-for="(item, itemIndex) in options"
9
+ >
10
+ <template v-if="! item.hide">
11
+
12
+ <!-- 如果有 name 插槽 -->
13
+ <slot
14
+ :name="`name-${item.name}`"
15
+ :item="item"
16
+ :item-index="itemIndex"
17
+ v-if="$slots[`name-${item.name}`]"
18
+ />
19
+
20
+ <!-- 否则自定义组件 -->
21
+ <n-search-item
22
+ :data="item"
23
+ v-model="modelValue[itemIndex]"
24
+ v-slot="{ label, index, multiple }"
25
+ v-else
26
+ >
27
+ <!-- 日期 -->
28
+ <template v-if="item.type === 'date'">
29
+
30
+ <!-- 日期 -->
31
+ <n-field-date
32
+ class="n-field-fieldset n-flex-1"
33
+ :label="label"
34
+ v-model="modelValue[itemIndex][index].value"
35
+ :type="modelValue[itemIndex][0].dateType"
36
+ dense
37
+ :is-end-date="index === 1"
38
+ outlined
39
+ clearable
40
+ />
41
+
42
+ <!-- 日期类型 -->
43
+ <q-select
44
+ v-model="modelValue[itemIndex][0].dateType"
45
+ :options="[
46
+ { label: '年', value: 'year' },
47
+ { label: '月', value: 'month' },
48
+ { label: '日', value: 'day' },
49
+ { label: '时', value: 'datetime' },
50
+ ]"
51
+ map-options
52
+ emit-value
53
+ outlined
54
+ dense
55
+ options-dense
56
+ v-if="index === 0"
57
+ />
58
+ </template>
59
+
60
+ <!-- 数字输入框 价格 -->
61
+ <n-input-number
62
+ class="n-field-fieldset"
63
+ :label="label"
64
+ v-model="modelValue[itemIndex][index].value"
65
+ dense
66
+ outlined
67
+ clearable
68
+
69
+ :decimal-length="2"
70
+ :cent-to-yuan="centToYuan"
71
+
72
+ v-bind="item.input"
73
+ v-else-if="item.type === 'price'"
74
+ />
75
+
76
+ <!-- 输入框 -->
77
+ <template v-else-if="item.searchType === 'input'">
78
+ <q-input
79
+ class="n-field-fieldset"
80
+ :label="label"
81
+ v-model="modelValue[itemIndex][index].value"
82
+ dense
83
+ outlined
84
+ clearable
85
+ v-bind="item.input"
86
+ />
87
+ </template>
88
+
89
+ <!-- 下拉列表 -->
90
+ <q-select
91
+ class="n-field-fieldset"
92
+ :label="label"
93
+ v-model="modelValue[itemIndex][index].value"
94
+ map-options
95
+ emit-value
96
+ outlined
97
+ dense
98
+ :multiple="multiple"
99
+ :use-chips="multiple"
100
+ options-dense
101
+ clearable
102
+ v-bind="item.select"
103
+ v-else-if="item.searchType === 'select'"
104
+ />
105
+
106
+ <!-- 下拉树 -->
107
+ <n-field-tree
108
+ class="n-field-fieldset"
109
+ :label="label"
110
+ v-model="modelValue[itemIndex][index].value"
111
+ dense
112
+ outlined
113
+ :multiple="multiple"
114
+ v-bind="item.tree"
115
+ v-else-if="item.searchType === 'tree'"
116
+ />
117
+
118
+ <!-- 下拉表格 -->
119
+ <n-field-table
120
+ class="n-field-fieldset"
121
+ :label="label"
122
+ v-model="modelValue[itemIndex][index].value"
123
+ dense
124
+ outlined
125
+ :value-type="multiple ? 'stringArray' : 'string'"
126
+ :multiple="multiple"
127
+ v-bind="item.table"
128
+ v-else-if="item.searchType === 'table'"
129
+ />
130
+
131
+ </n-search-item>
132
+ </template>
133
+ </template>
134
+ </div>
135
+ </q-scroll-area>
136
+
137
+ <!-- 底部 -->
138
+ <q-toolbar
139
+ class="q-footer q-footer--bordered"
140
+ :class="{
141
+ 'bg-grey-2': ! $q.dark.isActive,
142
+ }"
143
+ >
144
+ <div class="row n-flex-1 q-gutter-sm">
145
+ <q-btn
146
+ class="n-flex-1"
147
+ color="default"
148
+ outline
149
+ label="搜索"
150
+ icon="search"
151
+ @click="onSearch"
152
+ unelevated
153
+ />
154
+ <q-btn
155
+ class="q-pl-md"
156
+ color="default"
157
+ outline
158
+ label="重置"
159
+ @click="onReset"
160
+ unelevated
161
+ />
162
+ </div>
163
+ </q-toolbar>
164
+ </div>
165
+ </template>
166
+
167
+ <script>
168
+ import NSearchItem from '../search-item'
169
+ import NFieldDate from '../field-date'
170
+ import NInputNumber from '../input-number'
171
+ import NFieldTree from '../field-tree'
172
+ import NFieldTable from '../field-table'
173
+
174
+ import $n_isValidArray from '@netang/utils/isValidArray'
175
+
176
+ import $n_config from '../../utils/config'
177
+
178
+ export default {
179
+
180
+ /**
181
+ * 标识
182
+ */
183
+ name: 'NSearch',
184
+
185
+ /**
186
+ * 组件
187
+ */
188
+ components: {
189
+ NSearchItem,
190
+ NFieldDate,
191
+ NInputNumber,
192
+ NFieldTree,
193
+ NFieldTable,
194
+ },
195
+
196
+ /**
197
+ * 声明属性
198
+ */
199
+ props: {
200
+ // 值
201
+ modelValue: Array,
202
+ // 参数
203
+ options: Array,
204
+ // 搜索
205
+ onSearch: Function,
206
+ // 重置
207
+ onReset: Function,
208
+ },
209
+
210
+ /**
211
+ * 组合式
212
+ */
213
+ setup() {
214
+ return {
215
+ // 如果金额为分
216
+ centToYuan: $n_config('priceCentToYuan') === true,
217
+
218
+ isValidArray: $n_isValidArray,
219
+ }
220
+ }
221
+ }
222
+ </script>