@luzmo/dashboard-contents-types 1.0.41 → 1.0.43

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 (242) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/area-chart/area-chart-options.config.cjs +1 -1
  3. package/area-chart/area-chart-options.config.cjs.map +1 -1
  4. package/area-chart/area-chart-options.config.js +14 -7
  5. package/area-chart/area-chart-options.config.js.map +1 -1
  6. package/bar-chart/bar-chart-options.config.cjs +1 -1
  7. package/bar-chart/bar-chart-options.config.cjs.map +1 -1
  8. package/bar-chart/bar-chart-options.config.js +14 -10
  9. package/bar-chart/bar-chart-options.config.js.map +1 -1
  10. package/box-plot/box-plot-options.config.cjs +1 -1
  11. package/box-plot/box-plot-options.config.cjs.map +1 -1
  12. package/box-plot/box-plot-options.config.js +26 -19
  13. package/box-plot/box-plot-options.config.js.map +1 -1
  14. package/bubble-chart/bubble-chart-options.config.cjs +1 -1
  15. package/bubble-chart/bubble-chart-options.config.cjs.map +1 -1
  16. package/bubble-chart/bubble-chart-options.config.js +114 -107
  17. package/bubble-chart/bubble-chart-options.config.js.map +1 -1
  18. package/bullet-chart/bullet-chart-options.config.cjs +1 -1
  19. package/bullet-chart/bullet-chart-options.config.cjs.map +1 -1
  20. package/bullet-chart/bullet-chart-options.config.js +4 -3
  21. package/bullet-chart/bullet-chart-options.config.js.map +1 -1
  22. package/choropleth-map/choropleth-map-options.config.cjs +1 -1
  23. package/choropleth-map/choropleth-map-options.config.cjs.map +1 -1
  24. package/choropleth-map/choropleth-map-options.config.js +41 -37
  25. package/choropleth-map/choropleth-map-options.config.js.map +1 -1
  26. package/circle-pack-chart/circle-pack-chart-options.config.cjs +1 -1
  27. package/circle-pack-chart/circle-pack-chart-options.config.cjs.map +1 -1
  28. package/circle-pack-chart/circle-pack-chart-options.config.js +37 -31
  29. package/circle-pack-chart/circle-pack-chart-options.config.js.map +1 -1
  30. package/circular-gauge/circular-gauge-options.config.cjs +1 -1
  31. package/circular-gauge/circular-gauge-options.config.cjs.map +1 -1
  32. package/circular-gauge/circular-gauge-options.config.js +148 -143
  33. package/circular-gauge/circular-gauge-options.config.js.map +1 -1
  34. package/column-chart/column-chart-options.config.cjs +1 -1
  35. package/column-chart/column-chart-options.config.cjs.map +1 -1
  36. package/column-chart/column-chart-options.config.js +14 -10
  37. package/column-chart/column-chart-options.config.js.map +1 -1
  38. package/combination-chart/combination-chart-options.config.cjs +1 -1
  39. package/combination-chart/combination-chart-options.config.cjs.map +1 -1
  40. package/combination-chart/combination-chart-options.config.js +10 -3
  41. package/combination-chart/combination-chart-options.config.js.map +1 -1
  42. package/conditional-number/conditional-number-options.config.cjs +1 -1
  43. package/conditional-number/conditional-number-options.config.cjs.map +1 -1
  44. package/conditional-number/conditional-number-options.config.js +156 -151
  45. package/conditional-number/conditional-number-options.config.js.map +1 -1
  46. package/donut-chart/donut-chart-options.config.cjs +1 -1
  47. package/donut-chart/donut-chart-options.config.cjs.map +1 -1
  48. package/donut-chart/donut-chart-options.config.js +189 -180
  49. package/donut-chart/donut-chart-options.config.js.map +1 -1
  50. package/evolution-number/evolution-number-options.config.cjs +1 -1
  51. package/evolution-number/evolution-number-options.config.cjs.map +1 -1
  52. package/evolution-number/evolution-number-options.config.js +5 -3
  53. package/evolution-number/evolution-number-options.config.js.map +1 -1
  54. package/funnel-chart/funnel-chart-options.config.cjs +1 -1
  55. package/funnel-chart/funnel-chart-options.config.cjs.map +1 -1
  56. package/funnel-chart/funnel-chart-options.config.js +7 -3
  57. package/funnel-chart/funnel-chart-options.config.js.map +1 -1
  58. package/heat-map/heat-map-options.config.cjs +1 -1
  59. package/heat-map/heat-map-options.config.cjs.map +1 -1
  60. package/heat-map/heat-map-options.config.js +32 -30
  61. package/heat-map/heat-map-options.config.js.map +1 -1
  62. package/heat-table/heat-table-options.config.cjs +1 -1
  63. package/heat-table/heat-table-options.config.cjs.map +1 -1
  64. package/heat-table/heat-table-options.config.js +31 -27
  65. package/heat-table/heat-table-options.config.js.map +1 -1
  66. package/hexbin-map/hexbin-map-options.config.cjs +1 -1
  67. package/hexbin-map/hexbin-map-options.config.cjs.map +1 -1
  68. package/hexbin-map/hexbin-map-options.config.js +20 -18
  69. package/hexbin-map/hexbin-map-options.config.js.map +1 -1
  70. package/index.cjs +1 -1
  71. package/index.js +193 -191
  72. package/line-chart/line-chart-options.config.cjs +1 -1
  73. package/line-chart/line-chart-options.config.cjs.map +1 -1
  74. package/line-chart/line-chart-options.config.js +12 -5
  75. package/line-chart/line-chart-options.config.js.map +1 -1
  76. package/marker-map/marker-map-options.config.cjs +1 -1
  77. package/marker-map/marker-map-options.config.cjs.map +1 -1
  78. package/marker-map/marker-map-options.config.js +97 -92
  79. package/marker-map/marker-map-options.config.js.map +1 -1
  80. package/ohlc-chart/ohlc-chart-options.config.cjs +1 -1
  81. package/ohlc-chart/ohlc-chart-options.config.cjs.map +1 -1
  82. package/ohlc-chart/ohlc-chart-options.config.js +10 -3
  83. package/ohlc-chart/ohlc-chart-options.config.js.map +1 -1
  84. package/package.json +1 -1
  85. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.de.cjs +1 -1
  86. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.de.cjs.map +1 -1
  87. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.de.js +2 -1
  88. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.de.js.map +1 -1
  89. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.en.cjs +1 -1
  90. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.en.cjs.map +1 -1
  91. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.en.js +2 -1
  92. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.en.js.map +1 -1
  93. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.es.cjs +1 -1
  94. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.es.cjs.map +1 -1
  95. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.es.js +2 -1
  96. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.es.js.map +1 -1
  97. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.fr.cjs +1 -1
  98. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.fr.cjs.map +1 -1
  99. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.fr.js +2 -1
  100. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.fr.js.map +1 -1
  101. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.nl.cjs +1 -1
  102. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.nl.cjs.map +1 -1
  103. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.nl.js +2 -1
  104. package/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.nl.js.map +1 -1
  105. package/parallel-coordinates-plot/parallel-coordinates-plot-options.config.cjs +1 -1
  106. package/parallel-coordinates-plot/parallel-coordinates-plot-options.config.cjs.map +1 -1
  107. package/parallel-coordinates-plot/parallel-coordinates-plot-options.config.js +26 -20
  108. package/parallel-coordinates-plot/parallel-coordinates-plot-options.config.js.map +1 -1
  109. package/pivot-table/pivot-table-options.config.cjs +1 -1
  110. package/pivot-table/pivot-table-options.config.cjs.map +1 -1
  111. package/pivot-table/pivot-table-options.config.js +7 -3
  112. package/pivot-table/pivot-table-options.config.js.map +1 -1
  113. package/pyramid-chart/pyramid-chart-options.config.cjs +1 -1
  114. package/pyramid-chart/pyramid-chart-options.config.cjs.map +1 -1
  115. package/pyramid-chart/pyramid-chart-options.config.js +7 -3
  116. package/pyramid-chart/pyramid-chart-options.config.js.map +1 -1
  117. package/radar-chart/radar-chart-options.config.cjs +1 -1
  118. package/radar-chart/radar-chart-options.config.cjs.map +1 -1
  119. package/radar-chart/radar-chart-options.config.js +7 -5
  120. package/radar-chart/radar-chart-options.config.js.map +1 -1
  121. package/regular-table/regular-table-options.config.cjs +1 -1
  122. package/regular-table/regular-table-options.config.cjs.map +1 -1
  123. package/regular-table/regular-table-options.config.js +126 -121
  124. package/regular-table/regular-table-options.config.js.map +1 -1
  125. package/route-map/route-map-options.config.cjs +1 -1
  126. package/route-map/route-map-options.config.cjs.map +1 -1
  127. package/route-map/route-map-options.config.js +38 -36
  128. package/route-map/route-map-options.config.js.map +1 -1
  129. package/sankey-diagram/sankey-diagram-options.config.cjs +1 -1
  130. package/sankey-diagram/sankey-diagram-options.config.cjs.map +1 -1
  131. package/sankey-diagram/sankey-diagram-options.config.js +7 -3
  132. package/sankey-diagram/sankey-diagram-options.config.js.map +1 -1
  133. package/scatter-plot/scatter-plot-options.config.cjs +1 -1
  134. package/scatter-plot/scatter-plot-options.config.cjs.map +1 -1
  135. package/scatter-plot/scatter-plot-options.config.js +12 -5
  136. package/scatter-plot/scatter-plot-options.config.js.map +1 -1
  137. package/shared/utils/info-tooltip-options.config.cjs +2 -0
  138. package/shared/utils/info-tooltip-options.config.cjs.map +1 -0
  139. package/shared/utils/info-tooltip-options.config.js +42 -0
  140. package/shared/utils/info-tooltip-options.config.js.map +1 -0
  141. package/shared/utils/info-tooltip-options.i18n.cjs +2 -0
  142. package/shared/utils/info-tooltip-options.i18n.cjs.map +1 -0
  143. package/shared/utils/info-tooltip-options.i18n.js +57 -0
  144. package/shared/utils/info-tooltip-options.i18n.js.map +1 -0
  145. package/shared/utils/interactivity-options.config.cjs +2 -0
  146. package/shared/utils/interactivity-options.config.cjs.map +1 -0
  147. package/shared/utils/interactivity-options.config.js +56 -0
  148. package/shared/utils/interactivity-options.config.js.map +1 -0
  149. package/shared/utils/interactivity-options.i18n.cjs +2 -0
  150. package/shared/utils/interactivity-options.i18n.cjs.map +1 -0
  151. package/shared/utils/interactivity-options.i18n.js +42 -0
  152. package/shared/utils/interactivity-options.i18n.js.map +1 -0
  153. package/shared/utils/options-loader.cjs +1 -1
  154. package/shared/utils/options-loader.cjs.map +1 -1
  155. package/shared/utils/options-loader.js +11 -9
  156. package/shared/utils/options-loader.js.map +1 -1
  157. package/speedometer-chart/speedometer-chart-options.config.cjs +1 -1
  158. package/speedometer-chart/speedometer-chart-options.config.cjs.map +1 -1
  159. package/speedometer-chart/speedometer-chart-options.config.js +201 -196
  160. package/speedometer-chart/speedometer-chart-options.config.js.map +1 -1
  161. package/spike-map/spike-map-options.config.cjs +1 -1
  162. package/spike-map/spike-map-options.config.cjs.map +1 -1
  163. package/spike-map/spike-map-options.config.js +41 -39
  164. package/spike-map/spike-map-options.config.js.map +1 -1
  165. package/src/lib/area-chart/area-chart-options.config.d.ts.map +1 -1
  166. package/src/lib/bar-chart/bar-chart-options.config.d.ts.map +1 -1
  167. package/src/lib/box-plot/box-plot-options.config.d.ts.map +1 -1
  168. package/src/lib/bubble-chart/bubble-chart-options.config.d.ts.map +1 -1
  169. package/src/lib/bullet-chart/bullet-chart-options.config.d.ts.map +1 -1
  170. package/src/lib/choropleth-map/choropleth-map-options.config.d.ts.map +1 -1
  171. package/src/lib/circle-pack-chart/circle-pack-chart-options.config.d.ts.map +1 -1
  172. package/src/lib/circular-gauge/circular-gauge-options.config.d.ts.map +1 -1
  173. package/src/lib/column-chart/column-chart-options.config.d.ts.map +1 -1
  174. package/src/lib/combination-chart/combination-chart-options.config.d.ts.map +1 -1
  175. package/src/lib/conditional-number/conditional-number-options.config.d.ts.map +1 -1
  176. package/src/lib/donut-chart/donut-chart-options.config.d.ts.map +1 -1
  177. package/src/lib/evolution-number/evolution-number-options.config.d.ts.map +1 -1
  178. package/src/lib/funnel-chart/funnel-chart-options.config.d.ts.map +1 -1
  179. package/src/lib/heat-map/heat-map-options.config.d.ts.map +1 -1
  180. package/src/lib/heat-table/heat-table-options.config.d.ts.map +1 -1
  181. package/src/lib/hexbin-map/hexbin-map-options.config.d.ts.map +1 -1
  182. package/src/lib/line-chart/line-chart-options.config.d.ts.map +1 -1
  183. package/src/lib/marker-map/marker-map-options.config.d.ts.map +1 -1
  184. package/src/lib/ohlc-chart/ohlc-chart-options.config.d.ts.map +1 -1
  185. package/src/lib/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.de.d.ts +3 -0
  186. package/src/lib/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.de.d.ts.map +1 -1
  187. package/src/lib/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.en.d.ts +3 -0
  188. package/src/lib/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.en.d.ts.map +1 -1
  189. package/src/lib/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.es.d.ts +3 -0
  190. package/src/lib/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.es.d.ts.map +1 -1
  191. package/src/lib/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.fr.d.ts +3 -0
  192. package/src/lib/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.fr.d.ts.map +1 -1
  193. package/src/lib/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.nl.d.ts +3 -0
  194. package/src/lib/parallel-coordinates-plot/i18n/parallel-coordinates-plot-options.nl.d.ts.map +1 -1
  195. package/src/lib/parallel-coordinates-plot/parallel-coordinates-plot-options.config.d.ts.map +1 -1
  196. package/src/lib/pivot-table/pivot-table-options.config.d.ts.map +1 -1
  197. package/src/lib/pyramid-chart/pyramid-chart-options.config.d.ts.map +1 -1
  198. package/src/lib/radar-chart/radar-chart-options.config.d.ts.map +1 -1
  199. package/src/lib/regular-table/regular-table-options.config.d.ts.map +1 -1
  200. package/src/lib/route-map/route-map-options.config.d.ts.map +1 -1
  201. package/src/lib/sankey-diagram/sankey-diagram-options.config.d.ts.map +1 -1
  202. package/src/lib/scatter-plot/scatter-plot-options.config.d.ts.map +1 -1
  203. package/src/lib/shared/schemas/dashboard-state.schema.d.ts +2 -2
  204. package/src/lib/shared/schemas/screen-mode.schema.d.ts +1 -1
  205. package/src/lib/shared/utils/index.d.ts +2 -0
  206. package/src/lib/shared/utils/index.d.ts.map +1 -1
  207. package/src/lib/shared/utils/info-tooltip-options.config.d.ts +6 -0
  208. package/src/lib/shared/utils/info-tooltip-options.config.d.ts.map +1 -0
  209. package/src/lib/shared/utils/info-tooltip-options.i18n.d.ts +3 -0
  210. package/src/lib/shared/utils/info-tooltip-options.i18n.d.ts.map +1 -0
  211. package/src/lib/shared/utils/interactivity-options.config.d.ts +15 -0
  212. package/src/lib/shared/utils/interactivity-options.config.d.ts.map +1 -0
  213. package/src/lib/shared/utils/interactivity-options.i18n.d.ts +3 -0
  214. package/src/lib/shared/utils/interactivity-options.i18n.d.ts.map +1 -0
  215. package/src/lib/shared/utils/options-loader.d.ts.map +1 -1
  216. package/src/lib/speedometer-chart/speedometer-chart-options.config.d.ts.map +1 -1
  217. package/src/lib/spike-map/spike-map-options.config.d.ts.map +1 -1
  218. package/src/lib/strip-plot/strip-plot-options.config.d.ts.map +1 -1
  219. package/src/lib/sunburst-chart/sunburst-chart-options.config.d.ts.map +1 -1
  220. package/src/lib/symbol-map/symbol-map-options.config.d.ts.map +1 -1
  221. package/src/lib/treemap-chart/treemap-chart-options.config.d.ts.map +1 -1
  222. package/src/lib/wordcloud-chart/wordcloud-chart-options.config.d.ts.map +1 -1
  223. package/strip-plot/strip-plot-options.config.cjs +1 -1
  224. package/strip-plot/strip-plot-options.config.cjs.map +1 -1
  225. package/strip-plot/strip-plot-options.config.js +4 -3
  226. package/strip-plot/strip-plot-options.config.js.map +1 -1
  227. package/sunburst-chart/sunburst-chart-options.config.cjs +1 -1
  228. package/sunburst-chart/sunburst-chart-options.config.cjs.map +1 -1
  229. package/sunburst-chart/sunburst-chart-options.config.js +7 -3
  230. package/sunburst-chart/sunburst-chart-options.config.js.map +1 -1
  231. package/symbol-map/symbol-map-options.config.cjs +1 -1
  232. package/symbol-map/symbol-map-options.config.cjs.map +1 -1
  233. package/symbol-map/symbol-map-options.config.js +7 -5
  234. package/symbol-map/symbol-map-options.config.js.map +1 -1
  235. package/treemap-chart/treemap-chart-options.config.cjs +1 -1
  236. package/treemap-chart/treemap-chart-options.config.cjs.map +1 -1
  237. package/treemap-chart/treemap-chart-options.config.js +182 -175
  238. package/treemap-chart/treemap-chart-options.config.js.map +1 -1
  239. package/wordcloud-chart/wordcloud-chart-options.config.cjs +1 -1
  240. package/wordcloud-chart/wordcloud-chart-options.config.cjs.map +1 -1
  241. package/wordcloud-chart/wordcloud-chart-options.config.js +69 -62
  242. package/wordcloud-chart/wordcloud-chart-options.config.js.map +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactivity-options.i18n.js","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/interactivity-options.i18n.ts"],"sourcesContent":["import type { TranslationsFile } from './options-config.types';\n\nconst translationsByLanguage: Record<string, TranslationsFile> = {\n de: {\n groups: { interactivity: { label: 'Interaktivität' } },\n options: {\n 'interactivity.select': { label: 'Filtern nach Auswahl' },\n 'interactivity.brush': { label: 'Pinselfilter aktivieren' }\n }\n },\n en: {\n groups: { interactivity: { label: 'Interactivity' } },\n options: {\n 'interactivity.select': { label: 'Filter on select' },\n 'interactivity.brush': { label: 'Enable brush filter' }\n }\n },\n es: {\n groups: { interactivity: { label: 'Interactividad' } },\n options: {\n 'interactivity.select': { label: 'Filtrar al seleccionar' },\n 'interactivity.brush': { label: 'Habilitar filtro de pincel' }\n }\n },\n fr: {\n groups: { interactivity: { label: 'Interactivité' } },\n options: {\n 'interactivity.select': { label: 'Filtrer sur sélection' },\n 'interactivity.brush': { label: 'Activer le filtre de brosse' }\n }\n },\n nl: {\n groups: { interactivity: { label: 'Interactiviteit' } },\n options: {\n 'interactivity.select': { label: 'Filteren bij selectie' },\n 'interactivity.brush': { label: 'Borstelfilter inschakelen' }\n }\n }\n};\n\nexport const getInteractivityTranslations = (language: string): TranslationsFile =>\n translationsByLanguage[language] ?? translationsByLanguage['en'];\n"],"mappings":";AAEA,IAAM,IAA2D;CAC/D,IAAI;EACF,QAAQ,EAAE,eAAe,EAAE,OAAO,iBAAiB,EAAE;EACrD,SAAS;GACP,wBAAwB,EAAE,OAAO,uBAAuB;GACxD,uBAAuB,EAAE,OAAO,0BAA0B;EAC5D;CACF;CACA,IAAI;EACF,QAAQ,EAAE,eAAe,EAAE,OAAO,gBAAgB,EAAE;EACpD,SAAS;GACP,wBAAwB,EAAE,OAAO,mBAAmB;GACpD,uBAAuB,EAAE,OAAO,sBAAsB;EACxD;CACF;CACA,IAAI;EACF,QAAQ,EAAE,eAAe,EAAE,OAAO,iBAAiB,EAAE;EACrD,SAAS;GACP,wBAAwB,EAAE,OAAO,yBAAyB;GAC1D,uBAAuB,EAAE,OAAO,6BAA6B;EAC/D;CACF;CACA,IAAI;EACF,QAAQ,EAAE,eAAe,EAAE,OAAO,gBAAgB,EAAE;EACpD,SAAS;GACP,wBAAwB,EAAE,OAAO,wBAAwB;GACzD,uBAAuB,EAAE,OAAO,8BAA8B;EAChE;CACF;CACA,IAAI;EACF,QAAQ,EAAE,eAAe,EAAE,OAAO,kBAAkB,EAAE;EACtD,SAAS;GACP,wBAAwB,EAAE,OAAO,wBAAwB;GACzD,uBAAuB,EAAE,OAAO,4BAA4B;EAC9D;CACF;AACF,GAEa,KAAgC,MAC3C,EAAuB,MAAa,EAAuB"}
@@ -1,2 +1,2 @@
1
- const e=require("./options-registry.generated.cjs"),t=require("./translations-registry.generated.cjs");var n=async t=>{try{let n=e.optionsConfigRegistry[t];return n?(await n())?.default??null:null}catch{return null}},r=async(e,n)=>{try{let r=`${e}:${n}`,i=t.translationsRegistry[r];if(!i)return null;let a=await i();if(!a?.default)return null;let{getAxisTranslations:o}=await Promise.resolve().then(()=>require("./axis-options.i18n.cjs")),s=o(n);return{...a.default,groups:{...s.groups,...a.default.groups},options:{...s.options,...a.default.options}}}catch{return null}};exports.loadConfigModule=n,exports.loadTranslationsModule=r;
1
+ const e=require("./options-registry.generated.cjs"),t=require("./translations-registry.generated.cjs");var n=async t=>{try{let n=e.optionsConfigRegistry[t];return n?(await n())?.default??null:null}catch{return null}},r=async(e,n)=>{try{let r=`${e}:${n}`,i=t.translationsRegistry[r];if(!i)return null;let a=await i();if(!a?.default)return null;let[{getAxisTranslations:o},{getInfoTooltipTranslations:s},{getInteractivityTranslations:c}]=await Promise.all([Promise.resolve().then(()=>require("./axis-options.i18n.cjs")),Promise.resolve().then(()=>require("./info-tooltip-options.i18n.cjs")),Promise.resolve().then(()=>require("./interactivity-options.i18n.cjs"))]),l=[o(n),s(n),c(n)];return{...a.default,groups:Object.assign({},...l.map(e=>e.groups),a.default.groups),options:Object.assign({},...l.map(e=>e.options),a.default.options)}}catch{return null}};exports.loadConfigModule=n,exports.loadTranslationsModule=r;
2
2
  //# sourceMappingURL=options-loader.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"options-loader.cjs","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/options-loader.ts"],"sourcesContent":["import type { VizItemType } from '../types';\nimport type { OptionsConfig, TranslationsFile } from './options-config.types';\nimport { optionsConfigRegistry } from './options-registry.generated';\nimport { translationsRegistry } from './translations-registry.generated';\n\ntype OptionsConfigModule = { default: OptionsConfig };\ntype TranslationsModule = { default: TranslationsFile };\n\nexport const loadConfigModule = async (itemType: VizItemType): Promise<OptionsConfig | null> => {\n try {\n const moduleLoader = optionsConfigRegistry[itemType];\n\n if (!moduleLoader) {\n return null;\n }\n\n const module = await moduleLoader() as OptionsConfigModule;\n\n return module?.default ?? null;\n }\n catch {\n return null;\n }\n};\n\nexport const loadTranslationsModule = async (itemType: VizItemType, language: string): Promise<TranslationsFile | null> => {\n try {\n const key = `${itemType}:${language}`;\n const moduleLoader = translationsRegistry[key];\n\n if (!moduleLoader) {\n return null;\n }\n\n const module = await moduleLoader() as TranslationsModule;\n\n if (!module?.default) {\n return null;\n }\n\n // The axis controls are shared by every cartesian chart, so their translations are too.\n // A chart file wins over the shared entries, letting a chart reword a single axis control.\n const { getAxisTranslations } = await import('./axis-options.i18n');\n const axisTranslations = getAxisTranslations(language);\n\n return {\n ...module.default,\n groups: { ...axisTranslations.groups, ...module.default.groups },\n options: { ...axisTranslations.options, ...module.default.options }\n };\n }\n catch {\n return null;\n }\n};\n"],"mappings":"uGAQA,IAAa,EAAmB,KAAO,IAAyD,CAC9F,GAAI,CACF,IAAM,EAAe,EAAA,sBAAsB,GAQ3C,OANK,GAME,MAFc,EAAa,EAAA,EAEnB,SAAW,KALjB,IAMX,MACM,CACJ,OAAO,IACT,CACF,EAEa,EAAyB,MAAO,EAAuB,IAAuD,CACzH,GAAI,CACF,IAAM,EAAM,GAAG,EAAS,GAAG,IACrB,EAAe,EAAA,qBAAqB,GAE1C,GAAI,CAAC,EACH,OAAO,KAGT,IAAM,EAAS,MAAM,EAAa,EAElC,GAAI,CAAC,GAAQ,QACX,OAAO,KAKT,GAAM,CAAE,uBAAwB,MAAA,QAAA,QAAA,CAAA,CAAA,SAAA,QAAM,yBAAA,CAAA,EAChC,EAAmB,EAAoB,CAAQ,EAErD,MAAO,CACL,GAAG,EAAO,QACV,OAAQ,CAAE,GAAG,EAAiB,OAAQ,GAAG,EAAO,QAAQ,MAAO,EAC/D,QAAS,CAAE,GAAG,EAAiB,QAAS,GAAG,EAAO,QAAQ,OAAQ,CACpE,CACF,MACM,CACJ,OAAO,IACT,CACF"}
1
+ {"version":3,"file":"options-loader.cjs","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/options-loader.ts"],"sourcesContent":["import type { VizItemType } from '../types';\nimport type { OptionsConfig, TranslationsFile } from './options-config.types';\nimport { optionsConfigRegistry } from './options-registry.generated';\nimport { translationsRegistry } from './translations-registry.generated';\n\ntype OptionsConfigModule = { default: OptionsConfig };\ntype TranslationsModule = { default: TranslationsFile };\n\nexport const loadConfigModule = async (itemType: VizItemType): Promise<OptionsConfig | null> => {\n try {\n const moduleLoader = optionsConfigRegistry[itemType];\n\n if (!moduleLoader) {\n return null;\n }\n\n const module = await moduleLoader() as OptionsConfigModule;\n\n return module?.default ?? null;\n }\n catch {\n return null;\n }\n};\n\nexport const loadTranslationsModule = async (itemType: VizItemType, language: string): Promise<TranslationsFile | null> => {\n try {\n const key = `${itemType}:${language}`;\n const moduleLoader = translationsRegistry[key];\n\n if (!moduleLoader) {\n return null;\n }\n\n const module = await moduleLoader() as TranslationsModule;\n\n if (!module?.default) {\n return null;\n }\n\n const [{ getAxisTranslations }, { getInfoTooltipTranslations }, { getInteractivityTranslations }] = await Promise.all([\n import('./axis-options.i18n'),\n import('./info-tooltip-options.i18n'),\n import('./interactivity-options.i18n')\n ]);\n const shared = [getAxisTranslations(language), getInfoTooltipTranslations(language), getInteractivityTranslations(language)];\n\n return {\n ...module.default,\n groups: Object.assign({}, ...shared.map((translations) => translations.groups), module.default.groups),\n options: Object.assign({}, ...shared.map((translations) => translations.options), module.default.options)\n };\n }\n catch {\n return null;\n }\n};\n"],"mappings":"uGAQA,IAAa,EAAmB,KAAO,IAAyD,CAC9F,GAAI,CACF,IAAM,EAAe,EAAA,sBAAsB,GAQ3C,OANK,GAME,MAFc,EAAa,EAAA,EAEnB,SAAW,KALjB,IAMX,MACM,CACJ,OAAO,IACT,CACF,EAEa,EAAyB,MAAO,EAAuB,IAAuD,CACzH,GAAI,CACF,IAAM,EAAM,GAAG,EAAS,GAAG,IACrB,EAAe,EAAA,qBAAqB,GAE1C,GAAI,CAAC,EACH,OAAO,KAGT,IAAM,EAAS,MAAM,EAAa,EAElC,GAAI,CAAC,GAAQ,QACX,OAAO,KAGT,GAAM,CAAC,CAAE,uBAAuB,CAAE,8BAA8B,CAAE,iCAAkC,MAAM,QAAQ,IAAI,CACpH,QAAA,QAAA,CAAA,CAAA,SAAA,QAAA,yBAAA,CAAA,EACA,QAAA,QAAA,CAAA,CAAA,SAAA,QAAA,iCAAA,CAAA,EACA,QAAA,QAAA,CAAA,CAAA,SAAA,QAAA,kCAAA,CAAA,CACF,CAAC,EACK,EAAS,CAAC,EAAoB,CAAQ,EAAG,EAA2B,CAAQ,EAAG,EAA6B,CAAQ,CAAC,EAE3H,MAAO,CACL,GAAG,EAAO,QACV,OAAQ,OAAO,OAAO,CAAC,EAAG,GAAG,EAAO,IAAK,GAAiB,EAAa,MAAM,EAAG,EAAO,QAAQ,MAAM,EACrG,QAAS,OAAO,OAAO,CAAC,EAAG,GAAG,EAAO,IAAK,GAAiB,EAAa,OAAO,EAAG,EAAO,QAAQ,OAAO,CAC1G,CACF,MACM,CACJ,OAAO,IACT,CACF"}
@@ -14,17 +14,19 @@ var n = async (t) => {
14
14
  if (!i) return null;
15
15
  let a = await i();
16
16
  if (!a?.default) return null;
17
- let { getAxisTranslations: o } = await import("./axis-options.i18n.js"), s = o(n);
17
+ let [{ getAxisTranslations: o }, { getInfoTooltipTranslations: s }, { getInteractivityTranslations: c }] = await Promise.all([
18
+ import("./axis-options.i18n.js"),
19
+ import("./info-tooltip-options.i18n.js"),
20
+ import("./interactivity-options.i18n.js")
21
+ ]), l = [
22
+ o(n),
23
+ s(n),
24
+ c(n)
25
+ ];
18
26
  return {
19
27
  ...a.default,
20
- groups: {
21
- ...s.groups,
22
- ...a.default.groups
23
- },
24
- options: {
25
- ...s.options,
26
- ...a.default.options
27
- }
28
+ groups: Object.assign({}, ...l.map((e) => e.groups), a.default.groups),
29
+ options: Object.assign({}, ...l.map((e) => e.options), a.default.options)
28
30
  };
29
31
  } catch {
30
32
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"options-loader.js","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/options-loader.ts"],"sourcesContent":["import type { VizItemType } from '../types';\nimport type { OptionsConfig, TranslationsFile } from './options-config.types';\nimport { optionsConfigRegistry } from './options-registry.generated';\nimport { translationsRegistry } from './translations-registry.generated';\n\ntype OptionsConfigModule = { default: OptionsConfig };\ntype TranslationsModule = { default: TranslationsFile };\n\nexport const loadConfigModule = async (itemType: VizItemType): Promise<OptionsConfig | null> => {\n try {\n const moduleLoader = optionsConfigRegistry[itemType];\n\n if (!moduleLoader) {\n return null;\n }\n\n const module = await moduleLoader() as OptionsConfigModule;\n\n return module?.default ?? null;\n }\n catch {\n return null;\n }\n};\n\nexport const loadTranslationsModule = async (itemType: VizItemType, language: string): Promise<TranslationsFile | null> => {\n try {\n const key = `${itemType}:${language}`;\n const moduleLoader = translationsRegistry[key];\n\n if (!moduleLoader) {\n return null;\n }\n\n const module = await moduleLoader() as TranslationsModule;\n\n if (!module?.default) {\n return null;\n }\n\n // The axis controls are shared by every cartesian chart, so their translations are too.\n // A chart file wins over the shared entries, letting a chart reword a single axis control.\n const { getAxisTranslations } = await import('./axis-options.i18n');\n const axisTranslations = getAxisTranslations(language);\n\n return {\n ...module.default,\n groups: { ...axisTranslations.groups, ...module.default.groups },\n options: { ...axisTranslations.options, ...module.default.options }\n };\n }\n catch {\n return null;\n }\n};\n"],"mappings":";;;AAQA,IAAa,IAAmB,OAAO,MAAyD;CAC9F,IAAI;EACF,IAAM,IAAe,EAAsB;EAQ3C,OANK,KAME,MAFc,EAAa,EAAA,EAEnB,WAAW,OALjB;CAMX,QACM;EACJ,OAAO;CACT;AACF,GAEa,IAAyB,OAAO,GAAuB,MAAuD;CACzH,IAAI;EACF,IAAM,IAAM,GAAG,EAAS,GAAG,KACrB,IAAe,EAAqB;EAE1C,IAAI,CAAC,GACH,OAAO;EAGT,IAAM,IAAS,MAAM,EAAa;EAElC,IAAI,CAAC,GAAQ,SACX,OAAO;EAKT,IAAM,EAAE,2BAAwB,MAAM,OAAO,2BACvC,IAAmB,EAAoB,CAAQ;EAErD,OAAO;GACL,GAAG,EAAO;GACV,QAAQ;IAAE,GAAG,EAAiB;IAAQ,GAAG,EAAO,QAAQ;GAAO;GAC/D,SAAS;IAAE,GAAG,EAAiB;IAAS,GAAG,EAAO,QAAQ;GAAQ;EACpE;CACF,QACM;EACJ,OAAO;CACT;AACF"}
1
+ {"version":3,"file":"options-loader.js","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/options-loader.ts"],"sourcesContent":["import type { VizItemType } from '../types';\nimport type { OptionsConfig, TranslationsFile } from './options-config.types';\nimport { optionsConfigRegistry } from './options-registry.generated';\nimport { translationsRegistry } from './translations-registry.generated';\n\ntype OptionsConfigModule = { default: OptionsConfig };\ntype TranslationsModule = { default: TranslationsFile };\n\nexport const loadConfigModule = async (itemType: VizItemType): Promise<OptionsConfig | null> => {\n try {\n const moduleLoader = optionsConfigRegistry[itemType];\n\n if (!moduleLoader) {\n return null;\n }\n\n const module = await moduleLoader() as OptionsConfigModule;\n\n return module?.default ?? null;\n }\n catch {\n return null;\n }\n};\n\nexport const loadTranslationsModule = async (itemType: VizItemType, language: string): Promise<TranslationsFile | null> => {\n try {\n const key = `${itemType}:${language}`;\n const moduleLoader = translationsRegistry[key];\n\n if (!moduleLoader) {\n return null;\n }\n\n const module = await moduleLoader() as TranslationsModule;\n\n if (!module?.default) {\n return null;\n }\n\n const [{ getAxisTranslations }, { getInfoTooltipTranslations }, { getInteractivityTranslations }] = await Promise.all([\n import('./axis-options.i18n'),\n import('./info-tooltip-options.i18n'),\n import('./interactivity-options.i18n')\n ]);\n const shared = [getAxisTranslations(language), getInfoTooltipTranslations(language), getInteractivityTranslations(language)];\n\n return {\n ...module.default,\n groups: Object.assign({}, ...shared.map((translations) => translations.groups), module.default.groups),\n options: Object.assign({}, ...shared.map((translations) => translations.options), module.default.options)\n };\n }\n catch {\n return null;\n }\n};\n"],"mappings":";;;AAQA,IAAa,IAAmB,OAAO,MAAyD;CAC9F,IAAI;EACF,IAAM,IAAe,EAAsB;EAQ3C,OANK,KAME,MAFc,EAAa,EAAA,EAEnB,WAAW,OALjB;CAMX,QACM;EACJ,OAAO;CACT;AACF,GAEa,IAAyB,OAAO,GAAuB,MAAuD;CACzH,IAAI;EACF,IAAM,IAAM,GAAG,EAAS,GAAG,KACrB,IAAe,EAAqB;EAE1C,IAAI,CAAC,GACH,OAAO;EAGT,IAAM,IAAS,MAAM,EAAa;EAElC,IAAI,CAAC,GAAQ,SACX,OAAO;EAGT,IAAM,CAAC,EAAE,0BAAuB,EAAE,iCAA8B,EAAE,qCAAkC,MAAM,QAAQ,IAAI;GACpH,OAAO;GACP,OAAO;GACP,OAAO;EACT,CAAC,GACK,IAAS;GAAC,EAAoB,CAAQ;GAAG,EAA2B,CAAQ;GAAG,EAA6B,CAAQ;EAAC;EAE3H,OAAO;GACL,GAAG,EAAO;GACV,QAAQ,OAAO,OAAO,CAAC,GAAG,GAAG,EAAO,KAAK,MAAiB,EAAa,MAAM,GAAG,EAAO,QAAQ,MAAM;GACrG,SAAS,OAAO,OAAO,CAAC,GAAG,GAAG,EAAO,KAAK,MAAiB,EAAa,OAAO,GAAG,EAAO,QAAQ,OAAO;EAC1G;CACF,QACM;EACJ,OAAO;CACT;AACF"}
@@ -1,2 +1,2 @@
1
- const e=require("../helpers.cjs");var t=e=>e?.find(e=>e?.name===`target`)?.content?.length===0&&(e?.find(e=>e?.name===`measure`)?.content?.length??0)>0,n=[{color:`#ff0000`,value:0},{color:`#ffa500`,value:25},{color:`#ffff00`,value:50},{color:`#008000`,value:75},{color:`#006400`,value:100}],r=[{key:`general`,type:`group`,open:!0,children:[{key:`display.title`,control:{type:`switch`,label:`Title`,default:!1}},{key:`display.meterValue`,control:{type:`switch`,label:`Value`,default:!0}},{key:`display.meterLabel`,control:{type:`switch`,label:`Label`,default:!0}},{key:`display.ticks`,control:{type:`switch`,label:`Ticks`,default:!0}},{key:`degrees`,control:{type:`slider`,label:`Arc size`,default:230,min:180,max:360,step:1}},{key:`arcWidth`,control:{type:`slider`,label:`Gauge width`,default:.08,min:.02,max:.7,step:.01}},{type:`divider`},{key:`manualValues.display`,control:{type:`picker`,label:`Ticks display`,default:`absolute`,enum:[`absolute`,`percentage`]}},{key:`manualValues.mode`,control:{type:`picker`,label:`Range type`,default:`relative`,enum:[`relative`,`absolute`],toOptions:({options:e,value:t})=>{let n=e?.manualValues?.mode??`relative`,r={...e,manualValues:{...e.manualValues,mode:t}};if(t===`absolute`&&n===`relative`&&r.manualValues?.ranges&&r.manualValues?.target){let e=r.manualValues.target;r.manualValues.ranges=r.manualValues.ranges.map(t=>({...t,val:typeof t.val==`number`?t.val*e/100:t.val}))}else t===`relative`&&n===`absolute`&&r.manualValues?.ranges?.length&&(r.manualValues.target=r.manualValues.ranges.at(-1)?.val,r.manualValues.ranges=r.manualValues.ranges.map(e=>({...e,value:typeof e.val==`number`&&r.manualValues?.target?e.val*100/r.manualValues.target:e.val})));return r}}},{key:`manualValues.target`,control:{type:`number-field`,label:`Manual target`,placeholder:`Target value`,minWidthInputField:`150px`},visibleIf:({options:e,slots:n})=>e?.manualValues?.mode!==`absolute`&&t(n)},{key:`manualValues.ranges`,control:{type:`color-range`,editRangeSize:!0,minimumRangeSize:2,percentage:({options:e})=>e?.manualValues?.mode!==`absolute`,noAlphaChannel:!0,hideLabel:!0,label:`Color ranges`,default:()=>structuredClone(n),parseValue:e=>e?.map(e=>({color:e?.color,value:e?.value??e?.val})),toValue:e=>e?.map(e=>({color:e?.color,val:e?.value}))}}]},{key:`marker`,type:`group`,open:!1,children:[{key:`marker.type`,control:{type:`picker`,label:`Marker type`,default:`innerBand`,enum:[`needle`,`line`,`inside`,`outside`,`centerBand`,`innerBand`]}},{key:`marker.color`,control:{type:`color-picker`,label:`Marker color`,default:({theme:t})=>e.getThemeAxisColor(t),extraLabel:({options:t,theme:n})=>e.getThemeAxisColorResetLabel(t,n,`marker.color`),extraLabelHasClickAction:({options:t,theme:n})=>e.getThemeAxisColorExtraLabelHasClickAction(t,n,`marker.color`),extraLabelClickAction:({options:t,theme:n})=>e.getThemeAxisColorExtraLabelClickAction(t,n,`marker.color`)},visibleIf:({options:e})=>e?.marker?.type&&e?.marker?.type!==`innerBand`},{key:`marker.centerBandWidth`,control:{type:`slider`,label:`Marker width`,default:.34,min:.1,max:1,step:.01},visibleIf:({options:e})=>e?.marker?.type&&e?.marker?.type===`centerBand`},{key:`marker.lineWidth`,control:{type:`slider`,label:`Line width`,default:2,min:1,max:10,step:1},visibleIf:({options:e})=>e?.marker?.type&&e?.marker?.type===`line`},{key:`marker.arrowSize`,control:{type:`slider`,label:`Arrow size`,default:.05,min:.05,max:.2,step:.01},visibleIf:({options:e})=>e?.marker?.type&&[`inside`,`outside`].includes(e?.marker?.type)}]}];exports.default=r;
1
+ const e=require("../helpers.cjs"),t=require("../shared/utils/info-tooltip-options.config.cjs");var n=e=>e?.find(e=>e?.name===`target`)?.content?.length===0&&(e?.find(e=>e?.name===`measure`)?.content?.length??0)>0,r=[{color:`#ff0000`,value:0},{color:`#ffa500`,value:25},{color:`#ffff00`,value:50},{color:`#008000`,value:75},{color:`#006400`,value:100}],i=[{key:`general`,type:`group`,open:!0,children:[{key:`display.title`,control:{type:`switch`,label:`Title`,default:!1}},{key:`display.meterValue`,control:{type:`switch`,label:`Value`,default:!0}},{key:`display.meterLabel`,control:{type:`switch`,label:`Label`,default:!0}},{key:`display.ticks`,control:{type:`switch`,label:`Ticks`,default:!0}},{key:`degrees`,control:{type:`slider`,label:`Arc size`,default:230,min:180,max:360,step:1}},{key:`arcWidth`,control:{type:`slider`,label:`Gauge width`,default:.08,min:.02,max:.7,step:.01}},{type:`divider`},{key:`manualValues.display`,control:{type:`picker`,label:`Ticks display`,default:`absolute`,enum:[`absolute`,`percentage`]}},{key:`manualValues.mode`,control:{type:`picker`,label:`Range type`,default:`relative`,enum:[`relative`,`absolute`],toOptions:({options:e,value:t})=>{let n=e?.manualValues?.mode??`relative`,r={...e,manualValues:{...e.manualValues,mode:t}};if(t===`absolute`&&n===`relative`&&r.manualValues?.ranges&&r.manualValues?.target){let e=r.manualValues.target;r.manualValues.ranges=r.manualValues.ranges.map(t=>({...t,val:typeof t.val==`number`?t.val*e/100:t.val}))}else t===`relative`&&n===`absolute`&&r.manualValues?.ranges?.length&&(r.manualValues.target=r.manualValues.ranges.at(-1)?.val,r.manualValues.ranges=r.manualValues.ranges.map(e=>({...e,value:typeof e.val==`number`&&r.manualValues?.target?e.val*100/r.manualValues.target:e.val})));return r}}},{key:`manualValues.target`,control:{type:`number-field`,label:`Manual target`,placeholder:`Target value`,minWidthInputField:`150px`},visibleIf:({options:e,slots:t})=>e?.manualValues?.mode!==`absolute`&&n(t)},{key:`manualValues.ranges`,control:{type:`color-range`,editRangeSize:!0,minimumRangeSize:2,percentage:({options:e})=>e?.manualValues?.mode!==`absolute`,noAlphaChannel:!0,hideLabel:!0,label:`Color ranges`,default:()=>structuredClone(r),parseValue:e=>e?.map(e=>({color:e?.color,value:e?.value??e?.val})),toValue:e=>e?.map(e=>({color:e?.color,val:e?.value}))}}]},{key:`marker`,type:`group`,open:!1,children:[{key:`marker.type`,control:{type:`picker`,label:`Marker type`,default:`innerBand`,enum:[`needle`,`line`,`inside`,`outside`,`centerBand`,`innerBand`]}},{key:`marker.color`,control:{type:`color-picker`,label:`Marker color`,default:({theme:t})=>e.getThemeAxisColor(t),extraLabel:({options:t,theme:n})=>e.getThemeAxisColorResetLabel(t,n,`marker.color`),extraLabelHasClickAction:({options:t,theme:n})=>e.getThemeAxisColorExtraLabelHasClickAction(t,n,`marker.color`),extraLabelClickAction:({options:t,theme:n})=>e.getThemeAxisColorExtraLabelClickAction(t,n,`marker.color`)},visibleIf:({options:e})=>e?.marker?.type&&e?.marker?.type!==`innerBand`},{key:`marker.centerBandWidth`,control:{type:`slider`,label:`Marker width`,default:.34,min:.1,max:1,step:.01},visibleIf:({options:e})=>e?.marker?.type&&e?.marker?.type===`centerBand`},{key:`marker.lineWidth`,control:{type:`slider`,label:`Line width`,default:2,min:1,max:10,step:1},visibleIf:({options:e})=>e?.marker?.type&&e?.marker?.type===`line`},{key:`marker.arrowSize`,control:{type:`slider`,label:`Arrow size`,default:.05,min:.05,max:.2,step:.01},visibleIf:({options:e})=>e?.marker?.type&&[`inside`,`outside`].includes(e?.marker?.type)}]},t.createInfoTooltipOptionsGroup()];exports.default=i;
2
2
  //# sourceMappingURL=speedometer-chart-options.config.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"speedometer-chart-options.config.cjs","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/speedometer-chart/speedometer-chart-options.config.ts"],"sourcesContent":["import {\n getThemeAxisColor,\n getThemeAxisColorExtraLabelClickAction,\n getThemeAxisColorExtraLabelHasClickAction,\n getThemeAxisColorResetLabel\n} from '../helpers';\nimport type { ManualValuesRange } from '../shared/types/ranges';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { SpeedometerChartViewOptions } from './speedometer-chart-options';\nimport type { SpeedometerChartSlots } from './speedometer-chart-slots';\n\ntype SpeedometerChartConfigContext = OptionsConfigContext<SpeedometerChartViewOptions, SpeedometerChartSlots>;\ntype SpeedometerChartConfigValue<T> = SpeedometerChartConfigContext & { value: T };\ntype SpeedometerRange = ManualValuesRange & { value?: number };\n\nconst hasMeasureButNoTarget = (slots: SpeedometerChartConfigContext['slots']) => (\n slots?.find((slot) => slot?.name === 'target')?.content?.length === 0\n && (slots?.find((slot) => slot?.name === 'measure')?.content?.length ?? 0) > 0\n);\n\nconst defaultRangeValues = [\n { color: '#ff0000', value: 0 },\n { color: '#ffa500', value: 25 },\n { color: '#ffff00', value: 50 },\n { color: '#008000', value: 75 },\n { color: '#006400', value: 100 }\n];\n\nconst speedometerChartOptionsConfig: OptionsConfig<SpeedometerChartConfigContext> = [\n {\n key: 'general',\n type: 'group',\n open: true,\n children: [\n {\n key: 'display.title',\n control: {\n type: 'switch',\n label: 'Title',\n default: false\n }\n },\n {\n key: 'display.meterValue',\n control: {\n type: 'switch',\n label: 'Value',\n default: true\n }\n },\n {\n key: 'display.meterLabel',\n control: {\n type: 'switch',\n label: 'Label',\n default: true\n }\n },\n {\n key: 'display.ticks',\n control: {\n type: 'switch',\n label: 'Ticks',\n default: true\n }\n },\n {\n key: 'degrees',\n control: {\n type: 'slider',\n label: 'Arc size',\n default: 230,\n min: 180,\n max: 360,\n step: 1\n }\n },\n {\n key: 'arcWidth',\n control: {\n type: 'slider',\n label: 'Gauge width',\n default: 0.08,\n min: 0.02,\n max: 0.7,\n step: 0.01\n }\n },\n {\n type: 'divider'\n },\n {\n key: 'manualValues.display',\n control: {\n type: 'picker',\n label: 'Ticks display',\n default: 'absolute',\n enum: ['absolute', 'percentage']\n }\n },\n {\n key: 'manualValues.mode',\n control: {\n type: 'picker',\n label: 'Range type',\n default: 'relative',\n enum: ['relative', 'absolute'],\n toOptions: ({ options, value }: SpeedometerChartConfigValue<'relative' | 'absolute'>) => {\n const previousValue = options?.manualValues?.mode ?? 'relative';\n const opts: SpeedometerChartViewOptions = {\n ...options,\n manualValues: {\n ...options.manualValues,\n mode: value\n }\n };\n\n if (value === 'absolute' && previousValue === 'relative' && opts.manualValues?.ranges && opts.manualValues?.target) {\n const target = opts.manualValues.target;\n\n opts.manualValues.ranges = opts.manualValues.ranges.map((range: ManualValuesRange) => ({\n ...range,\n val: typeof range.val === 'number' ? (range.val * target) / 100 : range.val\n }));\n }\n else if (value === 'relative' && previousValue === 'absolute' && opts.manualValues?.ranges?.length) {\n opts.manualValues.target = opts.manualValues.ranges.at(-1)?.val;\n opts.manualValues.ranges = opts.manualValues.ranges.map((range: ManualValuesRange) => ({\n ...range,\n value: typeof range.val === 'number' && opts.manualValues?.target\n ? (range.val * 100) / opts.manualValues.target\n : range.val\n }));\n }\n\n return opts;\n }\n }\n },\n {\n key: 'manualValues.target',\n control: {\n type: 'number-field',\n label: 'Manual target',\n placeholder: 'Target value',\n minWidthInputField: '150px'\n },\n visibleIf: ({ options, slots }: SpeedometerChartConfigContext) =>\n options?.manualValues?.mode !== 'absolute' && hasMeasureButNoTarget(slots)\n },\n {\n key: 'manualValues.ranges',\n control: {\n type: 'color-range',\n editRangeSize: true,\n minimumRangeSize: 2,\n percentage: ({ options }: SpeedometerChartConfigContext) => options?.manualValues?.mode !== 'absolute',\n noAlphaChannel: true,\n hideLabel: true,\n label: 'Color ranges',\n default: () => structuredClone(defaultRangeValues),\n parseValue: (value: SpeedometerRange[] | null | undefined) => value?.map((v) => ({\n color: v?.color,\n value: v?.value ?? v?.val\n })),\n toValue: (value: SpeedometerRange[] | null | undefined) => value?.map((v) => ({\n color: v?.color,\n val: v?.value\n }))\n }\n }\n ]\n },\n {\n key: 'marker',\n type: 'group',\n open: false,\n children: [\n {\n key: 'marker.type',\n control: {\n type: 'picker',\n label: 'Marker type',\n default: 'innerBand',\n enum: ['needle', 'line', 'inside', 'outside', 'centerBand', 'innerBand']\n }\n },\n {\n key: 'marker.color',\n control: {\n type: 'color-picker',\n label: 'Marker color',\n default: ({ theme }: SpeedometerChartConfigContext) => getThemeAxisColor(theme),\n extraLabel: ({ options, theme }: SpeedometerChartConfigContext) => getThemeAxisColorResetLabel(options, theme, 'marker.color'),\n extraLabelHasClickAction: ({ options, theme }: SpeedometerChartConfigContext) =>\n getThemeAxisColorExtraLabelHasClickAction(options, theme, 'marker.color'),\n extraLabelClickAction: ({ options, theme }: SpeedometerChartConfigContext) =>\n getThemeAxisColorExtraLabelClickAction(options, theme, 'marker.color')\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type !== 'innerBand'\n },\n {\n key: 'marker.centerBandWidth',\n control: {\n type: 'slider',\n label: 'Marker width',\n default: 0.34,\n min: 0.1,\n max: 1,\n step: 0.01\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type === 'centerBand'\n },\n {\n key: 'marker.lineWidth',\n control: {\n type: 'slider',\n label: 'Line width',\n default: 2,\n min: 1,\n max: 10,\n step: 1\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type === 'line'\n },\n {\n key: 'marker.arrowSize',\n control: {\n type: 'slider',\n label: 'Arrow size',\n default: 0.05,\n min: 0.05,\n max: 0.2,\n step: 0.01\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) =>\n options?.marker?.type && ['inside', 'outside'].includes(options?.marker?.type)\n }\n ]\n }\n];\n\nexport default speedometerChartOptionsConfig;\n"],"mappings":"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"}
1
+ {"version":3,"file":"speedometer-chart-options.config.cjs","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/speedometer-chart/speedometer-chart-options.config.ts"],"sourcesContent":["import {\n getThemeAxisColor,\n getThemeAxisColorExtraLabelClickAction,\n getThemeAxisColorExtraLabelHasClickAction,\n getThemeAxisColorResetLabel\n} from '../helpers';\nimport type { ManualValuesRange } from '../shared/types/ranges';\nimport { createInfoTooltipOptionsGroup } from '../shared/utils/info-tooltip-options.config';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { SpeedometerChartViewOptions } from './speedometer-chart-options';\nimport type { SpeedometerChartSlots } from './speedometer-chart-slots';\n\ntype SpeedometerChartConfigContext = OptionsConfigContext<SpeedometerChartViewOptions, SpeedometerChartSlots>;\ntype SpeedometerChartConfigValue<T> = SpeedometerChartConfigContext & { value: T };\ntype SpeedometerRange = ManualValuesRange & { value?: number };\n\nconst hasMeasureButNoTarget = (slots: SpeedometerChartConfigContext['slots']) => (\n slots?.find((slot) => slot?.name === 'target')?.content?.length === 0\n && (slots?.find((slot) => slot?.name === 'measure')?.content?.length ?? 0) > 0\n);\n\nconst defaultRangeValues = [\n { color: '#ff0000', value: 0 },\n { color: '#ffa500', value: 25 },\n { color: '#ffff00', value: 50 },\n { color: '#008000', value: 75 },\n { color: '#006400', value: 100 }\n];\n\nconst speedometerChartOptionsConfig: OptionsConfig<SpeedometerChartConfigContext> = [\n {\n key: 'general',\n type: 'group',\n open: true,\n children: [\n {\n key: 'display.title',\n control: {\n type: 'switch',\n label: 'Title',\n default: false\n }\n },\n {\n key: 'display.meterValue',\n control: {\n type: 'switch',\n label: 'Value',\n default: true\n }\n },\n {\n key: 'display.meterLabel',\n control: {\n type: 'switch',\n label: 'Label',\n default: true\n }\n },\n {\n key: 'display.ticks',\n control: {\n type: 'switch',\n label: 'Ticks',\n default: true\n }\n },\n {\n key: 'degrees',\n control: {\n type: 'slider',\n label: 'Arc size',\n default: 230,\n min: 180,\n max: 360,\n step: 1\n }\n },\n {\n key: 'arcWidth',\n control: {\n type: 'slider',\n label: 'Gauge width',\n default: 0.08,\n min: 0.02,\n max: 0.7,\n step: 0.01\n }\n },\n {\n type: 'divider'\n },\n {\n key: 'manualValues.display',\n control: {\n type: 'picker',\n label: 'Ticks display',\n default: 'absolute',\n enum: ['absolute', 'percentage']\n }\n },\n {\n key: 'manualValues.mode',\n control: {\n type: 'picker',\n label: 'Range type',\n default: 'relative',\n enum: ['relative', 'absolute'],\n toOptions: ({ options, value }: SpeedometerChartConfigValue<'relative' | 'absolute'>) => {\n const previousValue = options?.manualValues?.mode ?? 'relative';\n const opts: SpeedometerChartViewOptions = {\n ...options,\n manualValues: {\n ...options.manualValues,\n mode: value\n }\n };\n\n if (value === 'absolute' && previousValue === 'relative' && opts.manualValues?.ranges && opts.manualValues?.target) {\n const target = opts.manualValues.target;\n\n opts.manualValues.ranges = opts.manualValues.ranges.map((range: ManualValuesRange) => ({\n ...range,\n val: typeof range.val === 'number' ? (range.val * target) / 100 : range.val\n }));\n }\n else if (value === 'relative' && previousValue === 'absolute' && opts.manualValues?.ranges?.length) {\n opts.manualValues.target = opts.manualValues.ranges.at(-1)?.val;\n opts.manualValues.ranges = opts.manualValues.ranges.map((range: ManualValuesRange) => ({\n ...range,\n value: typeof range.val === 'number' && opts.manualValues?.target\n ? (range.val * 100) / opts.manualValues.target\n : range.val\n }));\n }\n\n return opts;\n }\n }\n },\n {\n key: 'manualValues.target',\n control: {\n type: 'number-field',\n label: 'Manual target',\n placeholder: 'Target value',\n minWidthInputField: '150px'\n },\n visibleIf: ({ options, slots }: SpeedometerChartConfigContext) =>\n options?.manualValues?.mode !== 'absolute' && hasMeasureButNoTarget(slots)\n },\n {\n key: 'manualValues.ranges',\n control: {\n type: 'color-range',\n editRangeSize: true,\n minimumRangeSize: 2,\n percentage: ({ options }: SpeedometerChartConfigContext) => options?.manualValues?.mode !== 'absolute',\n noAlphaChannel: true,\n hideLabel: true,\n label: 'Color ranges',\n default: () => structuredClone(defaultRangeValues),\n parseValue: (value: SpeedometerRange[] | null | undefined) => value?.map((v) => ({\n color: v?.color,\n value: v?.value ?? v?.val\n })),\n toValue: (value: SpeedometerRange[] | null | undefined) => value?.map((v) => ({\n color: v?.color,\n val: v?.value\n }))\n }\n }\n ]\n },\n {\n key: 'marker',\n type: 'group',\n open: false,\n children: [\n {\n key: 'marker.type',\n control: {\n type: 'picker',\n label: 'Marker type',\n default: 'innerBand',\n enum: ['needle', 'line', 'inside', 'outside', 'centerBand', 'innerBand']\n }\n },\n {\n key: 'marker.color',\n control: {\n type: 'color-picker',\n label: 'Marker color',\n default: ({ theme }: SpeedometerChartConfigContext) => getThemeAxisColor(theme),\n extraLabel: ({ options, theme }: SpeedometerChartConfigContext) => getThemeAxisColorResetLabel(options, theme, 'marker.color'),\n extraLabelHasClickAction: ({ options, theme }: SpeedometerChartConfigContext) =>\n getThemeAxisColorExtraLabelHasClickAction(options, theme, 'marker.color'),\n extraLabelClickAction: ({ options, theme }: SpeedometerChartConfigContext) =>\n getThemeAxisColorExtraLabelClickAction(options, theme, 'marker.color')\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type !== 'innerBand'\n },\n {\n key: 'marker.centerBandWidth',\n control: {\n type: 'slider',\n label: 'Marker width',\n default: 0.34,\n min: 0.1,\n max: 1,\n step: 0.01\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type === 'centerBand'\n },\n {\n key: 'marker.lineWidth',\n control: {\n type: 'slider',\n label: 'Line width',\n default: 2,\n min: 1,\n max: 10,\n step: 1\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type === 'line'\n },\n {\n key: 'marker.arrowSize',\n control: {\n type: 'slider',\n label: 'Arrow size',\n default: 0.05,\n min: 0.05,\n max: 0.2,\n step: 0.01\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) =>\n options?.marker?.type && ['inside', 'outside'].includes(options?.marker?.type)\n }\n ]\n },\n createInfoTooltipOptionsGroup<SpeedometerChartConfigContext>()\n];\n\nexport default speedometerChartOptionsConfig;\n"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { getThemeAxisColor as e, getThemeAxisColorExtraLabelClickAction as t, getThemeAxisColorExtraLabelHasClickAction as n, getThemeAxisColorResetLabel as r } from "../helpers.js";
2
+ import { createInfoTooltipOptionsGroup as i } from "../shared/utils/info-tooltip-options.config.js";
2
3
  //#region src/lib/speedometer-chart/speedometer-chart-options.config.ts
3
- var i = (e) => e?.find((e) => e?.name === "target")?.content?.length === 0 && (e?.find((e) => e?.name === "measure")?.content?.length ?? 0) > 0, a = [
4
+ var a = (e) => e?.find((e) => e?.name === "target")?.content?.length === 0 && (e?.find((e) => e?.name === "measure")?.content?.length ?? 0) > 0, o = [
4
5
  {
5
6
  color: "#ff0000",
6
7
  value: 0
@@ -21,208 +22,212 @@ var i = (e) => e?.find((e) => e?.name === "target")?.content?.length === 0 && (e
21
22
  color: "#006400",
22
23
  value: 100
23
24
  }
24
- ], o = [{
25
- key: "general",
26
- type: "group",
27
- open: !0,
28
- children: [
29
- {
30
- key: "display.title",
31
- control: {
32
- type: "switch",
33
- label: "Title",
34
- default: !1
35
- }
36
- },
37
- {
38
- key: "display.meterValue",
39
- control: {
40
- type: "switch",
41
- label: "Value",
42
- default: !0
43
- }
44
- },
45
- {
46
- key: "display.meterLabel",
47
- control: {
48
- type: "switch",
49
- label: "Label",
50
- default: !0
51
- }
52
- },
53
- {
54
- key: "display.ticks",
55
- control: {
56
- type: "switch",
57
- label: "Ticks",
58
- default: !0
59
- }
60
- },
61
- {
62
- key: "degrees",
63
- control: {
64
- type: "slider",
65
- label: "Arc size",
66
- default: 230,
67
- min: 180,
68
- max: 360,
69
- step: 1
70
- }
71
- },
72
- {
73
- key: "arcWidth",
74
- control: {
75
- type: "slider",
76
- label: "Gauge width",
77
- default: .08,
78
- min: .02,
79
- max: .7,
80
- step: .01
81
- }
82
- },
83
- { type: "divider" },
84
- {
85
- key: "manualValues.display",
86
- control: {
87
- type: "picker",
88
- label: "Ticks display",
89
- default: "absolute",
90
- enum: ["absolute", "percentage"]
91
- }
92
- },
93
- {
94
- key: "manualValues.mode",
95
- control: {
96
- type: "picker",
97
- label: "Range type",
98
- default: "relative",
99
- enum: ["relative", "absolute"],
100
- toOptions: ({ options: e, value: t }) => {
101
- let n = e?.manualValues?.mode ?? "relative", r = {
102
- ...e,
103
- manualValues: {
104
- ...e.manualValues,
105
- mode: t
106
- }
107
- };
108
- if (t === "absolute" && n === "relative" && r.manualValues?.ranges && r.manualValues?.target) {
109
- let e = r.manualValues.target;
110
- r.manualValues.ranges = r.manualValues.ranges.map((t) => ({
111
- ...t,
112
- val: typeof t.val == "number" ? t.val * e / 100 : t.val
113
- }));
114
- } else t === "relative" && n === "absolute" && r.manualValues?.ranges?.length && (r.manualValues.target = r.manualValues.ranges.at(-1)?.val, r.manualValues.ranges = r.manualValues.ranges.map((e) => ({
115
- ...e,
116
- value: typeof e.val == "number" && r.manualValues?.target ? e.val * 100 / r.manualValues.target : e.val
117
- })));
118
- return r;
25
+ ], s = [
26
+ {
27
+ key: "general",
28
+ type: "group",
29
+ open: !0,
30
+ children: [
31
+ {
32
+ key: "display.title",
33
+ control: {
34
+ type: "switch",
35
+ label: "Title",
36
+ default: !1
119
37
  }
120
- }
121
- },
122
- {
123
- key: "manualValues.target",
124
- control: {
125
- type: "number-field",
126
- label: "Manual target",
127
- placeholder: "Target value",
128
- minWidthInputField: "150px"
129
38
  },
130
- visibleIf: ({ options: e, slots: t }) => e?.manualValues?.mode !== "absolute" && i(t)
131
- },
132
- {
133
- key: "manualValues.ranges",
134
- control: {
135
- type: "color-range",
136
- editRangeSize: !0,
137
- minimumRangeSize: 2,
138
- percentage: ({ options: e }) => e?.manualValues?.mode !== "absolute",
139
- noAlphaChannel: !0,
140
- hideLabel: !0,
141
- label: "Color ranges",
142
- default: () => structuredClone(a),
143
- parseValue: (e) => e?.map((e) => ({
144
- color: e?.color,
145
- value: e?.value ?? e?.val
146
- })),
147
- toValue: (e) => e?.map((e) => ({
148
- color: e?.color,
149
- val: e?.value
150
- }))
151
- }
152
- }
153
- ]
154
- }, {
155
- key: "marker",
156
- type: "group",
157
- open: !1,
158
- children: [
159
- {
160
- key: "marker.type",
161
- control: {
162
- type: "picker",
163
- label: "Marker type",
164
- default: "innerBand",
165
- enum: [
166
- "needle",
167
- "line",
168
- "inside",
169
- "outside",
170
- "centerBand",
171
- "innerBand"
172
- ]
39
+ {
40
+ key: "display.meterValue",
41
+ control: {
42
+ type: "switch",
43
+ label: "Value",
44
+ default: !0
45
+ }
46
+ },
47
+ {
48
+ key: "display.meterLabel",
49
+ control: {
50
+ type: "switch",
51
+ label: "Label",
52
+ default: !0
53
+ }
54
+ },
55
+ {
56
+ key: "display.ticks",
57
+ control: {
58
+ type: "switch",
59
+ label: "Ticks",
60
+ default: !0
61
+ }
62
+ },
63
+ {
64
+ key: "degrees",
65
+ control: {
66
+ type: "slider",
67
+ label: "Arc size",
68
+ default: 230,
69
+ min: 180,
70
+ max: 360,
71
+ step: 1
72
+ }
73
+ },
74
+ {
75
+ key: "arcWidth",
76
+ control: {
77
+ type: "slider",
78
+ label: "Gauge width",
79
+ default: .08,
80
+ min: .02,
81
+ max: .7,
82
+ step: .01
83
+ }
84
+ },
85
+ { type: "divider" },
86
+ {
87
+ key: "manualValues.display",
88
+ control: {
89
+ type: "picker",
90
+ label: "Ticks display",
91
+ default: "absolute",
92
+ enum: ["absolute", "percentage"]
93
+ }
94
+ },
95
+ {
96
+ key: "manualValues.mode",
97
+ control: {
98
+ type: "picker",
99
+ label: "Range type",
100
+ default: "relative",
101
+ enum: ["relative", "absolute"],
102
+ toOptions: ({ options: e, value: t }) => {
103
+ let n = e?.manualValues?.mode ?? "relative", r = {
104
+ ...e,
105
+ manualValues: {
106
+ ...e.manualValues,
107
+ mode: t
108
+ }
109
+ };
110
+ if (t === "absolute" && n === "relative" && r.manualValues?.ranges && r.manualValues?.target) {
111
+ let e = r.manualValues.target;
112
+ r.manualValues.ranges = r.manualValues.ranges.map((t) => ({
113
+ ...t,
114
+ val: typeof t.val == "number" ? t.val * e / 100 : t.val
115
+ }));
116
+ } else t === "relative" && n === "absolute" && r.manualValues?.ranges?.length && (r.manualValues.target = r.manualValues.ranges.at(-1)?.val, r.manualValues.ranges = r.manualValues.ranges.map((e) => ({
117
+ ...e,
118
+ value: typeof e.val == "number" && r.manualValues?.target ? e.val * 100 / r.manualValues.target : e.val
119
+ })));
120
+ return r;
121
+ }
122
+ }
123
+ },
124
+ {
125
+ key: "manualValues.target",
126
+ control: {
127
+ type: "number-field",
128
+ label: "Manual target",
129
+ placeholder: "Target value",
130
+ minWidthInputField: "150px"
131
+ },
132
+ visibleIf: ({ options: e, slots: t }) => e?.manualValues?.mode !== "absolute" && a(t)
133
+ },
134
+ {
135
+ key: "manualValues.ranges",
136
+ control: {
137
+ type: "color-range",
138
+ editRangeSize: !0,
139
+ minimumRangeSize: 2,
140
+ percentage: ({ options: e }) => e?.manualValues?.mode !== "absolute",
141
+ noAlphaChannel: !0,
142
+ hideLabel: !0,
143
+ label: "Color ranges",
144
+ default: () => structuredClone(o),
145
+ parseValue: (e) => e?.map((e) => ({
146
+ color: e?.color,
147
+ value: e?.value ?? e?.val
148
+ })),
149
+ toValue: (e) => e?.map((e) => ({
150
+ color: e?.color,
151
+ val: e?.value
152
+ }))
153
+ }
173
154
  }
174
- },
175
- {
176
- key: "marker.color",
177
- control: {
178
- type: "color-picker",
179
- label: "Marker color",
180
- default: ({ theme: t }) => e(t),
181
- extraLabel: ({ options: e, theme: t }) => r(e, t, "marker.color"),
182
- extraLabelHasClickAction: ({ options: e, theme: t }) => n(e, t, "marker.color"),
183
- extraLabelClickAction: ({ options: e, theme: n }) => t(e, n, "marker.color")
155
+ ]
156
+ },
157
+ {
158
+ key: "marker",
159
+ type: "group",
160
+ open: !1,
161
+ children: [
162
+ {
163
+ key: "marker.type",
164
+ control: {
165
+ type: "picker",
166
+ label: "Marker type",
167
+ default: "innerBand",
168
+ enum: [
169
+ "needle",
170
+ "line",
171
+ "inside",
172
+ "outside",
173
+ "centerBand",
174
+ "innerBand"
175
+ ]
176
+ }
184
177
  },
185
- visibleIf: ({ options: e }) => e?.marker?.type && e?.marker?.type !== "innerBand"
186
- },
187
- {
188
- key: "marker.centerBandWidth",
189
- control: {
190
- type: "slider",
191
- label: "Marker width",
192
- default: .34,
193
- min: .1,
194
- max: 1,
195
- step: .01
178
+ {
179
+ key: "marker.color",
180
+ control: {
181
+ type: "color-picker",
182
+ label: "Marker color",
183
+ default: ({ theme: t }) => e(t),
184
+ extraLabel: ({ options: e, theme: t }) => r(e, t, "marker.color"),
185
+ extraLabelHasClickAction: ({ options: e, theme: t }) => n(e, t, "marker.color"),
186
+ extraLabelClickAction: ({ options: e, theme: n }) => t(e, n, "marker.color")
187
+ },
188
+ visibleIf: ({ options: e }) => e?.marker?.type && e?.marker?.type !== "innerBand"
196
189
  },
197
- visibleIf: ({ options: e }) => e?.marker?.type && e?.marker?.type === "centerBand"
198
- },
199
- {
200
- key: "marker.lineWidth",
201
- control: {
202
- type: "slider",
203
- label: "Line width",
204
- default: 2,
205
- min: 1,
206
- max: 10,
207
- step: 1
190
+ {
191
+ key: "marker.centerBandWidth",
192
+ control: {
193
+ type: "slider",
194
+ label: "Marker width",
195
+ default: .34,
196
+ min: .1,
197
+ max: 1,
198
+ step: .01
199
+ },
200
+ visibleIf: ({ options: e }) => e?.marker?.type && e?.marker?.type === "centerBand"
208
201
  },
209
- visibleIf: ({ options: e }) => e?.marker?.type && e?.marker?.type === "line"
210
- },
211
- {
212
- key: "marker.arrowSize",
213
- control: {
214
- type: "slider",
215
- label: "Arrow size",
216
- default: .05,
217
- min: .05,
218
- max: .2,
219
- step: .01
202
+ {
203
+ key: "marker.lineWidth",
204
+ control: {
205
+ type: "slider",
206
+ label: "Line width",
207
+ default: 2,
208
+ min: 1,
209
+ max: 10,
210
+ step: 1
211
+ },
212
+ visibleIf: ({ options: e }) => e?.marker?.type && e?.marker?.type === "line"
220
213
  },
221
- visibleIf: ({ options: e }) => e?.marker?.type && ["inside", "outside"].includes(e?.marker?.type)
222
- }
223
- ]
224
- }];
214
+ {
215
+ key: "marker.arrowSize",
216
+ control: {
217
+ type: "slider",
218
+ label: "Arrow size",
219
+ default: .05,
220
+ min: .05,
221
+ max: .2,
222
+ step: .01
223
+ },
224
+ visibleIf: ({ options: e }) => e?.marker?.type && ["inside", "outside"].includes(e?.marker?.type)
225
+ }
226
+ ]
227
+ },
228
+ i()
229
+ ];
225
230
  //#endregion
226
- export { o as default };
231
+ export { s as default };
227
232
 
228
233
  //# sourceMappingURL=speedometer-chart-options.config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"speedometer-chart-options.config.js","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/speedometer-chart/speedometer-chart-options.config.ts"],"sourcesContent":["import {\n getThemeAxisColor,\n getThemeAxisColorExtraLabelClickAction,\n getThemeAxisColorExtraLabelHasClickAction,\n getThemeAxisColorResetLabel\n} from '../helpers';\nimport type { ManualValuesRange } from '../shared/types/ranges';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { SpeedometerChartViewOptions } from './speedometer-chart-options';\nimport type { SpeedometerChartSlots } from './speedometer-chart-slots';\n\ntype SpeedometerChartConfigContext = OptionsConfigContext<SpeedometerChartViewOptions, SpeedometerChartSlots>;\ntype SpeedometerChartConfigValue<T> = SpeedometerChartConfigContext & { value: T };\ntype SpeedometerRange = ManualValuesRange & { value?: number };\n\nconst hasMeasureButNoTarget = (slots: SpeedometerChartConfigContext['slots']) => (\n slots?.find((slot) => slot?.name === 'target')?.content?.length === 0\n && (slots?.find((slot) => slot?.name === 'measure')?.content?.length ?? 0) > 0\n);\n\nconst defaultRangeValues = [\n { color: '#ff0000', value: 0 },\n { color: '#ffa500', value: 25 },\n { color: '#ffff00', value: 50 },\n { color: '#008000', value: 75 },\n { color: '#006400', value: 100 }\n];\n\nconst speedometerChartOptionsConfig: OptionsConfig<SpeedometerChartConfigContext> = [\n {\n key: 'general',\n type: 'group',\n open: true,\n children: [\n {\n key: 'display.title',\n control: {\n type: 'switch',\n label: 'Title',\n default: false\n }\n },\n {\n key: 'display.meterValue',\n control: {\n type: 'switch',\n label: 'Value',\n default: true\n }\n },\n {\n key: 'display.meterLabel',\n control: {\n type: 'switch',\n label: 'Label',\n default: true\n }\n },\n {\n key: 'display.ticks',\n control: {\n type: 'switch',\n label: 'Ticks',\n default: true\n }\n },\n {\n key: 'degrees',\n control: {\n type: 'slider',\n label: 'Arc size',\n default: 230,\n min: 180,\n max: 360,\n step: 1\n }\n },\n {\n key: 'arcWidth',\n control: {\n type: 'slider',\n label: 'Gauge width',\n default: 0.08,\n min: 0.02,\n max: 0.7,\n step: 0.01\n }\n },\n {\n type: 'divider'\n },\n {\n key: 'manualValues.display',\n control: {\n type: 'picker',\n label: 'Ticks display',\n default: 'absolute',\n enum: ['absolute', 'percentage']\n }\n },\n {\n key: 'manualValues.mode',\n control: {\n type: 'picker',\n label: 'Range type',\n default: 'relative',\n enum: ['relative', 'absolute'],\n toOptions: ({ options, value }: SpeedometerChartConfigValue<'relative' | 'absolute'>) => {\n const previousValue = options?.manualValues?.mode ?? 'relative';\n const opts: SpeedometerChartViewOptions = {\n ...options,\n manualValues: {\n ...options.manualValues,\n mode: value\n }\n };\n\n if (value === 'absolute' && previousValue === 'relative' && opts.manualValues?.ranges && opts.manualValues?.target) {\n const target = opts.manualValues.target;\n\n opts.manualValues.ranges = opts.manualValues.ranges.map((range: ManualValuesRange) => ({\n ...range,\n val: typeof range.val === 'number' ? (range.val * target) / 100 : range.val\n }));\n }\n else if (value === 'relative' && previousValue === 'absolute' && opts.manualValues?.ranges?.length) {\n opts.manualValues.target = opts.manualValues.ranges.at(-1)?.val;\n opts.manualValues.ranges = opts.manualValues.ranges.map((range: ManualValuesRange) => ({\n ...range,\n value: typeof range.val === 'number' && opts.manualValues?.target\n ? (range.val * 100) / opts.manualValues.target\n : range.val\n }));\n }\n\n return opts;\n }\n }\n },\n {\n key: 'manualValues.target',\n control: {\n type: 'number-field',\n label: 'Manual target',\n placeholder: 'Target value',\n minWidthInputField: '150px'\n },\n visibleIf: ({ options, slots }: SpeedometerChartConfigContext) =>\n options?.manualValues?.mode !== 'absolute' && hasMeasureButNoTarget(slots)\n },\n {\n key: 'manualValues.ranges',\n control: {\n type: 'color-range',\n editRangeSize: true,\n minimumRangeSize: 2,\n percentage: ({ options }: SpeedometerChartConfigContext) => options?.manualValues?.mode !== 'absolute',\n noAlphaChannel: true,\n hideLabel: true,\n label: 'Color ranges',\n default: () => structuredClone(defaultRangeValues),\n parseValue: (value: SpeedometerRange[] | null | undefined) => value?.map((v) => ({\n color: v?.color,\n value: v?.value ?? v?.val\n })),\n toValue: (value: SpeedometerRange[] | null | undefined) => value?.map((v) => ({\n color: v?.color,\n val: v?.value\n }))\n }\n }\n ]\n },\n {\n key: 'marker',\n type: 'group',\n open: false,\n children: [\n {\n key: 'marker.type',\n control: {\n type: 'picker',\n label: 'Marker type',\n default: 'innerBand',\n enum: ['needle', 'line', 'inside', 'outside', 'centerBand', 'innerBand']\n }\n },\n {\n key: 'marker.color',\n control: {\n type: 'color-picker',\n label: 'Marker color',\n default: ({ theme }: SpeedometerChartConfigContext) => getThemeAxisColor(theme),\n extraLabel: ({ options, theme }: SpeedometerChartConfigContext) => getThemeAxisColorResetLabel(options, theme, 'marker.color'),\n extraLabelHasClickAction: ({ options, theme }: SpeedometerChartConfigContext) =>\n getThemeAxisColorExtraLabelHasClickAction(options, theme, 'marker.color'),\n extraLabelClickAction: ({ options, theme }: SpeedometerChartConfigContext) =>\n getThemeAxisColorExtraLabelClickAction(options, theme, 'marker.color')\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type !== 'innerBand'\n },\n {\n key: 'marker.centerBandWidth',\n control: {\n type: 'slider',\n label: 'Marker width',\n default: 0.34,\n min: 0.1,\n max: 1,\n step: 0.01\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type === 'centerBand'\n },\n {\n key: 'marker.lineWidth',\n control: {\n type: 'slider',\n label: 'Line width',\n default: 2,\n min: 1,\n max: 10,\n step: 1\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type === 'line'\n },\n {\n key: 'marker.arrowSize',\n control: {\n type: 'slider',\n label: 'Arrow size',\n default: 0.05,\n min: 0.05,\n max: 0.2,\n step: 0.01\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) =>\n options?.marker?.type && ['inside', 'outside'].includes(options?.marker?.type)\n }\n ]\n }\n];\n\nexport default speedometerChartOptionsConfig;\n"],"mappings":"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"}
1
+ {"version":3,"file":"speedometer-chart-options.config.js","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/speedometer-chart/speedometer-chart-options.config.ts"],"sourcesContent":["import {\n getThemeAxisColor,\n getThemeAxisColorExtraLabelClickAction,\n getThemeAxisColorExtraLabelHasClickAction,\n getThemeAxisColorResetLabel\n} from '../helpers';\nimport type { ManualValuesRange } from '../shared/types/ranges';\nimport { createInfoTooltipOptionsGroup } from '../shared/utils/info-tooltip-options.config';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { SpeedometerChartViewOptions } from './speedometer-chart-options';\nimport type { SpeedometerChartSlots } from './speedometer-chart-slots';\n\ntype SpeedometerChartConfigContext = OptionsConfigContext<SpeedometerChartViewOptions, SpeedometerChartSlots>;\ntype SpeedometerChartConfigValue<T> = SpeedometerChartConfigContext & { value: T };\ntype SpeedometerRange = ManualValuesRange & { value?: number };\n\nconst hasMeasureButNoTarget = (slots: SpeedometerChartConfigContext['slots']) => (\n slots?.find((slot) => slot?.name === 'target')?.content?.length === 0\n && (slots?.find((slot) => slot?.name === 'measure')?.content?.length ?? 0) > 0\n);\n\nconst defaultRangeValues = [\n { color: '#ff0000', value: 0 },\n { color: '#ffa500', value: 25 },\n { color: '#ffff00', value: 50 },\n { color: '#008000', value: 75 },\n { color: '#006400', value: 100 }\n];\n\nconst speedometerChartOptionsConfig: OptionsConfig<SpeedometerChartConfigContext> = [\n {\n key: 'general',\n type: 'group',\n open: true,\n children: [\n {\n key: 'display.title',\n control: {\n type: 'switch',\n label: 'Title',\n default: false\n }\n },\n {\n key: 'display.meterValue',\n control: {\n type: 'switch',\n label: 'Value',\n default: true\n }\n },\n {\n key: 'display.meterLabel',\n control: {\n type: 'switch',\n label: 'Label',\n default: true\n }\n },\n {\n key: 'display.ticks',\n control: {\n type: 'switch',\n label: 'Ticks',\n default: true\n }\n },\n {\n key: 'degrees',\n control: {\n type: 'slider',\n label: 'Arc size',\n default: 230,\n min: 180,\n max: 360,\n step: 1\n }\n },\n {\n key: 'arcWidth',\n control: {\n type: 'slider',\n label: 'Gauge width',\n default: 0.08,\n min: 0.02,\n max: 0.7,\n step: 0.01\n }\n },\n {\n type: 'divider'\n },\n {\n key: 'manualValues.display',\n control: {\n type: 'picker',\n label: 'Ticks display',\n default: 'absolute',\n enum: ['absolute', 'percentage']\n }\n },\n {\n key: 'manualValues.mode',\n control: {\n type: 'picker',\n label: 'Range type',\n default: 'relative',\n enum: ['relative', 'absolute'],\n toOptions: ({ options, value }: SpeedometerChartConfigValue<'relative' | 'absolute'>) => {\n const previousValue = options?.manualValues?.mode ?? 'relative';\n const opts: SpeedometerChartViewOptions = {\n ...options,\n manualValues: {\n ...options.manualValues,\n mode: value\n }\n };\n\n if (value === 'absolute' && previousValue === 'relative' && opts.manualValues?.ranges && opts.manualValues?.target) {\n const target = opts.manualValues.target;\n\n opts.manualValues.ranges = opts.manualValues.ranges.map((range: ManualValuesRange) => ({\n ...range,\n val: typeof range.val === 'number' ? (range.val * target) / 100 : range.val\n }));\n }\n else if (value === 'relative' && previousValue === 'absolute' && opts.manualValues?.ranges?.length) {\n opts.manualValues.target = opts.manualValues.ranges.at(-1)?.val;\n opts.manualValues.ranges = opts.manualValues.ranges.map((range: ManualValuesRange) => ({\n ...range,\n value: typeof range.val === 'number' && opts.manualValues?.target\n ? (range.val * 100) / opts.manualValues.target\n : range.val\n }));\n }\n\n return opts;\n }\n }\n },\n {\n key: 'manualValues.target',\n control: {\n type: 'number-field',\n label: 'Manual target',\n placeholder: 'Target value',\n minWidthInputField: '150px'\n },\n visibleIf: ({ options, slots }: SpeedometerChartConfigContext) =>\n options?.manualValues?.mode !== 'absolute' && hasMeasureButNoTarget(slots)\n },\n {\n key: 'manualValues.ranges',\n control: {\n type: 'color-range',\n editRangeSize: true,\n minimumRangeSize: 2,\n percentage: ({ options }: SpeedometerChartConfigContext) => options?.manualValues?.mode !== 'absolute',\n noAlphaChannel: true,\n hideLabel: true,\n label: 'Color ranges',\n default: () => structuredClone(defaultRangeValues),\n parseValue: (value: SpeedometerRange[] | null | undefined) => value?.map((v) => ({\n color: v?.color,\n value: v?.value ?? v?.val\n })),\n toValue: (value: SpeedometerRange[] | null | undefined) => value?.map((v) => ({\n color: v?.color,\n val: v?.value\n }))\n }\n }\n ]\n },\n {\n key: 'marker',\n type: 'group',\n open: false,\n children: [\n {\n key: 'marker.type',\n control: {\n type: 'picker',\n label: 'Marker type',\n default: 'innerBand',\n enum: ['needle', 'line', 'inside', 'outside', 'centerBand', 'innerBand']\n }\n },\n {\n key: 'marker.color',\n control: {\n type: 'color-picker',\n label: 'Marker color',\n default: ({ theme }: SpeedometerChartConfigContext) => getThemeAxisColor(theme),\n extraLabel: ({ options, theme }: SpeedometerChartConfigContext) => getThemeAxisColorResetLabel(options, theme, 'marker.color'),\n extraLabelHasClickAction: ({ options, theme }: SpeedometerChartConfigContext) =>\n getThemeAxisColorExtraLabelHasClickAction(options, theme, 'marker.color'),\n extraLabelClickAction: ({ options, theme }: SpeedometerChartConfigContext) =>\n getThemeAxisColorExtraLabelClickAction(options, theme, 'marker.color')\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type !== 'innerBand'\n },\n {\n key: 'marker.centerBandWidth',\n control: {\n type: 'slider',\n label: 'Marker width',\n default: 0.34,\n min: 0.1,\n max: 1,\n step: 0.01\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type === 'centerBand'\n },\n {\n key: 'marker.lineWidth',\n control: {\n type: 'slider',\n label: 'Line width',\n default: 2,\n min: 1,\n max: 10,\n step: 1\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) => options?.marker?.type && options?.marker?.type === 'line'\n },\n {\n key: 'marker.arrowSize',\n control: {\n type: 'slider',\n label: 'Arrow size',\n default: 0.05,\n min: 0.05,\n max: 0.2,\n step: 0.01\n },\n visibleIf: ({ options }: SpeedometerChartConfigContext) =>\n options?.marker?.type && ['inside', 'outside'].includes(options?.marker?.type)\n }\n ]\n },\n createInfoTooltipOptionsGroup<SpeedometerChartConfigContext>()\n];\n\nexport default speedometerChartOptionsConfig;\n"],"mappings":"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"}