@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
@@ -1 +1 @@
1
- {"version":3,"file":"route-map-options.config.js","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/route-map/route-map-options.config.ts"],"sourcesContent":["import { type ColorValue, type ColorsClassKey, type ColorsType, getColorMapKeys, getColorMaps } from '../shared/utils/color/color-palettes';\nimport { mapVectorTileProviders } from '../shared/utils/map-tile-providers';\nimport {\n getThemeMainColor,\n getThemeMainColorExtraLabelClickAction,\n getThemeMainColorExtraLabelHasClickAction,\n getThemeMainColorResetLabel\n} from '../helpers';\nimport { calculateManualRanges, toRangesWithVal, toRangesWithValue } from '../shared/utils/color-range-utils';\nimport type { ManualValuesRange } from '../shared/types/ranges';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { RouteMapViewOptions } from './route-map-options';\nimport type { RouteMapSlots } from './route-map-slots';\n\ntype VectorTileProvider = (typeof mapVectorTileProviders)[keyof typeof mapVectorTileProviders];\ntype RouteMapConfigContext = OptionsConfigContext<RouteMapViewOptions, RouteMapSlots>;\ntype RouteMapConfigValue<T> = RouteMapConfigContext & { value: T };\ntype ColorClassKey = keyof Omit<ColorValue, 'type'>;\n\nconst getColorClassColors = (colorMapKey: ColorsClassKey, numberClasses: number) => {\n const colorsKey = `colors${numberClasses}` as ColorClassKey;\n\n return getColorMaps()[colorMapKey]?.[colorsKey];\n};\n\nconst hasNoLegend = ({ slots }: Pick<RouteMapConfigContext, 'slots'>) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n return slots?.find((slot) => slot?.name === 'legend')?.content?.length === 0;\n }\n\n return true;\n};\n\nconst hasNumericLegend = ({ slots }: Pick<RouteMapConfigContext, 'slots'>) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n const colorSlot = slots?.find((slot) => slot?.name === 'legend');\n\n if (colorSlot) {\n const colorContent = colorSlot?.content;\n\n if (colorContent) {\n return colorContent?.some((content) => content?.type === 'numeric');\n }\n }\n }\n\n return false;\n};\n\nconst routeMapOptionsConfig: OptionsConfig<RouteMapConfigContext> = [\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: true\n }\n },\n {\n key: 'enabled.zoom',\n control: {\n type: 'switch',\n label: 'Zoom',\n default: true\n }\n },\n {\n key: 'enabled.pan',\n control: {\n type: 'switch',\n label: 'Pan',\n default: true\n }\n },\n {\n key: 'enabled.pitchBearing',\n control: {\n type: 'switch',\n label: 'Pitch & Rotate',\n default: false\n }\n },\n {\n key: 'lineWeight',\n control: {\n type: 'slider',\n label: 'Line weight',\n default: 4,\n min: 1,\n max: 8,\n step: 1\n }\n },\n {\n type: 'divider'\n },\n {\n key: 'vectorTileProvider',\n control: {\n type: 'picker',\n label: 'Map style',\n default: 'Basic',\n enum: [\n 'Basic',\n 'Bright',\n 'Dark',\n 'Fiord',\n 'Liberty',\n 'Pastel',\n 'Positron',\n 'Streets',\n 'Toner',\n 'Topographique',\n 'Voyager',\n 'No Tiles'\n ],\n parseValue: (value: VectorTileProvider | null | undefined) => value?.name || 'Basic',\n toValue: (value: string) => mapVectorTileProviders[value as keyof typeof mapVectorTileProviders] ?? {}\n }\n }\n ]\n },\n {\n key: 'colors',\n type: 'group',\n open: true,\n children: [\n {\n key: 'opacity',\n control: {\n type: 'slider',\n label: 'Opacity',\n default: 0.8,\n min: 0,\n max: 1,\n step: 0.01\n }\n },\n {\n key: 'color',\n control: {\n type: 'color-picker',\n label: 'Route color',\n default: ({ theme }: RouteMapConfigContext) => getThemeMainColor(theme),\n extraLabel: ({ options, theme }: RouteMapConfigContext) => getThemeMainColorResetLabel(options, theme, 'color'),\n extraLabelHasClickAction: ({ options, theme }: RouteMapConfigContext) =>\n getThemeMainColorExtraLabelHasClickAction(options, theme, 'color'),\n extraLabelClickAction: ({ options, theme }: RouteMapConfigContext) =>\n getThemeMainColorExtraLabelClickAction(options, theme, 'color')\n },\n visibleIf: hasNoLegend\n },\n {\n key: 'colorsClassType',\n control: {\n type: 'picker',\n label: 'Colors type',\n default: 'sequential',\n enum: ['sequential', 'divergent', 'manual'],\n calculateValue: ({ options }: RouteMapConfigContext) => {\n if (options?.colorsClass === 'manual') {\n return 'manual';\n }\n\n const colorMaps = getColorMaps();\n const type = colorMaps?.[options?.colorsClass as ColorsClassKey]?.type;\n\n return type ?? 'sequential';\n },\n toOptions: ({ options, value }: RouteMapConfigValue<ColorsType>) => {\n const previousColorsClassValue = options?.colorsClass ?? 'PuBu';\n const numberClassesValue = options?.numberClasses ?? 5;\n const previousRanges = toRangesWithValue(options?.manualValues?.ranges);\n const useColorsClassToGenerate = previousColorsClassValue === 'manual' ? 'manual' : previousColorsClassValue;\n\n let newColorsClass;\n\n if (value === 'manual') {\n newColorsClass = 'manual';\n }\n else {\n const colorMaps = getColorMaps();\n const colorClassType = colorMaps?.[options?.colorsClass as ColorsClassKey]?.type;\n\n if (value !== colorClassType) {\n newColorsClass = getColorMapKeys(value ?? 'sequential')[0];\n }\n }\n\n const newOptions = { ...options, colorsClass: newColorsClass };\n\n if (value === 'manual' || options?.classification === 'manual') {\n const manualRanges = calculateManualRanges(\n numberClassesValue,\n value === 'manual' ? useColorsClassToGenerate : newColorsClass,\n previousRanges\n );\n\n newOptions.manualValues = {\n ...newOptions.manualValues,\n ranges: toRangesWithVal(manualRanges)\n };\n }\n else {\n delete newOptions?.manualValues?.ranges;\n }\n\n return newOptions;\n }\n },\n visibleIf: hasNumericLegend\n },\n {\n key: 'colorsClass',\n control: {\n type: 'color-palette-picker',\n label: 'Color palette',\n hideLabel: true,\n default: ({ options }: RouteMapConfigContext) => {\n const colorMaps = getColorMaps();\n const colorClassType = colorMaps?.[options?.colorsClass as ColorsClassKey]?.type;\n\n return getColorMapKeys(colorClassType ?? 'sequential')[0];\n },\n enum: ({ options }: RouteMapConfigContext) => {\n const colorMaps = getColorMaps();\n const colorClassType = colorMaps?.[options?.colorsClass as ColorsClassKey]?.type;\n\n return getColorMapKeys(colorClassType ?? 'sequential');\n },\n toOptions: ({ options, value }: RouteMapConfigValue<ColorsClassKey>) => {\n const newOptions = { ...options, colorsClass: value };\n\n if (options?.classification === 'manual') {\n const newColors = getColorClassColors(value, options?.numberClasses ?? 5);\n\n newOptions.manualValues = {\n ...newOptions.manualValues,\n ranges: options?.manualValues?.ranges?.map((range: ManualValuesRange) => {\n const colorIndex = typeof range.val === 'number' ? range.val : undefined;\n\n return {\n ...range,\n color: colorIndex === undefined ? undefined : newColors?.[colorIndex]\n };\n })\n };\n }\n\n return newOptions;\n }\n },\n visibleIf: ({ options, slots }: RouteMapConfigContext) => hasNumericLegend({ slots }) && options?.colorsClass !== 'manual'\n },\n {\n key: 'manualValues.ranges',\n control: {\n type: 'color-range',\n editRangeSize: false,\n debounce: 500,\n noValues: true,\n noAlphaChannel: true,\n label: 'Manual range colors',\n hideLabel: true\n },\n calculateValue: ({ options }: RouteMapConfigContext) =>\n calculateManualRanges(options?.numberClasses, options?.colorsClass, toRangesWithValue(options?.manualValues?.ranges)),\n toOptions: ({ options, value }: RouteMapConfigValue<ReturnType<typeof calculateManualRanges>>) => ({\n ...options,\n manualValues: {\n ...options.manualValues,\n ranges: toRangesWithVal(value)\n }\n }),\n visibleIf: ({ options, slots }: RouteMapConfigContext) => hasNumericLegend({ slots }) && options?.colorsClass === 'manual'\n }\n ]\n },\n {\n key: 'classification',\n type: 'group',\n open: true,\n children: [\n {\n key: 'numberClasses',\n control: {\n type: 'picker',\n label: 'Number of classes',\n default: '5',\n enum: ['3', '4', '5', '6', '7', '8', '9'],\n parseValue: (value: number | string | null | undefined) => value?.toString() ?? '5',\n toOptions: ({ options, value }: RouteMapConfigValue<string>) => {\n const numValue = Number.parseInt(value, 10) || 5;\n\n const newOptions = { ...options, numberClasses: numValue };\n\n if (options?.classification === 'manual' || options?.colorsClass === 'manual') {\n const manualRanges = calculateManualRanges(value, options?.colorsClass, toRangesWithValue(options?.manualValues?.ranges));\n\n newOptions.manualValues = {\n ...newOptions.manualValues,\n ranges: toRangesWithVal(manualRanges)\n };\n }\n\n return newOptions;\n }\n },\n visibleIf: hasNumericLegend\n },\n {\n key: 'classification',\n control: {\n type: 'picker',\n label: 'Method',\n default: 'interval',\n enum: ['interval', 'manual', 'quantile', 'continuous'],\n toOptions: ({ options, value }: RouteMapConfigValue<'interval' | 'manual' | 'quantile' | 'continuous'>) => {\n const newOptions = { ...options, classification: value };\n\n if (value === 'manual' || options?.colorsClass === 'manual') {\n const manualRanges = calculateManualRanges(\n options?.numberClasses,\n options?.colorsClass,\n toRangesWithValue(options?.manualValues?.ranges)\n );\n\n newOptions.manualValues = {\n ...newOptions.manualValues,\n ranges: toRangesWithVal(manualRanges)\n };\n }\n else {\n delete newOptions?.manualValues?.ranges;\n }\n\n return newOptions;\n }\n },\n visibleIf: hasNumericLegend\n },\n {\n key: 'manualValues.rangesValues',\n control: {\n type: 'color-range',\n editRangeSize: false,\n debounce: 500,\n noValues: false,\n readOnlyColorPicker: true,\n label: 'Manual range values',\n hideLabel: true,\n calculateValue: ({ options }: RouteMapConfigContext) =>\n calculateManualRanges(options?.numberClasses, options?.colorsClass, toRangesWithValue(options?.manualValues?.ranges)),\n toOptions: ({ options, value }: RouteMapConfigValue<ReturnType<typeof calculateManualRanges>>) => ({\n ...options,\n manualValues: {\n ...options.manualValues,\n ranges: toRangesWithVal(value)\n }\n })\n },\n visibleIf: ({ options, slots }: RouteMapConfigContext) => hasNumericLegend({ slots }) && options?.classification === 'manual'\n }\n ],\n visibleIf: hasNumericLegend\n }\n];\n\nexport default routeMapOptionsConfig;\n"],"mappings":"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"}
1
+ {"version":3,"file":"route-map-options.config.js","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/route-map/route-map-options.config.ts"],"sourcesContent":["import { type ColorValue, type ColorsClassKey, type ColorsType, getColorMapKeys, getColorMaps } from '../shared/utils/color/color-palettes';\nimport { mapVectorTileProviders } from '../shared/utils/map-tile-providers';\nimport {\n getThemeMainColor,\n getThemeMainColorExtraLabelClickAction,\n getThemeMainColorExtraLabelHasClickAction,\n getThemeMainColorResetLabel\n} from '../helpers';\nimport { calculateManualRanges, toRangesWithVal, toRangesWithValue } from '../shared/utils/color-range-utils';\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 { RouteMapViewOptions } from './route-map-options';\nimport type { RouteMapSlots } from './route-map-slots';\n\ntype VectorTileProvider = (typeof mapVectorTileProviders)[keyof typeof mapVectorTileProviders];\ntype RouteMapConfigContext = OptionsConfigContext<RouteMapViewOptions, RouteMapSlots>;\ntype RouteMapConfigValue<T> = RouteMapConfigContext & { value: T };\ntype ColorClassKey = keyof Omit<ColorValue, 'type'>;\n\nconst getColorClassColors = (colorMapKey: ColorsClassKey, numberClasses: number) => {\n const colorsKey = `colors${numberClasses}` as ColorClassKey;\n\n return getColorMaps()[colorMapKey]?.[colorsKey];\n};\n\nconst hasNoLegend = ({ slots }: Pick<RouteMapConfigContext, 'slots'>) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n return slots?.find((slot) => slot?.name === 'legend')?.content?.length === 0;\n }\n\n return true;\n};\n\nconst hasNumericLegend = ({ slots }: Pick<RouteMapConfigContext, 'slots'>) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n const colorSlot = slots?.find((slot) => slot?.name === 'legend');\n\n if (colorSlot) {\n const colorContent = colorSlot?.content;\n\n if (colorContent) {\n return colorContent?.some((content) => content?.type === 'numeric');\n }\n }\n }\n\n return false;\n};\n\nconst routeMapOptionsConfig: OptionsConfig<RouteMapConfigContext> = [\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: true\n }\n },\n {\n key: 'enabled.zoom',\n control: {\n type: 'switch',\n label: 'Zoom',\n default: true\n }\n },\n {\n key: 'enabled.pan',\n control: {\n type: 'switch',\n label: 'Pan',\n default: true\n }\n },\n {\n key: 'enabled.pitchBearing',\n control: {\n type: 'switch',\n label: 'Pitch & Rotate',\n default: false\n }\n },\n {\n key: 'lineWeight',\n control: {\n type: 'slider',\n label: 'Line weight',\n default: 4,\n min: 1,\n max: 8,\n step: 1\n }\n },\n {\n type: 'divider'\n },\n {\n key: 'vectorTileProvider',\n control: {\n type: 'picker',\n label: 'Map style',\n default: 'Basic',\n enum: [\n 'Basic',\n 'Bright',\n 'Dark',\n 'Fiord',\n 'Liberty',\n 'Pastel',\n 'Positron',\n 'Streets',\n 'Toner',\n 'Topographique',\n 'Voyager',\n 'No Tiles'\n ],\n parseValue: (value: VectorTileProvider | null | undefined) => value?.name || 'Basic',\n toValue: (value: string) => mapVectorTileProviders[value as keyof typeof mapVectorTileProviders] ?? {}\n }\n }\n ]\n },\n {\n key: 'colors',\n type: 'group',\n open: true,\n children: [\n {\n key: 'opacity',\n control: {\n type: 'slider',\n label: 'Opacity',\n default: 0.8,\n min: 0,\n max: 1,\n step: 0.01\n }\n },\n {\n key: 'color',\n control: {\n type: 'color-picker',\n label: 'Route color',\n default: ({ theme }: RouteMapConfigContext) => getThemeMainColor(theme),\n extraLabel: ({ options, theme }: RouteMapConfigContext) => getThemeMainColorResetLabel(options, theme, 'color'),\n extraLabelHasClickAction: ({ options, theme }: RouteMapConfigContext) =>\n getThemeMainColorExtraLabelHasClickAction(options, theme, 'color'),\n extraLabelClickAction: ({ options, theme }: RouteMapConfigContext) =>\n getThemeMainColorExtraLabelClickAction(options, theme, 'color')\n },\n visibleIf: hasNoLegend\n },\n {\n key: 'colorsClassType',\n control: {\n type: 'picker',\n label: 'Colors type',\n default: 'sequential',\n enum: ['sequential', 'divergent', 'manual'],\n calculateValue: ({ options }: RouteMapConfigContext) => {\n if (options?.colorsClass === 'manual') {\n return 'manual';\n }\n\n const colorMaps = getColorMaps();\n const type = colorMaps?.[options?.colorsClass as ColorsClassKey]?.type;\n\n return type ?? 'sequential';\n },\n toOptions: ({ options, value }: RouteMapConfigValue<ColorsType>) => {\n const previousColorsClassValue = options?.colorsClass ?? 'PuBu';\n const numberClassesValue = options?.numberClasses ?? 5;\n const previousRanges = toRangesWithValue(options?.manualValues?.ranges);\n const useColorsClassToGenerate = previousColorsClassValue === 'manual' ? 'manual' : previousColorsClassValue;\n\n let newColorsClass;\n\n if (value === 'manual') {\n newColorsClass = 'manual';\n }\n else {\n const colorMaps = getColorMaps();\n const colorClassType = colorMaps?.[options?.colorsClass as ColorsClassKey]?.type;\n\n if (value !== colorClassType) {\n newColorsClass = getColorMapKeys(value ?? 'sequential')[0];\n }\n }\n\n const newOptions = { ...options, colorsClass: newColorsClass };\n\n if (value === 'manual' || options?.classification === 'manual') {\n const manualRanges = calculateManualRanges(\n numberClassesValue,\n value === 'manual' ? useColorsClassToGenerate : newColorsClass,\n previousRanges\n );\n\n newOptions.manualValues = {\n ...newOptions.manualValues,\n ranges: toRangesWithVal(manualRanges)\n };\n }\n else {\n delete newOptions?.manualValues?.ranges;\n }\n\n return newOptions;\n }\n },\n visibleIf: hasNumericLegend\n },\n {\n key: 'colorsClass',\n control: {\n type: 'color-palette-picker',\n label: 'Color palette',\n hideLabel: true,\n default: ({ options }: RouteMapConfigContext) => {\n const colorMaps = getColorMaps();\n const colorClassType = colorMaps?.[options?.colorsClass as ColorsClassKey]?.type;\n\n return getColorMapKeys(colorClassType ?? 'sequential')[0];\n },\n enum: ({ options }: RouteMapConfigContext) => {\n const colorMaps = getColorMaps();\n const colorClassType = colorMaps?.[options?.colorsClass as ColorsClassKey]?.type;\n\n return getColorMapKeys(colorClassType ?? 'sequential');\n },\n toOptions: ({ options, value }: RouteMapConfigValue<ColorsClassKey>) => {\n const newOptions = { ...options, colorsClass: value };\n\n if (options?.classification === 'manual') {\n const newColors = getColorClassColors(value, options?.numberClasses ?? 5);\n\n newOptions.manualValues = {\n ...newOptions.manualValues,\n ranges: options?.manualValues?.ranges?.map((range: ManualValuesRange) => {\n const colorIndex = typeof range.val === 'number' ? range.val : undefined;\n\n return {\n ...range,\n color: colorIndex === undefined ? undefined : newColors?.[colorIndex]\n };\n })\n };\n }\n\n return newOptions;\n }\n },\n visibleIf: ({ options, slots }: RouteMapConfigContext) => hasNumericLegend({ slots }) && options?.colorsClass !== 'manual'\n },\n {\n key: 'manualValues.ranges',\n control: {\n type: 'color-range',\n editRangeSize: false,\n debounce: 500,\n noValues: true,\n noAlphaChannel: true,\n label: 'Manual range colors',\n hideLabel: true\n },\n calculateValue: ({ options }: RouteMapConfigContext) =>\n calculateManualRanges(options?.numberClasses, options?.colorsClass, toRangesWithValue(options?.manualValues?.ranges)),\n toOptions: ({ options, value }: RouteMapConfigValue<ReturnType<typeof calculateManualRanges>>) => ({\n ...options,\n manualValues: {\n ...options.manualValues,\n ranges: toRangesWithVal(value)\n }\n }),\n visibleIf: ({ options, slots }: RouteMapConfigContext) => hasNumericLegend({ slots }) && options?.colorsClass === 'manual'\n }\n ]\n },\n {\n key: 'classification',\n type: 'group',\n open: true,\n children: [\n {\n key: 'numberClasses',\n control: {\n type: 'picker',\n label: 'Number of classes',\n default: '5',\n enum: ['3', '4', '5', '6', '7', '8', '9'],\n parseValue: (value: number | string | null | undefined) => value?.toString() ?? '5',\n toOptions: ({ options, value }: RouteMapConfigValue<string>) => {\n const numValue = Number.parseInt(value, 10) || 5;\n\n const newOptions = { ...options, numberClasses: numValue };\n\n if (options?.classification === 'manual' || options?.colorsClass === 'manual') {\n const manualRanges = calculateManualRanges(value, options?.colorsClass, toRangesWithValue(options?.manualValues?.ranges));\n\n newOptions.manualValues = {\n ...newOptions.manualValues,\n ranges: toRangesWithVal(manualRanges)\n };\n }\n\n return newOptions;\n }\n },\n visibleIf: hasNumericLegend\n },\n {\n key: 'classification',\n control: {\n type: 'picker',\n label: 'Method',\n default: 'interval',\n enum: ['interval', 'manual', 'quantile', 'continuous'],\n toOptions: ({ options, value }: RouteMapConfigValue<'interval' | 'manual' | 'quantile' | 'continuous'>) => {\n const newOptions = { ...options, classification: value };\n\n if (value === 'manual' || options?.colorsClass === 'manual') {\n const manualRanges = calculateManualRanges(\n options?.numberClasses,\n options?.colorsClass,\n toRangesWithValue(options?.manualValues?.ranges)\n );\n\n newOptions.manualValues = {\n ...newOptions.manualValues,\n ranges: toRangesWithVal(manualRanges)\n };\n }\n else {\n delete newOptions?.manualValues?.ranges;\n }\n\n return newOptions;\n }\n },\n visibleIf: hasNumericLegend\n },\n {\n key: 'manualValues.rangesValues',\n control: {\n type: 'color-range',\n editRangeSize: false,\n debounce: 500,\n noValues: false,\n readOnlyColorPicker: true,\n label: 'Manual range values',\n hideLabel: true,\n calculateValue: ({ options }: RouteMapConfigContext) =>\n calculateManualRanges(options?.numberClasses, options?.colorsClass, toRangesWithValue(options?.manualValues?.ranges)),\n toOptions: ({ options, value }: RouteMapConfigValue<ReturnType<typeof calculateManualRanges>>) => ({\n ...options,\n manualValues: {\n ...options.manualValues,\n ranges: toRangesWithVal(value)\n }\n })\n },\n visibleIf: ({ options, slots }: RouteMapConfigContext) => hasNumericLegend({ slots }) && options?.classification === 'manual'\n }\n ],\n visibleIf: hasNumericLegend\n },\n createInfoTooltipOptionsGroup<RouteMapConfigContext>()\n];\n\nexport default routeMapOptionsConfig;\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- const e=require("../helpers.cjs");var t=[{key:`general`,type:`group`,open:!0,children:[{key:`display.title`,control:{type:`switch`,label:`Title`,default:!0}},{key:`alignment`,control:{type:`picker`,label:`Node alignment`,default:`justify`,enum:[`justify`,`left`,`right`,`center`]}}]},{key:`nodes`,type:`group`,open:!0,children:[{key:`nodeSorting`,control:{type:`picker`,label:`Sorting`,default:`default`,enum:[`default`,`asc`,`desc`]}},{key:`labels.display`,control:{type:`switch`,label:`Show node label`,default:!0}},{key:`labels.value`,control:{type:`switch`,label:`Show node value`,default:!1}},{key:`colors.byCategory`,control:{type:`switch`,label:`Use node category color`,default:!0}},{key:`colors.nodeColor`,control:{type:`color-picker`,default:({theme:t})=>e.getThemeMainColor(t),extraLabel:({options:t,theme:n})=>e.getThemeMainColorResetLabel(t,n,`colors.nodeColor`),extraLabelHasClickAction:({options:t,theme:n})=>e.getThemeMainColorExtraLabelHasClickAction(t,n,`colors.nodeColor`),extraLabelClickAction:({options:t,theme:n})=>e.getThemeMainColorExtraLabelClickAction(t,n,`colors.nodeColor`)},visibleIf:({options:e})=>e?.colors?.byCategory===!1}]},{key:`links`,type:`group`,open:!0,children:[{key:`colors.linkColor`,control:{type:`picker`,label:`Color`,default:`gradient`,enum:[`gradient`,`source`,`target`,`none`]}}]}];exports.default=t;
1
+ const e=require("../helpers.cjs"),t=require("../shared/utils/info-tooltip-options.config.cjs"),n=require("../shared/utils/interactivity-options.config.cjs");var r=[{key:`general`,type:`group`,open:!0,children:[{key:`display.title`,control:{type:`switch`,label:`Title`,default:!0}},{key:`alignment`,control:{type:`picker`,label:`Node alignment`,default:`justify`,enum:[`justify`,`left`,`right`,`center`]}}]},{key:`nodes`,type:`group`,open:!0,children:[{key:`nodeSorting`,control:{type:`picker`,label:`Sorting`,default:`default`,enum:[`default`,`asc`,`desc`]}},{key:`labels.display`,control:{type:`switch`,label:`Show node label`,default:!0}},{key:`labels.value`,control:{type:`switch`,label:`Show node value`,default:!1}},{key:`colors.byCategory`,control:{type:`switch`,label:`Use node category color`,default:!0}},{key:`colors.nodeColor`,control:{type:`color-picker`,default:({theme:t})=>e.getThemeMainColor(t),extraLabel:({options:t,theme:n})=>e.getThemeMainColorResetLabel(t,n,`colors.nodeColor`),extraLabelHasClickAction:({options:t,theme:n})=>e.getThemeMainColorExtraLabelHasClickAction(t,n,`colors.nodeColor`),extraLabelClickAction:({options:t,theme:n})=>e.getThemeMainColorExtraLabelClickAction(t,n,`colors.nodeColor`)},visibleIf:({options:e})=>e?.colors?.byCategory===!1}]},{key:`links`,type:`group`,open:!0,children:[{key:`colors.linkColor`,control:{type:`picker`,label:`Color`,default:`gradient`,enum:[`gradient`,`source`,`target`,`none`]}}]},t.createInfoTooltipOptionsGroup(),n.createInteractivityOptionsGroup({select:{default:!0}})];exports.default=r;
2
2
  //# sourceMappingURL=sankey-diagram-options.config.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"sankey-diagram-options.config.cjs","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/sankey-diagram/sankey-diagram-options.config.ts"],"sourcesContent":["import {\n getThemeMainColor,\n getThemeMainColorExtraLabelClickAction,\n getThemeMainColorExtraLabelHasClickAction,\n getThemeMainColorResetLabel\n} from '../helpers';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { SankeyDiagramViewOptions } from './sankey-diagram-options';\n\ntype SankeyDiagramConfigContext = OptionsConfigContext<SankeyDiagramViewOptions>;\n\nconst sankeyDiagramOptionsConfig: OptionsConfig<SankeyDiagramConfigContext> = [\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: true\n }\n },\n {\n key: 'alignment',\n control: {\n type: 'picker',\n label: 'Node alignment',\n default: 'justify',\n enum: ['justify', 'left', 'right', 'center']\n }\n }\n ]\n },\n {\n key: 'nodes',\n type: 'group',\n open: true,\n children: [\n {\n key: 'nodeSorting',\n control: {\n type: 'picker',\n label: 'Sorting',\n default: 'default',\n enum: ['default', 'asc', 'desc']\n }\n },\n {\n key: 'labels.display',\n control: {\n type: 'switch',\n label: 'Show node label',\n default: true\n }\n },\n {\n key: 'labels.value',\n control: {\n type: 'switch',\n label: 'Show node value',\n default: false\n }\n },\n {\n key: 'colors.byCategory',\n control: {\n type: 'switch',\n label: 'Use node category color',\n default: true\n }\n },\n {\n key: 'colors.nodeColor',\n control: {\n type: 'color-picker',\n default: ({ theme }: SankeyDiagramConfigContext) => getThemeMainColor(theme),\n extraLabel: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorResetLabel(options, theme, 'colors.nodeColor'),\n extraLabelHasClickAction: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorExtraLabelHasClickAction(options, theme, 'colors.nodeColor'),\n extraLabelClickAction: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorExtraLabelClickAction(options, theme, 'colors.nodeColor')\n },\n visibleIf: ({ options }: SankeyDiagramConfigContext) => options?.colors?.byCategory === false\n }\n ]\n },\n {\n key: 'links',\n type: 'group',\n open: true,\n children: [\n {\n key: 'colors.linkColor',\n control: {\n type: 'picker',\n label: 'Color',\n default: 'gradient',\n // TODO: make dependent of use node category color\n enum: ['gradient', 'source', 'target', 'none']\n }\n }\n ]\n }\n];\n\nexport default sankeyDiagramOptionsConfig;\n"],"mappings":"kCAWA,IAAM,EAAwE,CAC5E,CACE,IAAK,UACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,gBACL,QAAS,CACP,KAAM,SACN,MAAO,QACP,QAAS,EACX,CACF,EACA,CACE,IAAK,YACL,QAAS,CACP,KAAM,SACN,MAAO,iBACP,QAAS,UACT,KAAM,CAAC,UAAW,OAAQ,QAAS,QAAQ,CAC7C,CACF,CACF,CACF,EACA,CACE,IAAK,QACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,cACL,QAAS,CACP,KAAM,SACN,MAAO,UACP,QAAS,UACT,KAAM,CAAC,UAAW,MAAO,MAAM,CACjC,CACF,EACA,CACE,IAAK,iBACL,QAAS,CACP,KAAM,SACN,MAAO,kBACP,QAAS,EACX,CACF,EACA,CACE,IAAK,eACL,QAAS,CACP,KAAM,SACN,MAAO,kBACP,QAAS,EACX,CACF,EACA,CACE,IAAK,oBACL,QAAS,CACP,KAAM,SACN,MAAO,0BACP,QAAS,EACX,CACF,EACA,CACE,IAAK,mBACL,QAAS,CACP,KAAM,eACN,SAAU,CAAE,WAAwC,EAAA,kBAAkB,CAAK,EAC3E,YAAa,CAAE,UAAS,WACtB,EAAA,4BAA4B,EAAS,EAAO,kBAAkB,EAChE,0BAA2B,CAAE,UAAS,WACpC,EAAA,0CAA0C,EAAS,EAAO,kBAAkB,EAC9E,uBAAwB,CAAE,UAAS,WACjC,EAAA,uCAAuC,EAAS,EAAO,kBAAkB,CAC7E,EACA,WAAY,CAAE,aAA0C,GAAS,QAAQ,aAAe,EAC1F,CACF,CACF,EACA,CACE,IAAK,QACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,mBACL,QAAS,CACP,KAAM,SACN,MAAO,QACP,QAAS,WAET,KAAM,CAAC,WAAY,SAAU,SAAU,MAAM,CAC/C,CACF,CACF,CACF,CACF"}
1
+ {"version":3,"file":"sankey-diagram-options.config.cjs","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/sankey-diagram/sankey-diagram-options.config.ts"],"sourcesContent":["import {\n getThemeMainColor,\n getThemeMainColorExtraLabelClickAction,\n getThemeMainColorExtraLabelHasClickAction,\n getThemeMainColorResetLabel\n} from '../helpers';\nimport { createInfoTooltipOptionsGroup } from '../shared/utils/info-tooltip-options.config';\nimport { createInteractivityOptionsGroup } from '../shared/utils/interactivity-options.config';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { SankeyDiagramViewOptions } from './sankey-diagram-options';\n\ntype SankeyDiagramConfigContext = OptionsConfigContext<SankeyDiagramViewOptions>;\n\nconst sankeyDiagramOptionsConfig: OptionsConfig<SankeyDiagramConfigContext> = [\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: true\n }\n },\n {\n key: 'alignment',\n control: {\n type: 'picker',\n label: 'Node alignment',\n default: 'justify',\n enum: ['justify', 'left', 'right', 'center']\n }\n }\n ]\n },\n {\n key: 'nodes',\n type: 'group',\n open: true,\n children: [\n {\n key: 'nodeSorting',\n control: {\n type: 'picker',\n label: 'Sorting',\n default: 'default',\n enum: ['default', 'asc', 'desc']\n }\n },\n {\n key: 'labels.display',\n control: {\n type: 'switch',\n label: 'Show node label',\n default: true\n }\n },\n {\n key: 'labels.value',\n control: {\n type: 'switch',\n label: 'Show node value',\n default: false\n }\n },\n {\n key: 'colors.byCategory',\n control: {\n type: 'switch',\n label: 'Use node category color',\n default: true\n }\n },\n {\n key: 'colors.nodeColor',\n control: {\n type: 'color-picker',\n default: ({ theme }: SankeyDiagramConfigContext) => getThemeMainColor(theme),\n extraLabel: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorResetLabel(options, theme, 'colors.nodeColor'),\n extraLabelHasClickAction: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorExtraLabelHasClickAction(options, theme, 'colors.nodeColor'),\n extraLabelClickAction: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorExtraLabelClickAction(options, theme, 'colors.nodeColor')\n },\n visibleIf: ({ options }: SankeyDiagramConfigContext) => options?.colors?.byCategory === false\n }\n ]\n },\n {\n key: 'links',\n type: 'group',\n open: true,\n children: [\n {\n key: 'colors.linkColor',\n control: {\n type: 'picker',\n label: 'Color',\n default: 'gradient',\n // TODO: make dependent of use node category color\n enum: ['gradient', 'source', 'target', 'none']\n }\n }\n ]\n },\n createInfoTooltipOptionsGroup<SankeyDiagramConfigContext>(),\n createInteractivityOptionsGroup<SankeyDiagramConfigContext>({ select: { default: true } })\n];\n\nexport default sankeyDiagramOptionsConfig;\n"],"mappings":"6JAaA,IAAM,EAAwE,CAC5E,CACE,IAAK,UACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,gBACL,QAAS,CACP,KAAM,SACN,MAAO,QACP,QAAS,EACX,CACF,EACA,CACE,IAAK,YACL,QAAS,CACP,KAAM,SACN,MAAO,iBACP,QAAS,UACT,KAAM,CAAC,UAAW,OAAQ,QAAS,QAAQ,CAC7C,CACF,CACF,CACF,EACA,CACE,IAAK,QACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,cACL,QAAS,CACP,KAAM,SACN,MAAO,UACP,QAAS,UACT,KAAM,CAAC,UAAW,MAAO,MAAM,CACjC,CACF,EACA,CACE,IAAK,iBACL,QAAS,CACP,KAAM,SACN,MAAO,kBACP,QAAS,EACX,CACF,EACA,CACE,IAAK,eACL,QAAS,CACP,KAAM,SACN,MAAO,kBACP,QAAS,EACX,CACF,EACA,CACE,IAAK,oBACL,QAAS,CACP,KAAM,SACN,MAAO,0BACP,QAAS,EACX,CACF,EACA,CACE,IAAK,mBACL,QAAS,CACP,KAAM,eACN,SAAU,CAAE,WAAwC,EAAA,kBAAkB,CAAK,EAC3E,YAAa,CAAE,UAAS,WACtB,EAAA,4BAA4B,EAAS,EAAO,kBAAkB,EAChE,0BAA2B,CAAE,UAAS,WACpC,EAAA,0CAA0C,EAAS,EAAO,kBAAkB,EAC9E,uBAAwB,CAAE,UAAS,WACjC,EAAA,uCAAuC,EAAS,EAAO,kBAAkB,CAC7E,EACA,WAAY,CAAE,aAA0C,GAAS,QAAQ,aAAe,EAC1F,CACF,CACF,EACA,CACE,IAAK,QACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,mBACL,QAAS,CACP,KAAM,SACN,MAAO,QACP,QAAS,WAET,KAAM,CAAC,WAAY,SAAU,SAAU,MAAM,CAC/C,CACF,CACF,CACF,EACA,EAAA,8BAA0D,EAC1D,EAAA,gCAA4D,CAAE,OAAQ,CAAE,QAAS,EAAK,CAAE,CAAC,CAC3F"}
@@ -1,6 +1,8 @@
1
1
  import { getThemeMainColor as e, getThemeMainColorExtraLabelClickAction as t, getThemeMainColorExtraLabelHasClickAction as n, getThemeMainColorResetLabel as r } from "../helpers.js";
2
+ import { createInfoTooltipOptionsGroup as i } from "../shared/utils/info-tooltip-options.config.js";
3
+ import { createInteractivityOptionsGroup as a } from "../shared/utils/interactivity-options.config.js";
2
4
  //#region src/lib/sankey-diagram/sankey-diagram-options.config.ts
3
- var i = [
5
+ var o = [
4
6
  {
5
7
  key: "general",
6
8
  type: "group",
@@ -100,9 +102,11 @@ var i = [
100
102
  ]
101
103
  }
102
104
  }]
103
- }
105
+ },
106
+ i(),
107
+ a({ select: { default: !0 } })
104
108
  ];
105
109
  //#endregion
106
- export { i as default };
110
+ export { o as default };
107
111
 
108
112
  //# sourceMappingURL=sankey-diagram-options.config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sankey-diagram-options.config.js","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/sankey-diagram/sankey-diagram-options.config.ts"],"sourcesContent":["import {\n getThemeMainColor,\n getThemeMainColorExtraLabelClickAction,\n getThemeMainColorExtraLabelHasClickAction,\n getThemeMainColorResetLabel\n} from '../helpers';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { SankeyDiagramViewOptions } from './sankey-diagram-options';\n\ntype SankeyDiagramConfigContext = OptionsConfigContext<SankeyDiagramViewOptions>;\n\nconst sankeyDiagramOptionsConfig: OptionsConfig<SankeyDiagramConfigContext> = [\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: true\n }\n },\n {\n key: 'alignment',\n control: {\n type: 'picker',\n label: 'Node alignment',\n default: 'justify',\n enum: ['justify', 'left', 'right', 'center']\n }\n }\n ]\n },\n {\n key: 'nodes',\n type: 'group',\n open: true,\n children: [\n {\n key: 'nodeSorting',\n control: {\n type: 'picker',\n label: 'Sorting',\n default: 'default',\n enum: ['default', 'asc', 'desc']\n }\n },\n {\n key: 'labels.display',\n control: {\n type: 'switch',\n label: 'Show node label',\n default: true\n }\n },\n {\n key: 'labels.value',\n control: {\n type: 'switch',\n label: 'Show node value',\n default: false\n }\n },\n {\n key: 'colors.byCategory',\n control: {\n type: 'switch',\n label: 'Use node category color',\n default: true\n }\n },\n {\n key: 'colors.nodeColor',\n control: {\n type: 'color-picker',\n default: ({ theme }: SankeyDiagramConfigContext) => getThemeMainColor(theme),\n extraLabel: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorResetLabel(options, theme, 'colors.nodeColor'),\n extraLabelHasClickAction: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorExtraLabelHasClickAction(options, theme, 'colors.nodeColor'),\n extraLabelClickAction: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorExtraLabelClickAction(options, theme, 'colors.nodeColor')\n },\n visibleIf: ({ options }: SankeyDiagramConfigContext) => options?.colors?.byCategory === false\n }\n ]\n },\n {\n key: 'links',\n type: 'group',\n open: true,\n children: [\n {\n key: 'colors.linkColor',\n control: {\n type: 'picker',\n label: 'Color',\n default: 'gradient',\n // TODO: make dependent of use node category color\n enum: ['gradient', 'source', 'target', 'none']\n }\n }\n ]\n }\n];\n\nexport default sankeyDiagramOptionsConfig;\n"],"mappings":";;AAWA,IAAM,IAAwE;CAC5E;EACE,KAAK;EACL,MAAM;EACN,MAAM;EACN,UAAU,CACR;GACE,KAAK;GACL,SAAS;IACP,MAAM;IACN,OAAO;IACP,SAAS;GACX;EACF,GACA;GACE,KAAK;GACL,SAAS;IACP,MAAM;IACN,OAAO;IACP,SAAS;IACT,MAAM;KAAC;KAAW;KAAQ;KAAS;IAAQ;GAC7C;EACF,CACF;CACF;CACA;EACE,KAAK;EACL,MAAM;EACN,MAAM;EACN,UAAU;GACR;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;KACT,MAAM;MAAC;MAAW;MAAO;KAAM;IACjC;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;IACX;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;IACX;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;IACX;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,UAAU,EAAE,eAAwC,EAAkB,CAAK;KAC3E,aAAa,EAAE,YAAS,eACtB,EAA4B,GAAS,GAAO,kBAAkB;KAChE,2BAA2B,EAAE,YAAS,eACpC,EAA0C,GAAS,GAAO,kBAAkB;KAC9E,wBAAwB,EAAE,YAAS,eACjC,EAAuC,GAAS,GAAO,kBAAkB;IAC7E;IACA,YAAY,EAAE,iBAA0C,GAAS,QAAQ,eAAe;GAC1F;EACF;CACF;CACA;EACE,KAAK;EACL,MAAM;EACN,MAAM;EACN,UAAU,CACR;GACE,KAAK;GACL,SAAS;IACP,MAAM;IACN,OAAO;IACP,SAAS;IAET,MAAM;KAAC;KAAY;KAAU;KAAU;IAAM;GAC/C;EACF,CACF;CACF;AACF"}
1
+ {"version":3,"file":"sankey-diagram-options.config.js","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/sankey-diagram/sankey-diagram-options.config.ts"],"sourcesContent":["import {\n getThemeMainColor,\n getThemeMainColorExtraLabelClickAction,\n getThemeMainColorExtraLabelHasClickAction,\n getThemeMainColorResetLabel\n} from '../helpers';\nimport { createInfoTooltipOptionsGroup } from '../shared/utils/info-tooltip-options.config';\nimport { createInteractivityOptionsGroup } from '../shared/utils/interactivity-options.config';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { SankeyDiagramViewOptions } from './sankey-diagram-options';\n\ntype SankeyDiagramConfigContext = OptionsConfigContext<SankeyDiagramViewOptions>;\n\nconst sankeyDiagramOptionsConfig: OptionsConfig<SankeyDiagramConfigContext> = [\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: true\n }\n },\n {\n key: 'alignment',\n control: {\n type: 'picker',\n label: 'Node alignment',\n default: 'justify',\n enum: ['justify', 'left', 'right', 'center']\n }\n }\n ]\n },\n {\n key: 'nodes',\n type: 'group',\n open: true,\n children: [\n {\n key: 'nodeSorting',\n control: {\n type: 'picker',\n label: 'Sorting',\n default: 'default',\n enum: ['default', 'asc', 'desc']\n }\n },\n {\n key: 'labels.display',\n control: {\n type: 'switch',\n label: 'Show node label',\n default: true\n }\n },\n {\n key: 'labels.value',\n control: {\n type: 'switch',\n label: 'Show node value',\n default: false\n }\n },\n {\n key: 'colors.byCategory',\n control: {\n type: 'switch',\n label: 'Use node category color',\n default: true\n }\n },\n {\n key: 'colors.nodeColor',\n control: {\n type: 'color-picker',\n default: ({ theme }: SankeyDiagramConfigContext) => getThemeMainColor(theme),\n extraLabel: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorResetLabel(options, theme, 'colors.nodeColor'),\n extraLabelHasClickAction: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorExtraLabelHasClickAction(options, theme, 'colors.nodeColor'),\n extraLabelClickAction: ({ options, theme }: SankeyDiagramConfigContext) =>\n getThemeMainColorExtraLabelClickAction(options, theme, 'colors.nodeColor')\n },\n visibleIf: ({ options }: SankeyDiagramConfigContext) => options?.colors?.byCategory === false\n }\n ]\n },\n {\n key: 'links',\n type: 'group',\n open: true,\n children: [\n {\n key: 'colors.linkColor',\n control: {\n type: 'picker',\n label: 'Color',\n default: 'gradient',\n // TODO: make dependent of use node category color\n enum: ['gradient', 'source', 'target', 'none']\n }\n }\n ]\n },\n createInfoTooltipOptionsGroup<SankeyDiagramConfigContext>(),\n createInteractivityOptionsGroup<SankeyDiagramConfigContext>({ select: { default: true } })\n];\n\nexport default sankeyDiagramOptionsConfig;\n"],"mappings":";;;;AAaA,IAAM,IAAwE;CAC5E;EACE,KAAK;EACL,MAAM;EACN,MAAM;EACN,UAAU,CACR;GACE,KAAK;GACL,SAAS;IACP,MAAM;IACN,OAAO;IACP,SAAS;GACX;EACF,GACA;GACE,KAAK;GACL,SAAS;IACP,MAAM;IACN,OAAO;IACP,SAAS;IACT,MAAM;KAAC;KAAW;KAAQ;KAAS;IAAQ;GAC7C;EACF,CACF;CACF;CACA;EACE,KAAK;EACL,MAAM;EACN,MAAM;EACN,UAAU;GACR;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;KACT,MAAM;MAAC;MAAW;MAAO;KAAM;IACjC;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;IACX;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;IACX;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;IACX;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,UAAU,EAAE,eAAwC,EAAkB,CAAK;KAC3E,aAAa,EAAE,YAAS,eACtB,EAA4B,GAAS,GAAO,kBAAkB;KAChE,2BAA2B,EAAE,YAAS,eACpC,EAA0C,GAAS,GAAO,kBAAkB;KAC9E,wBAAwB,EAAE,YAAS,eACjC,EAAuC,GAAS,GAAO,kBAAkB;IAC7E;IACA,YAAY,EAAE,iBAA0C,GAAS,QAAQ,eAAe;GAC1F;EACF;CACF;CACA;EACE,KAAK;EACL,MAAM;EACN,MAAM;EACN,UAAU,CACR;GACE,KAAK;GACL,SAAS;IACP,MAAM;IACN,OAAO;IACP,SAAS;IAET,MAAM;KAAC;KAAY;KAAU;KAAU;IAAM;GAC/C;EACF,CACF;CACF;CACA,EAA0D;CAC1D,EAA4D,EAAE,QAAQ,EAAE,SAAS,GAAK,EAAE,CAAC;AAC3F"}
@@ -1,2 +1,2 @@
1
- const e=require("../helpers.cjs"),t=require("../shared/utils/axis-options.config.cjs"),n=require("../shared/utils/guidelines-options.config.cjs");var r=({slots:e})=>Array.isArray(e)&&e?.length>0?(e?.find(e=>e?.name===`color`)?.content?.length??0)>0:!1,i=[{key:`general`,type:`group`,open:!0,children:[{key:`display.title`,control:{type:`switch`,label:`Title`,default:!0}},{key:`display.legend`,control:{type:`switch`,label:`Legend`,default:!0},visibleIf:r},{key:`color`,control:{type:`color-picker`,label:`Color`,default:({theme:t})=>e.getThemeMainColor(t),extraLabel:({options:t,theme:n})=>e.getThemeMainColorResetLabel(t,n,`color`),extraLabelHasClickAction:({options:t,theme:n})=>e.getThemeMainColorExtraLabelHasClickAction(t,n,`color`),extraLabelClickAction:({options:t,theme:n})=>e.getThemeMainColorExtraLabelClickAction(t,n,`color`)},visibleIf:({slots:e})=>Array.isArray(e)&&e?.length>0?e?.find(e=>e?.name===`color`)?.content?.length===0:!0}]},t.createAxesOptionsGroup([{axis:`x`,role:`numeric`,manualRange:{key:`manualAxesRange.x`},color:!0,label:!0,tickMode:!0,gridlines:!0},{axis:`y`,role:`numeric`,manualRange:{key:`manualAxesRange.y`},color:!0,label:!0,tickMode:!0,gridlines:!0}]),{key:`legend`,type:`group`,open:!1,children:[{key:`legend.position`,control:{label:`Position`,type:`position-picker`,default:`topRight`,enum:[`topLeft`,`top`,`topRight`,`right`,`bottomRight`,`bottom`,`bottomLeft`,`left`]}},{key:`legend.customOrder`,control:{label:`Custom order`,description:`Drag items in the chart legend to set the order.`,type:`switch`,default:!1}},{key:`interactivity.legendReorder`,control:{label:`Allow viewers to reorder`,type:`switch`,default:!1},visibleIf:({options:e})=>e?.legend?.customOrder===!0}],visibleIf:r},n.createScatterGuidelinesOptionsGroup()];exports.default=i;
1
+ const e=require("../helpers.cjs"),t=require("../shared/utils/axis-options.config.cjs"),n=require("../shared/utils/guidelines-options.config.cjs"),r=require("../shared/utils/info-tooltip-options.config.cjs"),i=require("../shared/utils/interactivity-options.config.cjs");var a=({slots:e})=>Array.isArray(e)&&e?.length>0?(e?.find(e=>e?.name===`color`)?.content?.length??0)>0:!1,o=[{key:`general`,type:`group`,open:!0,children:[{key:`display.title`,control:{type:`switch`,label:`Title`,default:!0}},{key:`display.legend`,control:{type:`switch`,label:`Legend`,default:!0},visibleIf:a},{key:`color`,control:{type:`color-picker`,label:`Color`,default:({theme:t})=>e.getThemeMainColor(t),extraLabel:({options:t,theme:n})=>e.getThemeMainColorResetLabel(t,n,`color`),extraLabelHasClickAction:({options:t,theme:n})=>e.getThemeMainColorExtraLabelHasClickAction(t,n,`color`),extraLabelClickAction:({options:t,theme:n})=>e.getThemeMainColorExtraLabelClickAction(t,n,`color`)},visibleIf:({slots:e})=>Array.isArray(e)&&e?.length>0?e?.find(e=>e?.name===`color`)?.content?.length===0:!0}]},t.createAxesOptionsGroup([{axis:`x`,role:`numeric`,manualRange:{key:`manualAxesRange.x`},color:!0,label:!0,tickMode:!0,gridlines:!0},{axis:`y`,role:`numeric`,manualRange:{key:`manualAxesRange.y`},color:!0,label:!0,tickMode:!0,gridlines:!0}]),{key:`legend`,type:`group`,open:!1,children:[{key:`legend.position`,control:{label:`Position`,type:`position-picker`,default:`topRight`,enum:[`topLeft`,`top`,`topRight`,`right`,`bottomRight`,`bottom`,`bottomLeft`,`left`]}},{key:`legend.customOrder`,control:{label:`Custom order`,description:`Drag items in the chart legend to set the order.`,type:`switch`,default:!1}},{key:`interactivity.legendReorder`,control:{label:`Allow viewers to reorder`,type:`switch`,default:!1},visibleIf:({options:e})=>e?.legend?.customOrder===!0}],visibleIf:a},n.createScatterGuidelinesOptionsGroup(),r.createInfoTooltipOptionsGroup(),i.createInteractivityOptionsGroup({brush:{default:!0,excludesClickActions:!0}})];exports.default=o;
2
2
  //# sourceMappingURL=scatter-plot-options.config.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"scatter-plot-options.config.cjs","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/scatter-plot/scatter-plot-options.config.ts"],"sourcesContent":["import {\n getThemeMainColor,\n getThemeMainColorExtraLabelClickAction,\n getThemeMainColorExtraLabelHasClickAction,\n getThemeMainColorResetLabel\n} from '../helpers';\nimport { createAxesOptionsGroup } from '../shared/utils/axis-options.config';\nimport { createScatterGuidelinesOptionsGroup } from '../shared/utils/guidelines-options.config';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { ScatterPlotViewOptions } from './scatter-plot-options';\nimport type { ScatterPlotSlots } from './scatter-plot-slots';\n\ntype ScatterPlotConfigContext = OptionsConfigContext<ScatterPlotViewOptions, ScatterPlotSlots>;\n\nconst hasColor = ({ slots }: Pick<ScatterPlotConfigContext, 'slots'>) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n return (slots?.find((slot) => slot?.name === 'color')?.content?.length ?? 0) > 0;\n }\n\n return false;\n};\n\nconst hasNoColor = ({ slots }: ScatterPlotConfigContext) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n return slots?.find((slot) => slot?.name === 'color')?.content?.length === 0;\n }\n\n return true;\n};\n\nconst scatterPlotOptionsConfig: OptionsConfig<ScatterPlotConfigContext> = [\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: true\n }\n },\n {\n key: 'display.legend',\n control: {\n type: 'switch',\n label: 'Legend',\n default: true\n },\n visibleIf: hasColor\n },\n {\n key: 'color',\n control: {\n type: 'color-picker',\n label: 'Color',\n default: ({ theme }: ScatterPlotConfigContext) => getThemeMainColor(theme),\n extraLabel: ({ options, theme }: ScatterPlotConfigContext) => getThemeMainColorResetLabel(options, theme, 'color'),\n extraLabelHasClickAction: ({ options, theme }: ScatterPlotConfigContext) =>\n getThemeMainColorExtraLabelHasClickAction(options, theme, 'color'),\n extraLabelClickAction: ({ options, theme }: ScatterPlotConfigContext) =>\n getThemeMainColorExtraLabelClickAction(options, theme, 'color')\n },\n visibleIf: hasNoColor\n }\n ]\n },\n createAxesOptionsGroup<ScatterPlotConfigContext>([\n { axis: 'x', role: 'numeric', manualRange: { key: 'manualAxesRange.x' }, color: true, label: true, tickMode: true, gridlines: true },\n { axis: 'y', role: 'numeric', manualRange: { key: 'manualAxesRange.y' }, color: true, label: true, tickMode: true, gridlines: true }\n ]),\n {\n key: 'legend',\n type: 'group',\n open: false,\n children: [\n {\n key: 'legend.position',\n control: {\n label: 'Position',\n type: 'position-picker',\n default: 'topRight',\n enum: ['topLeft', 'top', 'topRight', 'right', 'bottomRight', 'bottom', 'bottomLeft', 'left']\n }\n },\n {\n key: 'legend.customOrder',\n control: {\n label: 'Custom order',\n description: 'Drag items in the chart legend to set the order.',\n type: 'switch',\n default: false\n }\n },\n {\n key: 'interactivity.legendReorder',\n control: {\n label: 'Allow viewers to reorder',\n type: 'switch',\n default: false\n },\n visibleIf: ({ options }: ScatterPlotConfigContext) => options?.legend?.customOrder === true\n }\n ],\n visibleIf: hasColor\n },\n createScatterGuidelinesOptionsGroup()\n];\n\nexport default scatterPlotOptionsConfig;\n"],"mappings":"kJAcA,IAAM,GAAY,CAAE,WACd,MAAM,QAAQ,CAAK,GAAK,GAAO,OAAS,GAClC,GAAO,KAAM,GAAS,GAAM,OAAS,OAAO,CAAC,EAAE,SAAS,QAAU,GAAK,EAG1E,GAWH,EAAoE,CACxE,CACE,IAAK,UACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,gBACL,QAAS,CACP,KAAM,SACN,MAAO,QACP,QAAS,EACX,CACF,EACA,CACE,IAAK,iBACL,QAAS,CACP,KAAM,SACN,MAAO,SACP,QAAS,EACX,EACA,UAAW,CACb,EACA,CACE,IAAK,QACL,QAAS,CACP,KAAM,eACN,MAAO,QACP,SAAU,CAAE,WAAsC,EAAA,kBAAkB,CAAK,EACzE,YAAa,CAAE,UAAS,WAAsC,EAAA,4BAA4B,EAAS,EAAO,OAAO,EACjH,0BAA2B,CAAE,UAAS,WACpC,EAAA,0CAA0C,EAAS,EAAO,OAAO,EACnE,uBAAwB,CAAE,UAAS,WACjC,EAAA,uCAAuC,EAAS,EAAO,OAAO,CAClE,EACA,WA3CY,CAAE,WAChB,MAAM,QAAQ,CAAK,GAAK,GAAO,OAAS,EACnC,GAAO,KAAM,GAAS,GAAM,OAAS,OAAO,CAAC,EAAE,SAAS,SAAW,EAGrE,EAuCH,CACF,CACF,EACA,EAAA,uBAAiD,CAC/C,CAAE,KAAM,IAAK,KAAM,UAAW,YAAa,CAAE,IAAK,mBAAoB,EAAG,MAAO,GAAM,MAAO,GAAM,SAAU,GAAM,UAAW,EAAK,EACnI,CAAE,KAAM,IAAK,KAAM,UAAW,YAAa,CAAE,IAAK,mBAAoB,EAAG,MAAO,GAAM,MAAO,GAAM,SAAU,GAAM,UAAW,EAAK,CACrI,CAAC,EACD,CACE,IAAK,SACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,kBACL,QAAS,CACP,MAAO,WACP,KAAM,kBACN,QAAS,WACT,KAAM,CAAC,UAAW,MAAO,WAAY,QAAS,cAAe,SAAU,aAAc,MAAM,CAC7F,CACF,EACA,CACE,IAAK,qBACL,QAAS,CACP,MAAO,eACP,YAAa,mDACb,KAAM,SACN,QAAS,EACX,CACF,EACA,CACE,IAAK,8BACL,QAAS,CACP,MAAO,2BACP,KAAM,SACN,QAAS,EACX,EACA,WAAY,CAAE,aAAwC,GAAS,QAAQ,cAAgB,EACzF,CACF,EACA,UAAW,CACb,EACA,EAAA,oCAAoC,CACtC"}
1
+ {"version":3,"file":"scatter-plot-options.config.cjs","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/scatter-plot/scatter-plot-options.config.ts"],"sourcesContent":["import {\n getThemeMainColor,\n getThemeMainColorExtraLabelClickAction,\n getThemeMainColorExtraLabelHasClickAction,\n getThemeMainColorResetLabel\n} from '../helpers';\nimport { createAxesOptionsGroup } from '../shared/utils/axis-options.config';\nimport { createScatterGuidelinesOptionsGroup } from '../shared/utils/guidelines-options.config';\nimport { createInfoTooltipOptionsGroup } from '../shared/utils/info-tooltip-options.config';\nimport { createInteractivityOptionsGroup } from '../shared/utils/interactivity-options.config';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { ScatterPlotViewOptions } from './scatter-plot-options';\nimport type { ScatterPlotSlots } from './scatter-plot-slots';\n\ntype ScatterPlotConfigContext = OptionsConfigContext<ScatterPlotViewOptions, ScatterPlotSlots>;\n\nconst hasColor = ({ slots }: Pick<ScatterPlotConfigContext, 'slots'>) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n return (slots?.find((slot) => slot?.name === 'color')?.content?.length ?? 0) > 0;\n }\n\n return false;\n};\n\nconst hasNoColor = ({ slots }: ScatterPlotConfigContext) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n return slots?.find((slot) => slot?.name === 'color')?.content?.length === 0;\n }\n\n return true;\n};\n\nconst scatterPlotOptionsConfig: OptionsConfig<ScatterPlotConfigContext> = [\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: true\n }\n },\n {\n key: 'display.legend',\n control: {\n type: 'switch',\n label: 'Legend',\n default: true\n },\n visibleIf: hasColor\n },\n {\n key: 'color',\n control: {\n type: 'color-picker',\n label: 'Color',\n default: ({ theme }: ScatterPlotConfigContext) => getThemeMainColor(theme),\n extraLabel: ({ options, theme }: ScatterPlotConfigContext) => getThemeMainColorResetLabel(options, theme, 'color'),\n extraLabelHasClickAction: ({ options, theme }: ScatterPlotConfigContext) =>\n getThemeMainColorExtraLabelHasClickAction(options, theme, 'color'),\n extraLabelClickAction: ({ options, theme }: ScatterPlotConfigContext) =>\n getThemeMainColorExtraLabelClickAction(options, theme, 'color')\n },\n visibleIf: hasNoColor\n }\n ]\n },\n createAxesOptionsGroup<ScatterPlotConfigContext>([\n { axis: 'x', role: 'numeric', manualRange: { key: 'manualAxesRange.x' }, color: true, label: true, tickMode: true, gridlines: true },\n { axis: 'y', role: 'numeric', manualRange: { key: 'manualAxesRange.y' }, color: true, label: true, tickMode: true, gridlines: true }\n ]),\n {\n key: 'legend',\n type: 'group',\n open: false,\n children: [\n {\n key: 'legend.position',\n control: {\n label: 'Position',\n type: 'position-picker',\n default: 'topRight',\n enum: ['topLeft', 'top', 'topRight', 'right', 'bottomRight', 'bottom', 'bottomLeft', 'left']\n }\n },\n {\n key: 'legend.customOrder',\n control: {\n label: 'Custom order',\n description: 'Drag items in the chart legend to set the order.',\n type: 'switch',\n default: false\n }\n },\n {\n key: 'interactivity.legendReorder',\n control: {\n label: 'Allow viewers to reorder',\n type: 'switch',\n default: false\n },\n visibleIf: ({ options }: ScatterPlotConfigContext) => options?.legend?.customOrder === true\n }\n ],\n visibleIf: hasColor\n },\n createScatterGuidelinesOptionsGroup(),\n createInfoTooltipOptionsGroup<ScatterPlotConfigContext>(),\n createInteractivityOptionsGroup<ScatterPlotConfigContext>({ brush: { default: true, excludesClickActions: true } })\n];\n\nexport default scatterPlotOptionsConfig;\n"],"mappings":"6QAgBA,IAAM,GAAY,CAAE,WACd,MAAM,QAAQ,CAAK,GAAK,GAAO,OAAS,GAClC,GAAO,KAAM,GAAS,GAAM,OAAS,OAAO,CAAC,EAAE,SAAS,QAAU,GAAK,EAG1E,GAWH,EAAoE,CACxE,CACE,IAAK,UACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,gBACL,QAAS,CACP,KAAM,SACN,MAAO,QACP,QAAS,EACX,CACF,EACA,CACE,IAAK,iBACL,QAAS,CACP,KAAM,SACN,MAAO,SACP,QAAS,EACX,EACA,UAAW,CACb,EACA,CACE,IAAK,QACL,QAAS,CACP,KAAM,eACN,MAAO,QACP,SAAU,CAAE,WAAsC,EAAA,kBAAkB,CAAK,EACzE,YAAa,CAAE,UAAS,WAAsC,EAAA,4BAA4B,EAAS,EAAO,OAAO,EACjH,0BAA2B,CAAE,UAAS,WACpC,EAAA,0CAA0C,EAAS,EAAO,OAAO,EACnE,uBAAwB,CAAE,UAAS,WACjC,EAAA,uCAAuC,EAAS,EAAO,OAAO,CAClE,EACA,WA3CY,CAAE,WAChB,MAAM,QAAQ,CAAK,GAAK,GAAO,OAAS,EACnC,GAAO,KAAM,GAAS,GAAM,OAAS,OAAO,CAAC,EAAE,SAAS,SAAW,EAGrE,EAuCH,CACF,CACF,EACA,EAAA,uBAAiD,CAC/C,CAAE,KAAM,IAAK,KAAM,UAAW,YAAa,CAAE,IAAK,mBAAoB,EAAG,MAAO,GAAM,MAAO,GAAM,SAAU,GAAM,UAAW,EAAK,EACnI,CAAE,KAAM,IAAK,KAAM,UAAW,YAAa,CAAE,IAAK,mBAAoB,EAAG,MAAO,GAAM,MAAO,GAAM,SAAU,GAAM,UAAW,EAAK,CACrI,CAAC,EACD,CACE,IAAK,SACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,kBACL,QAAS,CACP,MAAO,WACP,KAAM,kBACN,QAAS,WACT,KAAM,CAAC,UAAW,MAAO,WAAY,QAAS,cAAe,SAAU,aAAc,MAAM,CAC7F,CACF,EACA,CACE,IAAK,qBACL,QAAS,CACP,MAAO,eACP,YAAa,mDACb,KAAM,SACN,QAAS,EACX,CACF,EACA,CACE,IAAK,8BACL,QAAS,CACP,MAAO,2BACP,KAAM,SACN,QAAS,EACX,EACA,WAAY,CAAE,aAAwC,GAAS,QAAQ,cAAgB,EACzF,CACF,EACA,UAAW,CACb,EACA,EAAA,oCAAoC,EACpC,EAAA,8BAAwD,EACxD,EAAA,gCAA0D,CAAE,MAAO,CAAE,QAAS,GAAM,qBAAsB,EAAK,CAAE,CAAC,CACpH"}
@@ -1,8 +1,10 @@
1
1
  import { getThemeMainColor as e, getThemeMainColorExtraLabelClickAction as t, getThemeMainColorExtraLabelHasClickAction as n, getThemeMainColorResetLabel as r } from "../helpers.js";
2
2
  import { createAxesOptionsGroup as i } from "../shared/utils/axis-options.config.js";
3
3
  import { createScatterGuidelinesOptionsGroup as a } from "../shared/utils/guidelines-options.config.js";
4
+ import { createInfoTooltipOptionsGroup as o } from "../shared/utils/info-tooltip-options.config.js";
5
+ import { createInteractivityOptionsGroup as s } from "../shared/utils/interactivity-options.config.js";
4
6
  //#region src/lib/scatter-plot/scatter-plot-options.config.ts
5
- var o = ({ slots: e }) => Array.isArray(e) && e?.length > 0 ? (e?.find((e) => e?.name === "color")?.content?.length ?? 0) > 0 : !1, s = [
7
+ var c = ({ slots: e }) => Array.isArray(e) && e?.length > 0 ? (e?.find((e) => e?.name === "color")?.content?.length ?? 0) > 0 : !1, l = [
6
8
  {
7
9
  key: "general",
8
10
  type: "group",
@@ -23,7 +25,7 @@ var o = ({ slots: e }) => Array.isArray(e) && e?.length > 0 ? (e?.find((e) => e?
23
25
  label: "Legend",
24
26
  default: !0
25
27
  },
26
- visibleIf: o
28
+ visibleIf: c
27
29
  },
28
30
  {
29
31
  key: "color",
@@ -98,11 +100,16 @@ var o = ({ slots: e }) => Array.isArray(e) && e?.length > 0 ? (e?.find((e) => e?
98
100
  visibleIf: ({ options: e }) => e?.legend?.customOrder === !0
99
101
  }
100
102
  ],
101
- visibleIf: o
103
+ visibleIf: c
102
104
  },
103
- a()
105
+ a(),
106
+ o(),
107
+ s({ brush: {
108
+ default: !0,
109
+ excludesClickActions: !0
110
+ } })
104
111
  ];
105
112
  //#endregion
106
- export { s as default };
113
+ export { l as default };
107
114
 
108
115
  //# sourceMappingURL=scatter-plot-options.config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scatter-plot-options.config.js","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/scatter-plot/scatter-plot-options.config.ts"],"sourcesContent":["import {\n getThemeMainColor,\n getThemeMainColorExtraLabelClickAction,\n getThemeMainColorExtraLabelHasClickAction,\n getThemeMainColorResetLabel\n} from '../helpers';\nimport { createAxesOptionsGroup } from '../shared/utils/axis-options.config';\nimport { createScatterGuidelinesOptionsGroup } from '../shared/utils/guidelines-options.config';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { ScatterPlotViewOptions } from './scatter-plot-options';\nimport type { ScatterPlotSlots } from './scatter-plot-slots';\n\ntype ScatterPlotConfigContext = OptionsConfigContext<ScatterPlotViewOptions, ScatterPlotSlots>;\n\nconst hasColor = ({ slots }: Pick<ScatterPlotConfigContext, 'slots'>) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n return (slots?.find((slot) => slot?.name === 'color')?.content?.length ?? 0) > 0;\n }\n\n return false;\n};\n\nconst hasNoColor = ({ slots }: ScatterPlotConfigContext) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n return slots?.find((slot) => slot?.name === 'color')?.content?.length === 0;\n }\n\n return true;\n};\n\nconst scatterPlotOptionsConfig: OptionsConfig<ScatterPlotConfigContext> = [\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: true\n }\n },\n {\n key: 'display.legend',\n control: {\n type: 'switch',\n label: 'Legend',\n default: true\n },\n visibleIf: hasColor\n },\n {\n key: 'color',\n control: {\n type: 'color-picker',\n label: 'Color',\n default: ({ theme }: ScatterPlotConfigContext) => getThemeMainColor(theme),\n extraLabel: ({ options, theme }: ScatterPlotConfigContext) => getThemeMainColorResetLabel(options, theme, 'color'),\n extraLabelHasClickAction: ({ options, theme }: ScatterPlotConfigContext) =>\n getThemeMainColorExtraLabelHasClickAction(options, theme, 'color'),\n extraLabelClickAction: ({ options, theme }: ScatterPlotConfigContext) =>\n getThemeMainColorExtraLabelClickAction(options, theme, 'color')\n },\n visibleIf: hasNoColor\n }\n ]\n },\n createAxesOptionsGroup<ScatterPlotConfigContext>([\n { axis: 'x', role: 'numeric', manualRange: { key: 'manualAxesRange.x' }, color: true, label: true, tickMode: true, gridlines: true },\n { axis: 'y', role: 'numeric', manualRange: { key: 'manualAxesRange.y' }, color: true, label: true, tickMode: true, gridlines: true }\n ]),\n {\n key: 'legend',\n type: 'group',\n open: false,\n children: [\n {\n key: 'legend.position',\n control: {\n label: 'Position',\n type: 'position-picker',\n default: 'topRight',\n enum: ['topLeft', 'top', 'topRight', 'right', 'bottomRight', 'bottom', 'bottomLeft', 'left']\n }\n },\n {\n key: 'legend.customOrder',\n control: {\n label: 'Custom order',\n description: 'Drag items in the chart legend to set the order.',\n type: 'switch',\n default: false\n }\n },\n {\n key: 'interactivity.legendReorder',\n control: {\n label: 'Allow viewers to reorder',\n type: 'switch',\n default: false\n },\n visibleIf: ({ options }: ScatterPlotConfigContext) => options?.legend?.customOrder === true\n }\n ],\n visibleIf: hasColor\n },\n createScatterGuidelinesOptionsGroup()\n];\n\nexport default scatterPlotOptionsConfig;\n"],"mappings":";;;;AAcA,IAAM,KAAY,EAAE,eACd,MAAM,QAAQ,CAAK,KAAK,GAAO,SAAS,KAClC,GAAO,MAAM,MAAS,GAAM,SAAS,OAAO,CAAC,EAAE,SAAS,UAAU,KAAK,IAG1E,IAWH,IAAoE;CACxE;EACE,KAAK;EACL,MAAM;EACN,MAAM;EACN,UAAU;GACR;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;IACX;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;IACX;IACA,WAAW;GACb;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,UAAU,EAAE,eAAsC,EAAkB,CAAK;KACzE,aAAa,EAAE,YAAS,eAAsC,EAA4B,GAAS,GAAO,OAAO;KACjH,2BAA2B,EAAE,YAAS,eACpC,EAA0C,GAAS,GAAO,OAAO;KACnE,wBAAwB,EAAE,YAAS,eACjC,EAAuC,GAAS,GAAO,OAAO;IAClE;IACA,YA3CY,EAAE,eAChB,MAAM,QAAQ,CAAK,KAAK,GAAO,SAAS,IACnC,GAAO,MAAM,MAAS,GAAM,SAAS,OAAO,CAAC,EAAE,SAAS,WAAW,IAGrE;GAuCH;EACF;CACF;CACA,EAAiD,CAC/C;EAAE,MAAM;EAAK,MAAM;EAAW,aAAa,EAAE,KAAK,oBAAoB;EAAG,OAAO;EAAM,OAAO;EAAM,UAAU;EAAM,WAAW;CAAK,GACnI;EAAE,MAAM;EAAK,MAAM;EAAW,aAAa,EAAE,KAAK,oBAAoB;EAAG,OAAO;EAAM,OAAO;EAAM,UAAU;EAAM,WAAW;CAAK,CACrI,CAAC;CACD;EACE,KAAK;EACL,MAAM;EACN,MAAM;EACN,UAAU;GACR;IACE,KAAK;IACL,SAAS;KACP,OAAO;KACP,MAAM;KACN,SAAS;KACT,MAAM;MAAC;MAAW;MAAO;MAAY;MAAS;MAAe;MAAU;MAAc;KAAM;IAC7F;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,OAAO;KACP,aAAa;KACb,MAAM;KACN,SAAS;IACX;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,OAAO;KACP,MAAM;KACN,SAAS;IACX;IACA,YAAY,EAAE,iBAAwC,GAAS,QAAQ,gBAAgB;GACzF;EACF;EACA,WAAW;CACb;CACA,EAAoC;AACtC"}
1
+ {"version":3,"file":"scatter-plot-options.config.js","names":[],"sources":["../../../../libs/dashboard-contents-types/src/lib/scatter-plot/scatter-plot-options.config.ts"],"sourcesContent":["import {\n getThemeMainColor,\n getThemeMainColorExtraLabelClickAction,\n getThemeMainColorExtraLabelHasClickAction,\n getThemeMainColorResetLabel\n} from '../helpers';\nimport { createAxesOptionsGroup } from '../shared/utils/axis-options.config';\nimport { createScatterGuidelinesOptionsGroup } from '../shared/utils/guidelines-options.config';\nimport { createInfoTooltipOptionsGroup } from '../shared/utils/info-tooltip-options.config';\nimport { createInteractivityOptionsGroup } from '../shared/utils/interactivity-options.config';\nimport type { OptionsConfig, OptionsConfigContext } from '../shared/utils/options-config.types';\nimport type { ScatterPlotViewOptions } from './scatter-plot-options';\nimport type { ScatterPlotSlots } from './scatter-plot-slots';\n\ntype ScatterPlotConfigContext = OptionsConfigContext<ScatterPlotViewOptions, ScatterPlotSlots>;\n\nconst hasColor = ({ slots }: Pick<ScatterPlotConfigContext, 'slots'>) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n return (slots?.find((slot) => slot?.name === 'color')?.content?.length ?? 0) > 0;\n }\n\n return false;\n};\n\nconst hasNoColor = ({ slots }: ScatterPlotConfigContext) => {\n if (Array.isArray(slots) && slots?.length > 0) {\n return slots?.find((slot) => slot?.name === 'color')?.content?.length === 0;\n }\n\n return true;\n};\n\nconst scatterPlotOptionsConfig: OptionsConfig<ScatterPlotConfigContext> = [\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: true\n }\n },\n {\n key: 'display.legend',\n control: {\n type: 'switch',\n label: 'Legend',\n default: true\n },\n visibleIf: hasColor\n },\n {\n key: 'color',\n control: {\n type: 'color-picker',\n label: 'Color',\n default: ({ theme }: ScatterPlotConfigContext) => getThemeMainColor(theme),\n extraLabel: ({ options, theme }: ScatterPlotConfigContext) => getThemeMainColorResetLabel(options, theme, 'color'),\n extraLabelHasClickAction: ({ options, theme }: ScatterPlotConfigContext) =>\n getThemeMainColorExtraLabelHasClickAction(options, theme, 'color'),\n extraLabelClickAction: ({ options, theme }: ScatterPlotConfigContext) =>\n getThemeMainColorExtraLabelClickAction(options, theme, 'color')\n },\n visibleIf: hasNoColor\n }\n ]\n },\n createAxesOptionsGroup<ScatterPlotConfigContext>([\n { axis: 'x', role: 'numeric', manualRange: { key: 'manualAxesRange.x' }, color: true, label: true, tickMode: true, gridlines: true },\n { axis: 'y', role: 'numeric', manualRange: { key: 'manualAxesRange.y' }, color: true, label: true, tickMode: true, gridlines: true }\n ]),\n {\n key: 'legend',\n type: 'group',\n open: false,\n children: [\n {\n key: 'legend.position',\n control: {\n label: 'Position',\n type: 'position-picker',\n default: 'topRight',\n enum: ['topLeft', 'top', 'topRight', 'right', 'bottomRight', 'bottom', 'bottomLeft', 'left']\n }\n },\n {\n key: 'legend.customOrder',\n control: {\n label: 'Custom order',\n description: 'Drag items in the chart legend to set the order.',\n type: 'switch',\n default: false\n }\n },\n {\n key: 'interactivity.legendReorder',\n control: {\n label: 'Allow viewers to reorder',\n type: 'switch',\n default: false\n },\n visibleIf: ({ options }: ScatterPlotConfigContext) => options?.legend?.customOrder === true\n }\n ],\n visibleIf: hasColor\n },\n createScatterGuidelinesOptionsGroup(),\n createInfoTooltipOptionsGroup<ScatterPlotConfigContext>(),\n createInteractivityOptionsGroup<ScatterPlotConfigContext>({ brush: { default: true, excludesClickActions: true } })\n];\n\nexport default scatterPlotOptionsConfig;\n"],"mappings":";;;;;;AAgBA,IAAM,KAAY,EAAE,eACd,MAAM,QAAQ,CAAK,KAAK,GAAO,SAAS,KAClC,GAAO,MAAM,MAAS,GAAM,SAAS,OAAO,CAAC,EAAE,SAAS,UAAU,KAAK,IAG1E,IAWH,IAAoE;CACxE;EACE,KAAK;EACL,MAAM;EACN,MAAM;EACN,UAAU;GACR;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;IACX;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,SAAS;IACX;IACA,WAAW;GACb;GACA;IACE,KAAK;IACL,SAAS;KACP,MAAM;KACN,OAAO;KACP,UAAU,EAAE,eAAsC,EAAkB,CAAK;KACzE,aAAa,EAAE,YAAS,eAAsC,EAA4B,GAAS,GAAO,OAAO;KACjH,2BAA2B,EAAE,YAAS,eACpC,EAA0C,GAAS,GAAO,OAAO;KACnE,wBAAwB,EAAE,YAAS,eACjC,EAAuC,GAAS,GAAO,OAAO;IAClE;IACA,YA3CY,EAAE,eAChB,MAAM,QAAQ,CAAK,KAAK,GAAO,SAAS,IACnC,GAAO,MAAM,MAAS,GAAM,SAAS,OAAO,CAAC,EAAE,SAAS,WAAW,IAGrE;GAuCH;EACF;CACF;CACA,EAAiD,CAC/C;EAAE,MAAM;EAAK,MAAM;EAAW,aAAa,EAAE,KAAK,oBAAoB;EAAG,OAAO;EAAM,OAAO;EAAM,UAAU;EAAM,WAAW;CAAK,GACnI;EAAE,MAAM;EAAK,MAAM;EAAW,aAAa,EAAE,KAAK,oBAAoB;EAAG,OAAO;EAAM,OAAO;EAAM,UAAU;EAAM,WAAW;CAAK,CACrI,CAAC;CACD;EACE,KAAK;EACL,MAAM;EACN,MAAM;EACN,UAAU;GACR;IACE,KAAK;IACL,SAAS;KACP,OAAO;KACP,MAAM;KACN,SAAS;KACT,MAAM;MAAC;MAAW;MAAO;MAAY;MAAS;MAAe;MAAU;MAAc;KAAM;IAC7F;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,OAAO;KACP,aAAa;KACb,MAAM;KACN,SAAS;IACX;GACF;GACA;IACE,KAAK;IACL,SAAS;KACP,OAAO;KACP,MAAM;KACN,SAAS;IACX;IACA,YAAY,EAAE,iBAAwC,GAAS,QAAQ,gBAAgB;GACzF;EACF;EACA,WAAW;CACb;CACA,EAAoC;CACpC,EAAwD;CACxD,EAA0D,EAAE,OAAO;EAAE,SAAS;EAAM,sBAAsB;CAAK,EAAE,CAAC;AACpH"}
@@ -0,0 +1,2 @@
1
+ var e=e=>!e||typeof e!=`object`||Array.isArray(e)?{}:Object.fromEntries(Object.entries(e).filter(e=>typeof e[1]==`string`&&e[1].trim().length>0)),t=(t,n)=>{let r=e(n),i=t.annotate&&typeof t.annotate==`object`?t.annotate:{},a=i.infoTooltip&&typeof i.infoTooltip==`object`?i.infoTooltip:{};if(Object.keys(r).length>0)return{...t,annotate:{...i,infoTooltip:{...a,content:r}}};let{infoTooltip:o,...s}=i,c={...t};return delete c.annotate,Object.keys(s).length>0?{...c,annotate:s}:c},n=({options:e})=>Object.values(e?.annotate?.infoTooltip?.content??{}).some(e=>typeof e==`string`&&e.trim().length>0),r=()=>({key:`informationTooltip`,type:`group`,open:!1,children:[{key:`annotate.infoTooltip.content`,control:{type:`multi-language-field`,toOptions:({options:e,value:n})=>t(e,n)}},{key:`annotate.infoTooltip.position`,control:{type:`position-picker`,default:`left`,enum:[`left`,`right`]},visibleIf:n}]});exports.createInfoTooltipOptionsGroup=r;
2
+ //# sourceMappingURL=info-tooltip-options.config.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info-tooltip-options.config.cjs","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/info-tooltip-options.config.ts"],"sourcesContent":["import type { InfoTooltipViewOptions } from '../types/info-tooltip-options';\nimport type { OptionConfig, OptionsConfigContext } from './options-config.types';\n\ntype InfoTooltipConfigContext = OptionsConfigContext<InfoTooltipViewOptions>;\n\nconst nonEmptyContent = (value: unknown): Record<string, string> => {\n if (!value || typeof value !== 'object' || Array.isArray(value)) {\n return {};\n }\n\n return Object.fromEntries(\n Object.entries(value).filter(\n (entry): entry is [string, string] => typeof entry[1] === 'string' && entry[1].trim().length > 0\n )\n );\n};\n\nconst updateInfoTooltipContent = (\n options: InfoTooltipViewOptions & Record<string, unknown>,\n value: unknown\n): InfoTooltipViewOptions & Record<string, unknown> => {\n const content = nonEmptyContent(value);\n const annotate = options.annotate && typeof options.annotate === 'object' ? options.annotate : {};\n const infoTooltip = annotate.infoTooltip && typeof annotate.infoTooltip === 'object' ? annotate.infoTooltip : {};\n\n if (Object.keys(content).length > 0) {\n return {\n ...options,\n annotate: {\n ...annotate,\n infoTooltip: {\n ...infoTooltip,\n content\n }\n }\n };\n }\n\n const { infoTooltip: ignoredInfoTooltip, ...remainingAnnotate } = annotate;\n const nextOptions = { ...options };\n\n delete nextOptions.annotate;\n\n return Object.keys(remainingAnnotate).length > 0 ? { ...nextOptions, annotate: remainingAnnotate } : nextOptions;\n};\n\nconst hasInfoTooltipContent = ({ options }: InfoTooltipConfigContext): boolean =>\n Object.values(options?.annotate?.infoTooltip?.content ?? {}).some(\n (content) => typeof content === 'string' && content.trim().length > 0\n );\n\nexport const createInfoTooltipOptionsGroup = <TContext extends InfoTooltipConfigContext>(): OptionConfig<TContext> => ({\n key: 'informationTooltip',\n type: 'group',\n open: false,\n children: [\n {\n key: 'annotate.infoTooltip.content',\n control: {\n type: 'multi-language-field',\n toOptions: ({\n options,\n value\n }: {\n options: InfoTooltipViewOptions & Record<string, unknown>;\n value: unknown;\n }) => updateInfoTooltipContent(options, value)\n }\n },\n {\n key: 'annotate.infoTooltip.position',\n control: {\n type: 'position-picker',\n default: 'left',\n enum: ['left', 'right']\n },\n visibleIf: hasInfoTooltipContent\n }\n ]\n});\n"],"mappings":"AAKA,IAAM,EAAmB,GACnB,CAAC,GAAS,OAAO,GAAU,UAAY,MAAM,QAAQ,CAAK,EACrD,CAAC,EAGH,OAAO,YACZ,OAAO,QAAQ,CAAK,CAAC,CAAC,OACnB,GAAqC,OAAO,EAAM,IAAO,UAAY,EAAM,EAAE,CAAC,KAAK,CAAC,CAAC,OAAS,CACjG,CACF,EAGI,GACJ,EACA,IACqD,CACrD,IAAM,EAAU,EAAgB,CAAK,EAC/B,EAAW,EAAQ,UAAY,OAAO,EAAQ,UAAa,SAAW,EAAQ,SAAW,CAAC,EAC1F,EAAc,EAAS,aAAe,OAAO,EAAS,aAAgB,SAAW,EAAS,YAAc,CAAC,EAE/G,GAAI,OAAO,KAAK,CAAO,CAAC,CAAC,OAAS,EAChC,MAAO,CACL,GAAG,EACH,SAAU,CACR,GAAG,EACH,YAAa,CACX,GAAG,EACH,SACF,CACF,CACF,EAGF,GAAM,CAAE,YAAa,EAAoB,GAAG,GAAsB,EAC5D,EAAc,CAAE,GAAG,CAAQ,EAIjC,OAFA,OAAO,EAAY,SAEZ,OAAO,KAAK,CAAiB,CAAC,CAAC,OAAS,EAAI,CAAE,GAAG,EAAa,SAAU,CAAkB,EAAI,CACvG,EAEM,GAAyB,CAAE,aAC/B,OAAO,OAAO,GAAS,UAAU,aAAa,SAAW,CAAC,CAAC,CAAC,CAAC,KAC1D,GAAY,OAAO,GAAY,UAAY,EAAQ,KAAK,CAAC,CAAC,OAAS,CACtE,EAEW,OAA0G,CACrH,IAAK,qBACL,KAAM,QACN,KAAM,GACN,SAAU,CACR,CACE,IAAK,+BACL,QAAS,CACP,KAAM,uBACN,WAAY,CACV,UACA,WAII,EAAyB,EAAS,CAAK,CAC/C,CACF,EACA,CACE,IAAK,gCACL,QAAS,CACP,KAAM,kBACN,QAAS,OACT,KAAM,CAAC,OAAQ,OAAO,CACxB,EACA,UAAW,CACb,CACF,CACF"}
@@ -0,0 +1,42 @@
1
+ //#region src/lib/shared/utils/info-tooltip-options.config.ts
2
+ var e = (e) => !e || typeof e != "object" || Array.isArray(e) ? {} : Object.fromEntries(Object.entries(e).filter((e) => typeof e[1] == "string" && e[1].trim().length > 0)), t = (t, n) => {
3
+ let r = e(n), i = t.annotate && typeof t.annotate == "object" ? t.annotate : {}, a = i.infoTooltip && typeof i.infoTooltip == "object" ? i.infoTooltip : {};
4
+ if (Object.keys(r).length > 0) return {
5
+ ...t,
6
+ annotate: {
7
+ ...i,
8
+ infoTooltip: {
9
+ ...a,
10
+ content: r
11
+ }
12
+ }
13
+ };
14
+ let { infoTooltip: o, ...s } = i, c = { ...t };
15
+ return delete c.annotate, Object.keys(s).length > 0 ? {
16
+ ...c,
17
+ annotate: s
18
+ } : c;
19
+ }, n = ({ options: e }) => Object.values(e?.annotate?.infoTooltip?.content ?? {}).some((e) => typeof e == "string" && e.trim().length > 0), r = () => ({
20
+ key: "informationTooltip",
21
+ type: "group",
22
+ open: !1,
23
+ children: [{
24
+ key: "annotate.infoTooltip.content",
25
+ control: {
26
+ type: "multi-language-field",
27
+ toOptions: ({ options: e, value: n }) => t(e, n)
28
+ }
29
+ }, {
30
+ key: "annotate.infoTooltip.position",
31
+ control: {
32
+ type: "position-picker",
33
+ default: "left",
34
+ enum: ["left", "right"]
35
+ },
36
+ visibleIf: n
37
+ }]
38
+ });
39
+ //#endregion
40
+ export { r as createInfoTooltipOptionsGroup };
41
+
42
+ //# sourceMappingURL=info-tooltip-options.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info-tooltip-options.config.js","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/info-tooltip-options.config.ts"],"sourcesContent":["import type { InfoTooltipViewOptions } from '../types/info-tooltip-options';\nimport type { OptionConfig, OptionsConfigContext } from './options-config.types';\n\ntype InfoTooltipConfigContext = OptionsConfigContext<InfoTooltipViewOptions>;\n\nconst nonEmptyContent = (value: unknown): Record<string, string> => {\n if (!value || typeof value !== 'object' || Array.isArray(value)) {\n return {};\n }\n\n return Object.fromEntries(\n Object.entries(value).filter(\n (entry): entry is [string, string] => typeof entry[1] === 'string' && entry[1].trim().length > 0\n )\n );\n};\n\nconst updateInfoTooltipContent = (\n options: InfoTooltipViewOptions & Record<string, unknown>,\n value: unknown\n): InfoTooltipViewOptions & Record<string, unknown> => {\n const content = nonEmptyContent(value);\n const annotate = options.annotate && typeof options.annotate === 'object' ? options.annotate : {};\n const infoTooltip = annotate.infoTooltip && typeof annotate.infoTooltip === 'object' ? annotate.infoTooltip : {};\n\n if (Object.keys(content).length > 0) {\n return {\n ...options,\n annotate: {\n ...annotate,\n infoTooltip: {\n ...infoTooltip,\n content\n }\n }\n };\n }\n\n const { infoTooltip: ignoredInfoTooltip, ...remainingAnnotate } = annotate;\n const nextOptions = { ...options };\n\n delete nextOptions.annotate;\n\n return Object.keys(remainingAnnotate).length > 0 ? { ...nextOptions, annotate: remainingAnnotate } : nextOptions;\n};\n\nconst hasInfoTooltipContent = ({ options }: InfoTooltipConfigContext): boolean =>\n Object.values(options?.annotate?.infoTooltip?.content ?? {}).some(\n (content) => typeof content === 'string' && content.trim().length > 0\n );\n\nexport const createInfoTooltipOptionsGroup = <TContext extends InfoTooltipConfigContext>(): OptionConfig<TContext> => ({\n key: 'informationTooltip',\n type: 'group',\n open: false,\n children: [\n {\n key: 'annotate.infoTooltip.content',\n control: {\n type: 'multi-language-field',\n toOptions: ({\n options,\n value\n }: {\n options: InfoTooltipViewOptions & Record<string, unknown>;\n value: unknown;\n }) => updateInfoTooltipContent(options, value)\n }\n },\n {\n key: 'annotate.infoTooltip.position',\n control: {\n type: 'position-picker',\n default: 'left',\n enum: ['left', 'right']\n },\n visibleIf: hasInfoTooltipContent\n }\n ]\n});\n"],"mappings":";AAKA,IAAM,KAAmB,MACnB,CAAC,KAAS,OAAO,KAAU,YAAY,MAAM,QAAQ,CAAK,IACrD,CAAC,IAGH,OAAO,YACZ,OAAO,QAAQ,CAAK,CAAC,CAAC,QACnB,MAAqC,OAAO,EAAM,MAAO,YAAY,EAAM,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,CACjG,CACF,GAGI,KACJ,GACA,MACqD;CACrD,IAAM,IAAU,EAAgB,CAAK,GAC/B,IAAW,EAAQ,YAAY,OAAO,EAAQ,YAAa,WAAW,EAAQ,WAAW,CAAC,GAC1F,IAAc,EAAS,eAAe,OAAO,EAAS,eAAgB,WAAW,EAAS,cAAc,CAAC;CAE/G,IAAI,OAAO,KAAK,CAAO,CAAC,CAAC,SAAS,GAChC,OAAO;EACL,GAAG;EACH,UAAU;GACR,GAAG;GACH,aAAa;IACX,GAAG;IACH;GACF;EACF;CACF;CAGF,IAAM,EAAE,aAAa,GAAoB,GAAG,MAAsB,GAC5D,IAAc,EAAE,GAAG,EAAQ;CAIjC,OAFA,OAAO,EAAY,UAEZ,OAAO,KAAK,CAAiB,CAAC,CAAC,SAAS,IAAI;EAAE,GAAG;EAAa,UAAU;CAAkB,IAAI;AACvG,GAEM,KAAyB,EAAE,iBAC/B,OAAO,OAAO,GAAS,UAAU,aAAa,WAAW,CAAC,CAAC,CAAC,CAAC,MAC1D,MAAY,OAAO,KAAY,YAAY,EAAQ,KAAK,CAAC,CAAC,SAAS,CACtE,GAEW,WAA0G;CACrH,KAAK;CACL,MAAM;CACN,MAAM;CACN,UAAU,CACR;EACE,KAAK;EACL,SAAS;GACP,MAAM;GACN,YAAY,EACV,YACA,eAII,EAAyB,GAAS,CAAK;EAC/C;CACF,GACA;EACE,KAAK;EACL,SAAS;GACP,MAAM;GACN,SAAS;GACT,MAAM,CAAC,QAAQ,OAAO;EACxB;EACA,WAAW;CACb,CACF;AACF"}
@@ -0,0 +1,2 @@
1
+ var e={de:{groups:{informationTooltip:{label:`Informations-Tooltip`}},options:{"annotate.infoTooltip.content":{label:`Inhalt`,placeholder:`Tooltip-Inhalt eingeben`},"annotate.infoTooltip.position":{label:`Position`}}},en:{groups:{informationTooltip:{label:`Information tooltip`}},options:{"annotate.infoTooltip.content":{label:`Content`,placeholder:`Enter tooltip content`},"annotate.infoTooltip.position":{label:`Position`}}},es:{groups:{informationTooltip:{label:`Tooltip de información`}},options:{"annotate.infoTooltip.content":{label:`Contenido`,placeholder:`Introduce el contenido del tooltip`},"annotate.infoTooltip.position":{label:`Posición`}}},fr:{groups:{informationTooltip:{label:`Infobulle d’information`}},options:{"annotate.infoTooltip.content":{label:`Contenu`,placeholder:`Saisissez le contenu de l’infobulle`},"annotate.infoTooltip.position":{label:`Position`}}},nl:{groups:{informationTooltip:{label:`Informatietooltip`}},options:{"annotate.infoTooltip.content":{label:`Inhoud`,placeholder:`Voer tooltipinhoud in`},"annotate.infoTooltip.position":{label:`Positie`}}}},t=t=>e[t]??e.en;exports.getInfoTooltipTranslations=t;
2
+ //# sourceMappingURL=info-tooltip-options.i18n.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info-tooltip-options.i18n.cjs","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/info-tooltip-options.i18n.ts"],"sourcesContent":["import type { TranslationsFile } from './options-config.types';\n\nconst translationsByLanguage: Record<string, TranslationsFile> = {\n de: {\n groups: { informationTooltip: { label: 'Informations-Tooltip' } },\n options: {\n 'annotate.infoTooltip.content': { label: 'Inhalt', placeholder: 'Tooltip-Inhalt eingeben' },\n 'annotate.infoTooltip.position': { label: 'Position' }\n }\n },\n en: {\n groups: { informationTooltip: { label: 'Information tooltip' } },\n options: {\n 'annotate.infoTooltip.content': { label: 'Content', placeholder: 'Enter tooltip content' },\n 'annotate.infoTooltip.position': { label: 'Position' }\n }\n },\n es: {\n groups: { informationTooltip: { label: 'Tooltip de información' } },\n options: {\n 'annotate.infoTooltip.content': { label: 'Contenido', placeholder: 'Introduce el contenido del tooltip' },\n 'annotate.infoTooltip.position': { label: 'Posición' }\n }\n },\n fr: {\n groups: { informationTooltip: { label: 'Infobulle d’information' } },\n options: {\n 'annotate.infoTooltip.content': { label: 'Contenu', placeholder: 'Saisissez le contenu de l’infobulle' },\n 'annotate.infoTooltip.position': { label: 'Position' }\n }\n },\n nl: {\n groups: { informationTooltip: { label: 'Informatietooltip' } },\n options: {\n 'annotate.infoTooltip.content': { label: 'Inhoud', placeholder: 'Voer tooltipinhoud in' },\n 'annotate.infoTooltip.position': { label: 'Positie' }\n }\n }\n};\n\nexport const getInfoTooltipTranslations = (language: string): TranslationsFile =>\n translationsByLanguage[language] ?? translationsByLanguage['en'];\n"],"mappings":"AAEA,IAAM,EAA2D,CAC/D,GAAI,CACF,OAAQ,CAAE,mBAAoB,CAAE,MAAO,sBAAuB,CAAE,EAChE,QAAS,CACP,+BAAgC,CAAE,MAAO,SAAU,YAAa,yBAA0B,EAC1F,gCAAiC,CAAE,MAAO,UAAW,CACvD,CACF,EACA,GAAI,CACF,OAAQ,CAAE,mBAAoB,CAAE,MAAO,qBAAsB,CAAE,EAC/D,QAAS,CACP,+BAAgC,CAAE,MAAO,UAAW,YAAa,uBAAwB,EACzF,gCAAiC,CAAE,MAAO,UAAW,CACvD,CACF,EACA,GAAI,CACF,OAAQ,CAAE,mBAAoB,CAAE,MAAO,wBAAyB,CAAE,EAClE,QAAS,CACP,+BAAgC,CAAE,MAAO,YAAa,YAAa,oCAAqC,EACxG,gCAAiC,CAAE,MAAO,UAAW,CACvD,CACF,EACA,GAAI,CACF,OAAQ,CAAE,mBAAoB,CAAE,MAAO,yBAA0B,CAAE,EACnE,QAAS,CACP,+BAAgC,CAAE,MAAO,UAAW,YAAa,qCAAsC,EACvG,gCAAiC,CAAE,MAAO,UAAW,CACvD,CACF,EACA,GAAI,CACF,OAAQ,CAAE,mBAAoB,CAAE,MAAO,mBAAoB,CAAE,EAC7D,QAAS,CACP,+BAAgC,CAAE,MAAO,SAAU,YAAa,uBAAwB,EACxF,gCAAiC,CAAE,MAAO,SAAU,CACtD,CACF,CACF,EAEa,EAA8B,GACzC,EAAuB,IAAa,EAAuB"}
@@ -0,0 +1,57 @@
1
+ //#region src/lib/shared/utils/info-tooltip-options.i18n.ts
2
+ var e = {
3
+ de: {
4
+ groups: { informationTooltip: { label: "Informations-Tooltip" } },
5
+ options: {
6
+ "annotate.infoTooltip.content": {
7
+ label: "Inhalt",
8
+ placeholder: "Tooltip-Inhalt eingeben"
9
+ },
10
+ "annotate.infoTooltip.position": { label: "Position" }
11
+ }
12
+ },
13
+ en: {
14
+ groups: { informationTooltip: { label: "Information tooltip" } },
15
+ options: {
16
+ "annotate.infoTooltip.content": {
17
+ label: "Content",
18
+ placeholder: "Enter tooltip content"
19
+ },
20
+ "annotate.infoTooltip.position": { label: "Position" }
21
+ }
22
+ },
23
+ es: {
24
+ groups: { informationTooltip: { label: "Tooltip de información" } },
25
+ options: {
26
+ "annotate.infoTooltip.content": {
27
+ label: "Contenido",
28
+ placeholder: "Introduce el contenido del tooltip"
29
+ },
30
+ "annotate.infoTooltip.position": { label: "Posición" }
31
+ }
32
+ },
33
+ fr: {
34
+ groups: { informationTooltip: { label: "Infobulle d’information" } },
35
+ options: {
36
+ "annotate.infoTooltip.content": {
37
+ label: "Contenu",
38
+ placeholder: "Saisissez le contenu de l’infobulle"
39
+ },
40
+ "annotate.infoTooltip.position": { label: "Position" }
41
+ }
42
+ },
43
+ nl: {
44
+ groups: { informationTooltip: { label: "Informatietooltip" } },
45
+ options: {
46
+ "annotate.infoTooltip.content": {
47
+ label: "Inhoud",
48
+ placeholder: "Voer tooltipinhoud in"
49
+ },
50
+ "annotate.infoTooltip.position": { label: "Positie" }
51
+ }
52
+ }
53
+ }, t = (t) => e[t] ?? e.en;
54
+ //#endregion
55
+ export { t as getInfoTooltipTranslations };
56
+
57
+ //# sourceMappingURL=info-tooltip-options.i18n.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info-tooltip-options.i18n.js","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/info-tooltip-options.i18n.ts"],"sourcesContent":["import type { TranslationsFile } from './options-config.types';\n\nconst translationsByLanguage: Record<string, TranslationsFile> = {\n de: {\n groups: { informationTooltip: { label: 'Informations-Tooltip' } },\n options: {\n 'annotate.infoTooltip.content': { label: 'Inhalt', placeholder: 'Tooltip-Inhalt eingeben' },\n 'annotate.infoTooltip.position': { label: 'Position' }\n }\n },\n en: {\n groups: { informationTooltip: { label: 'Information tooltip' } },\n options: {\n 'annotate.infoTooltip.content': { label: 'Content', placeholder: 'Enter tooltip content' },\n 'annotate.infoTooltip.position': { label: 'Position' }\n }\n },\n es: {\n groups: { informationTooltip: { label: 'Tooltip de información' } },\n options: {\n 'annotate.infoTooltip.content': { label: 'Contenido', placeholder: 'Introduce el contenido del tooltip' },\n 'annotate.infoTooltip.position': { label: 'Posición' }\n }\n },\n fr: {\n groups: { informationTooltip: { label: 'Infobulle d’information' } },\n options: {\n 'annotate.infoTooltip.content': { label: 'Contenu', placeholder: 'Saisissez le contenu de l’infobulle' },\n 'annotate.infoTooltip.position': { label: 'Position' }\n }\n },\n nl: {\n groups: { informationTooltip: { label: 'Informatietooltip' } },\n options: {\n 'annotate.infoTooltip.content': { label: 'Inhoud', placeholder: 'Voer tooltipinhoud in' },\n 'annotate.infoTooltip.position': { label: 'Positie' }\n }\n }\n};\n\nexport const getInfoTooltipTranslations = (language: string): TranslationsFile =>\n translationsByLanguage[language] ?? translationsByLanguage['en'];\n"],"mappings":";AAEA,IAAM,IAA2D;CAC/D,IAAI;EACF,QAAQ,EAAE,oBAAoB,EAAE,OAAO,uBAAuB,EAAE;EAChE,SAAS;GACP,gCAAgC;IAAE,OAAO;IAAU,aAAa;GAA0B;GAC1F,iCAAiC,EAAE,OAAO,WAAW;EACvD;CACF;CACA,IAAI;EACF,QAAQ,EAAE,oBAAoB,EAAE,OAAO,sBAAsB,EAAE;EAC/D,SAAS;GACP,gCAAgC;IAAE,OAAO;IAAW,aAAa;GAAwB;GACzF,iCAAiC,EAAE,OAAO,WAAW;EACvD;CACF;CACA,IAAI;EACF,QAAQ,EAAE,oBAAoB,EAAE,OAAO,yBAAyB,EAAE;EAClE,SAAS;GACP,gCAAgC;IAAE,OAAO;IAAa,aAAa;GAAqC;GACxG,iCAAiC,EAAE,OAAO,WAAW;EACvD;CACF;CACA,IAAI;EACF,QAAQ,EAAE,oBAAoB,EAAE,OAAO,0BAA0B,EAAE;EACnE,SAAS;GACP,gCAAgC;IAAE,OAAO;IAAW,aAAa;GAAsC;GACvG,iCAAiC,EAAE,OAAO,WAAW;EACvD;CACF;CACA,IAAI;EACF,QAAQ,EAAE,oBAAoB,EAAE,OAAO,oBAAoB,EAAE;EAC7D,SAAS;GACP,gCAAgC;IAAE,OAAO;IAAU,aAAa;GAAwB;GACxF,iCAAiC,EAAE,OAAO,UAAU;EACtD;CACF;AACF,GAEa,KAA8B,MACzC,EAAuB,MAAa,EAAuB"}
@@ -0,0 +1,2 @@
1
+ var e=e=>typeof e==`object`&&!!e&&!Array.isArray(e),t=t=>{let n=t.urlConfig;return e(n)&&e(n.url)&&Object.keys(n.url).length>0},n=t=>{let n=t.customEvents;return e(n)&&Array.isArray(n.events)&&n.events.length>0},r=(r,i,a)=>{let o=e(r)?r:{},s=o.interactivity,c={...e(s)?s:{},brush:i};return a&&i===!0&&(t(c)&&(c.urlConfig={...c.urlConfig,url:{}}),n(c)&&delete c.customEvents),{...o,interactivity:c}},i=`When true, selecting (clicking) a data point in this chart filters the other items on the dashboard.`,a=`When true, dragging over a range in this chart (brushing) filters the other items on the dashboard.`,o=`${a} Enabling it turns off Go to URL and custom events on this chart, because they share the same pointer interaction.`,s=({select:e,brush:t})=>{let n=[];if(e&&n.push({key:`interactivity.select`,control:{type:`switch`,label:`Filter on select`,default:e.default,description:i},...e.visibleIf?{visibleIf:e.visibleIf}:{}}),t){let e=t.excludesClickActions??!1;n.push({key:`interactivity.brush`,control:{type:`switch`,label:`Enable brush filter`,default:t.default,description:e?o:a,...e?{toOptions:({options:e,value:t})=>r(e,t,!0)}:{}}})}let s=n.every(e=>e.visibleIf)?e=>n.some(t=>t.visibleIf?.(e)):void 0;return{key:`interactivity`,type:`group`,open:!1,children:n,...s?{visibleIf:s}:{}}};exports.createInteractivityOptionsGroup=s;
2
+ //# sourceMappingURL=interactivity-options.config.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactivity-options.config.cjs","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/interactivity-options.config.ts"],"sourcesContent":["import type { OptionConfig, OptionsConfigContext } from './options-config.types';\n\ntype Options = Record<string, unknown>;\n\nexport interface FilterOnSelectCapability<TContext> {\n default: boolean;\n visibleIf?: (context: TContext) => boolean;\n}\n\nexport interface BrushCapability {\n default: boolean;\n excludesClickActions?: boolean;\n}\n\nexport interface InteractivityCapabilities<TContext> {\n select?: FilterOnSelectCapability<TContext>;\n brush?: BrushCapability;\n}\n\nconst isRecord = (value: unknown): value is Options =>\n typeof value === 'object' && value !== null && !Array.isArray(value);\n\nconst hasGoToUrl = (interactivity: Options): boolean => {\n const urlConfig = interactivity['urlConfig'];\n\n return isRecord(urlConfig) && isRecord(urlConfig['url']) && Object.keys(urlConfig['url']).length > 0;\n};\n\nconst hasCustomEvents = (interactivity: Options): boolean => {\n const customEvents = interactivity['customEvents'];\n\n return isRecord(customEvents) && Array.isArray(customEvents['events']) && customEvents['events'].length > 0;\n};\n\nconst setBrush = (options: unknown, value: unknown, excludesClickActions: boolean): Options => {\n const current = isRecord(options) ? options : {};\n const currentInteractivity = current['interactivity'];\n const interactivity: Options = { ...(isRecord(currentInteractivity) ? currentInteractivity : {}), brush: value };\n\n if (excludesClickActions && value === true) {\n if (hasGoToUrl(interactivity)) {\n interactivity['urlConfig'] = { ...(interactivity['urlConfig'] as Options), url: {} };\n }\n\n if (hasCustomEvents(interactivity)) {\n delete interactivity['customEvents'];\n }\n }\n\n return { ...current, interactivity };\n};\n\nconst filterOnSelectDescription\n = 'When true, selecting (clicking) a data point in this chart filters the other items on the dashboard.';\n\nconst brushDescription\n = 'When true, dragging over a range in this chart (brushing) filters the other items on the dashboard.';\n\nconst brushExcludesClickActionsDescription\n = `${brushDescription} Enabling it turns off Go to URL and custom events on this chart, because they share the same pointer interaction.`;\n\nexport const createInteractivityOptionsGroup = <TContext extends OptionsConfigContext>({\n select,\n brush\n}: InteractivityCapabilities<TContext>): OptionConfig<TContext> => {\n const children: OptionConfig<TContext>[] = [];\n\n if (select) {\n children.push({\n key: 'interactivity.select',\n control: {\n type: 'switch',\n label: 'Filter on select',\n default: select.default,\n description: filterOnSelectDescription\n },\n ...(select.visibleIf ? { visibleIf: select.visibleIf } : {})\n });\n }\n\n if (brush) {\n const excludesClickActions = brush.excludesClickActions ?? false;\n\n children.push({\n key: 'interactivity.brush',\n control: {\n type: 'switch',\n label: 'Enable brush filter',\n default: brush.default,\n description: excludesClickActions ? brushExcludesClickActionsDescription : brushDescription,\n ...(excludesClickActions\n ? {\n toOptions: ({ options, value }: TContext & { value: unknown }) => setBrush(options, value, true)\n }\n : {})\n }\n });\n }\n\n const groupVisibleIf = children.every((child) => child.visibleIf)\n ? (context: TContext) => children.some((child) => child.visibleIf?.(context))\n : undefined;\n\n return {\n key: 'interactivity',\n type: 'group',\n open: false,\n children,\n ...(groupVisibleIf ? { visibleIf: groupVisibleIf } : {})\n };\n};\n"],"mappings":"AAmBA,IAAM,EAAY,GAChB,OAAO,GAAU,YAAY,GAAkB,CAAC,MAAM,QAAQ,CAAK,EAE/D,EAAc,GAAoC,CACtD,IAAM,EAAY,EAAc,UAEhC,OAAO,EAAS,CAAS,GAAK,EAAS,EAAU,GAAM,GAAK,OAAO,KAAK,EAAU,GAAM,CAAC,CAAC,OAAS,CACrG,EAEM,EAAmB,GAAoC,CAC3D,IAAM,EAAe,EAAc,aAEnC,OAAO,EAAS,CAAY,GAAK,MAAM,QAAQ,EAAa,MAAS,GAAK,EAAa,OAAU,OAAS,CAC5G,EAEM,GAAY,EAAkB,EAAgB,IAA2C,CAC7F,IAAM,EAAU,EAAS,CAAO,EAAI,EAAU,CAAC,EACzC,EAAuB,EAAQ,cAC/B,EAAyB,CAAE,GAAI,EAAS,CAAoB,EAAI,EAAuB,CAAC,EAAI,MAAO,CAAM,EAY/G,OAVI,GAAwB,IAAU,KAChC,EAAW,CAAa,IAC1B,EAAc,UAAe,CAAE,GAAI,EAAc,UAA0B,IAAK,CAAC,CAAE,GAGjF,EAAgB,CAAa,GAC/B,OAAO,EAAc,cAIlB,CAAE,GAAG,EAAS,eAAc,CACrC,EAEM,EACF,uGAEE,EACF,sGAEE,EACF,GAAG,EAAiB,oHAEX,GAA0E,CACrF,SACA,WACiE,CACjE,IAAM,EAAqC,CAAC,EAe5C,GAbI,GACF,EAAS,KAAK,CACZ,IAAK,uBACL,QAAS,CACP,KAAM,SACN,MAAO,mBACP,QAAS,EAAO,QAChB,YAAa,CACf,EACA,GAAI,EAAO,UAAY,CAAE,UAAW,EAAO,SAAU,EAAI,CAAC,CAC5D,CAAC,EAGC,EAAO,CACT,IAAM,EAAuB,EAAM,sBAAwB,GAE3D,EAAS,KAAK,CACZ,IAAK,sBACL,QAAS,CACP,KAAM,SACN,MAAO,sBACP,QAAS,EAAM,QACf,YAAa,EAAuB,EAAuC,EAC3E,GAAI,EACA,CACA,WAAY,CAAE,UAAS,WAA2C,EAAS,EAAS,EAAO,EAAI,CACjG,EACE,CAAC,CACP,CACF,CAAC,CACH,CAEA,IAAM,EAAiB,EAAS,MAAO,GAAU,EAAM,SAAS,EAC3D,GAAsB,EAAS,KAAM,GAAU,EAAM,YAAY,CAAO,CAAC,EAC1E,IAAA,GAEJ,MAAO,CACL,IAAK,gBACL,KAAM,QACN,KAAM,GACN,WACA,GAAI,EAAiB,CAAE,UAAW,CAAe,EAAI,CAAC,CACxD,CACF"}
@@ -0,0 +1,56 @@
1
+ //#region src/lib/shared/utils/interactivity-options.config.ts
2
+ var e = (e) => typeof e == "object" && !!e && !Array.isArray(e), t = (t) => {
3
+ let n = t.urlConfig;
4
+ return e(n) && e(n.url) && Object.keys(n.url).length > 0;
5
+ }, n = (t) => {
6
+ let n = t.customEvents;
7
+ return e(n) && Array.isArray(n.events) && n.events.length > 0;
8
+ }, r = (r, i, a) => {
9
+ let o = e(r) ? r : {}, s = o.interactivity, c = {
10
+ ...e(s) ? s : {},
11
+ brush: i
12
+ };
13
+ return a && i === !0 && (t(c) && (c.urlConfig = {
14
+ ...c.urlConfig,
15
+ url: {}
16
+ }), n(c) && delete c.customEvents), {
17
+ ...o,
18
+ interactivity: c
19
+ };
20
+ }, i = "When true, selecting (clicking) a data point in this chart filters the other items on the dashboard.", a = "When true, dragging over a range in this chart (brushing) filters the other items on the dashboard.", o = `${a} Enabling it turns off Go to URL and custom events on this chart, because they share the same pointer interaction.`, s = ({ select: e, brush: t }) => {
21
+ let n = [];
22
+ if (e && n.push({
23
+ key: "interactivity.select",
24
+ control: {
25
+ type: "switch",
26
+ label: "Filter on select",
27
+ default: e.default,
28
+ description: i
29
+ },
30
+ ...e.visibleIf ? { visibleIf: e.visibleIf } : {}
31
+ }), t) {
32
+ let e = t.excludesClickActions ?? !1;
33
+ n.push({
34
+ key: "interactivity.brush",
35
+ control: {
36
+ type: "switch",
37
+ label: "Enable brush filter",
38
+ default: t.default,
39
+ description: e ? o : a,
40
+ ...e ? { toOptions: ({ options: e, value: t }) => r(e, t, !0) } : {}
41
+ }
42
+ });
43
+ }
44
+ let s = n.every((e) => e.visibleIf) ? (e) => n.some((t) => t.visibleIf?.(e)) : void 0;
45
+ return {
46
+ key: "interactivity",
47
+ type: "group",
48
+ open: !1,
49
+ children: n,
50
+ ...s ? { visibleIf: s } : {}
51
+ };
52
+ };
53
+ //#endregion
54
+ export { s as createInteractivityOptionsGroup };
55
+
56
+ //# sourceMappingURL=interactivity-options.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactivity-options.config.js","names":[],"sources":["../../../../../libs/dashboard-contents-types/src/lib/shared/utils/interactivity-options.config.ts"],"sourcesContent":["import type { OptionConfig, OptionsConfigContext } from './options-config.types';\n\ntype Options = Record<string, unknown>;\n\nexport interface FilterOnSelectCapability<TContext> {\n default: boolean;\n visibleIf?: (context: TContext) => boolean;\n}\n\nexport interface BrushCapability {\n default: boolean;\n excludesClickActions?: boolean;\n}\n\nexport interface InteractivityCapabilities<TContext> {\n select?: FilterOnSelectCapability<TContext>;\n brush?: BrushCapability;\n}\n\nconst isRecord = (value: unknown): value is Options =>\n typeof value === 'object' && value !== null && !Array.isArray(value);\n\nconst hasGoToUrl = (interactivity: Options): boolean => {\n const urlConfig = interactivity['urlConfig'];\n\n return isRecord(urlConfig) && isRecord(urlConfig['url']) && Object.keys(urlConfig['url']).length > 0;\n};\n\nconst hasCustomEvents = (interactivity: Options): boolean => {\n const customEvents = interactivity['customEvents'];\n\n return isRecord(customEvents) && Array.isArray(customEvents['events']) && customEvents['events'].length > 0;\n};\n\nconst setBrush = (options: unknown, value: unknown, excludesClickActions: boolean): Options => {\n const current = isRecord(options) ? options : {};\n const currentInteractivity = current['interactivity'];\n const interactivity: Options = { ...(isRecord(currentInteractivity) ? currentInteractivity : {}), brush: value };\n\n if (excludesClickActions && value === true) {\n if (hasGoToUrl(interactivity)) {\n interactivity['urlConfig'] = { ...(interactivity['urlConfig'] as Options), url: {} };\n }\n\n if (hasCustomEvents(interactivity)) {\n delete interactivity['customEvents'];\n }\n }\n\n return { ...current, interactivity };\n};\n\nconst filterOnSelectDescription\n = 'When true, selecting (clicking) a data point in this chart filters the other items on the dashboard.';\n\nconst brushDescription\n = 'When true, dragging over a range in this chart (brushing) filters the other items on the dashboard.';\n\nconst brushExcludesClickActionsDescription\n = `${brushDescription} Enabling it turns off Go to URL and custom events on this chart, because they share the same pointer interaction.`;\n\nexport const createInteractivityOptionsGroup = <TContext extends OptionsConfigContext>({\n select,\n brush\n}: InteractivityCapabilities<TContext>): OptionConfig<TContext> => {\n const children: OptionConfig<TContext>[] = [];\n\n if (select) {\n children.push({\n key: 'interactivity.select',\n control: {\n type: 'switch',\n label: 'Filter on select',\n default: select.default,\n description: filterOnSelectDescription\n },\n ...(select.visibleIf ? { visibleIf: select.visibleIf } : {})\n });\n }\n\n if (brush) {\n const excludesClickActions = brush.excludesClickActions ?? false;\n\n children.push({\n key: 'interactivity.brush',\n control: {\n type: 'switch',\n label: 'Enable brush filter',\n default: brush.default,\n description: excludesClickActions ? brushExcludesClickActionsDescription : brushDescription,\n ...(excludesClickActions\n ? {\n toOptions: ({ options, value }: TContext & { value: unknown }) => setBrush(options, value, true)\n }\n : {})\n }\n });\n }\n\n const groupVisibleIf = children.every((child) => child.visibleIf)\n ? (context: TContext) => children.some((child) => child.visibleIf?.(context))\n : undefined;\n\n return {\n key: 'interactivity',\n type: 'group',\n open: false,\n children,\n ...(groupVisibleIf ? { visibleIf: groupVisibleIf } : {})\n };\n};\n"],"mappings":";AAmBA,IAAM,KAAY,MAChB,OAAO,KAAU,cAAY,KAAkB,CAAC,MAAM,QAAQ,CAAK,GAE/D,KAAc,MAAoC;CACtD,IAAM,IAAY,EAAc;CAEhC,OAAO,EAAS,CAAS,KAAK,EAAS,EAAU,GAAM,KAAK,OAAO,KAAK,EAAU,GAAM,CAAC,CAAC,SAAS;AACrG,GAEM,KAAmB,MAAoC;CAC3D,IAAM,IAAe,EAAc;CAEnC,OAAO,EAAS,CAAY,KAAK,MAAM,QAAQ,EAAa,MAAS,KAAK,EAAa,OAAU,SAAS;AAC5G,GAEM,KAAY,GAAkB,GAAgB,MAA2C;CAC7F,IAAM,IAAU,EAAS,CAAO,IAAI,IAAU,CAAC,GACzC,IAAuB,EAAQ,eAC/B,IAAyB;EAAE,GAAI,EAAS,CAAoB,IAAI,IAAuB,CAAC;EAAI,OAAO;CAAM;CAY/G,OAVI,KAAwB,MAAU,OAChC,EAAW,CAAa,MAC1B,EAAc,YAAe;EAAE,GAAI,EAAc;EAA0B,KAAK,CAAC;CAAE,IAGjF,EAAgB,CAAa,KAC/B,OAAO,EAAc,eAIlB;EAAE,GAAG;EAAS;CAAc;AACrC,GAEM,IACF,wGAEE,IACF,uGAEE,IACF,GAAG,EAAiB,qHAEX,KAA0E,EACrF,WACA,eACiE;CACjE,IAAM,IAAqC,CAAC;CAe5C,IAbI,KACF,EAAS,KAAK;EACZ,KAAK;EACL,SAAS;GACP,MAAM;GACN,OAAO;GACP,SAAS,EAAO;GAChB,aAAa;EACf;EACA,GAAI,EAAO,YAAY,EAAE,WAAW,EAAO,UAAU,IAAI,CAAC;CAC5D,CAAC,GAGC,GAAO;EACT,IAAM,IAAuB,EAAM,wBAAwB;EAE3D,EAAS,KAAK;GACZ,KAAK;GACL,SAAS;IACP,MAAM;IACN,OAAO;IACP,SAAS,EAAM;IACf,aAAa,IAAuB,IAAuC;IAC3E,GAAI,IACA,EACA,YAAY,EAAE,YAAS,eAA2C,EAAS,GAAS,GAAO,EAAI,EACjG,IACE,CAAC;GACP;EACF,CAAC;CACH;CAEA,IAAM,IAAiB,EAAS,OAAO,MAAU,EAAM,SAAS,KAC3D,MAAsB,EAAS,MAAM,MAAU,EAAM,YAAY,CAAO,CAAC,IAC1E,KAAA;CAEJ,OAAO;EACL,KAAK;EACL,MAAM;EACN,MAAM;EACN;EACA,GAAI,IAAiB,EAAE,WAAW,EAAe,IAAI,CAAC;CACxD;AACF"}
@@ -0,0 +1,2 @@
1
+ var e={de:{groups:{interactivity:{label:`Interaktivität`}},options:{"interactivity.select":{label:`Filtern nach Auswahl`},"interactivity.brush":{label:`Pinselfilter aktivieren`}}},en:{groups:{interactivity:{label:`Interactivity`}},options:{"interactivity.select":{label:`Filter on select`},"interactivity.brush":{label:`Enable brush filter`}}},es:{groups:{interactivity:{label:`Interactividad`}},options:{"interactivity.select":{label:`Filtrar al seleccionar`},"interactivity.brush":{label:`Habilitar filtro de pincel`}}},fr:{groups:{interactivity:{label:`Interactivité`}},options:{"interactivity.select":{label:`Filtrer sur sélection`},"interactivity.brush":{label:`Activer le filtre de brosse`}}},nl:{groups:{interactivity:{label:`Interactiviteit`}},options:{"interactivity.select":{label:`Filteren bij selectie`},"interactivity.brush":{label:`Borstelfilter inschakelen`}}}},t=t=>e[t]??e.en;exports.getInteractivityTranslations=t;
2
+ //# sourceMappingURL=interactivity-options.i18n.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactivity-options.i18n.cjs","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,EAA2D,CAC/D,GAAI,CACF,OAAQ,CAAE,cAAe,CAAE,MAAO,gBAAiB,CAAE,EACrD,QAAS,CACP,uBAAwB,CAAE,MAAO,sBAAuB,EACxD,sBAAuB,CAAE,MAAO,yBAA0B,CAC5D,CACF,EACA,GAAI,CACF,OAAQ,CAAE,cAAe,CAAE,MAAO,eAAgB,CAAE,EACpD,QAAS,CACP,uBAAwB,CAAE,MAAO,kBAAmB,EACpD,sBAAuB,CAAE,MAAO,qBAAsB,CACxD,CACF,EACA,GAAI,CACF,OAAQ,CAAE,cAAe,CAAE,MAAO,gBAAiB,CAAE,EACrD,QAAS,CACP,uBAAwB,CAAE,MAAO,wBAAyB,EAC1D,sBAAuB,CAAE,MAAO,4BAA6B,CAC/D,CACF,EACA,GAAI,CACF,OAAQ,CAAE,cAAe,CAAE,MAAO,eAAgB,CAAE,EACpD,QAAS,CACP,uBAAwB,CAAE,MAAO,uBAAwB,EACzD,sBAAuB,CAAE,MAAO,6BAA8B,CAChE,CACF,EACA,GAAI,CACF,OAAQ,CAAE,cAAe,CAAE,MAAO,iBAAkB,CAAE,EACtD,QAAS,CACP,uBAAwB,CAAE,MAAO,uBAAwB,EACzD,sBAAuB,CAAE,MAAO,2BAA4B,CAC9D,CACF,CACF,EAEa,EAAgC,GAC3C,EAAuB,IAAa,EAAuB"}
@@ -0,0 +1,42 @@
1
+ //#region src/lib/shared/utils/interactivity-options.i18n.ts
2
+ var e = {
3
+ de: {
4
+ groups: { interactivity: { label: "Interaktivität" } },
5
+ options: {
6
+ "interactivity.select": { label: "Filtern nach Auswahl" },
7
+ "interactivity.brush": { label: "Pinselfilter aktivieren" }
8
+ }
9
+ },
10
+ en: {
11
+ groups: { interactivity: { label: "Interactivity" } },
12
+ options: {
13
+ "interactivity.select": { label: "Filter on select" },
14
+ "interactivity.brush": { label: "Enable brush filter" }
15
+ }
16
+ },
17
+ es: {
18
+ groups: { interactivity: { label: "Interactividad" } },
19
+ options: {
20
+ "interactivity.select": { label: "Filtrar al seleccionar" },
21
+ "interactivity.brush": { label: "Habilitar filtro de pincel" }
22
+ }
23
+ },
24
+ fr: {
25
+ groups: { interactivity: { label: "Interactivité" } },
26
+ options: {
27
+ "interactivity.select": { label: "Filtrer sur sélection" },
28
+ "interactivity.brush": { label: "Activer le filtre de brosse" }
29
+ }
30
+ },
31
+ nl: {
32
+ groups: { interactivity: { label: "Interactiviteit" } },
33
+ options: {
34
+ "interactivity.select": { label: "Filteren bij selectie" },
35
+ "interactivity.brush": { label: "Borstelfilter inschakelen" }
36
+ }
37
+ }
38
+ }, t = (t) => e[t] ?? e.en;
39
+ //#endregion
40
+ export { t as getInteractivityTranslations };
41
+
42
+ //# sourceMappingURL=interactivity-options.i18n.js.map