lowcoder-map-component 0.1.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 (123) hide show
  1. package/README.md +37 -0
  2. package/icons/demo-icon.svg +10 -0
  3. package/icons/hills.svg +17 -0
  4. package/index.css +27 -0
  5. package/index.html +35 -0
  6. package/index.tsx +20 -0
  7. package/loader.mjs +11 -0
  8. package/package.json +175 -0
  9. package/src/README.md +35 -0
  10. package/src/components/ChartPropertyView.tsx +961 -0
  11. package/src/components/SeriesComp.tsx +368 -0
  12. package/src/components/TabPropertyView.tsx +127 -0
  13. package/src/comps/Barcharts/comp.tsx +338 -0
  14. package/src/comps/Barcharts/constants.tsx +77 -0
  15. package/src/comps/Linecharts/comp.tsx +350 -0
  16. package/src/comps/Linecharts/constants.tsx +53 -0
  17. package/src/comps/Linechartsv2/comp.tsx +350 -0
  18. package/src/comps/Linechartsv2/constants.tsx +68 -0
  19. package/src/comps/Mapcharts/comp.tsx +381 -0
  20. package/src/comps/Mapcharts/constants.tsx +312 -0
  21. package/src/comps/Mapchartsv2/comp.tsx +393 -0
  22. package/src/comps/Mapchartsv2/constants.tsx +340 -0
  23. package/src/comps/MixedLineBarCharts/comp.tsx +353 -0
  24. package/src/comps/MixedLineBarCharts/constants.tsx +60 -0
  25. package/src/comps/MultiLineCharts/comp.tsx +362 -0
  26. package/src/comps/MultiLineCharts/constants.tsx +96 -0
  27. package/src/comps/PercentageCharts/comp.tsx +359 -0
  28. package/src/comps/PercentageCharts/constants.tsx +98 -0
  29. package/src/comps/Piecharts/comp.tsx +334 -0
  30. package/src/comps/Piecharts/constants.tsx +48 -0
  31. package/src/comps/Tablecharts/comp.tsx +429 -0
  32. package/src/comps/Tablecharts/constants.tsx +97 -0
  33. package/src/comps/Totalcharts/comp.tsx +463 -0
  34. package/src/comps/Totalcharts/constants.tsx +66 -0
  35. package/src/comps/TwoLineCharts/comp.tsx +350 -0
  36. package/src/comps/TwoLineCharts/constants.tsx +82 -0
  37. package/src/comps/mapComponent/comp.tsx +338 -0
  38. package/src/comps/mapComponent/constants.tsx +2149 -0
  39. package/src/comps/tab/comp.tsx +283 -0
  40. package/src/comps/tab/constants.tsx +79 -0
  41. package/src/configs/barChartConfig.tsx +153 -0
  42. package/src/configs/baseConfig.tsx +66 -0
  43. package/src/configs/candleStickChartConfig.tsx +35 -0
  44. package/src/configs/cartesianAxisConfig.tsx +314 -0
  45. package/src/configs/chartUrls.tsx +9 -0
  46. package/src/configs/echartConfig.tsx +260 -0
  47. package/src/configs/echartsLabelConfig.tsx +47 -0
  48. package/src/configs/echartsLegendConfig.tsx +29 -0
  49. package/src/configs/echartsTitleConfig.tsx +49 -0
  50. package/src/configs/echartsTitleVerticalConfig.tsx +50 -0
  51. package/src/configs/funnelChartConfig.tsx +35 -0
  52. package/src/configs/gaugeChartConfig.tsx +31 -0
  53. package/src/configs/graphChartConfig.tsx +31 -0
  54. package/src/configs/heatmapChartConfig.tsx +31 -0
  55. package/src/configs/legendConfig.tsx +55 -0
  56. package/src/configs/lineChartConfig.tsx +246 -0
  57. package/src/configs/lineChartConfigv2.tsx +246 -0
  58. package/src/configs/mapChartConfig.tsx +106 -0
  59. package/src/configs/mapChartConfigv2.tsx +106 -0
  60. package/src/configs/mixedChartConfig.tsx +21 -0
  61. package/src/configs/pieChartConfig.tsx +156 -0
  62. package/src/configs/radarChartConfig.tsx +31 -0
  63. package/src/configs/sankeyChartConfig.tsx +35 -0
  64. package/src/configs/scatterChartConfig.tsx +152 -0
  65. package/src/configs/sunburstChartConfig.tsx +31 -0
  66. package/src/configs/tabConfig.tsx +0 -0
  67. package/src/configs/tableChartConfig.tsx +81 -0
  68. package/src/configs/themeriverChartConfig.tsx +31 -0
  69. package/src/configs/totalChartConfig.tsx +670 -0
  70. package/src/configs/treeChartConfig.tsx +31 -0
  71. package/src/configs/treemapChartConfig.tsx +31 -0
  72. package/src/controls/AnimationsControls.tsx +3 -0
  73. package/src/controls/AutoHeightControl.tsx +2 -0
  74. package/src/controls/AxisControls.tsx +146 -0
  75. package/src/controls/AxisVisibilityControl.tsx +14 -0
  76. package/src/controls/ChartTypeControl.tsx +15 -0
  77. package/src/controls/ColorScaleControl.tsx +221 -0
  78. package/src/controls/ColumnControl.tsx +204 -0
  79. package/src/controls/ConfigControl.tsx +37 -0
  80. package/src/controls/DirectionControls.tsx +20 -0
  81. package/src/controls/IconControl.tsx +88 -0
  82. package/src/controls/LegendControl.tsx +8 -0
  83. package/src/controls/RowLimitControl.tsx +91 -0
  84. package/src/controls/StyleControls.tsx +22 -0
  85. package/src/controls/TimeControls.tsx +41 -0
  86. package/src/controls/TrendlineControl.tsx +89 -0
  87. package/src/controls/UIEventControl.tsx +21 -0
  88. package/src/controls/index.ts +16 -0
  89. package/src/controls/radioControl.tsx +88 -0
  90. package/src/exposing/index.ts +3 -0
  91. package/src/exposing/setPoint.ts +19 -0
  92. package/src/geo/vn.geo.json +369897 -0
  93. package/src/geo/world.geo.json +32127 -0
  94. package/src/i18n/comps/index.tsx +39 -0
  95. package/src/i18n/comps/locales/en.ts +558 -0
  96. package/src/i18n/comps/locales/enObj.tsx +7186 -0
  97. package/src/i18n/comps/locales/index.ts +7 -0
  98. package/src/i18n/comps/locales/pt.ts +37 -0
  99. package/src/i18n/comps/locales/ptObj.tsx +40 -0
  100. package/src/i18n/comps/locales/types.tsx +622 -0
  101. package/src/i18n/comps/locales/zh.ts +3 -0
  102. package/src/i18n/comps/locales/zhObj.tsx +4 -0
  103. package/src/index.ts +31 -0
  104. package/src/types/global.d.ts +9 -0
  105. package/src/types/lowcoder-sdk.d.ts +578 -0
  106. package/src/utils/chartStyle.util.ts +121 -0
  107. package/src/utils/columnExtractor.util.ts +41 -0
  108. package/src/utils/dataTransform.util.ts +37 -0
  109. package/src/utils/deepEqual.util.ts +29 -0
  110. package/src/utils/echarts.util.tsx +822 -0
  111. package/src/utils/getDataKey.util.ts +115 -0
  112. package/src/utils/getLinearRegression.util.ts +46 -0
  113. package/src/utils/googleMaps.util.ts +28 -0
  114. package/src/utils/isEmpty.util.ts +10 -0
  115. package/src/utils/move.util.ts +6 -0
  116. package/src/utils/selection.util.ts +73 -0
  117. package/src/utils/style.util.ts +315 -0
  118. package/src/utils/time.util.ts +221 -0
  119. package/src/utils/timeFormatter.util.ts +104 -0
  120. package/src/utils/timeProcessing.util.ts +38 -0
  121. package/src/utils/trendline.util.ts +342 -0
  122. package/tsconfig.json +25 -0
  123. package/vite.config.js +19 -0
@@ -0,0 +1,2149 @@
1
+ import { createSeriesListComp } from '@/components/SeriesComp';
2
+ import { ChartOptionMap, ChartTypeControl } from '@/controls';
3
+ import { trans } from '@/i18n/comps';
4
+ import {
5
+ EchartDefaultTextStyle,
6
+ jsonControl,
7
+ RecordConstructorToView,
8
+ StringControl,
9
+ styleControl,
10
+ toJSONObject,
11
+ toJSONObjectArray,
12
+ uiChildren,
13
+ withDefault,
14
+ withType,
15
+ } from 'lowcoder-sdk';
16
+
17
+ const defaultMapData = [
18
+ {
19
+ name: 'Đà Nẵng',
20
+ score: '100',
21
+ unit: '%',
22
+ title: 'Tỉ Lệ Đúng Hạn',
23
+ subData: [
24
+ {
25
+ title: 'Tỉ Lệ Sớm Trước Hạn',
26
+ score: '70',
27
+ unit: '%',
28
+ },
29
+ {
30
+ title: 'Tỉ Lệ Quá Hạn',
31
+ score: '50',
32
+ unit: '%',
33
+ },
34
+ ],
35
+ },
36
+ {
37
+ name: 'Xã Bến Giằng',
38
+ score: '100',
39
+ unit: '%',
40
+ title: 'Tỉ Lệ Đúng Hạn',
41
+ subData: [
42
+ {
43
+ title: 'Tỉ Lệ Sớm Trước Hạn',
44
+ score: '70',
45
+ unit: '%',
46
+ },
47
+ {
48
+ title: 'Tỉ Lệ Quá Hạn',
49
+ score: '50',
50
+ unit: '%',
51
+ },
52
+ ],
53
+ },
54
+ {
55
+ name: 'Xã Nam Trà My',
56
+ score: '100',
57
+ unit: '%',
58
+ title: 'Tỉ Lệ Đúng Hạn',
59
+ subData: [
60
+ {
61
+ title: 'Tỉ Lệ Sớm Trước Hạn',
62
+ score: '70',
63
+ unit: '%',
64
+ },
65
+ {
66
+ title: 'Tỉ Lệ Quá Hạn',
67
+ score: '50',
68
+ unit: '%',
69
+ },
70
+ ],
71
+ },
72
+ {
73
+ name: 'Phường Hòa Xuân',
74
+ score: '100',
75
+ unit: '%',
76
+ title: 'Tỉ Lệ Đúng Hạn',
77
+ subData: [
78
+ {
79
+ title: 'Tỉ Lệ Sớm Trước Hạn',
80
+ score: '70',
81
+ unit: '%',
82
+ },
83
+ {
84
+ title: 'Tỉ Lệ Quá Hạn',
85
+ score: '50',
86
+ unit: '%',
87
+ },
88
+ ],
89
+ },
90
+ {
91
+ name: 'Xã Hà Nha',
92
+ score: '100',
93
+ unit: '%',
94
+ title: 'Tỉ Lệ Đúng Hạn',
95
+ subData: [
96
+ {
97
+ title: 'Tỉ Lệ Sớm Trước Hạn',
98
+ score: '70',
99
+ unit: '%',
100
+ },
101
+ {
102
+ title: 'Tỉ Lệ Quá Hạn',
103
+ score: '50',
104
+ unit: '%',
105
+ },
106
+ ],
107
+ },
108
+ {
109
+ name: 'Xã Sơn Cẩm Hà',
110
+ score: '100',
111
+ unit: '%',
112
+ title: 'Tỉ Lệ Đúng Hạn',
113
+ subData: [
114
+ {
115
+ title: 'Tỉ Lệ Sớm Trước Hạn',
116
+ score: '70',
117
+ unit: '%',
118
+ },
119
+ {
120
+ title: 'Tỉ Lệ Quá Hạn',
121
+ score: '50',
122
+ unit: '%',
123
+ },
124
+ ],
125
+ },
126
+ {
127
+ name: 'Xã Tây Hồ',
128
+ score: '100',
129
+ unit: '%',
130
+ title: 'Tỉ Lệ Đúng Hạn',
131
+ subData: [
132
+ {
133
+ title: 'Tỉ Lệ Sớm Trước Hạn',
134
+ score: '70',
135
+ unit: '%',
136
+ },
137
+ {
138
+ title: 'Tỉ Lệ Quá Hạn',
139
+ score: '50',
140
+ unit: '%',
141
+ },
142
+ ],
143
+ },
144
+ {
145
+ name: 'Xã Quế Sơn',
146
+ score: '100',
147
+ unit: '%',
148
+ title: 'Tỉ Lệ Đúng Hạn',
149
+ subData: [
150
+ {
151
+ title: 'Tỉ Lệ Sớm Trước Hạn',
152
+ score: '70',
153
+ unit: '%',
154
+ },
155
+ {
156
+ title: 'Tỉ Lệ Quá Hạn',
157
+ score: '50',
158
+ unit: '%',
159
+ },
160
+ ],
161
+ },
162
+ {
163
+ name: 'Xã Trà Leng',
164
+ score: '100',
165
+ unit: '%',
166
+ title: 'Tỉ Lệ Đúng Hạn',
167
+ subData: [
168
+ {
169
+ title: 'Tỉ Lệ Sớm Trước Hạn',
170
+ score: '70',
171
+ unit: '%',
172
+ },
173
+ {
174
+ title: 'Tỉ Lệ Quá Hạn',
175
+ score: '50',
176
+ unit: '%',
177
+ },
178
+ ],
179
+ },
180
+ {
181
+ name: 'Xã Phước Hiệp',
182
+ score: '100',
183
+ unit: '%',
184
+ title: 'Tỉ Lệ Đúng Hạn',
185
+ subData: [
186
+ {
187
+ title: 'Tỉ Lệ Sớm Trước Hạn',
188
+ score: '70',
189
+ unit: '%',
190
+ },
191
+ {
192
+ title: 'Tỉ Lệ Quá Hạn',
193
+ score: '50',
194
+ unit: '%',
195
+ },
196
+ ],
197
+ },
198
+ {
199
+ name: 'Xã Quế Phước',
200
+ score: '100',
201
+ unit: '%',
202
+ title: 'Tỉ Lệ Đúng Hạn',
203
+ subData: [
204
+ {
205
+ title: 'Tỉ Lệ Sớm Trước Hạn',
206
+ score: '70',
207
+ unit: '%',
208
+ },
209
+ {
210
+ title: 'Tỉ Lệ Quá Hạn',
211
+ score: '50',
212
+ unit: '%',
213
+ },
214
+ ],
215
+ },
216
+ {
217
+ name: 'Phường Hòa Cường',
218
+ score: '100',
219
+ unit: '%',
220
+ title: 'Tỉ Lệ Đúng Hạn',
221
+ subData: [
222
+ {
223
+ title: 'Tỉ Lệ Sớm Trước Hạn',
224
+ score: '70',
225
+ unit: '%',
226
+ },
227
+ {
228
+ title: 'Tỉ Lệ Quá Hạn',
229
+ score: '50',
230
+ unit: '%',
231
+ },
232
+ ],
233
+ },
234
+ {
235
+ name: 'Xã Thăng Điền',
236
+ score: '100',
237
+ unit: '%',
238
+ title: 'Tỉ Lệ Đúng Hạn',
239
+ subData: [
240
+ {
241
+ title: 'Tỉ Lệ Sớm Trước Hạn',
242
+ score: '70',
243
+ unit: '%',
244
+ },
245
+ {
246
+ title: 'Tỉ Lệ Quá Hạn',
247
+ score: '50',
248
+ unit: '%',
249
+ },
250
+ ],
251
+ },
252
+ {
253
+ name: 'Xã Thu Bồn',
254
+ score: '100',
255
+ unit: '%',
256
+ title: 'Tỉ Lệ Đúng Hạn',
257
+ subData: [
258
+ {
259
+ title: 'Tỉ Lệ Sớm Trước Hạn',
260
+ score: '70',
261
+ unit: '%',
262
+ },
263
+ {
264
+ title: 'Tỉ Lệ Quá Hạn',
265
+ score: '50',
266
+ unit: '%',
267
+ },
268
+ ],
269
+ },
270
+ {
271
+ name: 'Xã Tân Hiệp',
272
+ score: '100',
273
+ unit: '%',
274
+ title: 'Tỉ Lệ Đúng Hạn',
275
+ subData: [
276
+ {
277
+ title: 'Tỉ Lệ Sớm Trước Hạn',
278
+ score: '70',
279
+ unit: '%',
280
+ },
281
+ {
282
+ title: 'Tỉ Lệ Quá Hạn',
283
+ score: '50',
284
+ unit: '%',
285
+ },
286
+ ],
287
+ },
288
+ {
289
+ name: 'Phường Tam Kỳ',
290
+ score: '100',
291
+ unit: '%',
292
+ title: 'Tỉ Lệ Đúng Hạn',
293
+ subData: [
294
+ {
295
+ title: 'Tỉ Lệ Sớm Trước Hạn',
296
+ score: '70',
297
+ unit: '%',
298
+ },
299
+ {
300
+ title: 'Tỉ Lệ Quá Hạn',
301
+ score: '50',
302
+ unit: '%',
303
+ },
304
+ ],
305
+ },
306
+ {
307
+ name: 'Xã Bà Nà',
308
+ score: '100',
309
+ unit: '%',
310
+ title: 'Tỉ Lệ Đúng Hạn',
311
+ subData: [
312
+ {
313
+ title: 'Tỉ Lệ Sớm Trước Hạn',
314
+ score: '70',
315
+ unit: '%',
316
+ },
317
+ {
318
+ title: 'Tỉ Lệ Quá Hạn',
319
+ score: '50',
320
+ unit: '%',
321
+ },
322
+ ],
323
+ },
324
+ {
325
+ name: 'Xã Đông Giang',
326
+ score: '100',
327
+ unit: '%',
328
+ title: 'Tỉ Lệ Đúng Hạn',
329
+ subData: [
330
+ {
331
+ title: 'Tỉ Lệ Sớm Trước Hạn',
332
+ score: '60',
333
+ unit: '%',
334
+ },
335
+ {
336
+ title: 'Tỉ Lệ Quá Hạn',
337
+ score: '50',
338
+ unit: '%',
339
+ },
340
+ ],
341
+ },
342
+ {
343
+ name: 'Xã Thăng Bình',
344
+ score: '100',
345
+ unit: '%',
346
+ title: 'Tỉ Lệ Đúng Hạn',
347
+ subData: [
348
+ {
349
+ title: 'Tỉ Lệ Sớm Trước Hạn',
350
+ score: '60',
351
+ unit: '%',
352
+ },
353
+ {
354
+ title: 'Tỉ Lệ Quá Hạn',
355
+ score: '50',
356
+ unit: '%',
357
+ },
358
+ ],
359
+ },
360
+ {
361
+ name: 'Xã Avương',
362
+ score: '100',
363
+ unit: '%',
364
+ title: 'Tỉ Lệ Đúng Hạn',
365
+ subData: [
366
+ {
367
+ title: 'Tỉ Lệ Sớm Trước Hạn',
368
+ score: '60',
369
+ unit: '%',
370
+ },
371
+ {
372
+ title: 'Tỉ Lệ Quá Hạn',
373
+ score: '50',
374
+ unit: '%',
375
+ },
376
+ ],
377
+ },
378
+ {
379
+ name: 'Xã Vu Gia',
380
+ score: '100',
381
+ unit: '%',
382
+ title: 'Tỉ Lệ Đúng Hạn',
383
+ subData: [
384
+ {
385
+ title: 'Tỉ Lệ Sớm Trước Hạn',
386
+ score: '60',
387
+ unit: '%',
388
+ },
389
+ {
390
+ title: 'Tỉ Lệ Quá Hạn',
391
+ score: '50',
392
+ unit: '%',
393
+ },
394
+ ],
395
+ },
396
+ {
397
+ name: 'Phường Thanh Khê',
398
+ score: '100',
399
+ unit: '%',
400
+ title: 'Tỉ Lệ Đúng Hạn',
401
+ subData: [
402
+ {
403
+ title: 'Tỉ Lệ Sớm Trước Hạn',
404
+ score: '60',
405
+ unit: '%',
406
+ },
407
+ {
408
+ title: 'Tỉ Lệ Quá Hạn',
409
+ score: '50',
410
+ unit: '%',
411
+ },
412
+ ],
413
+ },
414
+ {
415
+ name: 'Xã Hùng Sơn',
416
+ score: '100',
417
+ unit: '%',
418
+ title: 'Tỉ Lệ Đúng Hạn',
419
+ subData: [
420
+ {
421
+ title: 'Tỉ Lệ Sớm Trước Hạn',
422
+ score: '60',
423
+ unit: '%',
424
+ },
425
+ {
426
+ title: 'Tỉ Lệ Quá Hạn',
427
+ score: '50',
428
+ unit: '%',
429
+ },
430
+ ],
431
+ },
432
+ {
433
+ name: 'Xã Tam Anh',
434
+ score: '100',
435
+ unit: '%',
436
+ title: 'Tỉ Lệ Đúng Hạn',
437
+ subData: [
438
+ {
439
+ title: 'Tỉ Lệ Sớm Trước Hạn',
440
+ score: '60',
441
+ unit: '%',
442
+ },
443
+ {
444
+ title: 'Tỉ Lệ Quá Hạn',
445
+ score: '50',
446
+ unit: '%',
447
+ },
448
+ ],
449
+ },
450
+ {
451
+ name: 'Xã Tiên Phước',
452
+ score: '100',
453
+ unit: '%',
454
+ title: 'Tỉ Lệ Đúng Hạn',
455
+ subData: [
456
+ {
457
+ title: 'Tỉ Lệ Sớm Trước Hạn',
458
+ score: '60',
459
+ unit: '%',
460
+ },
461
+ {
462
+ title: 'Tỉ Lệ Quá Hạn',
463
+ score: '50',
464
+ unit: '%',
465
+ },
466
+ ],
467
+ },
468
+ {
469
+ name: 'Phường Quảng Phú',
470
+ score: '100',
471
+ unit: '%',
472
+ title: 'Tỉ Lệ Đúng Hạn',
473
+ subData: [
474
+ {
475
+ title: 'Tỉ Lệ Sớm Trước Hạn',
476
+ score: '60',
477
+ unit: '%',
478
+ },
479
+ {
480
+ title: 'Tỉ Lệ Quá Hạn',
481
+ score: '50',
482
+ unit: '%',
483
+ },
484
+ ],
485
+ },
486
+ {
487
+ name: 'Xã La Êê',
488
+ score: '100',
489
+ unit: '%',
490
+ title: 'Tỉ Lệ Đúng Hạn',
491
+ subData: [
492
+ {
493
+ title: 'Tỉ Lệ Sớm Trước Hạn',
494
+ score: '60',
495
+ unit: '%',
496
+ },
497
+ {
498
+ title: 'Tỉ Lệ Quá Hạn',
499
+ score: '50',
500
+ unit: '%',
501
+ },
502
+ ],
503
+ },
504
+ {
505
+ name: 'Xã Sông Vàng',
506
+ score: '100',
507
+ unit: '%',
508
+ title: 'Tỉ Lệ Đúng Hạn',
509
+ subData: [
510
+ {
511
+ title: 'Tỉ Lệ Sớm Trước Hạn',
512
+ score: '60',
513
+ unit: '%',
514
+ },
515
+ {
516
+ title: 'Tỉ Lệ Quá Hạn',
517
+ score: '50',
518
+ unit: '%',
519
+ },
520
+ ],
521
+ },
522
+ {
523
+ name: 'Xã Đồng Dương',
524
+ score: '100',
525
+ unit: '%',
526
+ title: 'Tỉ Lệ Đúng Hạn',
527
+ subData: [
528
+ {
529
+ title: 'Tỉ Lệ Sớm Trước Hạn',
530
+ score: '60',
531
+ unit: '%',
532
+ },
533
+ {
534
+ title: 'Tỉ Lệ Quá Hạn',
535
+ score: '50',
536
+ unit: '%',
537
+ },
538
+ ],
539
+ },
540
+ {
541
+ name: 'Phường Cẩm Lệ',
542
+ score: '100',
543
+ unit: '%',
544
+ title: 'Tỉ Lệ Đúng Hạn',
545
+ subData: [
546
+ {
547
+ title: 'Tỉ Lệ Sớm Trước Hạn',
548
+ score: '60',
549
+ unit: '%',
550
+ },
551
+ {
552
+ title: 'Tỉ Lệ Quá Hạn',
553
+ score: '50',
554
+ unit: '%',
555
+ },
556
+ ],
557
+ },
558
+ {
559
+ name: 'Xã Thăng Phú',
560
+ score: '100',
561
+ unit: '%',
562
+ title: 'Tỉ Lệ Đúng Hạn',
563
+ subData: [
564
+ {
565
+ title: 'Tỉ Lệ Sớm Trước Hạn',
566
+ score: '60',
567
+ unit: '%',
568
+ },
569
+ {
570
+ title: 'Tỉ Lệ Quá Hạn',
571
+ score: '50',
572
+ unit: '%',
573
+ },
574
+ ],
575
+ },
576
+ {
577
+ name: 'Phường Ngũ Hành Sơn',
578
+ score: '100',
579
+ unit: '%',
580
+ title: 'Tỉ Lệ Đúng Hạn',
581
+ subData: [
582
+ {
583
+ title: 'Tỉ Lệ Sớm Trước Hạn',
584
+ score: '60',
585
+ unit: '%',
586
+ },
587
+ {
588
+ title: 'Tỉ Lệ Quá Hạn',
589
+ score: '50',
590
+ unit: '%',
591
+ },
592
+ ],
593
+ },
594
+ {
595
+ name: 'Xã Tây Giang',
596
+ score: '100',
597
+ unit: '%',
598
+ title: 'Tỉ Lệ Đúng Hạn',
599
+ subData: [
600
+ {
601
+ title: 'Tỉ Lệ Sớm Trước Hạn',
602
+ score: '60',
603
+ unit: '%',
604
+ },
605
+ {
606
+ title: 'Tỉ Lệ Quá Hạn',
607
+ score: '50',
608
+ unit: '%',
609
+ },
610
+ ],
611
+ },
612
+ {
613
+ name: 'Xã Thạnh Bình',
614
+ score: '100',
615
+ unit: '%',
616
+ title: 'Tỉ Lệ Đúng Hạn',
617
+ subData: [
618
+ {
619
+ title: 'Tỉ Lệ Sớm Trước Hạn',
620
+ score: '60',
621
+ unit: '%',
622
+ },
623
+ {
624
+ title: 'Tỉ Lệ Quá Hạn',
625
+ score: '50',
626
+ unit: '%',
627
+ },
628
+ ],
629
+ },
630
+ {
631
+ name: 'Xã Trà Liên',
632
+ score: '100',
633
+ unit: '%',
634
+ title: 'Tỉ Lệ Đúng Hạn',
635
+ subData: [
636
+ {
637
+ title: 'Tỉ Lệ Sớm Trước Hạn',
638
+ score: '60',
639
+ unit: '%',
640
+ },
641
+ {
642
+ title: 'Tỉ Lệ Quá Hạn',
643
+ score: '50',
644
+ unit: '%',
645
+ },
646
+ ],
647
+ },
648
+ {
649
+ name: 'Xã Phú Thuận',
650
+ score: '100',
651
+ unit: '%',
652
+ title: 'Tỉ Lệ Đúng Hạn',
653
+ subData: [
654
+ {
655
+ title: 'Tỉ Lệ Sớm Trước Hạn',
656
+ score: '60',
657
+ unit: '%',
658
+ },
659
+ {
660
+ title: 'Tỉ Lệ Quá Hạn',
661
+ score: '50',
662
+ unit: '%',
663
+ },
664
+ ],
665
+ },
666
+ {
667
+ name: 'Xã Đức Phú',
668
+ score: '100',
669
+ unit: '%',
670
+ title: 'Tỉ Lệ Đúng Hạn',
671
+ subData: [
672
+ {
673
+ title: 'Tỉ Lệ Sớm Trước Hạn',
674
+ score: '60',
675
+ unit: '%',
676
+ },
677
+ {
678
+ title: 'Tỉ Lệ Quá Hạn',
679
+ score: '50',
680
+ unit: '%',
681
+ },
682
+ ],
683
+ },
684
+ {
685
+ name: 'Xã Phú Ninh',
686
+ score: '100',
687
+ unit: '%',
688
+ title: 'Tỉ Lệ Đúng Hạn',
689
+ subData: [
690
+ {
691
+ title: 'Tỉ Lệ Sớm Trước Hạn',
692
+ score: '60',
693
+ unit: '%',
694
+ },
695
+ {
696
+ title: 'Tỉ Lệ Quá Hạn',
697
+ score: '50',
698
+ unit: '%',
699
+ },
700
+ ],
701
+ },
702
+ {
703
+ name: 'Xã Chiên Đàn',
704
+ score: '100',
705
+ unit: '%',
706
+ title: 'Tỉ Lệ Đúng Hạn',
707
+ subData: [
708
+ {
709
+ title: 'Tỉ Lệ Sớm Trước Hạn',
710
+ score: '60',
711
+ unit: '%',
712
+ },
713
+ {
714
+ title: 'Tỉ Lệ Quá Hạn',
715
+ score: '50',
716
+ unit: '%',
717
+ },
718
+ ],
719
+ },
720
+ {
721
+ name: 'Phường Hội An Tây',
722
+ score: '100',
723
+ unit: '%',
724
+ title: 'Tỉ Lệ Đúng Hạn',
725
+ subData: [
726
+ {
727
+ title: 'Tỉ Lệ Sớm Trước Hạn',
728
+ score: '60',
729
+ unit: '%',
730
+ },
731
+ {
732
+ title: 'Tỉ Lệ Quá Hạn',
733
+ score: '50',
734
+ unit: '%',
735
+ },
736
+ ],
737
+ },
738
+ {
739
+ name: 'Xã Sông Kôn',
740
+ score: '100',
741
+ unit: '%',
742
+ title: 'Tỉ Lệ Đúng Hạn',
743
+ subData: [
744
+ {
745
+ title: 'Tỉ Lệ Sớm Trước Hạn',
746
+ score: '60',
747
+ unit: '%',
748
+ },
749
+ {
750
+ title: 'Tỉ Lệ Quá Hạn',
751
+ score: '50',
752
+ unit: '%',
753
+ },
754
+ ],
755
+ },
756
+ {
757
+ name: 'Xã Quế Sơn Trung',
758
+ score: '100',
759
+ unit: '%',
760
+ title: 'Tỉ Lệ Đúng Hạn',
761
+ subData: [
762
+ {
763
+ title: 'Tỉ Lệ Sớm Trước Hạn',
764
+ score: '60',
765
+ unit: '%',
766
+ },
767
+ {
768
+ title: 'Tỉ Lệ Quá Hạn',
769
+ score: '50',
770
+ unit: '%',
771
+ },
772
+ ],
773
+ },
774
+ {
775
+ name: 'Xã Nam Phước',
776
+ score: '100',
777
+ unit: '%',
778
+ title: 'Tỉ Lệ Đúng Hạn',
779
+ subData: [
780
+ {
781
+ title: 'Tỉ Lệ Sớm Trước Hạn',
782
+ score: '60',
783
+ unit: '%',
784
+ },
785
+ {
786
+ title: 'Tỉ Lệ Quá Hạn',
787
+ score: '50',
788
+ unit: '%',
789
+ },
790
+ ],
791
+ },
792
+ {
793
+ name: 'Phường Điện Bàn',
794
+ score: '100',
795
+ unit: '%',
796
+ title: 'Tỉ Lệ Đúng Hạn',
797
+ subData: [
798
+ {
799
+ title: 'Tỉ Lệ Sớm Trước Hạn',
800
+ score: '60',
801
+ unit: '%',
802
+ },
803
+ {
804
+ title: 'Tỉ Lệ Quá Hạn',
805
+ score: '50',
806
+ unit: '%',
807
+ },
808
+ ],
809
+ },
810
+ {
811
+ name: 'Xã Hiệp Đức',
812
+ score: '100',
813
+ unit: '%',
814
+ title: 'Tỉ Lệ Đúng Hạn',
815
+ subData: [
816
+ {
817
+ title: 'Tỉ Lệ Sớm Trước Hạn',
818
+ score: '60',
819
+ unit: '%',
820
+ },
821
+ {
822
+ title: 'Tỉ Lệ Quá Hạn',
823
+ score: '50',
824
+ unit: '%',
825
+ },
826
+ ],
827
+ },
828
+ {
829
+ name: 'Phường Điện Bàn Đông',
830
+ score: '100',
831
+ unit: '%',
832
+ title: 'Tỉ Lệ Đúng Hạn',
833
+ subData: [
834
+ {
835
+ title: 'Tỉ Lệ Sớm Trước Hạn',
836
+ score: '60',
837
+ unit: '%',
838
+ },
839
+ {
840
+ title: 'Tỉ Lệ Quá Hạn',
841
+ score: '50',
842
+ unit: '%',
843
+ },
844
+ ],
845
+ },
846
+ {
847
+ name: 'Xã Trà Giáp',
848
+ score: '100',
849
+ unit: '%',
850
+ title: 'Tỉ Lệ Đúng Hạn',
851
+ subData: [
852
+ {
853
+ title: 'Tỉ Lệ Sớm Trước Hạn',
854
+ score: '60',
855
+ unit: '%',
856
+ },
857
+ {
858
+ title: 'Tỉ Lệ Quá Hạn',
859
+ score: '50',
860
+ unit: '%',
861
+ },
862
+ ],
863
+ },
864
+ {
865
+ name: 'Xã Trà My',
866
+ score: '100',
867
+ unit: '%',
868
+ title: 'Tỉ Lệ Đúng Hạn',
869
+ subData: [
870
+ {
871
+ title: 'Tỉ Lệ Sớm Trước Hạn',
872
+ score: '60',
873
+ unit: '%',
874
+ },
875
+ {
876
+ title: 'Tỉ Lệ Quá Hạn',
877
+ score: '50',
878
+ unit: '%',
879
+ },
880
+ ],
881
+ },
882
+ {
883
+ name: 'Xã Núi Thành',
884
+ score: '100',
885
+ unit: '%',
886
+ title: 'Tỉ Lệ Đúng Hạn',
887
+ subData: [
888
+ {
889
+ title: 'Tỉ Lệ Sớm Trước Hạn',
890
+ score: '60',
891
+ unit: '%',
892
+ },
893
+ {
894
+ title: 'Tỉ Lệ Quá Hạn',
895
+ score: '50',
896
+ unit: '%',
897
+ },
898
+ ],
899
+ },
900
+ {
901
+ name: 'Xã Tam Hải',
902
+ score: '100',
903
+ unit: '%',
904
+ title: 'Tỉ Lệ Đúng Hạn',
905
+ subData: [
906
+ {
907
+ title: 'Tỉ Lệ Sớm Trước Hạn',
908
+ score: '60',
909
+ unit: '%',
910
+ },
911
+ {
912
+ title: 'Tỉ Lệ Quá Hạn',
913
+ score: '50',
914
+ unit: '%',
915
+ },
916
+ ],
917
+ },
918
+ {
919
+ name: 'Phường Sơn Trà',
920
+ score: '100',
921
+ unit: '%',
922
+ title: 'Tỉ Lệ Đúng Hạn',
923
+ subData: [
924
+ {
925
+ title: 'Tỉ Lệ Sớm Trước Hạn',
926
+ score: '60',
927
+ unit: '%',
928
+ },
929
+ {
930
+ title: 'Tỉ Lệ Quá Hạn',
931
+ score: '50',
932
+ unit: '%',
933
+ },
934
+ ],
935
+ },
936
+ {
937
+ name: 'Xã Trà Linh',
938
+ score: '100',
939
+ unit: '%',
940
+ title: 'Tỉ Lệ Đúng Hạn',
941
+ subData: [
942
+ {
943
+ title: 'Tỉ Lệ Sớm Trước Hạn',
944
+ score: '60',
945
+ unit: '%',
946
+ },
947
+ {
948
+ title: 'Tỉ Lệ Quá Hạn',
949
+ score: '50',
950
+ unit: '%',
951
+ },
952
+ ],
953
+ },
954
+ {
955
+ name: 'Xã Duy Nghĩa',
956
+ score: '100',
957
+ unit: '%',
958
+ title: 'Tỉ Lệ Đúng Hạn',
959
+ subData: [
960
+ {
961
+ title: 'Tỉ Lệ Sớm Trước Hạn',
962
+ score: '60',
963
+ unit: '%',
964
+ },
965
+ {
966
+ title: 'Tỉ Lệ Quá Hạn',
967
+ score: '50',
968
+ unit: '%',
969
+ },
970
+ ],
971
+ },
972
+ {
973
+ name: 'Xã Thăng Trường',
974
+ score: '100',
975
+ unit: '%',
976
+ title: 'Tỉ Lệ Đúng Hạn',
977
+ subData: [
978
+ {
979
+ title: 'Tỉ Lệ Sớm Trước Hạn',
980
+ score: '60',
981
+ unit: '%',
982
+ },
983
+ {
984
+ title: 'Tỉ Lệ Quá Hạn',
985
+ score: '50',
986
+ unit: '%',
987
+ },
988
+ ],
989
+ },
990
+ {
991
+ name: 'Phường An Hải',
992
+ score: '100',
993
+ unit: '%',
994
+ title: 'Tỉ Lệ Đúng Hạn',
995
+ subData: [
996
+ {
997
+ title: 'Tỉ Lệ Sớm Trước Hạn',
998
+ score: '60',
999
+ unit: '%',
1000
+ },
1001
+ {
1002
+ title: 'Tỉ Lệ Quá Hạn',
1003
+ score: '50',
1004
+ unit: '%',
1005
+ },
1006
+ ],
1007
+ },
1008
+ {
1009
+ name: 'Xã Thạnh Mỹ',
1010
+ score: '100',
1011
+ unit: '%',
1012
+ title: 'Tỉ Lệ Đúng Hạn',
1013
+ subData: [
1014
+ {
1015
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1016
+ score: '60',
1017
+ unit: '%',
1018
+ },
1019
+ {
1020
+ title: 'Tỉ Lệ Quá Hạn',
1021
+ score: '50',
1022
+ unit: '%',
1023
+ },
1024
+ ],
1025
+ },
1026
+ {
1027
+ name: 'Xã Hòa Vang',
1028
+ score: '100',
1029
+ unit: '%',
1030
+ title: 'Tỉ Lệ Đúng Hạn',
1031
+ subData: [
1032
+ {
1033
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1034
+ score: '60',
1035
+ unit: '%',
1036
+ },
1037
+ {
1038
+ title: 'Tỉ Lệ Quá Hạn',
1039
+ score: '50',
1040
+ unit: '%',
1041
+ },
1042
+ ],
1043
+ },
1044
+ {
1045
+ name: 'Xã Tam Mỹ',
1046
+ score: '100',
1047
+ unit: '%',
1048
+ title: 'Tỉ Lệ Đúng Hạn',
1049
+ subData: [
1050
+ {
1051
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1052
+ score: '60',
1053
+ unit: '%',
1054
+ },
1055
+ {
1056
+ title: 'Tỉ Lệ Quá Hạn',
1057
+ score: '50',
1058
+ unit: '%',
1059
+ },
1060
+ ],
1061
+ },
1062
+ {
1063
+ name: 'Xã Phước Thành',
1064
+ score: '100',
1065
+ unit: '%',
1066
+ title: 'Tỉ Lệ Đúng Hạn',
1067
+ subData: [
1068
+ {
1069
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1070
+ score: '60',
1071
+ unit: '%',
1072
+ },
1073
+ {
1074
+ title: 'Tỉ Lệ Quá Hạn',
1075
+ score: '50',
1076
+ unit: '%',
1077
+ },
1078
+ ],
1079
+ },
1080
+ {
1081
+ name: 'Xã Đắc Pring',
1082
+ score: '100',
1083
+ unit: '%',
1084
+ title: 'Tỉ Lệ Đúng Hạn',
1085
+ subData: [
1086
+ {
1087
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1088
+ score: '60',
1089
+ unit: '%',
1090
+ },
1091
+ {
1092
+ title: 'Tỉ Lệ Quá Hạn',
1093
+ score: '50',
1094
+ unit: '%',
1095
+ },
1096
+ ],
1097
+ },
1098
+ {
1099
+ name: 'Xã Trà Vân',
1100
+ score: '100',
1101
+ unit: '%',
1102
+ title: 'Tỉ Lệ Đúng Hạn',
1103
+ subData: [
1104
+ {
1105
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1106
+ score: '60',
1107
+ unit: '%',
1108
+ },
1109
+ {
1110
+ title: 'Tỉ Lệ Quá Hạn',
1111
+ score: '90',
1112
+ unit: '%',
1113
+ },
1114
+ ],
1115
+ },
1116
+ {
1117
+ name: 'Xã Tam Xuân',
1118
+ score: '100',
1119
+ unit: '%',
1120
+ title: 'Tỉ Lệ Đúng Hạn',
1121
+ subData: [
1122
+ {
1123
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1124
+ score: '60',
1125
+ unit: '%',
1126
+ },
1127
+ {
1128
+ title: 'Tỉ Lệ Quá Hạn',
1129
+ score: '90',
1130
+ unit: '%',
1131
+ },
1132
+ ],
1133
+ },
1134
+ {
1135
+ name: 'Xã Trà Đốc',
1136
+ score: '100',
1137
+ unit: '%',
1138
+ title: 'Tỉ Lệ Đúng Hạn',
1139
+ subData: [
1140
+ {
1141
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1142
+ score: '60',
1143
+ unit: '%',
1144
+ },
1145
+ {
1146
+ title: 'Tỉ Lệ Quá Hạn',
1147
+ score: '90',
1148
+ unit: '%',
1149
+ },
1150
+ ],
1151
+ },
1152
+ {
1153
+ name: 'Phường Hòa Khánh',
1154
+ score: '100',
1155
+ unit: '%',
1156
+ title: 'Tỉ Lệ Đúng Hạn',
1157
+ subData: [
1158
+ {
1159
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1160
+ score: '60',
1161
+ unit: '%',
1162
+ },
1163
+ {
1164
+ title: 'Tỉ Lệ Quá Hạn',
1165
+ score: '90',
1166
+ unit: '%',
1167
+ },
1168
+ ],
1169
+ },
1170
+ {
1171
+ name: 'Xã Việt An',
1172
+ score: '100',
1173
+ unit: '%',
1174
+ title: 'Tỉ Lệ Đúng Hạn',
1175
+ subData: [
1176
+ {
1177
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1178
+ score: '60',
1179
+ unit: '%',
1180
+ },
1181
+ {
1182
+ title: 'Tỉ Lệ Quá Hạn',
1183
+ score: '90',
1184
+ unit: '%',
1185
+ },
1186
+ ],
1187
+ },
1188
+ {
1189
+ name: 'Phường Bàn Thạch',
1190
+ score: '100',
1191
+ unit: '%',
1192
+ title: 'Tỉ Lệ Đúng Hạn',
1193
+ subData: [
1194
+ {
1195
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1196
+ score: '60',
1197
+ unit: '%',
1198
+ },
1199
+ {
1200
+ title: 'Tỉ Lệ Quá Hạn',
1201
+ score: '90',
1202
+ unit: '%',
1203
+ },
1204
+ ],
1205
+ },
1206
+ {
1207
+ name: 'Xã Hòa Tiến',
1208
+ score: '100',
1209
+ unit: '%',
1210
+ title: 'Tỉ Lệ Đúng Hạn',
1211
+ subData: [
1212
+ {
1213
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1214
+ score: '60',
1215
+ unit: '%',
1216
+ },
1217
+ {
1218
+ title: 'Tỉ Lệ Quá Hạn',
1219
+ score: '90',
1220
+ unit: '%',
1221
+ },
1222
+ ],
1223
+ },
1224
+ {
1225
+ name: 'Phường An Khê',
1226
+ score: '100',
1227
+ unit: '%',
1228
+ title: 'Tỉ Lệ Đúng Hạn',
1229
+ subData: [
1230
+ {
1231
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1232
+ score: '60',
1233
+ unit: '%',
1234
+ },
1235
+ {
1236
+ title: 'Tỉ Lệ Quá Hạn',
1237
+ score: '90',
1238
+ unit: '%',
1239
+ },
1240
+ ],
1241
+ },
1242
+ {
1243
+ name: 'Xã Nông Sơn',
1244
+ score: '100',
1245
+ unit: '%',
1246
+ title: 'Tỉ Lệ Đúng Hạn',
1247
+ subData: [
1248
+ {
1249
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1250
+ score: '60',
1251
+ unit: '%',
1252
+ },
1253
+ {
1254
+ title: 'Tỉ Lệ Quá Hạn',
1255
+ score: '90',
1256
+ unit: '%',
1257
+ },
1258
+ ],
1259
+ },
1260
+ {
1261
+ name: 'Xã La Dêê',
1262
+ score: '100',
1263
+ unit: '%',
1264
+ title: 'Tỉ Lệ Đúng Hạn',
1265
+ subData: [
1266
+ {
1267
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1268
+ score: '60',
1269
+ unit: '%',
1270
+ },
1271
+ {
1272
+ title: 'Tỉ Lệ Quá Hạn',
1273
+ score: '90',
1274
+ unit: '%',
1275
+ },
1276
+ ],
1277
+ },
1278
+ {
1279
+ name: 'Xã Phước Chánh',
1280
+ score: '100',
1281
+ unit: '%',
1282
+ title: 'Tỉ Lệ Đúng Hạn',
1283
+ subData: [
1284
+ {
1285
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1286
+ score: '60',
1287
+ unit: '%',
1288
+ },
1289
+ {
1290
+ title: 'Tỉ Lệ Quá Hạn',
1291
+ score: '90',
1292
+ unit: '%',
1293
+ },
1294
+ ],
1295
+ },
1296
+ {
1297
+ name: 'Xã Phước Năng',
1298
+ score: '100',
1299
+ unit: '%',
1300
+ title: 'Tỉ Lệ Đúng Hạn',
1301
+ subData: [
1302
+ {
1303
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1304
+ score: '60',
1305
+ unit: '%',
1306
+ },
1307
+ {
1308
+ title: 'Tỉ Lệ Quá Hạn',
1309
+ score: '90',
1310
+ unit: '%',
1311
+ },
1312
+ ],
1313
+ },
1314
+ {
1315
+ name: 'Phường Liên Chiểu',
1316
+ score: '100',
1317
+ unit: '%',
1318
+ title: 'Tỉ Lệ Đúng Hạn',
1319
+ subData: [
1320
+ {
1321
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1322
+ score: '60',
1323
+ unit: '%',
1324
+ },
1325
+ {
1326
+ title: 'Tỉ Lệ Quá Hạn',
1327
+ score: '90',
1328
+ unit: '%',
1329
+ },
1330
+ ],
1331
+ },
1332
+ {
1333
+ name: 'Xã Đại Lộc',
1334
+ score: '100',
1335
+ unit: '%',
1336
+ title: 'Tỉ Lệ Đúng Hạn',
1337
+ subData: [
1338
+ {
1339
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1340
+ score: '60',
1341
+ unit: '%',
1342
+ },
1343
+ {
1344
+ title: 'Tỉ Lệ Quá Hạn',
1345
+ score: '90',
1346
+ unit: '%',
1347
+ },
1348
+ ],
1349
+ },
1350
+ {
1351
+ name: 'Xã Nam Giang',
1352
+ score: '100',
1353
+ unit: '%',
1354
+ title: 'Tỉ Lệ Đúng Hạn',
1355
+ subData: [
1356
+ {
1357
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1358
+ score: '60',
1359
+ unit: '%',
1360
+ },
1361
+ {
1362
+ title: 'Tỉ Lệ Quá Hạn',
1363
+ score: '90',
1364
+ unit: '%',
1365
+ },
1366
+ ],
1367
+ },
1368
+ {
1369
+ name: 'Phường Hương Trà',
1370
+ score: '100',
1371
+ unit: '%',
1372
+ title: 'Tỉ Lệ Đúng Hạn',
1373
+ subData: [
1374
+ {
1375
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1376
+ score: '60',
1377
+ unit: '%',
1378
+ },
1379
+ {
1380
+ title: 'Tỉ Lệ Quá Hạn',
1381
+ score: '90',
1382
+ unit: '%',
1383
+ },
1384
+ ],
1385
+ },
1386
+ {
1387
+ name: 'Xã Thăng An',
1388
+ score: '100',
1389
+ unit: '%',
1390
+ title: 'Tỉ Lệ Đúng Hạn',
1391
+ subData: [
1392
+ {
1393
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1394
+ score: '60',
1395
+ unit: '%',
1396
+ },
1397
+ {
1398
+ title: 'Tỉ Lệ Quá Hạn',
1399
+ score: '90',
1400
+ unit: '%',
1401
+ },
1402
+ ],
1403
+ },
1404
+ {
1405
+ name: 'Phường Hải Vân',
1406
+ score: '100',
1407
+ unit: '%',
1408
+ title: 'Tỉ Lệ Đúng Hạn',
1409
+ subData: [
1410
+ {
1411
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1412
+ score: '60',
1413
+ unit: '%',
1414
+ },
1415
+ {
1416
+ title: 'Tỉ Lệ Quá Hạn',
1417
+ score: '90',
1418
+ unit: '%',
1419
+ },
1420
+ ],
1421
+ },
1422
+ {
1423
+ name: 'Xã Khâm Đức',
1424
+ score: '100',
1425
+ unit: '%',
1426
+ title: 'Tỉ Lệ Đúng Hạn',
1427
+ subData: [
1428
+ {
1429
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1430
+ score: '80',
1431
+ unit: '%',
1432
+ },
1433
+ {
1434
+ title: 'Tỉ Lệ Quá Hạn',
1435
+ score: '90',
1436
+ unit: '%',
1437
+ },
1438
+ ],
1439
+ },
1440
+ {
1441
+ name: 'Xã Phước Trà',
1442
+ score: '100',
1443
+ unit: '%',
1444
+ title: 'Tỉ Lệ Đúng Hạn',
1445
+ subData: [
1446
+ {
1447
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1448
+ score: '80',
1449
+ unit: '%',
1450
+ },
1451
+ {
1452
+ title: 'Tỉ Lệ Quá Hạn',
1453
+ score: '50',
1454
+ unit: '%',
1455
+ },
1456
+ ],
1457
+ },
1458
+ {
1459
+ name: 'Xã Lãnh Ngọc',
1460
+ score: '100',
1461
+ unit: '%',
1462
+ title: 'Tỉ Lệ Đúng Hạn',
1463
+ subData: [
1464
+ {
1465
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1466
+ score: '80',
1467
+ unit: '%',
1468
+ },
1469
+ {
1470
+ title: 'Tỉ Lệ Quá Hạn',
1471
+ score: '50',
1472
+ unit: '%',
1473
+ },
1474
+ ],
1475
+ },
1476
+ {
1477
+ name: 'Xã Trà Tân',
1478
+ score: '100',
1479
+ unit: '%',
1480
+ title: 'Tỉ Lệ Đúng Hạn',
1481
+ subData: [
1482
+ {
1483
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1484
+ score: '80',
1485
+ unit: '%',
1486
+ },
1487
+ {
1488
+ title: 'Tỉ Lệ Quá Hạn',
1489
+ score: '50',
1490
+ unit: '%',
1491
+ },
1492
+ ],
1493
+ },
1494
+ {
1495
+ name: 'Xã Trà Tập',
1496
+ score: '100',
1497
+ unit: '%',
1498
+ title: 'Tỉ Lệ Đúng Hạn',
1499
+ subData: [
1500
+ {
1501
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1502
+ score: '80',
1503
+ unit: '%',
1504
+ },
1505
+ {
1506
+ title: 'Tỉ Lệ Quá Hạn',
1507
+ score: '50',
1508
+ unit: '%',
1509
+ },
1510
+ ],
1511
+ },
1512
+ {
1513
+ name: 'Xã Bến Hiên',
1514
+ score: '100',
1515
+ unit: '%',
1516
+ title: 'Tỉ Lệ Đúng Hạn',
1517
+ subData: [
1518
+ {
1519
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1520
+ score: '80',
1521
+ unit: '%',
1522
+ },
1523
+ {
1524
+ title: 'Tỉ Lệ Quá Hạn',
1525
+ score: '50',
1526
+ unit: '%',
1527
+ },
1528
+ ],
1529
+ },
1530
+ {
1531
+ name: 'Xã Xuân Phú',
1532
+ score: '100',
1533
+ unit: '%',
1534
+ title: 'Tỉ Lệ Đúng Hạn',
1535
+ subData: [
1536
+ {
1537
+ title: 'Tỉ Lệ Sớm Trước Hạn',
1538
+ score: '80',
1539
+ unit: '%',
1540
+ },
1541
+ {
1542
+ title: 'Tỉ Lệ Quá Hạn',
1543
+ score: '50',
1544
+ unit: '%',
1545
+ },
1546
+ ],
1547
+ },
1548
+ ];
1549
+ const defaultProvinceData = [
1550
+ {
1551
+ id: 705,
1552
+ name: 'Xã Tây Giang',
1553
+ },
1554
+ {
1555
+ id: 758,
1556
+ name: 'Xã Avương',
1557
+ },
1558
+ {
1559
+ id: 734,
1560
+ name: 'Phường Điện Bàn Đông',
1561
+ },
1562
+ {
1563
+ id: 748,
1564
+ name: 'Phường Điện Bàn Bắc',
1565
+ },
1566
+ {
1567
+ id: 790,
1568
+ name: 'Xã Hòa Tiến',
1569
+ },
1570
+ {
1571
+ id: 706,
1572
+ name: 'Xã Đông Giang',
1573
+ },
1574
+ {
1575
+ id: 757,
1576
+ name: 'Phường Ngũ Hành Sơn',
1577
+ },
1578
+ {
1579
+ id: 740,
1580
+ name: 'Phường Hòa Xuân',
1581
+ },
1582
+ {
1583
+ id: 744,
1584
+ name: 'Phường Hòa Cường',
1585
+ },
1586
+ {
1587
+ id: 789,
1588
+ name: 'Phường Sơn Trà',
1589
+ },
1590
+ {
1591
+ id: 753,
1592
+ name: 'Phường An Hải',
1593
+ },
1594
+ {
1595
+ id: 769,
1596
+ name: 'Phường Hải Châu',
1597
+ },
1598
+ {
1599
+ id: 771,
1600
+ name: 'Phường Cẩm Lệ',
1601
+ },
1602
+ {
1603
+ id: 716,
1604
+ name: 'Phường An Khê',
1605
+ },
1606
+ {
1607
+ id: 761,
1608
+ name: 'Phường Thanh Khê',
1609
+ },
1610
+ {
1611
+ id: 793,
1612
+ name: 'Phường Hòa Khánh',
1613
+ },
1614
+ {
1615
+ id: 794,
1616
+ name: 'Xã Hòa Vang',
1617
+ },
1618
+ {
1619
+ id: 762,
1620
+ name: 'Xã Bà Nà',
1621
+ },
1622
+ {
1623
+ id: 792,
1624
+ name: 'Phường Liên Chiểu',
1625
+ },
1626
+ {
1627
+ id: 791,
1628
+ name: 'Phường Hải Vân',
1629
+ },
1630
+ {
1631
+ id: 708,
1632
+ name: 'Xã Sông Vàng',
1633
+ },
1634
+ {
1635
+ id: 707,
1636
+ name: 'Xã Sông Kôn',
1637
+ },
1638
+ {
1639
+ id: 758,
1640
+ name: 'Xã Avương',
1641
+ },
1642
+ {
1643
+ id: 759,
1644
+ name: 'Xã Tân Hiệp',
1645
+ },
1646
+ {
1647
+ id: 734,
1648
+ name: 'Phường Điện Bàn Đông',
1649
+ },
1650
+ {
1651
+ id: 757,
1652
+ name: 'Phường Ngũ Hành Sơn',
1653
+ },
1654
+ {
1655
+ id: 789,
1656
+ name: 'Phường Sơn Trà',
1657
+ },
1658
+ {
1659
+ id: 766,
1660
+ name: 'Xã Đắc Pring',
1661
+ },
1662
+ {
1663
+ id: 760,
1664
+ name: 'Xã Bến Giằng',
1665
+ },
1666
+ {
1667
+ id: 741,
1668
+ name: 'Xã La Dêê',
1669
+ },
1670
+ {
1671
+ id: 742,
1672
+ name: 'Xã Nam Giang',
1673
+ },
1674
+ {
1675
+ id: 705,
1676
+ name: 'Xã Tây Giang',
1677
+ },
1678
+ {
1679
+ id: 780,
1680
+ name: 'Xã La Êê',
1681
+ },
1682
+ {
1683
+ id: 763,
1684
+ name: 'Xã Hùng Sơn',
1685
+ },
1686
+ {
1687
+ id: 758,
1688
+ name: 'Xã Avương',
1689
+ },
1690
+ {
1691
+ id: 751,
1692
+ name: 'Xã Trà Liên',
1693
+ },
1694
+ {
1695
+ id: 723,
1696
+ name: 'Xã Thạnh Bình',
1697
+ },
1698
+ {
1699
+ id: 722,
1700
+ name: 'Xã Tiên Phước',
1701
+ },
1702
+ {
1703
+ id: 718,
1704
+ name: 'Xã Xuân Phú',
1705
+ },
1706
+ {
1707
+ id: 774,
1708
+ name: 'Xã Nam Phước',
1709
+ },
1710
+ {
1711
+ id: 779,
1712
+ name: 'Xã Trà Tân',
1713
+ },
1714
+ {
1715
+ id: 749,
1716
+ name: 'Xã Trà Leng',
1717
+ },
1718
+ {
1719
+ id: 745,
1720
+ name: 'Xã Trà My',
1721
+ },
1722
+ {
1723
+ id: 724,
1724
+ name: 'Xã Lãnh Ngọc',
1725
+ },
1726
+ {
1727
+ id: 768,
1728
+ name: 'Xã Sơn Cẩm Hà',
1729
+ },
1730
+ {
1731
+ id: 720,
1732
+ name: 'Xã Việt An',
1733
+ },
1734
+ {
1735
+ id: 752,
1736
+ name: 'Xã Trà Đốc',
1737
+ },
1738
+ {
1739
+ id: 756,
1740
+ name: 'Xã Phước Trà',
1741
+ },
1742
+ {
1743
+ id: 717,
1744
+ name: 'Xã Hiệp Đức',
1745
+ },
1746
+ {
1747
+ id: 787,
1748
+ name: 'Xã Đồng Dương',
1749
+ },
1750
+ {
1751
+ id: 732,
1752
+ name: 'Xã Quế Sơn Trung',
1753
+ },
1754
+ {
1755
+ id: 737,
1756
+ name: 'Xã Duy Xuyên',
1757
+ },
1758
+ {
1759
+ id: 715,
1760
+ name: 'Xã Quế Sơn',
1761
+ },
1762
+ {
1763
+ id: 712,
1764
+ name: 'Xã Thu Bồn',
1765
+ },
1766
+ {
1767
+ id: 776,
1768
+ name: 'Xã Gò Nổi',
1769
+ },
1770
+ {
1771
+ id: 714,
1772
+ name: 'Phường Điện Bàn',
1773
+ },
1774
+ {
1775
+ id: 734,
1776
+ name: 'Phường Điện Bàn Đông',
1777
+ },
1778
+ {
1779
+ id: 735,
1780
+ name: 'Phường An Thắng',
1781
+ },
1782
+ {
1783
+ id: 747,
1784
+ name: 'Xã Điện Bàn Tây',
1785
+ },
1786
+ {
1787
+ id: 748,
1788
+ name: 'Phường Điện Bàn Bắc',
1789
+ },
1790
+ {
1791
+ id: 739,
1792
+ name: 'Xã Nông Sơn',
1793
+ },
1794
+ {
1795
+ id: 719,
1796
+ name: 'Xã Quế Phước',
1797
+ },
1798
+ {
1799
+ id: 713,
1800
+ name: 'Xã Phú Thuận',
1801
+ },
1802
+ {
1803
+ id: 773,
1804
+ name: 'Xã Vu Gia',
1805
+ },
1806
+ {
1807
+ id: 709,
1808
+ name: 'Xã Đại Lộc',
1809
+ },
1810
+ {
1811
+ id: 790,
1812
+ name: 'Xã Hòa Tiến',
1813
+ },
1814
+ {
1815
+ id: 711,
1816
+ name: 'Xã Hà Nha',
1817
+ },
1818
+ {
1819
+ id: 743,
1820
+ name: 'Xã Phước Thành',
1821
+ },
1822
+ {
1823
+ id: 765,
1824
+ name: 'Xã Phước Chánh',
1825
+ },
1826
+ {
1827
+ id: 725,
1828
+ name: 'Xã Phước Hiệp',
1829
+ },
1830
+ {
1831
+ id: 738,
1832
+ name: 'Xã Khâm Đức',
1833
+ },
1834
+ {
1835
+ id: 767,
1836
+ name: 'Xã Phước Năng',
1837
+ },
1838
+ {
1839
+ id: 766,
1840
+ name: 'Xã Đắc Pring',
1841
+ },
1842
+ {
1843
+ id: 775,
1844
+ name: 'Xã Thạnh Mỹ',
1845
+ },
1846
+ {
1847
+ id: 704,
1848
+ name: 'Xã Thượng Đức',
1849
+ },
1850
+ {
1851
+ id: 760,
1852
+ name: 'Xã Bến Giằng',
1853
+ },
1854
+ {
1855
+ id: 754,
1856
+ name: 'Xã Bến Hiên',
1857
+ },
1858
+ {
1859
+ id: 706,
1860
+ name: 'Xã Đông Giang',
1861
+ },
1862
+ {
1863
+ id: 757,
1864
+ name: 'Phường Ngũ Hành Sơn',
1865
+ },
1866
+ {
1867
+ id: 740,
1868
+ name: 'Phường Hòa Xuân',
1869
+ },
1870
+ {
1871
+ id: 794,
1872
+ name: 'Xã Hòa Vang',
1873
+ },
1874
+ {
1875
+ id: 708,
1876
+ name: 'Xã Sông Vàng',
1877
+ },
1878
+ {
1879
+ id: 707,
1880
+ name: 'Xã Sông Kôn',
1881
+ },
1882
+ {
1883
+ id: 742,
1884
+ name: 'Xã Nam Giang',
1885
+ },
1886
+ {
1887
+ id: 705,
1888
+ name: 'Xã Tây Giang',
1889
+ },
1890
+ {
1891
+ id: 758,
1892
+ name: 'Xã Avương',
1893
+ },
1894
+ {
1895
+ id: 770,
1896
+ name: 'Xã Núi Thành',
1897
+ },
1898
+ {
1899
+ id: 728,
1900
+ name: 'Xã Tam Hải',
1901
+ },
1902
+ {
1903
+ id: 733,
1904
+ name: 'Xã Tam Mỹ',
1905
+ },
1906
+ {
1907
+ id: 727,
1908
+ name: 'Xã Đức Phú',
1909
+ },
1910
+ {
1911
+ id: 721,
1912
+ name: 'Xã Tam Anh',
1913
+ },
1914
+ {
1915
+ id: 726,
1916
+ name: 'Xã Tam Xuân',
1917
+ },
1918
+ {
1919
+ id: 778,
1920
+ name: 'Phường Quảng Phú',
1921
+ },
1922
+ {
1923
+ id: 736,
1924
+ name: 'Phường Hương Trà',
1925
+ },
1926
+ {
1927
+ id: 786,
1928
+ name: 'Phường Tam Kỳ',
1929
+ },
1930
+ {
1931
+ id: 783,
1932
+ name: 'Phường Bàn Thạch',
1933
+ },
1934
+ {
1935
+ id: 751,
1936
+ name: 'Xã Trà Liên',
1937
+ },
1938
+ {
1939
+ id: 723,
1940
+ name: 'Xã Thạnh Bình',
1941
+ },
1942
+ {
1943
+ id: 797,
1944
+ name: 'Xã Phú Ninh',
1945
+ },
1946
+ {
1947
+ id: 795,
1948
+ name: 'Xã Chiên Đàn',
1949
+ },
1950
+ {
1951
+ id: 796,
1952
+ name: 'Xã Tây Hồ',
1953
+ },
1954
+ {
1955
+ id: 722,
1956
+ name: 'Xã Tiên Phước',
1957
+ },
1958
+ {
1959
+ id: 777,
1960
+ name: 'Xã Thăng Trường',
1961
+ },
1962
+ {
1963
+ id: 759,
1964
+ name: 'Xã Tân Hiệp',
1965
+ },
1966
+ {
1967
+ id: 731,
1968
+ name: 'Xã Thăng Điền',
1969
+ },
1970
+ {
1971
+ id: 785,
1972
+ name: 'Xã Thăng An',
1973
+ },
1974
+ {
1975
+ id: 710,
1976
+ name: 'Xã Thăng Phú',
1977
+ },
1978
+ {
1979
+ id: 730,
1980
+ name: 'Xã Thăng Bình',
1981
+ },
1982
+ {
1983
+ id: 718,
1984
+ name: 'Xã Xuân Phú',
1985
+ },
1986
+ {
1987
+ id: 729,
1988
+ name: 'Xã Duy Nghĩa',
1989
+ },
1990
+ {
1991
+ id: 746,
1992
+ name: 'Phường Hội An',
1993
+ },
1994
+ {
1995
+ id: 774,
1996
+ name: 'Xã Nam Phước',
1997
+ },
1998
+ {
1999
+ id: 788,
2000
+ name: 'Phường Hội An Đông',
2001
+ },
2002
+ {
2003
+ id: 784,
2004
+ name: 'Phường Hội An Tây',
2005
+ },
2006
+ {
2007
+ id: 779,
2008
+ name: 'Xã Trà Tân',
2009
+ },
2010
+ {
2011
+ id: 745,
2012
+ name: 'Xã Trà My',
2013
+ },
2014
+ {
2015
+ id: 724,
2016
+ name: 'Xã Lãnh Ngọc',
2017
+ },
2018
+ {
2019
+ id: 768,
2020
+ name: 'Xã Sơn Cẩm Hà',
2021
+ },
2022
+ {
2023
+ id: 787,
2024
+ name: 'Xã Đồng Dương',
2025
+ },
2026
+ {
2027
+ id: 732,
2028
+ name: 'Xã Quế Sơn Trung',
2029
+ },
2030
+ {
2031
+ id: 714,
2032
+ name: 'Phường Điện Bàn',
2033
+ },
2034
+ {
2035
+ id: 734,
2036
+ name: 'Phường Điện Bàn Đông',
2037
+ },
2038
+ {
2039
+ id: 757,
2040
+ name: 'Phường Ngũ Hành Sơn',
2041
+ },
2042
+ {
2043
+ id: 755,
2044
+ name: 'Xã Trà Vân',
2045
+ },
2046
+ {
2047
+ id: 772,
2048
+ name: 'Xã Trà Giáp',
2049
+ },
2050
+ {
2051
+ id: 779,
2052
+ name: 'Xã Trà Tân',
2053
+ },
2054
+ {
2055
+ id: 782,
2056
+ name: 'Xã Nam Trà My',
2057
+ },
2058
+ {
2059
+ id: 764,
2060
+ name: 'Xã Trà Linh',
2061
+ },
2062
+ {
2063
+ id: 781,
2064
+ name: 'Xã Trà Tập',
2065
+ },
2066
+ {
2067
+ id: 749,
2068
+ name: 'Xã Trà Leng',
2069
+ },
2070
+ {
2071
+ id: 752,
2072
+ name: 'Xã Trà Đốc',
2073
+ },
2074
+ {
2075
+ id: 743,
2076
+ name: 'Xã Phước Thành',
2077
+ },
2078
+ {
2079
+ id: 765,
2080
+ name: 'Xã Phước Chánh',
2081
+ },
2082
+ {
2083
+ id: 767,
2084
+ name: 'Xã Phước Năng',
2085
+ },
2086
+ {
2087
+ id: 751,
2088
+ name: 'Xã Trà Liên',
2089
+ },
2090
+ {
2091
+ id: 772,
2092
+ name: 'Xã Trà Giáp',
2093
+ },
2094
+ {
2095
+ id: 779,
2096
+ name: 'Xã Trà Tân',
2097
+ },
2098
+ { id: 750, name: 'Đặc khu Hoàng Sa' },
2099
+ ];
2100
+
2101
+ const defaultStyle = {
2102
+ mapStyle:
2103
+ 'https://ioc-rs.danang.gov.vn/documents/v5-style-admin_custom_nq57.json',
2104
+ accessToken: 'acfda3fa21ccc80fc6946681c4d6729f',
2105
+ };
2106
+
2107
+ // const defaultStyle='https://ioc-rs.danang.gov.vn/documents/v5-style-admin_custom_nq57.json'
2108
+
2109
+ export const chartUiProps = {
2110
+ chartConfig: withType(ChartOptionMap, 'mixed'),
2111
+ chartType: withDefault(StringControl, 'mapComponent'),
2112
+ title: withDefault(StringControl, trans('mixedLineBarChart.defaultTitle')),
2113
+ defaultData: jsonControl(toJSONObjectArray, defaultMapData),
2114
+ provinceData: jsonControl(toJSONObjectArray, defaultProvinceData),
2115
+ defaultProvinceData: jsonControl(toJSONObjectArray, defaultProvinceData),
2116
+ defaultMapStyle: jsonControl(toJSONObject, defaultStyle),
2117
+ defaultStyle: jsonControl(toJSONObject, defaultStyle),
2118
+ // defaultStyle: withDefault(StringControl, defaultStyle),
2119
+ series: createSeriesListComp(['line', 'bar']),
2120
+ type: ChartTypeControl('line'),
2121
+ type2: ChartTypeControl('bar'),
2122
+ yAxisKey: StringControl,
2123
+ yAxis2Key: StringControl,
2124
+ xAxisStyle: styleControl(EchartDefaultTextStyle, 'xAxis'),
2125
+ yAxisStyle: styleControl(EchartDefaultTextStyle, 'yAxisStyle'),
2126
+ yAxis2Style: styleControl(EchartDefaultTextStyle, 'yAxis2Style'),
2127
+ yAxisName: StringControl,
2128
+ yAxis2Name: StringControl,
2129
+ };
2130
+
2131
+ const chartUiChildrenMap = uiChildren(chartUiProps);
2132
+ export type ChartUiPropsType = RecordConstructorToView<
2133
+ typeof chartUiChildrenMap
2134
+ >;
2135
+
2136
+ export type UIChartDataType = {
2137
+ seriesName: string;
2138
+ // coordinate chart
2139
+ x?: any;
2140
+ y?: any;
2141
+ // pie or funnel
2142
+ itemName?: any;
2143
+ value?: any;
2144
+ };
2145
+
2146
+ export type NonUIChartDataType = {
2147
+ name: string;
2148
+ value: any;
2149
+ };