@netang/quasar 0.0.100 → 0.0.102

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 (164) hide show
  1. package/.editorconfig +12 -0
  2. package/LICENSE +21 -21
  3. package/README.md +11 -11
  4. package/_docs/docs/.vuepress/client.js +8 -8
  5. package/_docs/docs/.vuepress/config.js +40 -40
  6. package/_docs/docs/.vuepress/configs/index.js +2 -2
  7. package/_docs/docs/.vuepress/configs/navbar/index.js +1 -1
  8. package/_docs/docs/.vuepress/configs/navbar/zh.js +16 -16
  9. package/_docs/docs/.vuepress/configs/sidebar/index.js +1 -1
  10. package/_docs/docs/.vuepress/configs/sidebar/zh.js +75 -75
  11. package/_docs/docs/.vuepress/public/css/index.css +3 -3
  12. package/_docs/docs/.vuepress/styles/index.scss +3 -3
  13. package/_docs/docs/components/column-title.md +25 -25
  14. package/_docs/docs/components/data.md +66 -66
  15. package/_docs/docs/components/dialog.md +59 -59
  16. package/_docs/docs/components/dragger.md +26 -26
  17. package/_docs/docs/components/editor-code.md +16 -16
  18. package/_docs/docs/components/empty.md +13 -13
  19. package/_docs/docs/components/field-date.md +16 -16
  20. package/_docs/docs/components/field-text.md +57 -57
  21. package/_docs/docs/components/field-tree.md +21 -21
  22. package/_docs/docs/components/img.md +25 -25
  23. package/_docs/docs/components/input-number.md +21 -21
  24. package/_docs/docs/components/list-menu-item.md +21 -21
  25. package/_docs/docs/components/list-menu.md +21 -21
  26. package/_docs/docs/components/power-page.md +21 -21
  27. package/_docs/docs/components/price.md +21 -21
  28. package/_docs/docs/components/render.md +12 -12
  29. package/_docs/docs/components/search-item.md +10 -10
  30. package/_docs/docs/components/search.md +12 -12
  31. package/_docs/docs/components/select.md +11 -11
  32. package/_docs/docs/components/splitter.md +15 -15
  33. package/_docs/docs/components/table-column-fixed.md +20 -20
  34. package/_docs/docs/components/table-pagination.md +20 -20
  35. package/_docs/docs/components/table-splitter.md +20 -20
  36. package/_docs/docs/components/table-summary.md +20 -20
  37. package/_docs/docs/components/table.md +25 -25
  38. package/_docs/docs/components/thumbnail.md +18 -18
  39. package/_docs/docs/components/toolbar.md +9 -9
  40. package/_docs/docs/components/uploader-query.md +19 -19
  41. package/_docs/docs/components/uploader.md +16 -16
  42. package/_docs/docs/components/value-format.md +26 -26
  43. package/_docs/docs/index.md +1 -1
  44. package/_docs/docs/utils/alert.md +26 -26
  45. package/_docs/docs/utils/area.md +112 -112
  46. package/_docs/docs/utils/arr.md +80 -80
  47. package/_docs/docs/utils/auth.md +101 -101
  48. package/_docs/docs/utils/bus.md +18 -18
  49. package/_docs/docs/utils/confirm.md +31 -31
  50. package/_docs/docs/utils/copy.md +22 -22
  51. package/_docs/docs/utils/dialog.md +98 -98
  52. package/_docs/docs/utils/dict.md +50 -50
  53. package/_docs/docs/utils/dictOptions.md +27 -27
  54. package/_docs/docs/utils/form.md +33 -33
  55. package/_docs/docs/utils/getData.md +60 -60
  56. package/_docs/docs/utils/getFile.md +21 -21
  57. package/_docs/docs/utils/getImage.md +33 -33
  58. package/_docs/docs/utils/getTime.md +51 -51
  59. package/_docs/docs/utils/index.md +1 -1
  60. package/_docs/docs/utils/loading.md +18 -18
  61. package/_docs/docs/utils/notify.md +29 -29
  62. package/_docs/docs/utils/power.md +353 -353
  63. package/_docs/docs/utils/previewImage.md +11 -11
  64. package/_docs/docs/utils/price.md +45 -45
  65. package/_docs/docs/utils/rule.md +30 -30
  66. package/_docs/docs/utils/ruleValid.md +31 -31
  67. package/_docs/docs/utils/symbols.md +30 -30
  68. package/_docs/docs/utils/table.md +194 -194
  69. package/_docs/docs/utils/timestamp.md +27 -27
  70. package/_docs/docs/utils/toast.md +27 -27
  71. package/_docs/docs/utils/tree.md +174 -174
  72. package/_docs/docs/utils/uploader.md +29 -29
  73. package/_docs/package.json +11 -11
  74. package/components/column-title/index.vue +37 -37
  75. package/components/data/index.vue +20 -20
  76. package/components/dialog/index.vue +372 -372
  77. package/components/dragger/index.vue +203 -203
  78. package/components/drawer/index.vue +303 -303
  79. package/components/editor-code/index.vue +289 -289
  80. package/components/empty/index.vue +71 -71
  81. package/components/field-date/index.vue +850 -850
  82. package/components/field-date/methods.js +100 -100
  83. package/components/field-table/index.vue +1222 -1195
  84. package/components/field-text/index.vue +165 -165
  85. package/components/field-tree/index.vue +739 -659
  86. package/components/img/index.vue +202 -202
  87. package/components/input-number/index.vue +546 -546
  88. package/components/list-menu/index.vue +149 -149
  89. package/components/list-menu-item/index.vue +79 -79
  90. package/components/power-page/index.vue +92 -92
  91. package/components/price/index.vue +188 -188
  92. package/components/private/components/index.js +11 -11
  93. package/components/private/components/move-to-tree/index.vue +154 -154
  94. package/components/private/edit-power-data/index.vue +816 -816
  95. package/components/private/table-visible-columns-button/index.vue +109 -109
  96. package/components/render/index.vue +150 -150
  97. package/components/search/index.vue +222 -222
  98. package/components/search-item/index.vue +210 -210
  99. package/components/select/index.vue +177 -177
  100. package/components/splitter/index.vue +415 -415
  101. package/components/table/index.vue +456 -456
  102. package/components/table-column-fixed/index.vue +112 -112
  103. package/components/table-pagination/index.vue +192 -192
  104. package/components/table-splitter/index.vue +360 -360
  105. package/components/table-summary/index.vue +110 -110
  106. package/components/thumbnail/index.vue +72 -72
  107. package/components/toolbar/container.vue +31 -31
  108. package/components/toolbar/index.vue +136 -136
  109. package/components/uploader/index.vue +158 -158
  110. package/components/uploader-query/index.vue +758 -758
  111. package/components/value-format/index.vue +274 -274
  112. package/configs/area3.js +1 -1
  113. package/docs/css/index.css +3 -3
  114. package/package.json +24 -24
  115. package/sass/common.scss +174 -174
  116. package/sass/index.scss +14 -14
  117. package/sass/line.scss +39 -39
  118. package/sass/quasar/btn.scss +46 -46
  119. package/sass/quasar/common.scss +3 -3
  120. package/sass/quasar/dialog.scss +7 -7
  121. package/sass/quasar/drawer.scss +6 -6
  122. package/sass/quasar/field.scss +243 -243
  123. package/sass/quasar/loading.scss +6 -6
  124. package/sass/quasar/menu.scss +8 -8
  125. package/sass/quasar/table.scss +150 -150
  126. package/sass/quasar/toolbar.scss +22 -22
  127. package/store/index.js +29 -29
  128. package/utils/$auth.js +127 -127
  129. package/utils/$form.js +56 -56
  130. package/utils/$power.js +1215 -1215
  131. package/utils/$rule.js +13 -13
  132. package/utils/$ruleValid.js +10 -10
  133. package/utils/$table.js +999 -999
  134. package/utils/$tree.js +713 -713
  135. package/utils/alert.js +12 -12
  136. package/utils/area.js +400 -400
  137. package/utils/arr.js +51 -51
  138. package/utils/bus.js +6 -6
  139. package/utils/config.js +52 -52
  140. package/utils/confirm.js +11 -11
  141. package/utils/copy.js +30 -30
  142. package/utils/dialog.js +36 -36
  143. package/utils/dict.js +21 -21
  144. package/utils/dictOptions.js +28 -28
  145. package/utils/getData.js +73 -73
  146. package/utils/getFile.js +40 -40
  147. package/utils/getImage.js +153 -153
  148. package/utils/getTime.js +106 -106
  149. package/utils/index.js +61 -61
  150. package/utils/loading.js +15 -15
  151. package/utils/notify.js +13 -13
  152. package/utils/previewImage.js +10 -10
  153. package/utils/price.js +18 -18
  154. package/utils/symbols.js +18 -18
  155. package/utils/timestamp.js +18 -18
  156. package/utils/toast.js +13 -13
  157. package/utils/uploader/aliyun.js +6 -6
  158. package/utils/uploader/local.js +8 -8
  159. package/utils/uploader/qiniu.js +321 -321
  160. package/utils/uploader.js +1059 -1059
  161. package/utils/useAuth.js +30 -30
  162. package/utils/useRouter.js +47 -47
  163. package/utils/useSearch.js +496 -496
  164. package/utils/useUploader.js +53 -53
@@ -1,289 +1,289 @@
1
- <template>
2
- <!-- :style="currentStyle" -->
3
- <div
4
- ref="targetRef"
5
- :style="currentStyle"
6
- ></div>
7
- </template>
8
-
9
- <script>
10
- import { ref, watch, computed, onMounted } from 'vue'
11
-
12
- import script from '@netang/utils/script'
13
- import $n_isNumeric from '@netang/utils/isNumeric'
14
- import $n_isValidValue from '@netang/utils/isValidValue'
15
- import $n_sleep from '@netang/utils/sleep'
16
- import $n_px from '@netang/utils/px'
17
-
18
-
19
- import $n_toast from '../../utils/toast'
20
-
21
- export default {
22
-
23
- /**
24
- * 标识
25
- */
26
- name: 'NEditorCode',
27
-
28
- /**
29
- * 声明属性
30
- */
31
- props: {
32
- // 值 v-model
33
- modelValue: {
34
- type: [ String, Number ],
35
- default: '',
36
- },
37
- // 宽度
38
- width: {
39
- type: [ String, Number ],
40
- default: '100%',
41
- },
42
- // 高度
43
- height: [ String, Number ],
44
- // 脚本语言
45
- language: String,
46
- // 是否只读
47
- readonly: Boolean,
48
- // 是否显示代码视图
49
- minimap: Boolean,
50
- // tab 长度
51
- tabSize: {
52
- type: Number,
53
- default: 4,
54
- },
55
- // 主题
56
- theme: {
57
- type: String,
58
- default: 'vs',
59
- },
60
- },
61
-
62
- /**
63
- * 声明事件
64
- */
65
- emits: [
66
- 'update:modelValue',
67
- ],
68
-
69
- /**
70
- * 组合式
71
- */
72
- setup(props, { emit }) {
73
-
74
- // ==========【计算属性】=========================================================================================
75
-
76
- /**
77
- * 当前样式
78
- */
79
- const currentStyle = computed(function () {
80
- return {
81
- width: $n_isNumeric(props.width) ? $n_px(props.width) : props.width,
82
- height: $n_isNumeric(props.height) ? $n_px(props.height) : props.height,
83
- }
84
- })
85
-
86
- // ==========【数据】=============================================================================================
87
-
88
- // 根节点
89
- const targetRef = ref(null)
90
-
91
- // 编辑器实例
92
- let $editor = null
93
-
94
- // 停止值观察
95
- let stopValueWatcher = false
96
-
97
- // 创建睡眠实例
98
- const sleep = $n_sleep()
99
-
100
- // ==========【监听数据】=========================================================================================
101
-
102
- /**
103
- * 监听声明值
104
- */
105
- watch(() => props.modelValue, function (val) {
106
-
107
- // 如果停止值观察
108
- if (stopValueWatcher) {
109
-
110
- // 则无任何操作
111
- return
112
- }
113
-
114
- // 取消停止值观察
115
- stopValueWatcher = false
116
-
117
- // 设置值
118
- setValue(val)
119
- })
120
-
121
- // ==========【方法】============================================================================================
122
-
123
- function load() {
124
-
125
- // 如果已加载
126
- if (window.monaco) {
127
- // 创建编辑器
128
- create()
129
- return
130
- }
131
-
132
- // 版本
133
- const version = '0.34.1'
134
-
135
- // 加载 script
136
- script([
137
- [
138
- `https://cdn.staticfile.org/monaco-editor/${version}/min/vs/loader.js`,
139
- `https://fastly.jsdelivr.net/npm/monaco-editor@${version}/min/vs/loader.js`,
140
- `https://unpkg.com/monaco-editor@${version}/min/vs/loader.js`,
141
- ]
142
- ])
143
- .then(function ([ url ]) {
144
-
145
- // 按需加载
146
- const _require = window.require
147
-
148
- // 配置
149
- _require.config({
150
- // 路径
151
- paths: {
152
- vs: url.replace('/loader.js', ''),
153
- },
154
- // 语言
155
- 'vs/nls' : {
156
- availableLanguages: {
157
- '*': 'zh-cn',
158
- }
159
- }
160
- })
161
-
162
- // 加载
163
- _require(['vs/editor/editor.main'], function () {
164
- // 创建编辑器
165
- create()
166
- })
167
- })
168
- }
169
-
170
- /**
171
- * 创建编辑器
172
- */
173
- function create() {
174
-
175
- // 创建编辑器
176
- $editor = monaco.editor.create(targetRef.value, {
177
- // 主题
178
- theme: props.theme,
179
- // 脚本语言
180
- language: props.language,
181
- // 自动布局
182
- automaticLayout: true,
183
- // 自动换行
184
- wordWrap: 'on',
185
- // tab 长度
186
- tabSize: props.tabSize,
187
- // 代码略缩图
188
- minimap: {
189
- enabled: props.minimap,
190
- },
191
- // 右键
192
- contextmenu: true,
193
- // 是否只读
194
- readOnly: props.readonly,
195
- })
196
-
197
- // 监听失去焦点事件
198
- $editor.onDidBlurEditorText(function () {
199
-
200
- // 获取编辑器内容
201
- const value = getValue()
202
- if (value === void 0) {
203
- return
204
- }
205
-
206
- // 停止值观察
207
- stopValueWatcher = true
208
-
209
- // 触发更新值
210
- emit('update:modelValue', value)
211
- })
212
-
213
- // 等编辑器全部加载完成后, 设置内容值
214
- sleep(300)
215
- .then(function () {
216
- // 设置值
217
- setValue(props.modelValue)
218
- })
219
- }
220
-
221
- /**
222
- * 设置值
223
- */
224
- function setValue(value) {
225
- if ($editor) {
226
-
227
- // 编辑器设置内容
228
- $editor.setValue(value)
229
-
230
- // 代码格式化
231
- $editor.getAction('editor.action.formatDocument').run()
232
- }
233
- }
234
-
235
- /**
236
- * 获取值
237
- */
238
- function getValue() {
239
-
240
- if ($editor) {
241
-
242
- // 获取编辑器的值
243
- let value = $editor.getValue()
244
-
245
- // 如果语言为 json
246
- if (
247
- props.language === 'json'
248
- && $n_isValidValue(value)
249
- ) {
250
- try {
251
- value = JSON.stringify(JSON.parse(value))
252
-
253
- } catch (e) {
254
- // 轻提示
255
- $n_toast({
256
- message: 'JSON 语法错误'
257
- })
258
- return
259
- }
260
- }
261
-
262
- return value
263
- }
264
-
265
- return ''
266
- }
267
-
268
- // ==========【生命周期】=========================================================================================
269
-
270
- /**
271
- * 实例被挂载后调用
272
- */
273
- onMounted(function() {
274
-
275
- // 加载
276
- load()
277
- })
278
-
279
- // ==========【返回】=========================================================================================
280
-
281
- return {
282
- // 根节点
283
- targetRef,
284
- // 当前样式
285
- currentStyle,
286
- }
287
- }
288
- }
289
- </script>
1
+ <template>
2
+ <!-- :style="currentStyle" -->
3
+ <div
4
+ ref="targetRef"
5
+ :style="currentStyle"
6
+ ></div>
7
+ </template>
8
+
9
+ <script>
10
+ import { ref, watch, computed, onMounted } from 'vue'
11
+
12
+ import script from '@netang/utils/script'
13
+ import $n_isNumeric from '@netang/utils/isNumeric'
14
+ import $n_isValidValue from '@netang/utils/isValidValue'
15
+ import $n_sleep from '@netang/utils/sleep'
16
+ import $n_px from '@netang/utils/px'
17
+
18
+
19
+ import $n_toast from '../../utils/toast'
20
+
21
+ export default {
22
+
23
+ /**
24
+ * 标识
25
+ */
26
+ name: 'NEditorCode',
27
+
28
+ /**
29
+ * 声明属性
30
+ */
31
+ props: {
32
+ // 值 v-model
33
+ modelValue: {
34
+ type: [ String, Number ],
35
+ default: '',
36
+ },
37
+ // 宽度
38
+ width: {
39
+ type: [ String, Number ],
40
+ default: '100%',
41
+ },
42
+ // 高度
43
+ height: [ String, Number ],
44
+ // 脚本语言
45
+ language: String,
46
+ // 是否只读
47
+ readonly: Boolean,
48
+ // 是否显示代码视图
49
+ minimap: Boolean,
50
+ // tab 长度
51
+ tabSize: {
52
+ type: Number,
53
+ default: 4,
54
+ },
55
+ // 主题
56
+ theme: {
57
+ type: String,
58
+ default: 'vs',
59
+ },
60
+ },
61
+
62
+ /**
63
+ * 声明事件
64
+ */
65
+ emits: [
66
+ 'update:modelValue',
67
+ ],
68
+
69
+ /**
70
+ * 组合式
71
+ */
72
+ setup(props, { emit }) {
73
+
74
+ // ==========【计算属性】=========================================================================================
75
+
76
+ /**
77
+ * 当前样式
78
+ */
79
+ const currentStyle = computed(function () {
80
+ return {
81
+ width: $n_isNumeric(props.width) ? $n_px(props.width) : props.width,
82
+ height: $n_isNumeric(props.height) ? $n_px(props.height) : props.height,
83
+ }
84
+ })
85
+
86
+ // ==========【数据】=============================================================================================
87
+
88
+ // 根节点
89
+ const targetRef = ref(null)
90
+
91
+ // 编辑器实例
92
+ let $editor = null
93
+
94
+ // 停止值观察
95
+ let stopValueWatcher = false
96
+
97
+ // 创建睡眠实例
98
+ const sleep = $n_sleep()
99
+
100
+ // ==========【监听数据】=========================================================================================
101
+
102
+ /**
103
+ * 监听声明值
104
+ */
105
+ watch(() => props.modelValue, function (val) {
106
+
107
+ // 如果停止值观察
108
+ if (stopValueWatcher) {
109
+
110
+ // 则无任何操作
111
+ return
112
+ }
113
+
114
+ // 取消停止值观察
115
+ stopValueWatcher = false
116
+
117
+ // 设置值
118
+ setValue(val)
119
+ })
120
+
121
+ // ==========【方法】============================================================================================
122
+
123
+ function load() {
124
+
125
+ // 如果已加载
126
+ if (window.monaco) {
127
+ // 创建编辑器
128
+ create()
129
+ return
130
+ }
131
+
132
+ // 版本
133
+ const version = '0.34.1'
134
+
135
+ // 加载 script
136
+ script([
137
+ [
138
+ `https://cdn.staticfile.org/monaco-editor/${version}/min/vs/loader.js`,
139
+ `https://fastly.jsdelivr.net/npm/monaco-editor@${version}/min/vs/loader.js`,
140
+ `https://unpkg.com/monaco-editor@${version}/min/vs/loader.js`,
141
+ ]
142
+ ])
143
+ .then(function ([ url ]) {
144
+
145
+ // 按需加载
146
+ const _require = window.require
147
+
148
+ // 配置
149
+ _require.config({
150
+ // 路径
151
+ paths: {
152
+ vs: url.replace('/loader.js', ''),
153
+ },
154
+ // 语言
155
+ 'vs/nls' : {
156
+ availableLanguages: {
157
+ '*': 'zh-cn',
158
+ }
159
+ }
160
+ })
161
+
162
+ // 加载
163
+ _require(['vs/editor/editor.main'], function () {
164
+ // 创建编辑器
165
+ create()
166
+ })
167
+ })
168
+ }
169
+
170
+ /**
171
+ * 创建编辑器
172
+ */
173
+ function create() {
174
+
175
+ // 创建编辑器
176
+ $editor = monaco.editor.create(targetRef.value, {
177
+ // 主题
178
+ theme: props.theme,
179
+ // 脚本语言
180
+ language: props.language,
181
+ // 自动布局
182
+ automaticLayout: true,
183
+ // 自动换行
184
+ wordWrap: 'on',
185
+ // tab 长度
186
+ tabSize: props.tabSize,
187
+ // 代码略缩图
188
+ minimap: {
189
+ enabled: props.minimap,
190
+ },
191
+ // 右键
192
+ contextmenu: true,
193
+ // 是否只读
194
+ readOnly: props.readonly,
195
+ })
196
+
197
+ // 监听失去焦点事件
198
+ $editor.onDidBlurEditorText(function () {
199
+
200
+ // 获取编辑器内容
201
+ const value = getValue()
202
+ if (value === void 0) {
203
+ return
204
+ }
205
+
206
+ // 停止值观察
207
+ stopValueWatcher = true
208
+
209
+ // 触发更新值
210
+ emit('update:modelValue', value)
211
+ })
212
+
213
+ // 等编辑器全部加载完成后, 设置内容值
214
+ sleep(300)
215
+ .then(function () {
216
+ // 设置值
217
+ setValue(props.modelValue)
218
+ })
219
+ }
220
+
221
+ /**
222
+ * 设置值
223
+ */
224
+ function setValue(value) {
225
+ if ($editor) {
226
+
227
+ // 编辑器设置内容
228
+ $editor.setValue(value)
229
+
230
+ // 代码格式化
231
+ $editor.getAction('editor.action.formatDocument').run()
232
+ }
233
+ }
234
+
235
+ /**
236
+ * 获取值
237
+ */
238
+ function getValue() {
239
+
240
+ if ($editor) {
241
+
242
+ // 获取编辑器的值
243
+ let value = $editor.getValue()
244
+
245
+ // 如果语言为 json
246
+ if (
247
+ props.language === 'json'
248
+ && $n_isValidValue(value)
249
+ ) {
250
+ try {
251
+ value = JSON.stringify(JSON.parse(value))
252
+
253
+ } catch (e) {
254
+ // 轻提示
255
+ $n_toast({
256
+ message: 'JSON 语法错误'
257
+ })
258
+ return
259
+ }
260
+ }
261
+
262
+ return value
263
+ }
264
+
265
+ return ''
266
+ }
267
+
268
+ // ==========【生命周期】=========================================================================================
269
+
270
+ /**
271
+ * 实例被挂载后调用
272
+ */
273
+ onMounted(function() {
274
+
275
+ // 加载
276
+ load()
277
+ })
278
+
279
+ // ==========【返回】=========================================================================================
280
+
281
+ return {
282
+ // 根节点
283
+ targetRef,
284
+ // 当前样式
285
+ currentStyle,
286
+ }
287
+ }
288
+ }
289
+ </script>