@opengis/bi 1.2.32 → 1.2.35

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/README.md +97 -92
  2. package/dist/bi.js +1 -1
  3. package/dist/bi.umd.cjs +68 -68
  4. package/dist/{import-file-D-ISqB7l.js → import-file-Ds-E7FRA.js} +1672 -1552
  5. package/dist/style.css +1 -1
  6. package/dist/{vs-funnel-bar-aoZzvriV.js → vs-funnel-bar-CWSZGLeM.js} +3 -3
  7. package/dist/{vs-list-CBkyJSBj.js → vs-list-hyfVhVWJ.js} +2 -2
  8. package/dist/{vs-map-C3C11qmT.js → vs-map-Izi22DyD.js} +3 -3
  9. package/dist/{vs-map-cluster-BsPmHIMx.js → vs-map-cluster-Mqtz-I8h.js} +3 -3
  10. package/dist/{vs-number-d58ftpH5.js → vs-number-kaERn0pu.js} +3 -3
  11. package/dist/{vs-table-BHa5Velm.js → vs-table-oIk-eYt8.js} +6 -6
  12. package/dist/{vs-text-Bq87gMTx.js → vs-text-L9R9n3i7.js} +4 -4
  13. package/package.json +77 -77
  14. package/plugin.js +21 -21
  15. package/server/helpers/mdToHTML.js +17 -17
  16. package/server/migrations/bi.dataset.sql +46 -46
  17. package/server/migrations/bi.sql +114 -114
  18. package/server/plugins/docs.js +48 -48
  19. package/server/plugins/hook.js +89 -89
  20. package/server/plugins/vite.js +81 -81
  21. package/server/routes/dashboard/controllers/dashboard.import.js +103 -103
  22. package/server/routes/dashboard/controllers/dashboard.js +158 -158
  23. package/server/routes/dashboard/controllers/dashboard.list.js +60 -60
  24. package/server/routes/dashboard/controllers/utils/yaml.js +11 -11
  25. package/server/routes/dashboard/index.mjs +26 -26
  26. package/server/routes/data/controllers/data.js +230 -230
  27. package/server/routes/data/controllers/util/chartSQL.js +49 -49
  28. package/server/routes/data/controllers/util/normalizeData.js +65 -65
  29. package/server/routes/data/index.mjs +38 -38
  30. package/server/routes/dataset/controllers/bi.dataset.list.js +29 -29
  31. package/server/routes/dataset/controllers/bi.db.list.js +19 -19
  32. package/server/routes/dataset/controllers/comment.js +55 -55
  33. package/server/routes/dataset/controllers/createDatasetPost.js +134 -134
  34. package/server/routes/dataset/controllers/data.js +149 -149
  35. package/server/routes/dataset/controllers/dbTablePreview.js +58 -58
  36. package/server/routes/dataset/controllers/dbTables.js +34 -34
  37. package/server/routes/dataset/controllers/delete.js +40 -40
  38. package/server/routes/dataset/controllers/deleteDataset.js +52 -52
  39. package/server/routes/dataset/controllers/editDataset.js +90 -90
  40. package/server/routes/dataset/controllers/export.js +214 -214
  41. package/server/routes/dataset/controllers/form.js +99 -99
  42. package/server/routes/dataset/controllers/format.js +46 -46
  43. package/server/routes/dataset/controllers/insert.js +47 -47
  44. package/server/routes/dataset/controllers/table.js +68 -68
  45. package/server/routes/dataset/controllers/update.js +43 -43
  46. package/server/routes/dataset/index.mjs +132 -132
  47. package/server/routes/dataset/utils/convertJSONToCSV.js +17 -17
  48. package/server/routes/dataset/utils/convertJSONToXls.js +47 -47
  49. package/server/routes/dataset/utils/createTableQuery.js +59 -59
  50. package/server/routes/dataset/utils/datasetForms.js +1 -1
  51. package/server/routes/dataset/utils/descriptionList.js +45 -45
  52. package/server/routes/dataset/utils/downloadRemoteFile.js +58 -58
  53. package/server/routes/dataset/utils/executeQuery.js +46 -46
  54. package/server/routes/dataset/utils/getLayersData.js +106 -106
  55. package/server/routes/dataset/utils/getTableData.js +46 -46
  56. package/server/routes/dataset/utils/insertDataQuery.js +12 -12
  57. package/server/routes/dataset/utils/metaFormat.js +24 -24
  58. package/server/routes/edit/controllers/dashboard.add.js +36 -36
  59. package/server/routes/edit/controllers/dashboard.delete.js +39 -39
  60. package/server/routes/edit/controllers/dashboard.edit.js +61 -61
  61. package/server/routes/edit/controllers/widget.add.js +78 -78
  62. package/server/routes/edit/controllers/widget.del.js +58 -58
  63. package/server/routes/edit/controllers/widget.edit.js +115 -115
  64. package/server/routes/edit/index.mjs +33 -33
  65. package/server/routes/map/controllers/cluster.js +125 -125
  66. package/server/routes/map/controllers/clusterVtile.js +166 -166
  67. package/server/routes/map/controllers/geojson.js +127 -127
  68. package/server/routes/map/controllers/heatmap.js +118 -118
  69. package/server/routes/map/controllers/map.js +69 -69
  70. package/server/routes/map/controllers/utils/downloadClusterData.js +44 -44
  71. package/server/routes/map/controllers/vtile.js +183 -183
  72. package/server/routes/map/index.mjs +32 -32
  73. package/server/templates/page/login.html +58 -58
  74. package/server/utils/getWidget.js +118 -118
  75. package/utils.js +12 -12
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- @font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}body{font-family:Inter,Segoe UI,Helvetica Neue,Roboto,sans-serif;font-weight:400}h1{font-family:Inter,Segoe UI,Helvetica Neue,Roboto,sans-serif;font-weight:700}em{font-family:Inter,Segoe UI,Helvetica Neue,Roboto,sans-serif;font-style:italic}.custom-scrollbar{overflow-y:auto;overflow-x:clip}.custom-scrollbar::-webkit-scrollbar{width:6px;margin-right:0}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#e0e0e0;border-radius:10px}.custom-scrollbar::-webkit-scrollbar-track{background-color:#f1f1f1}.vs-modal-content[data-v-72958ba5]{scrollbar-width:thin}.vs-modal-enter-active[data-v-72958ba5],.vs-modal-leave-active[data-v-72958ba5]{transition:opacity .2s ease,transform .2s ease}.vs-modal-enter-from[data-v-72958ba5],.vs-modal-leave-to[data-v-72958ba5]{opacity:0;transform:scale(.95)}.custom-scrollbar[data-v-5400c793]{overflow-y:auto;overflow-x:clip}.custom-scrollbar[data-v-5400c793]::-webkit-scrollbar{width:6px}.custom-scrollbar[data-v-5400c793]::-webkit-scrollbar-thumb{background-color:#e0e0e0;border-radius:10px}.custom-scrollbar[data-v-5400c793]::-webkit-scrollbar-track{background-color:#f1f1f1}@keyframes fade-in-6c4cd6c6{0%{opacity:0}to{opacity:1}}.animate-fade-in[data-v-6c4cd6c6]{animation:fade-in-6c4cd6c6 .3s ease-out}.custom-x-scrollbar{overflow-x:auto;overflow-y:clip}.custom-x-scrollbar::-webkit-scrollbar{height:6px}.custom-x-scrollbar::-webkit-scrollbar-thumb{background-color:#e0e0e0}.custom-x-scrollbar::-webkit-scrollbar-track{background-color:#f1f1f1}.vs-chart{width:100%;height:100%}.vs-chart-tooltip{border-radius:7px;max-height:100px;max-width:340px;min-width:140px;background-color:#fff;box-shadow:0 0 8px #0000002e}.vs-chart-tooltip__head{padding:5px;border-bottom:1px solid #eee;margin-bottom:5px}.vs-chart-tooltip__head-title{font-size:14px;font-weight:700;display:flex;align-items:center}.vs-chart-tooltip__head-value{margin-right:5px}.vs-chart-tooltip__head-series{font-size:14px;display:flex;align-items:center}.vs-chart-tooltip__color{width:12px;height:12px;display:block;border-radius:50%;margin-right:5px}.vs-chart-tooltip__body{padding:5px;font-size:14px;display:flex;align-items:start;flex-direction:column}.vs-chart-tooltip__body .vs-chart-tooltip__color{border-radius:3px}.vs-chart-tooltip__item{width:100%;display:flex;align-items:center;justify-content:space-between}.vs-chart-tooltip__text{margin-right:auto}.vs-chart-tooltip__body svg{margin-right:8px}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-widget h1{font-size:18px}.text-widget h2{font-size:14px}.map__settings{display:flex;padding:3px 1px;background:#fff;position:absolute;right:0;bottom:15px;height:30px;align-items:center;font-weight:100;text-align:center}.map__settings-item{display:flex;white-space:nowrap;padding:0 2px;font-size:10px;font-weight:400}.map__settings-attribution{padding:0}.map__settings-menu{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:15px!important;position:absolute;background-color:#fff;bottom:60px;right:90px;width:260px}.map__settings-menu-item{display:flex;align-items:center;color:#2c2c2c;margin-bottom:5px;font-size:12px;justify-content:space-between;height:28px}.map__settings-menu-item-text{height:28px;line-height:28px;background-color:#fff;background-image:none;border-radius:4px;border:1px solid #dcdfe6;-webkit-box-sizing:border-box;box-sizing:border-box;color:#606266;display:inline-block;font-size:12px;height:40px;line-height:40px;outline:0;padding:0 10px}.map__settings-menu-item--checktext{color:#000!important;font-size:12px;display:inline-block;padding-left:10px;line-height:19px;cursor:pointer}.checked{color:#409eff!important}.vs-map-slot-layers{position:absolute;display:none;bottom:10px;left:15px}.vs-map-slot-layers__layer{width:50px;height:50px;background-color:#fff;box-shadow:0 0 7px #434c5626;padding:5px;border-radius:5px;margin-top:10px;margin-right:10px;cursor:pointer;transition:all .3s}.vs-map-slot-layers__layer:hover{background-color:#eee}.vs-map-slot-layers__image{width:100%;border-radius:5px;object-fit:contain}.focused{background-color:#1989fa!important}.maplibregl-popup-content{padding:0}
1
+ @font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}body{font-family:Inter,Segoe UI,Helvetica Neue,Roboto,sans-serif;font-weight:400}h1{font-family:Inter,Segoe UI,Helvetica Neue,Roboto,sans-serif;font-weight:700}em{font-family:Inter,Segoe UI,Helvetica Neue,Roboto,sans-serif;font-style:italic}.custom-scrollbar{overflow-y:auto;overflow-x:clip}.custom-scrollbar::-webkit-scrollbar{width:6px;margin-right:0}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#e0e0e0;border-radius:10px}.custom-scrollbar::-webkit-scrollbar-track{background-color:#f1f1f1}.vs-modal-content[data-v-1c7d97fa]{scrollbar-width:thin}.vs-modal-enter-active[data-v-1c7d97fa],.vs-modal-leave-active[data-v-1c7d97fa]{transition:opacity .2s ease,transform .2s ease}.vs-modal-enter-from[data-v-1c7d97fa],.vs-modal-leave-to[data-v-1c7d97fa]{opacity:0;transform:scale(.95)}.custom-scrollbar[data-v-9395dbec]{overflow-y:auto;overflow-x:clip}.custom-scrollbar[data-v-9395dbec]::-webkit-scrollbar{width:6px}.custom-scrollbar[data-v-9395dbec]::-webkit-scrollbar-thumb{background-color:#e0e0e0;border-radius:10px}.custom-scrollbar[data-v-9395dbec]::-webkit-scrollbar-track{background-color:#f1f1f1}@keyframes fade-in-6f582e09{0%{opacity:0}to{opacity:1}}.animate-fade-in[data-v-6f582e09]{animation:fade-in-6f582e09 .3s ease-out}.custom-x-scrollbar{overflow-x:auto;overflow-y:clip}.custom-x-scrollbar::-webkit-scrollbar{height:6px}.custom-x-scrollbar::-webkit-scrollbar-thumb{background-color:#e0e0e0}.custom-x-scrollbar::-webkit-scrollbar-track{background-color:#f1f1f1}.vs-chart{width:100%;height:100%}.vs-chart-tooltip{border-radius:7px;max-height:100px;max-width:340px;min-width:140px;background-color:#fff;box-shadow:0 0 8px #0000002e}.vs-chart-tooltip__head{padding:5px;border-bottom:1px solid #eee;margin-bottom:5px}.vs-chart-tooltip__head-title{font-size:14px;font-weight:700;display:flex;align-items:center}.vs-chart-tooltip__head-value{margin-right:5px}.vs-chart-tooltip__head-series{font-size:14px;display:flex;align-items:center}.vs-chart-tooltip__color{width:12px;height:12px;display:block;border-radius:50%;margin-right:5px}.vs-chart-tooltip__body{padding:5px;font-size:14px;display:flex;align-items:start;flex-direction:column}.vs-chart-tooltip__body .vs-chart-tooltip__color{border-radius:3px}.vs-chart-tooltip__item{width:100%;display:flex;align-items:center;justify-content:space-between}.vs-chart-tooltip__text{margin-right:auto}.vs-chart-tooltip__body svg{margin-right:8px}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-widget h1{font-size:18px}.text-widget h2{font-size:14px}.map__settings{display:flex;padding:3px 1px;background:#fff;position:absolute;right:0;bottom:15px;height:30px;align-items:center;font-weight:100;text-align:center}.map__settings-item{display:flex;white-space:nowrap;padding:0 2px;font-size:10px;font-weight:400}.map__settings-attribution{padding:0}.map__settings-menu{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:15px!important;position:absolute;background-color:#fff;bottom:60px;right:90px;width:260px}.map__settings-menu-item{display:flex;align-items:center;color:#2c2c2c;margin-bottom:5px;font-size:12px;justify-content:space-between;height:28px}.map__settings-menu-item-text{height:28px;line-height:28px;background-color:#fff;background-image:none;border-radius:4px;border:1px solid #dcdfe6;-webkit-box-sizing:border-box;box-sizing:border-box;color:#606266;display:inline-block;font-size:12px;height:40px;line-height:40px;outline:0;padding:0 10px}.map__settings-menu-item--checktext{color:#000!important;font-size:12px;display:inline-block;padding-left:10px;line-height:19px;cursor:pointer}.checked{color:#409eff!important}.vs-map-slot-layers{position:absolute;display:none;bottom:10px;left:15px}.vs-map-slot-layers__layer{width:50px;height:50px;background-color:#fff;box-shadow:0 0 7px #434c5626;padding:5px;border-radius:5px;margin-top:10px;margin-right:10px;cursor:pointer;transition:all .3s}.vs-map-slot-layers__layer:hover{background-color:#eee}.vs-map-slot-layers__image{width:100%;border-radius:5px;object-fit:contain}.focused{background-color:#1989fa!important}.maplibregl-popup-content{padding:0}
@@ -1,5 +1,5 @@
1
- import { _ as l, c as h, a as c, b as d, d as p } from "./import-file-D-ISqB7l.js";
2
- import { openBlock as u, createElementBlock as m } from "vue";
1
+ import { _ as l, c as h, a as c, b as d, d as p } from "./import-file-Ds-E7FRA.js";
2
+ import { createElementBlock as u, openBlock as m } from "vue";
3
3
  const o = typeof window < "u" ? window.echarts : null, f = {
4
4
  name: "VsFunnelBar",
5
5
  mixins: [h],
@@ -109,7 +109,7 @@ const o = typeof window < "u" ? window.echarts : null, f = {
109
109
  }
110
110
  }, y = ["id"];
111
111
  function D(t, s, r, a, e, i) {
112
- return u(), m("div", {
112
+ return m(), u("div", {
113
113
  ref: "chart",
114
114
  id: e.uniqueID,
115
115
  class: "h-[90%] custom-scrollbar min-h-[200px]"
@@ -1,5 +1,5 @@
1
- import { openBlock as l, createBlock as b, unref as L, mergeProps as v, createElementBlock as d, createElementVNode as c, withDirectives as F, toDisplayString as S, vShow as R, Fragment as P, renderList as V, normalizeClass as D, resolveComponent as A, createVNode as H } from "vue";
2
- import { e as x, X as J, _ as w } from "./import-file-D-ISqB7l.js";
1
+ import { createBlock as b, openBlock as l, unref as L, mergeProps as v, createElementBlock as d, createElementVNode as c, withDirectives as F, toDisplayString as S, vShow as R, Fragment as P, renderList as V, normalizeClass as D, resolveComponent as A, createVNode as H } from "vue";
2
+ import { e as x, X as J, _ as w } from "./import-file-Ds-E7FRA.js";
3
3
  /**
4
4
  * @license lucide-vue-next v0.577.0 - ISC
5
5
  *
@@ -1,6 +1,6 @@
1
- import { _ as C, a as E, p as L, V as T, b as B, c as H, d as O, l as F, e as D } from "./vs-list-CBkyJSBj.js";
2
- import { _ as $, c as P } from "./import-file-D-ISqB7l.js";
3
- import { resolveComponent as x, openBlock as c, createElementBlock as m, Fragment as w, createElementVNode as r, createVNode as b, createBlock as V, Teleport as N, toDisplayString as y, createCommentVNode as f, renderList as S, normalizeStyle as k, normalizeClass as I } from "vue";
1
+ import { _ as C, a as E, p as L, V as T, b as B, c as H, d as O, l as F, e as D } from "./vs-list-hyfVhVWJ.js";
2
+ import { _ as $, c as P } from "./import-file-Ds-E7FRA.js";
3
+ import { resolveComponent as x, createElementBlock as m, openBlock as c, Fragment as w, createElementVNode as r, createBlock as V, createCommentVNode as f, createVNode as b, Teleport as N, toDisplayString as y, renderList as S, normalizeStyle as k, normalizeClass as I } from "vue";
4
4
  const W = {
5
5
  components: { legendIcon: E, closeIcon: C },
6
6
  props: {
@@ -1,6 +1,6 @@
1
- import { _ as O, a as A, p as T, c as F, V as P, b as G, d as W, e as Z, l as q } from "./vs-list-CBkyJSBj.js";
2
- import { e as K, _ as H, V as J, c as Q, g as U, h as X, i as Y } from "./import-file-D-ISqB7l.js";
3
- import { openBlock as p, createElementBlock as x, createElementVNode as l, normalizeClass as C, Fragment as D, renderList as R, toDisplayString as N, normalizeStyle as $, createCommentVNode as S, createBlock as z, unref as j, mergeProps as ee, resolveComponent as v, resolveDynamicComponent as te, withDirectives as M, createVNode as w, vShow as I } from "vue";
1
+ import { _ as O, a as A, p as T, c as F, V as P, b as G, d as W, e as Z, l as q } from "./vs-list-hyfVhVWJ.js";
2
+ import { e as K, _ as H, V as J, c as Q, g as U, h as X, i as Y } from "./import-file-Ds-E7FRA.js";
3
+ import { createElementBlock as x, createCommentVNode as S, openBlock as p, createElementVNode as l, normalizeClass as C, Fragment as D, renderList as R, toDisplayString as N, normalizeStyle as $, createBlock as z, unref as j, mergeProps as ee, resolveComponent as v, withDirectives as M, resolveDynamicComponent as te, createVNode as w, vShow as I } from "vue";
4
4
  /**
5
5
  * @license lucide-vue-next v0.577.0 - ISC
6
6
  *
@@ -1,5 +1,5 @@
1
- import { _ as c, c as o, f as n } from "./import-file-D-ISqB7l.js";
2
- import { openBlock as i, createElementBlock as m, toDisplayString as s } from "vue";
1
+ import { _ as c, c as o, f as n } from "./import-file-Ds-E7FRA.js";
2
+ import { createElementBlock as i, openBlock as m, toDisplayString as s } from "vue";
3
3
  const u = {
4
4
  name: "VsNumber",
5
5
  mixins: [o],
@@ -47,7 +47,7 @@ const u = {
47
47
  }
48
48
  }, h = { class: "text-lg lg:text-xl xl:text-2xl text-gray-800 h-[32px] flex items-center" };
49
49
  function x(e, t, r, f, l, a) {
50
- return i(), m("div", h, s(a.prefix) + s(a.formattedNumber), 1);
50
+ return m(), i("div", h, s(a.prefix) + s(a.formattedNumber), 1);
51
51
  }
52
52
  const b = /* @__PURE__ */ c(u, [["render", x]]);
53
53
  export {
@@ -1,5 +1,5 @@
1
- import { _ as m, c as f, b as _, d as b } from "./import-file-D-ISqB7l.js";
2
- import { openBlock as a, createElementBlock as r, createElementVNode as s, Fragment as n, renderList as c, toDisplayString as d } from "vue";
1
+ import { _ as m, c as f, b as _, d as b } from "./import-file-Ds-E7FRA.js";
2
+ import { createElementBlock as a, openBlock as r, createElementVNode as s, Fragment as n, renderList as c, toDisplayString as d } from "vue";
3
3
  const x = {
4
4
  name: "VsTable",
5
5
  mixins: [f],
@@ -39,20 +39,20 @@ const x = {
39
39
  class: "xl:min-w-[120px] min-w-48"
40
40
  }, F = { class: "flex items-center px-1 py-3 font-medium text-gray-800 text-start gap-x-1" }, T = { class: "divide-y divide-gray-200" }, B = { class: "text-gray-600" };
41
41
  function E(t, e, o, l, N, S) {
42
- return a(), r("div", y, [
42
+ return r(), a("div", y, [
43
43
  s("div", g, [
44
44
  s("div", w, [
45
45
  s("table", k, [
46
46
  s("thead", v, [
47
47
  s("tr", D, [
48
- (a(!0), r(n, null, c(t.dimensions, (i) => (a(), r("th", $, [
48
+ (r(!0), a(n, null, c(t.dimensions, (i) => (r(), a("th", $, [
49
49
  s("div", F, d(i), 1)
50
50
  ]))), 256))
51
51
  ])
52
52
  ]),
53
53
  s("tbody", T, [
54
- (a(!0), r(n, null, c(t.sourceData, (i, p) => (a(), r("tr", { key: p }, [
55
- (a(!0), r(n, null, c(t.dimensions, (u, h) => (a(), r("td", {
54
+ (r(!0), a(n, null, c(t.sourceData, (i, p) => (r(), a("tr", { key: p }, [
55
+ (r(!0), a(n, null, c(t.dimensions, (u, h) => (r(), a("td", {
56
56
  key: h,
57
57
  class: "py-3 whitespace-nowrap"
58
58
  }, [
@@ -1,5 +1,5 @@
1
- import { _ as s, c as a, m as d } from "./import-file-D-ISqB7l.js";
2
- import { openBlock as n, createElementBlock as o, createCommentVNode as c } from "vue";
1
+ import { _ as s, c as a, m as d } from "./import-file-Ds-E7FRA.js";
2
+ import { createElementBlock as n, openBlock as o, createCommentVNode as c } from "vue";
3
3
  const u = {
4
4
  name: "VsText",
5
5
  mixins: [a],
@@ -35,11 +35,11 @@ const u = {
35
35
  }
36
36
  }, l = ["id"], m = ["innerHTML"];
37
37
  function x(e, t, i, h, r, p) {
38
- return n(), o("div", {
38
+ return o(), n("div", {
39
39
  id: r.uniqueID,
40
40
  class: "relative select-auto h-full rounded-xl text-[12px] box-border bg-white custom-scrollbar text-widget"
41
41
  }, [
42
- r.markedText ? (n(), o("div", {
42
+ r.markedText ? (o(), n("div", {
43
43
  key: 0,
44
44
  innerHTML: r.markedText
45
45
  }, null, 8, m)) : c("", !0)
package/package.json CHANGED
@@ -1,77 +1,77 @@
1
- {
2
- "name": "@opengis/bi",
3
- "version": "1.2.32",
4
- "description": "BI data visualization module",
5
- "main": "dist/bi.js",
6
- "browser": "dist/bi.umd.cjs",
7
- "type": "module",
8
- "files": [
9
- "dist",
10
- "server",
11
- "plugin.js",
12
- "utils.js"
13
- ],
14
- "scripts": {
15
- "patch": "npm version patch && git push && npm publish",
16
- "prepublishOnly": "npm run build:lib",
17
- "debug": "node --watch-path=server server",
18
- "dev": "vite",
19
- "type-check": "vue-tsc --noEmit",
20
- "build": "vite build",
21
- "build:lib": "cross-env APP=true vite build",
22
- "build-app": "vite build",
23
- "lint": "eslint .",
24
- "format": "prettier --write .",
25
- "test": "node --test",
26
- "test21": "node --test ./test/plugins/*",
27
- "start": "bun --env-file=.env.bi server.js",
28
- "prod": "NODE_ENV=production npm run start",
29
- "docs:i": "npm install --prefix ./docs",
30
- "docs:dev": "npm run --prefix ./docs docs:dev",
31
- "docs:build": "npm run --prefix ./docs docs:build",
32
- "docs:preview": "npm run --prefix ./docs docs:preview",
33
- "adduser": "node script/adduser.js"
34
- },
35
- "keywords": [
36
- "bi",
37
- "data visualization",
38
- "chart",
39
- "opengis",
40
- "vue",
41
- "fastify"
42
- ],
43
- "author": "Softpro",
44
- "license": "ISC",
45
- "dependencies": {
46
- "@mapbox/sphericalmercator": "^1.2.0",
47
- "@opengis/table": "^0.0.30",
48
- "lucide-vue-next": "^0.577.0"
49
- },
50
- "peerDependencies": {
51
- "@opengis/fastify-table": "^2.1.3"
52
- },
53
- "devDependencies": {
54
- "@opengis/core": "^0.0.33",
55
- "@opengis/form": "0.0.137",
56
- "@turf/turf": "^7.3.4",
57
- "@types/node": "^22.19.17",
58
- "@typescript-eslint/eslint-plugin": "^6.21.0",
59
- "@typescript-eslint/parser": "^6.21.0",
60
- "@vitejs/plugin-vue": "^5.2.4",
61
- "cross-env": "^10.1.0",
62
- "eslint": "^8.57.1",
63
- "eslint-config-airbnb-base": "^15.0.0",
64
- "eslint-config-prettier": "^9.1.2",
65
- "eslint-plugin-vue": "^9.33.0",
66
- "globals": "^15.15.0",
67
- "marked": "^14.1.4",
68
- "prettier": "^3.8.1",
69
- "rollup-plugin-visualizer": "^7.0.1",
70
- "sass-embedded": "1.89.2",
71
- "typescript": "^5.9.3",
72
- "vite": "^5.4.21",
73
- "vue": "^3.5.32",
74
- "vue-router": "^4.6.4",
75
- "vue-tsc": "^2.2.12"
76
- }
77
- }
1
+ {
2
+ "name": "@opengis/bi",
3
+ "version": "1.2.35",
4
+ "description": "BI data visualization module",
5
+ "main": "dist/bi.js",
6
+ "browser": "dist/bi.umd.cjs",
7
+ "type": "module",
8
+ "files": [
9
+ "dist",
10
+ "server",
11
+ "plugin.js",
12
+ "utils.js"
13
+ ],
14
+ "scripts": {
15
+ "patch": "npm version patch && git push && npm publish",
16
+ "prepublishOnly": "npm run build:lib",
17
+ "debug": "node --watch-path=server server",
18
+ "dev": "vite",
19
+ "type-check": "vue-tsc --noEmit",
20
+ "build": "vite build",
21
+ "build:lib": "cross-env APP=true vite build",
22
+ "build-app": "vite build",
23
+ "lint": "eslint .",
24
+ "format": "prettier --write .",
25
+ "test": "node --test",
26
+ "test21": "node --test ./test/plugins/*",
27
+ "start": "bun --env-file=.env.bi server.js",
28
+ "prod": "NODE_ENV=production npm run start",
29
+ "docs:i": "npm install --prefix ./docs",
30
+ "docs:dev": "npm run --prefix ./docs docs:dev",
31
+ "docs:build": "npm run --prefix ./docs docs:build",
32
+ "docs:preview": "npm run --prefix ./docs docs:preview",
33
+ "adduser": "node script/adduser.js"
34
+ },
35
+ "keywords": [
36
+ "bi",
37
+ "data visualization",
38
+ "chart",
39
+ "opengis",
40
+ "vue",
41
+ "fastify"
42
+ ],
43
+ "author": "Softpro",
44
+ "license": "ISC",
45
+ "dependencies": {
46
+ "@mapbox/sphericalmercator": "1.2.0",
47
+ "@opengis/table": "0.0.30",
48
+ "lucide-vue-next": "0.577.0"
49
+ },
50
+ "peerDependencies": {
51
+ "@opengis/fastify-table": "2.1.3"
52
+ },
53
+ "devDependencies": {
54
+ "@opengis/core": "0.0.33",
55
+ "@opengis/form": "0.0.137",
56
+ "@turf/turf": "7.3.4",
57
+ "@types/node": "22.19.17",
58
+ "@typescript-eslint/eslint-plugin": "6.21.0",
59
+ "@typescript-eslint/parser": "6.21.0",
60
+ "@vitejs/plugin-vue": "5.2.4",
61
+ "cross-env": "10.1.0",
62
+ "eslint": "8.57.1",
63
+ "eslint-config-airbnb-base": "15.0.0",
64
+ "eslint-config-prettier": "9.1.2",
65
+ "eslint-plugin-vue": "9.33.0",
66
+ "globals": "15.15.0",
67
+ "marked": "14.1.4",
68
+ "prettier": "3.8.1",
69
+ "rollup-plugin-visualizer": "7.0.1",
70
+ "sass-embedded": "1.89.2",
71
+ "typescript": "5.9.3",
72
+ "vite": "5.4.21",
73
+ "vue": "3.5.32",
74
+ "vue-router": "4.6.4",
75
+ "vue-tsc": "2.2.12"
76
+ }
77
+ }
package/plugin.js CHANGED
@@ -1,21 +1,21 @@
1
- import fp from 'fastify-plugin';
2
- import path from 'node:path';
3
- import { fileURLToPath } from 'url';
4
-
5
- import { /*config, addTemplateDir,*/ pgClients, execMigrations } from '@opengis/fastify-table/utils.js';
6
-
7
- const dirName = path.dirname(fileURLToPath(import.meta.url));
8
-
9
- async function plugin(fastify, opt) {
10
- fastify.register(import('./server/routes/dashboard/index.mjs'), opt);
11
- fastify.register(import('./server/routes/dataset/index.mjs'), opt);
12
-
13
- fastify.register(import('./server/routes/data/index.mjs'), opt);
14
- fastify.register(import('./server/routes/edit/index.mjs'), opt);
15
- fastify.register(import('./server/routes/map/index.mjs'), opt);
16
- // config.templates?.forEach(el => addTemplateDir(el));
17
-
18
- const dir = path.join(dirName, 'server/migrations');
19
- execMigrations(dir, pgClients.client).catch(err => console.log(err));
20
- }
21
- export default fp(plugin);
1
+ import fp from 'fastify-plugin';
2
+ import path from 'node:path';
3
+ import { fileURLToPath } from 'url';
4
+
5
+ import { /*config, addTemplateDir,*/ pgClients, execMigrations } from '@opengis/fastify-table/utils.js';
6
+
7
+ const dirName = path.dirname(fileURLToPath(import.meta.url));
8
+
9
+ async function biPlugin(fastify, opt) {
10
+ fastify.register(import('./server/routes/dashboard/index.mjs'), opt);
11
+ fastify.register(import('./server/routes/dataset/index.mjs'), opt);
12
+
13
+ fastify.register(import('./server/routes/data/index.mjs'), opt);
14
+ fastify.register(import('./server/routes/edit/index.mjs'), opt);
15
+ fastify.register(import('./server/routes/map/index.mjs'), opt);
16
+ // config.templates?.forEach(el => addTemplateDir(el));
17
+
18
+ const dir = path.join(dirName, 'server/migrations');
19
+ execMigrations(dir, pgClients.client).catch(err => console.log(err));
20
+ }
21
+ export default fp(biPlugin);
@@ -1,17 +1,17 @@
1
- import md from 'markdown-it';
2
-
3
- const md1 = md({ html: true });
4
-
5
- /**
6
- * Перетворення з файла readme.md до формату HTML.
7
- * Потрабно вставити в хелпер шлях до файла або текст readme.md і за допомогою бібліотеки markdown-it перетвориться в HTML.
8
-
9
- * @returns {String} Returns HTML
10
- */
11
- export default function mdToHTML(data, options) {
12
- // auto detect HTML or MD
13
- // const result = md().render(data);
14
- if (!data) return 'empty data';
15
- const result = md1.render(data);
16
- return result;
17
- };
1
+ import md from 'markdown-it';
2
+
3
+ const md1 = md({ html: true });
4
+
5
+ /**
6
+ * Перетворення з файла readme.md до формату HTML.
7
+ * Потрабно вставити в хелпер шлях до файла або текст readme.md і за допомогою бібліотеки markdown-it перетвориться в HTML.
8
+
9
+ * @returns {String} Returns HTML
10
+ */
11
+ export default function mdToHTML(data, options) {
12
+ // auto detect HTML or MD
13
+ // const result = md().render(data);
14
+ if (!data) return 'empty data';
15
+ const result = md1.render(data);
16
+ return result;
17
+ };
@@ -1,46 +1,46 @@
1
- create schema if not exists bi;
2
-
3
- CREATE TABLE if not exists bi.dataset ();
4
- alter table bi.dataset drop constraint if exists bi_dataset_id_pkey cascade;
5
-
6
- alter table bi.dataset add column if not exists dataset_id text;
7
- alter table bi.dataset alter column dataset_id set not null;
8
- alter table bi.dataset alter column dataset_id set default next_id();
9
-
10
- alter table bi.dataset add column if not exists name text;
11
- alter table bi.dataset add column if not exists db text;
12
- alter table bi.dataset add column if not exists source_type text;
13
- alter table bi.dataset add column if not exists file_path text;
14
- alter table bi.dataset add column if not exists table_name text;
15
-
16
- alter table bi.dataset add column if not exists sql_list json;
17
- alter table bi.dataset add column if not exists column_list json;
18
-
19
- alter table bi.dataset add column if not exists uid text;
20
- alter table bi.dataset add column if not exists editor_id text;
21
- alter table bi.dataset add column if not exists editor_date timestamp without time zone;
22
- alter table bi.dataset add column if not exists cdate timestamp without time zone;
23
- alter table bi.dataset alter column cdate set DEFAULT (now())::timestamp without time zone;
24
- ALTER TABLE bi.dataset add column if not exists filter_list json;
25
- ALTER TABLE bi.dataset add column if not exists dataset_file_path text;
26
- ALTER TABLE bi.dataset add column if not exists files json;
27
- ALTER TABLE bi.dataset add column if not exists style json;
28
- ALTER TABLE bi.dataset add column if not exists data_source json;
29
- ALTER TABLE bi.dataset add column if not exists setting json;
30
- ALTER TABLE bi.dataset add column if not exists geom geometry;
31
- ALTER TABLE bi.dataset add column if not exists pk text;
32
- ALTER TABLE bi.dataset add column if not exists query text;
33
- ALTER TABLE bi.dataset add column if not exists form_setting json;
34
- ALTER TABLE bi.dataset add column if not exists access_level text;
35
- ALTER TABLE bi.dataset add column if not exists export_columns text[];
36
- ALTER TABLE bi.dataset add column if not exists dashboard_list text[];
37
-
38
- alter table bi.dataset add CONSTRAINT bi_dataset_id_pkey PRIMARY KEY (dataset_id);
39
-
40
- COMMENT ON TABLE bi.dataset IS 'Набори даних';
41
-
42
- COMMENT ON COLUMN bi.dataset.dataset_id IS 'PK';
43
- COMMENT ON COLUMN bi.dataset.name IS 'Назва';
44
- COMMENT ON COLUMN bi.dataset.file_path IS 'Шлях до імпортованого файлу';
45
- COMMENT ON COLUMN bi.dataset.table_name IS 'Таблиця';
46
-
1
+ create schema if not exists bi;
2
+
3
+ CREATE TABLE if not exists bi.dataset ();
4
+ alter table bi.dataset drop constraint if exists bi_dataset_id_pkey cascade;
5
+
6
+ alter table bi.dataset add column if not exists dataset_id text;
7
+ alter table bi.dataset alter column dataset_id set not null;
8
+ alter table bi.dataset alter column dataset_id set default next_id();
9
+
10
+ alter table bi.dataset add column if not exists name text;
11
+ alter table bi.dataset add column if not exists db text;
12
+ alter table bi.dataset add column if not exists source_type text;
13
+ alter table bi.dataset add column if not exists file_path text;
14
+ alter table bi.dataset add column if not exists table_name text;
15
+
16
+ alter table bi.dataset add column if not exists sql_list json;
17
+ alter table bi.dataset add column if not exists column_list json;
18
+
19
+ alter table bi.dataset add column if not exists uid text;
20
+ alter table bi.dataset add column if not exists editor_id text;
21
+ alter table bi.dataset add column if not exists editor_date timestamp without time zone;
22
+ alter table bi.dataset add column if not exists cdate timestamp without time zone;
23
+ alter table bi.dataset alter column cdate set DEFAULT (now())::timestamp without time zone;
24
+ ALTER TABLE bi.dataset add column if not exists filter_list json;
25
+ ALTER TABLE bi.dataset add column if not exists dataset_file_path text;
26
+ ALTER TABLE bi.dataset add column if not exists files json;
27
+ ALTER TABLE bi.dataset add column if not exists style json;
28
+ ALTER TABLE bi.dataset add column if not exists data_source json;
29
+ ALTER TABLE bi.dataset add column if not exists setting json;
30
+ ALTER TABLE bi.dataset add column if not exists geom geometry;
31
+ ALTER TABLE bi.dataset add column if not exists pk text;
32
+ ALTER TABLE bi.dataset add column if not exists query text;
33
+ ALTER TABLE bi.dataset add column if not exists form_setting json;
34
+ ALTER TABLE bi.dataset add column if not exists access_level text;
35
+ ALTER TABLE bi.dataset add column if not exists export_columns text[];
36
+ ALTER TABLE bi.dataset add column if not exists dashboard_list text[];
37
+
38
+ alter table bi.dataset add CONSTRAINT bi_dataset_id_pkey PRIMARY KEY (dataset_id);
39
+
40
+ COMMENT ON TABLE bi.dataset IS 'Набори даних';
41
+
42
+ COMMENT ON COLUMN bi.dataset.dataset_id IS 'PK';
43
+ COMMENT ON COLUMN bi.dataset.name IS 'Назва';
44
+ COMMENT ON COLUMN bi.dataset.file_path IS 'Шлях до імпортованого файлу';
45
+ COMMENT ON COLUMN bi.dataset.table_name IS 'Таблиця';
46
+