@pitcher/canvas-ui 2025.12.11-121707 → 2025.12.11-122950-beta

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.
package/canvas-ui.js CHANGED
@@ -141647,61 +141647,88 @@ const _hoisted_40$3 = { class: "block mb-1 text-sm" };
141647
141647
  const _hoisted_41$3 = { key: 0 };
141648
141648
  const _hoisted_42$3 = { class: "block mb-1 text-sm" };
141649
141649
  const _hoisted_43$3 = ["onClick"];
141650
- const _hoisted_44$3 = { class: "p-4 min-w-[400px] max-h-[400px] overflow-auto" };
141651
- const _hoisted_45$3 = { class: "text-sm mb-2" };
141652
- const _hoisted_46$3 = ["onClick"];
141653
- const _hoisted_47$3 = { class: "p-4 min-w-[400px] max-h-[400px] overflow-auto" };
141654
- const _hoisted_48$3 = { class: "text-sm mb-2" };
141655
- const _hoisted_49$3 = { class: "flex justify-center mt-2" };
141656
- const _hoisted_50$3 = { class: "text-sm font-semibold mb-3 mt-6 text-gray-600 dark:text-gray-400 uppercase tracking-wide border-t border-gray-200 dark:border-gray-700 pt-6" };
141657
- const _hoisted_51$2 = { class: "mb-4" };
141658
- const _hoisted_52$2 = { class: "block mb-2" };
141659
- const _hoisted_53$2 = { class: "mb-4" };
141660
- const _hoisted_54$1 = { class: "block mb-2" };
141661
- const _hoisted_55$1 = { class: "mb-4" };
141662
- const _hoisted_56$1 = { class: "block mb-2" };
141663
- const _hoisted_57$1 = { class: "mb-4" };
141664
- const _hoisted_58$1 = { class: "block mb-2" };
141665
- const _hoisted_59$1 = {
141650
+ const _hoisted_44$3 = { class: "p-4 min-w-[400px] max-h-[400px]" };
141651
+ const _hoisted_45$3 = { class: "flex gap-4 h-full" };
141652
+ const _hoisted_46$3 = { class: "flex-1 flex flex-col" };
141653
+ const _hoisted_47$3 = { class: "text-sm mb-2" };
141654
+ const _hoisted_48$3 = { class: "overflow-auto" };
141655
+ const _hoisted_49$3 = {
141656
+ key: 0,
141657
+ class: "flex-1 border-l pl-4"
141658
+ };
141659
+ const _hoisted_50$3 = { class: "text-sm font-medium mb-2" };
141660
+ const _hoisted_51$2 = { class: "flex flex-col gap-2" };
141661
+ const _hoisted_52$2 = { class: "block mb-1 text-sm" };
141662
+ const _hoisted_53$2 = { class: "block mb-1 text-sm" };
141663
+ const _hoisted_54$1 = { class: "block mb-1 text-sm" };
141664
+ const _hoisted_55$1 = { key: 0 };
141665
+ const _hoisted_56$1 = { class: "block mb-1 text-sm" };
141666
+ const _hoisted_57$1 = ["onClick"];
141667
+ const _hoisted_58$1 = { class: "p-4 min-w-[400px] max-h-[400px]" };
141668
+ const _hoisted_59$1 = { class: "flex gap-4 h-full" };
141669
+ const _hoisted_60$1 = { class: "flex-1 flex flex-col" };
141670
+ const _hoisted_61$1 = { class: "text-sm mb-2" };
141671
+ const _hoisted_62$1 = { class: "overflow-auto" };
141672
+ const _hoisted_63$1 = {
141673
+ key: 0,
141674
+ class: "flex-1 border-l pl-4"
141675
+ };
141676
+ const _hoisted_64$1 = { class: "text-sm font-medium mb-2" };
141677
+ const _hoisted_65$1 = { class: "flex flex-col gap-2" };
141678
+ const _hoisted_66$1 = { class: "block mb-1 text-sm" };
141679
+ const _hoisted_67$1 = { class: "block mb-1 text-sm" };
141680
+ const _hoisted_68$1 = { class: "block mb-1 text-sm" };
141681
+ const _hoisted_69 = { class: "block mb-1 text-sm" };
141682
+ const _hoisted_70 = { class: "flex justify-center mt-2" };
141683
+ const _hoisted_71 = { class: "text-sm font-semibold mb-3 mt-6 text-gray-600 dark:text-gray-400 uppercase tracking-wide border-t border-gray-200 dark:border-gray-700 pt-6" };
141684
+ const _hoisted_72 = { class: "mb-4" };
141685
+ const _hoisted_73 = { class: "block mb-2" };
141686
+ const _hoisted_74 = { class: "mb-4" };
141687
+ const _hoisted_75 = { class: "block mb-2" };
141688
+ const _hoisted_76 = { class: "mb-4" };
141689
+ const _hoisted_77 = { class: "block mb-2" };
141690
+ const _hoisted_78 = { class: "mb-4" };
141691
+ const _hoisted_79 = { class: "block mb-2" };
141692
+ const _hoisted_80 = {
141666
141693
  key: 2,
141667
141694
  class: "mb-4"
141668
141695
  };
141669
- const _hoisted_60$1 = { class: "block mb-2" };
141670
- const _hoisted_61$1 = {
141696
+ const _hoisted_81 = { class: "block mb-2" };
141697
+ const _hoisted_82 = {
141671
141698
  key: 3,
141672
141699
  class: "mb-4"
141673
141700
  };
141674
- const _hoisted_62$1 = { class: "block mb-2" };
141675
- const _hoisted_63$1 = { class: "mb-4" };
141676
- const _hoisted_64$1 = { class: "block mb-2" };
141677
- const _hoisted_65$1 = { class: "mb-4" };
141678
- const _hoisted_66$1 = { class: "block mb-2" };
141679
- const _hoisted_67$1 = { class: "mb-4" };
141680
- const _hoisted_68$1 = { class: "block mb-2" };
141681
- const _hoisted_69 = { class: "flex items-center gap-2" };
141682
- const _hoisted_70 = { class: "text-sm text-gray-500" };
141683
- const _hoisted_71 = { class: "mb-4" };
141684
- const _hoisted_72 = { class: "block mb-2" };
141685
- const _hoisted_73 = { class: "flex flex-col gap-2" };
141686
- const _hoisted_74 = { class: "flex items-center gap-2" };
141687
- const _hoisted_75 = { class: "text-sm" };
141688
- const _hoisted_76 = { class: "text-sm" };
141689
- const _hoisted_77 = { class: "flex items-center gap-2" };
141690
- const _hoisted_78 = { class: "text-sm" };
141691
- const _hoisted_79 = { class: "mb-4" };
141692
- const _hoisted_80 = { class: "block mb-2" };
141693
- const _hoisted_81 = { class: "flex flex-col gap-3" };
141694
- const _hoisted_82 = { class: "flex items-center gap-2" };
141695
- const _hoisted_83 = { class: "text-sm w-16" };
141696
- const _hoisted_84 = { class: "flex items-center gap-2" };
141697
- const _hoisted_85 = { class: "text-sm w-16" };
141698
- const _hoisted_86 = { class: "cb-data-charts-settings__preview flex-1 border-l border-[#eee] pl-4" };
141699
- const _hoisted_87 = { class: "text-sm font-medium mb-4" };
141700
- const _hoisted_88 = {
141701
+ const _hoisted_83 = { class: "block mb-2" };
141702
+ const _hoisted_84 = { class: "mb-4" };
141703
+ const _hoisted_85 = { class: "block mb-2" };
141704
+ const _hoisted_86 = { class: "mb-4" };
141705
+ const _hoisted_87 = { class: "block mb-2" };
141706
+ const _hoisted_88 = { class: "mb-4" };
141707
+ const _hoisted_89 = { class: "block mb-2" };
141708
+ const _hoisted_90 = { class: "flex items-center gap-2" };
141709
+ const _hoisted_91 = { class: "text-sm text-gray-500" };
141710
+ const _hoisted_92 = { class: "mb-4" };
141711
+ const _hoisted_93 = { class: "block mb-2" };
141712
+ const _hoisted_94 = { class: "flex flex-col gap-2" };
141713
+ const _hoisted_95 = { class: "flex items-center gap-2" };
141714
+ const _hoisted_96 = { class: "text-sm" };
141715
+ const _hoisted_97 = { class: "text-sm" };
141716
+ const _hoisted_98 = { class: "flex items-center gap-2" };
141717
+ const _hoisted_99 = { class: "text-sm" };
141718
+ const _hoisted_100 = { class: "mb-4" };
141719
+ const _hoisted_101 = { class: "block mb-2" };
141720
+ const _hoisted_102 = { class: "flex flex-col gap-3" };
141721
+ const _hoisted_103 = { class: "flex items-center gap-2" };
141722
+ const _hoisted_104 = { class: "text-sm w-16" };
141723
+ const _hoisted_105 = { class: "flex items-center gap-2" };
141724
+ const _hoisted_106 = { class: "text-sm w-16" };
141725
+ const _hoisted_107 = { class: "cb-data-charts-settings__preview flex-1 border-l border-[#eee] pl-4" };
141726
+ const _hoisted_108 = { class: "text-sm font-medium mb-4" };
141727
+ const _hoisted_109 = {
141701
141728
  class: "preview-container",
141702
141729
  style: { "height": "300px" }
141703
141730
  };
141704
- const _hoisted_89 = { class: "flex justify-between gap-4" };
141731
+ const _hoisted_110 = { class: "flex justify-between gap-4" };
141705
141732
  const _sfc_main$2E = /* @__PURE__ */ defineComponent({
141706
141733
  __name: "DataCharts.settings",
141707
141734
  props: {
@@ -141946,6 +141973,46 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
141946
141973
  function isArrayOrObject(value) {
141947
141974
  return Array.isArray(value) || typeof value === "object" && value !== null;
141948
141975
  }
141976
+ function parsePathIntoParts(path) {
141977
+ const parts = [];
141978
+ let current = "";
141979
+ for (let i = 0; i < path.length; i++) {
141980
+ const char = path[i];
141981
+ if (char === ".") {
141982
+ if (current) {
141983
+ parts.push(current);
141984
+ current = "";
141985
+ }
141986
+ } else if (char === "[") {
141987
+ if (current) {
141988
+ parts.push(current);
141989
+ current = "";
141990
+ }
141991
+ const closingIdx = path.indexOf("]", i);
141992
+ if (closingIdx !== -1) {
141993
+ parts.push(path.substring(i, closingIdx + 1));
141994
+ i = closingIdx;
141995
+ }
141996
+ } else {
141997
+ current += char;
141998
+ }
141999
+ }
142000
+ if (current) {
142001
+ parts.push(current);
142002
+ }
142003
+ return parts;
142004
+ }
142005
+ function convertBracketsToDotsPath(path) {
142006
+ if (!path) return "";
142007
+ if (!path.includes("[")) return path;
142008
+ const convertedPath = path.replace(/\[(\d+)\]/g, ".$1");
142009
+ return convertedPath.startsWith(".") ? convertedPath.slice(1) : convertedPath;
142010
+ }
142011
+ function generateHandlebarsExpression(path) {
142012
+ if (!path) return "";
142013
+ const cleanPath = convertBracketsToDotsPath(path);
142014
+ return `{{${cleanPath}}}`;
142015
+ }
141949
142016
  function getFieldOptions(data) {
141950
142017
  if (!data || typeof data !== "object") return [];
141951
142018
  const firstItem = Array.isArray(data) ? data[0] : data;
@@ -141963,8 +142030,15 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
141963
142030
  if (!path) {
141964
142031
  return;
141965
142032
  }
141966
- point.label = `{{#each ${path}}}{{lookup this "${point.arrayConfig.labelField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
141967
- point.value = `{{#each ${path}}}{{lookup this "${point.arrayConfig.valueField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
142033
+ const isArray = Array.isArray(point.selectedValue);
142034
+ if (isArray) {
142035
+ point.label = `{{#each ${path}}}{{lookup this "${point.arrayConfig.labelField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
142036
+ point.value = `{{#each ${path}}}{{lookup this "${point.arrayConfig.valueField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
142037
+ } else {
142038
+ const cleanPath = convertBracketsToDotsPath(path);
142039
+ point.label = `{{${cleanPath}.${point.arrayConfig.labelField}}}`;
142040
+ point.value = `{{${cleanPath}.${point.arrayConfig.valueField}}}`;
142041
+ }
141968
142042
  point.dynamicValue = {
141969
142043
  path,
141970
142044
  value: point.value
@@ -141972,20 +142046,53 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
141972
142046
  closePopover();
141973
142047
  }
141974
142048
  function updateXYDynamicValueExpression(point) {
141975
- if (!point.selectedXValue || !point.arrayConfig?.labelField || !point.arrayConfig?.xField || !point.arrayConfig?.yField) {
142049
+ if (!point.arrayConfig?.labelField || !point.arrayConfig?.xField || !point.arrayConfig?.yField) {
141976
142050
  return;
141977
142051
  }
141978
142052
  const isBubble = isActiveSeriesXYRChart.value;
141979
142053
  if (isBubble && !point.arrayConfig?.rField) {
141980
142054
  return;
141981
142055
  }
141982
- const path = point.dynamicXValue?.path;
141983
- if (!path) {
142056
+ let selectedValue = null;
142057
+ let path = void 0;
142058
+ if (point.selectedXValue && isArrayOrObject(point.selectedXValue)) {
142059
+ selectedValue = point.selectedXValue;
142060
+ path = point.dynamicXValue?.path;
142061
+ } else if (point.selectedYValue && isArrayOrObject(point.selectedYValue)) {
142062
+ selectedValue = point.selectedYValue;
142063
+ path = point.dynamicYValue?.path;
142064
+ } else if (point.selectedRValue && isArrayOrObject(point.selectedRValue)) {
142065
+ selectedValue = point.selectedRValue;
142066
+ path = point.dynamicRValue?.path;
142067
+ }
142068
+ if (!selectedValue || !path) {
141984
142069
  return;
141985
142070
  }
141986
- point.label = `{{#each ${path}}}{{lookup this "${point.arrayConfig.labelField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
141987
- point.xValue = `{{#each ${path}}}{{lookup this "${point.arrayConfig.xField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
141988
- point.yValue = `{{#each ${path}}}{{lookup this "${point.arrayConfig.yField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
142071
+ const isArray = Array.isArray(selectedValue);
142072
+ if (isArray) {
142073
+ point.label = `{{#each ${path}}}{{lookup this "${point.arrayConfig.labelField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
142074
+ point.xValue = `{{#each ${path}}}{{lookup this "${point.arrayConfig.xField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
142075
+ point.yValue = `{{#each ${path}}}{{lookup this "${point.arrayConfig.yField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
142076
+ if (isBubble && point.arrayConfig.rField) {
142077
+ point.rValue = `{{#each ${path}}}{{lookup this "${point.arrayConfig.rField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
142078
+ point.dynamicRValue = {
142079
+ path,
142080
+ value: point.rValue
142081
+ };
142082
+ }
142083
+ } else {
142084
+ const cleanPath = convertBracketsToDotsPath(path);
142085
+ point.label = `{{${cleanPath}.${point.arrayConfig.labelField}}}`;
142086
+ point.xValue = `{{${cleanPath}.${point.arrayConfig.xField}}}`;
142087
+ point.yValue = `{{${cleanPath}.${point.arrayConfig.yField}}}`;
142088
+ if (isBubble && point.arrayConfig.rField) {
142089
+ point.rValue = `{{${cleanPath}.${point.arrayConfig.rField}}}`;
142090
+ point.dynamicRValue = {
142091
+ path,
142092
+ value: point.rValue
142093
+ };
142094
+ }
142095
+ }
141989
142096
  point.dynamicXValue = {
141990
142097
  path,
141991
142098
  value: point.xValue
@@ -141994,37 +142101,40 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
141994
142101
  path,
141995
142102
  value: point.yValue
141996
142103
  };
141997
- if (isBubble && point.arrayConfig.rField) {
141998
- point.rValue = `{{#each ${path}}}{{lookup this "${point.arrayConfig.rField}"}}{{#unless @last}},{{/unless}}{{/each}}`;
141999
- point.dynamicRValue = {
142000
- path,
142001
- value: point.rValue
142002
- };
142003
- }
142004
142104
  closePopover();
142005
142105
  }
142006
142106
  const dynamicValueTreeData = computed(() => {
142007
- function processObject(obj, path = []) {
142107
+ function buildPathString(pathParts) {
142108
+ return pathParts.reduce((acc, part, index) => {
142109
+ if (part.startsWith("[")) {
142110
+ return acc + part;
142111
+ }
142112
+ return index === 0 ? part : `${acc}.${part}`;
142113
+ }, "");
142114
+ }
142115
+ function processObject(obj, pathParts = []) {
142008
142116
  const result = [];
142009
142117
  for (const key in obj) {
142010
142118
  if (key === "[[Prototype]]") continue;
142011
142119
  const value = obj[key];
142012
- const currentPath = [...path, key];
142013
- const pathString = currentPath.join(".");
142120
+ const currentPathParts = [...pathParts, key];
142121
+ const pathString = buildPathString(currentPathParts);
142014
142122
  if (Array.isArray(value)) {
142015
142123
  const arrayNode = {
142016
142124
  key: pathString,
142017
142125
  label: key,
142018
142126
  children: value.map((item, index) => {
142127
+ const arrayItemPath = [...currentPathParts.slice(0, -1), `${key}[${index}]`];
142128
+ const arrayItemPathString = buildPathString(arrayItemPath);
142019
142129
  if (typeof item === "object" && item !== null) {
142020
142130
  return {
142021
- key: `${pathString}[${index}]`,
142131
+ key: arrayItemPathString,
142022
142132
  label: `[${index}]`,
142023
- children: processObject(item, [...currentPath, `[${index}]`])
142133
+ children: processObject(item, arrayItemPath)
142024
142134
  };
142025
142135
  }
142026
142136
  return {
142027
- key: `${pathString}[${index}]`,
142137
+ key: arrayItemPathString,
142028
142138
  label: `[${index}]: ${item}`,
142029
142139
  isLeaf: true
142030
142140
  };
@@ -142035,7 +142145,7 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142035
142145
  result.push({
142036
142146
  key: pathString,
142037
142147
  label: key,
142038
- children: processObject(value, currentPath)
142148
+ children: processObject(value, currentPathParts)
142039
142149
  });
142040
142150
  } else {
142041
142151
  result.push({
@@ -142061,25 +142171,18 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142061
142171
  point.selectedValue = void 0;
142062
142172
  point.dynamicValue = void 0;
142063
142173
  point.arrayConfig = void 0;
142064
- point.value = "";
142065
142174
  } else if (field === "x") {
142066
142175
  point.selectedXValue = void 0;
142067
142176
  point.dynamicXValue = void 0;
142068
- point.dynamicYValue = void 0;
142069
- point.dynamicRValue = void 0;
142070
142177
  point.arrayConfig = void 0;
142071
- point.xValue = "";
142072
- point.yValue = "";
142073
- point.rValue = "";
142074
- point.label = "";
142075
142178
  } else if (field === "y") {
142076
142179
  point.selectedYValue = void 0;
142077
142180
  point.dynamicYValue = void 0;
142078
- point.yValue = "";
142181
+ point.arrayConfig = void 0;
142079
142182
  } else if (field === "r") {
142080
142183
  point.selectedRValue = void 0;
142081
142184
  point.dynamicRValue = void 0;
142082
- point.rValue = "";
142185
+ point.arrayConfig = void 0;
142083
142186
  }
142084
142187
  activePopoverPoint.value = point;
142085
142188
  activePopoverField.value = field;
@@ -142108,14 +142211,13 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142108
142211
  closePopover();
142109
142212
  return;
142110
142213
  }
142111
- const pathParts = selectedKey.split(/\.(?![^[]*])/) || [];
142214
+ const pathParts = parsePathIntoParts(selectedKey);
142112
142215
  let currentValue = crmShape.value;
142113
142216
  for (const part of pathParts) {
142114
142217
  if (!currentValue) break;
142115
- if (part.includes("[") && part.includes("]")) {
142116
- const arrayPath = part.split("[")[0];
142117
- const index = parseInt(part.split("[")[1].split("]")[0]);
142118
- currentValue = currentValue?.[arrayPath]?.[index];
142218
+ if (part.startsWith("[") && part.endsWith("]")) {
142219
+ const index = parseInt(part.slice(1, -1));
142220
+ currentValue = currentValue?.[index];
142119
142221
  } else {
142120
142222
  currentValue = currentValue?.[part];
142121
142223
  }
@@ -142136,19 +142238,7 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142136
142238
  };
142137
142239
  return;
142138
142240
  }
142139
- const rootPart = pathParts[0];
142140
- let expression = "";
142141
- if (pathParts.length === 1) {
142142
- expression = `{{${rootPart}}}`;
142143
- } else {
142144
- const restOfPath = pathParts.slice(1).map((part) => {
142145
- if (part.includes("[") && part.includes("]")) {
142146
- return part.split("[")[1].split("]")[0];
142147
- }
142148
- return part;
142149
- });
142150
- expression = `{{lookup (lookup ${rootPart} ${restOfPath[0]}) "${restOfPath[1]}"}}`;
142151
- }
142241
+ const expression = generateHandlebarsExpression(selectedKey);
142152
142242
  point.dynamicXValue = { path: selectedKey, value: expression };
142153
142243
  point.xValue = expression;
142154
142244
  closePopover();
@@ -142156,19 +142246,21 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142156
142246
  }
142157
142247
  if (field === "y") {
142158
142248
  point.selectedYValue = currentValue;
142159
- const rootPart = pathParts[0];
142160
- let expression = "";
142161
- if (pathParts.length === 1) {
142162
- expression = `{{${rootPart}}}`;
142163
- } else {
142164
- const restOfPath = pathParts.slice(1).map((part) => {
142165
- if (part.includes("[") && part.includes("]")) {
142166
- return part.split("[")[1].split("]")[0];
142167
- }
142168
- return part;
142169
- });
142170
- expression = `{{lookup (lookup ${rootPart} ${restOfPath[0]}) "${restOfPath[1]}"}}`;
142249
+ if (Array.isArray(currentValue) || typeof currentValue === "object" && currentValue !== null) {
142250
+ point.arrayConfig = {
142251
+ labelField: "",
142252
+ valueField: "",
142253
+ xField: "",
142254
+ yField: "",
142255
+ rField: ""
142256
+ };
142257
+ point.dynamicYValue = {
142258
+ path: selectedKey,
142259
+ value: ""
142260
+ };
142261
+ return;
142171
142262
  }
142263
+ const expression = generateHandlebarsExpression(selectedKey);
142172
142264
  point.dynamicYValue = { path: selectedKey, value: expression };
142173
142265
  point.yValue = expression;
142174
142266
  closePopover();
@@ -142176,19 +142268,21 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142176
142268
  }
142177
142269
  if (field === "r") {
142178
142270
  point.selectedRValue = currentValue;
142179
- const rootPart = pathParts[0];
142180
- let expression = "";
142181
- if (pathParts.length === 1) {
142182
- expression = `{{${rootPart}}}`;
142183
- } else {
142184
- const restOfPath = pathParts.slice(1).map((part) => {
142185
- if (part.includes("[") && part.includes("]")) {
142186
- return part.split("[")[1].split("]")[0];
142187
- }
142188
- return part;
142189
- });
142190
- expression = `{{lookup (lookup ${rootPart} ${restOfPath[0]}) "${restOfPath[1]}"}}`;
142271
+ if (Array.isArray(currentValue) || typeof currentValue === "object" && currentValue !== null) {
142272
+ point.arrayConfig = {
142273
+ labelField: "",
142274
+ valueField: "",
142275
+ xField: "",
142276
+ yField: "",
142277
+ rField: ""
142278
+ };
142279
+ point.dynamicRValue = {
142280
+ path: selectedKey,
142281
+ value: ""
142282
+ };
142283
+ return;
142191
142284
  }
142285
+ const expression = generateHandlebarsExpression(selectedKey);
142192
142286
  point.dynamicRValue = { path: selectedKey, value: expression };
142193
142287
  point.rValue = expression;
142194
142288
  closePopover();
@@ -142205,19 +142299,7 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142205
142299
  value: ""
142206
142300
  };
142207
142301
  } else {
142208
- const rootPart = pathParts[0];
142209
- let expression = "";
142210
- if (pathParts.length === 1) {
142211
- expression = `{{${rootPart}}}`;
142212
- } else {
142213
- const restOfPath = pathParts.slice(1).map((part) => {
142214
- if (part.includes("[") && part.includes("]")) {
142215
- return part.split("[")[1].split("]")[0];
142216
- }
142217
- return part;
142218
- });
142219
- expression = `{{lookup (lookup ${rootPart} ${restOfPath[0]}) "${restOfPath[1]}"}}`;
142220
- }
142302
+ const expression = generateHandlebarsExpression(selectedKey);
142221
142303
  point.dynamicValue = {
142222
142304
  path: selectedKey,
142223
142305
  value: expression
@@ -142514,7 +142596,7 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142514
142596
  onClose: _cache[16] || (_cache[16] = ($event) => unref(setComponentEditMode)(false))
142515
142597
  }, {
142516
142598
  footer: withCtx(() => [
142517
- createElementVNode("div", _hoisted_89, [
142599
+ createElementVNode("div", _hoisted_110, [
142518
142600
  createVNode(CButton, { onClick: onCancel }, {
142519
142601
  default: withCtx(() => [
142520
142602
  createTextVNode(toDisplayString(unref(t)("canvasUI.common.cancel")), 1)
@@ -142630,14 +142712,12 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142630
142712
  value: point.label,
142631
142713
  "onUpdate:value": ($event) => point.label = $event,
142632
142714
  class: "flex-1",
142633
- disabled: !!point.arrayConfig,
142634
142715
  placeholder: "Label"
142635
- }, null, 8, ["value", "onUpdate:value", "disabled"]),
142716
+ }, null, 8, ["value", "onUpdate:value"]),
142636
142717
  createVNode(unref(NInput), {
142637
142718
  value: point.value,
142638
142719
  "onUpdate:value": ($event) => point.value = $event,
142639
142720
  class: "flex-1",
142640
- disabled: !!point.dynamicValue,
142641
142721
  placeholder: "Value",
142642
142722
  type: "text"
142643
142723
  }, {
@@ -142703,7 +142783,7 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142703
142783
  }, 1032, ["show"])
142704
142784
  ]),
142705
142785
  _: 2
142706
- }, 1032, ["value", "onUpdate:value", "disabled"]),
142786
+ }, 1032, ["value", "onUpdate:value"]),
142707
142787
  createVNode(CButton, {
142708
142788
  circle: "",
142709
142789
  class: "bg-error2 self-center",
@@ -142732,14 +142812,12 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142732
142812
  value: point.label,
142733
142813
  "onUpdate:value": ($event) => point.label = $event,
142734
142814
  class: "flex-1",
142735
- disabled: !!point.arrayConfig,
142736
142815
  placeholder: "Label"
142737
- }, null, 8, ["value", "onUpdate:value", "disabled"]),
142816
+ }, null, 8, ["value", "onUpdate:value"]),
142738
142817
  createVNode(unref(NInput), {
142739
142818
  value: point.xValue,
142740
142819
  "onUpdate:value": ($event) => point.xValue = $event,
142741
142820
  class: "flex-1",
142742
- disabled: !!point.dynamicXValue,
142743
142821
  placeholder: "X Value",
142744
142822
  type: "text"
142745
142823
  }, {
@@ -142821,12 +142899,11 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142821
142899
  }, 1032, ["show"])
142822
142900
  ]),
142823
142901
  _: 2
142824
- }, 1032, ["value", "onUpdate:value", "disabled"]),
142902
+ }, 1032, ["value", "onUpdate:value"]),
142825
142903
  createVNode(unref(NInput), {
142826
142904
  value: point.yValue,
142827
142905
  "onUpdate:value": ($event) => point.yValue = $event,
142828
142906
  class: "flex-1",
142829
- disabled: !!point.dynamicYValue,
142830
142907
  placeholder: "Y Value",
142831
142908
  type: "text"
142832
142909
  }, {
@@ -142850,28 +142927,70 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142850
142927
  ]),
142851
142928
  default: withCtx(() => [
142852
142929
  createElementVNode("div", _hoisted_44$3, [
142853
- createElementVNode("div", _hoisted_45$3, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.selectDynamicValue")), 1),
142854
- createVNode(unref(NTree), {
142855
- "block-line": "",
142856
- class: "max-h-[300px]",
142857
- data: dynamicValueTreeData.value,
142858
- "render-label": renderDynamicValueTreeLabel,
142859
- "selected-keys": [point.dynamicYValue?.path ?? ""],
142860
- "onUpdate:selectedKeys": (keys) => handleDynamicValueSelect(keys, point, "y")
142861
- }, null, 8, ["data", "selected-keys", "onUpdate:selectedKeys"])
142930
+ createElementVNode("div", _hoisted_45$3, [
142931
+ createElementVNode("div", _hoisted_46$3, [
142932
+ createElementVNode("div", _hoisted_47$3, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.selectDynamicValue")), 1),
142933
+ createElementVNode("div", _hoisted_48$3, [
142934
+ createVNode(unref(NTree), {
142935
+ "block-line": "",
142936
+ class: "max-h-[300px]",
142937
+ data: dynamicValueTreeData.value,
142938
+ "render-label": renderDynamicValueTreeLabel,
142939
+ "selected-keys": [point.dynamicYValue?.path ?? ""],
142940
+ "onUpdate:selectedKeys": (keys) => handleDynamicValueSelect(keys, point, "y")
142941
+ }, null, 8, ["data", "selected-keys", "onUpdate:selectedKeys"])
142942
+ ])
142943
+ ]),
142944
+ point.selectedYValue && point.arrayConfig && isArrayOrObject(point.selectedYValue) ? (openBlock(), createElementBlock("div", _hoisted_49$3, [
142945
+ createElementVNode("div", _hoisted_50$3, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.configureArrayObjectFields")), 1),
142946
+ createElementVNode("div", _hoisted_51$2, [
142947
+ createElementVNode("div", null, [
142948
+ createElementVNode("label", _hoisted_52$2, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.labelField")), 1),
142949
+ createVNode(unref(NSelect), {
142950
+ value: point.arrayConfig.labelField,
142951
+ "onUpdate:value": [($event) => point.arrayConfig.labelField = $event, ($event) => updateXYDynamicValueExpression(point)],
142952
+ options: getFieldOptions(point.selectedYValue)
142953
+ }, null, 8, ["value", "onUpdate:value", "options"])
142954
+ ]),
142955
+ createElementVNode("div", null, [
142956
+ createElementVNode("label", _hoisted_53$2, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.xValueField")), 1),
142957
+ createVNode(unref(NSelect), {
142958
+ value: point.arrayConfig.xField,
142959
+ "onUpdate:value": [($event) => point.arrayConfig.xField = $event, ($event) => updateXYDynamicValueExpression(point)],
142960
+ options: getFieldOptions(point.selectedYValue)
142961
+ }, null, 8, ["value", "onUpdate:value", "options"])
142962
+ ]),
142963
+ createElementVNode("div", null, [
142964
+ createElementVNode("label", _hoisted_54$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.yValueField")), 1),
142965
+ createVNode(unref(NSelect), {
142966
+ value: point.arrayConfig.yField,
142967
+ "onUpdate:value": [($event) => point.arrayConfig.yField = $event, ($event) => updateXYDynamicValueExpression(point)],
142968
+ options: getFieldOptions(point.selectedYValue)
142969
+ }, null, 8, ["value", "onUpdate:value", "options"])
142970
+ ]),
142971
+ isActiveSeriesXYRChart.value ? (openBlock(), createElementBlock("div", _hoisted_55$1, [
142972
+ createElementVNode("label", _hoisted_56$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.rValueField")), 1),
142973
+ createVNode(unref(NSelect), {
142974
+ value: point.arrayConfig.rField,
142975
+ "onUpdate:value": [($event) => point.arrayConfig.rField = $event, ($event) => updateXYDynamicValueExpression(point)],
142976
+ options: getFieldOptions(point.selectedYValue)
142977
+ }, null, 8, ["value", "onUpdate:value", "options"])
142978
+ ])) : createCommentVNode("", true)
142979
+ ])
142980
+ ])) : createCommentVNode("", true)
142981
+ ])
142862
142982
  ])
142863
142983
  ]),
142864
142984
  _: 2
142865
142985
  }, 1032, ["show"])
142866
142986
  ]),
142867
142987
  _: 2
142868
- }, 1032, ["value", "onUpdate:value", "disabled"]),
142988
+ }, 1032, ["value", "onUpdate:value"]),
142869
142989
  isActiveSeriesXYRChart.value ? (openBlock(), createBlock(unref(NInput), {
142870
142990
  key: 0,
142871
142991
  value: point.rValue,
142872
142992
  "onUpdate:value": ($event) => point.rValue = $event,
142873
142993
  class: "flex-1",
142874
- disabled: !!point.dynamicRValue,
142875
142994
  placeholder: "Size (R)",
142876
142995
  type: "text"
142877
142996
  }, {
@@ -142891,26 +143010,69 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142891
143010
  class: normalizeClass(point.dynamicRValue ? "text-blue-500" : ""),
142892
143011
  icon: "caret-down"
142893
143012
  }, null, 8, ["class"])
142894
- ], 8, _hoisted_46$3)
143013
+ ], 8, _hoisted_57$1)
142895
143014
  ]),
142896
143015
  default: withCtx(() => [
142897
- createElementVNode("div", _hoisted_47$3, [
142898
- createElementVNode("div", _hoisted_48$3, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.selectDynamicValue")), 1),
142899
- createVNode(unref(NTree), {
142900
- "block-line": "",
142901
- class: "max-h-[300px]",
142902
- data: dynamicValueTreeData.value,
142903
- "render-label": renderDynamicValueTreeLabel,
142904
- "selected-keys": [point.dynamicRValue?.path ?? ""],
142905
- "onUpdate:selectedKeys": (keys) => handleDynamicValueSelect(keys, point, "r")
142906
- }, null, 8, ["data", "selected-keys", "onUpdate:selectedKeys"])
143016
+ createElementVNode("div", _hoisted_58$1, [
143017
+ createElementVNode("div", _hoisted_59$1, [
143018
+ createElementVNode("div", _hoisted_60$1, [
143019
+ createElementVNode("div", _hoisted_61$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.selectDynamicValue")), 1),
143020
+ createElementVNode("div", _hoisted_62$1, [
143021
+ createVNode(unref(NTree), {
143022
+ "block-line": "",
143023
+ class: "max-h-[300px]",
143024
+ data: dynamicValueTreeData.value,
143025
+ "render-label": renderDynamicValueTreeLabel,
143026
+ "selected-keys": [point.dynamicRValue?.path ?? ""],
143027
+ "onUpdate:selectedKeys": (keys) => handleDynamicValueSelect(keys, point, "r")
143028
+ }, null, 8, ["data", "selected-keys", "onUpdate:selectedKeys"])
143029
+ ])
143030
+ ]),
143031
+ point.selectedRValue && point.arrayConfig && isArrayOrObject(point.selectedRValue) ? (openBlock(), createElementBlock("div", _hoisted_63$1, [
143032
+ createElementVNode("div", _hoisted_64$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.configureArrayObjectFields")), 1),
143033
+ createElementVNode("div", _hoisted_65$1, [
143034
+ createElementVNode("div", null, [
143035
+ createElementVNode("label", _hoisted_66$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.labelField")), 1),
143036
+ createVNode(unref(NSelect), {
143037
+ value: point.arrayConfig.labelField,
143038
+ "onUpdate:value": [($event) => point.arrayConfig.labelField = $event, ($event) => updateXYDynamicValueExpression(point)],
143039
+ options: getFieldOptions(point.selectedRValue)
143040
+ }, null, 8, ["value", "onUpdate:value", "options"])
143041
+ ]),
143042
+ createElementVNode("div", null, [
143043
+ createElementVNode("label", _hoisted_67$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.xValueField")), 1),
143044
+ createVNode(unref(NSelect), {
143045
+ value: point.arrayConfig.xField,
143046
+ "onUpdate:value": [($event) => point.arrayConfig.xField = $event, ($event) => updateXYDynamicValueExpression(point)],
143047
+ options: getFieldOptions(point.selectedRValue)
143048
+ }, null, 8, ["value", "onUpdate:value", "options"])
143049
+ ]),
143050
+ createElementVNode("div", null, [
143051
+ createElementVNode("label", _hoisted_68$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.yValueField")), 1),
143052
+ createVNode(unref(NSelect), {
143053
+ value: point.arrayConfig.yField,
143054
+ "onUpdate:value": [($event) => point.arrayConfig.yField = $event, ($event) => updateXYDynamicValueExpression(point)],
143055
+ options: getFieldOptions(point.selectedRValue)
143056
+ }, null, 8, ["value", "onUpdate:value", "options"])
143057
+ ]),
143058
+ createElementVNode("div", null, [
143059
+ createElementVNode("label", _hoisted_69, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.rValueField")), 1),
143060
+ createVNode(unref(NSelect), {
143061
+ value: point.arrayConfig.rField,
143062
+ "onUpdate:value": [($event) => point.arrayConfig.rField = $event, ($event) => updateXYDynamicValueExpression(point)],
143063
+ options: getFieldOptions(point.selectedRValue)
143064
+ }, null, 8, ["value", "onUpdate:value", "options"])
143065
+ ])
143066
+ ])
143067
+ ])) : createCommentVNode("", true)
143068
+ ])
142907
143069
  ])
142908
143070
  ]),
142909
143071
  _: 2
142910
143072
  }, 1032, ["show"])
142911
143073
  ]),
142912
143074
  _: 2
142913
- }, 1032, ["value", "onUpdate:value", "disabled"])) : createCommentVNode("", true),
143075
+ }, 1032, ["value", "onUpdate:value"])) : createCommentVNode("", true),
142914
143076
  createVNode(CButton, {
142915
143077
  circle: "",
142916
143078
  class: "bg-error2 self-center",
@@ -142931,7 +143093,7 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142931
143093
  }, 1032, ["style", "onClick"])
142932
143094
  ]);
142933
143095
  }), 128)),
142934
- createElementVNode("div", _hoisted_49$3, [
143096
+ createElementVNode("div", _hoisted_70, [
142935
143097
  createVNode(CButton, {
142936
143098
  class: "mt-2",
142937
143099
  "icon-placement": "left",
@@ -142951,9 +143113,9 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142951
143113
  })
142952
143114
  ])
142953
143115
  ]),
142954
- createElementVNode("div", _hoisted_50$3, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.chartSettings")), 1),
142955
- createElementVNode("div", _hoisted_51$2, [
142956
- createElementVNode("label", _hoisted_52$2, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.chartTitle")), 1),
143116
+ createElementVNode("div", _hoisted_71, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.chartSettings")), 1),
143117
+ createElementVNode("div", _hoisted_72, [
143118
+ createElementVNode("label", _hoisted_73, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.chartTitle")), 1),
142957
143119
  createVNode(unref(NInput), {
142958
143120
  value: chartTitle.value,
142959
143121
  "onUpdate:value": _cache[2] || (_cache[2] = ($event) => chartTitle.value = $event),
@@ -142961,24 +143123,24 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142961
143123
  }, null, 8, ["value"])
142962
143124
  ]),
142963
143125
  ["bar", "line"].includes(primaryChartType.value) ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
142964
- createElementVNode("div", _hoisted_53$2, [
142965
- createElementVNode("label", _hoisted_54$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.xAxisLabel")), 1),
143126
+ createElementVNode("div", _hoisted_74, [
143127
+ createElementVNode("label", _hoisted_75, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.xAxisLabel")), 1),
142966
143128
  createVNode(unref(NInput), {
142967
143129
  value: xAxisLabel.value,
142968
143130
  "onUpdate:value": _cache[3] || (_cache[3] = ($event) => xAxisLabel.value = $event),
142969
143131
  type: "text"
142970
143132
  }, null, 8, ["value"])
142971
143133
  ]),
142972
- createElementVNode("div", _hoisted_55$1, [
142973
- createElementVNode("label", _hoisted_56$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.yAxisLabel")), 1),
143134
+ createElementVNode("div", _hoisted_76, [
143135
+ createElementVNode("label", _hoisted_77, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.yAxisLabel")), 1),
142974
143136
  createVNode(unref(NInput), {
142975
143137
  value: yAxisLabel.value,
142976
143138
  "onUpdate:value": _cache[4] || (_cache[4] = ($event) => yAxisLabel.value = $event),
142977
143139
  type: "text"
142978
143140
  }, null, 8, ["value"])
142979
143141
  ]),
142980
- createElementVNode("div", _hoisted_57$1, [
142981
- createElementVNode("label", _hoisted_58$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.orientation")), 1),
143142
+ createElementVNode("div", _hoisted_78, [
143143
+ createElementVNode("label", _hoisted_79, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.orientation")), 1),
142982
143144
  createVNode(unref(NSelect), {
142983
143145
  value: orientation.value,
142984
143146
  "onUpdate:value": _cache[5] || (_cache[5] = ($event) => orientation.value = $event),
@@ -142986,24 +143148,24 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
142986
143148
  }, null, 8, ["value"])
142987
143149
  ])
142988
143150
  ], 64)) : createCommentVNode("", true),
142989
- ["pie", "doughnut", "polarArea"].includes(primaryChartType.value) ? (openBlock(), createElementBlock("div", _hoisted_59$1, [
142990
- createElementVNode("label", _hoisted_60$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.legendPosition")), 1),
143151
+ ["pie", "doughnut", "polarArea"].includes(primaryChartType.value) ? (openBlock(), createElementBlock("div", _hoisted_80, [
143152
+ createElementVNode("label", _hoisted_81, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.legendPosition")), 1),
142991
143153
  createVNode(unref(NSelect), {
142992
143154
  value: legendPosition.value,
142993
143155
  "onUpdate:value": _cache[6] || (_cache[6] = ($event) => legendPosition.value = $event),
142994
143156
  options: legendPositionOptions
142995
143157
  }, null, 8, ["value"])
142996
143158
  ])) : createCommentVNode("", true),
142997
- ["line", "scatter", "area"].includes(primaryChartType.value) ? (openBlock(), createElementBlock("div", _hoisted_61$1, [
142998
- createElementVNode("label", _hoisted_62$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.pointStyle")), 1),
143159
+ ["line", "scatter", "area"].includes(primaryChartType.value) ? (openBlock(), createElementBlock("div", _hoisted_82, [
143160
+ createElementVNode("label", _hoisted_83, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.pointStyle")), 1),
142999
143161
  createVNode(unref(NSelect), {
143000
143162
  value: pointStyle.value,
143001
143163
  "onUpdate:value": _cache[7] || (_cache[7] = ($event) => pointStyle.value = $event),
143002
143164
  options: pointStyleOptions
143003
143165
  }, null, 8, ["value"])
143004
143166
  ])) : createCommentVNode("", true),
143005
- createElementVNode("div", _hoisted_63$1, [
143006
- createElementVNode("label", _hoisted_64$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.colorScheme")), 1),
143167
+ createElementVNode("div", _hoisted_84, [
143168
+ createElementVNode("label", _hoisted_85, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.colorScheme")), 1),
143007
143169
  createVNode(unref(NSelect), {
143008
143170
  value: colorSchemeType.value,
143009
143171
  "onUpdate:value": _cache[8] || (_cache[8] = ($event) => colorSchemeType.value = $event),
@@ -143023,32 +143185,32 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
143023
143185
  "onUpdate:palette": updateChartColors
143024
143186
  }, null, 8, ["allow-add", "allow-delete", "allow-edit", "initial-palette"]))
143025
143187
  ]),
143026
- createElementVNode("div", _hoisted_65$1, [
143027
- createElementVNode("label", _hoisted_66$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.animation")), 1),
143188
+ createElementVNode("div", _hoisted_86, [
143189
+ createElementVNode("label", _hoisted_87, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.animation")), 1),
143028
143190
  createVNode(unref(NSwitch), {
143029
143191
  value: enableAnimation.value,
143030
143192
  "onUpdate:value": _cache[9] || (_cache[9] = ($event) => enableAnimation.value = $event)
143031
143193
  }, null, 8, ["value"])
143032
143194
  ]),
143033
- createElementVNode("div", _hoisted_67$1, [
143034
- createElementVNode("label", _hoisted_68$1, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.percentDisplay")), 1),
143035
- createElementVNode("div", _hoisted_69, [
143195
+ createElementVNode("div", _hoisted_88, [
143196
+ createElementVNode("label", _hoisted_89, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.percentDisplay")), 1),
143197
+ createElementVNode("div", _hoisted_90, [
143036
143198
  createVNode(unref(NSwitch), {
143037
143199
  value: percentDisplay.value,
143038
143200
  "onUpdate:value": _cache[10] || (_cache[10] = ($event) => percentDisplay.value = $event)
143039
143201
  }, null, 8, ["value"]),
143040
- createElementVNode("span", _hoisted_70, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.percentDisplayHint")), 1)
143202
+ createElementVNode("span", _hoisted_91, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.percentDisplayHint")), 1)
143041
143203
  ])
143042
143204
  ]),
143043
- createElementVNode("div", _hoisted_71, [
143044
- createElementVNode("label", _hoisted_72, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.viewModeControls")), 1),
143045
- createElementVNode("div", _hoisted_73, [
143046
- createElementVNode("div", _hoisted_74, [
143205
+ createElementVNode("div", _hoisted_92, [
143206
+ createElementVNode("label", _hoisted_93, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.viewModeControls")), 1),
143207
+ createElementVNode("div", _hoisted_94, [
143208
+ createElementVNode("div", _hoisted_95, [
143047
143209
  createVNode(unref(NSwitch), {
143048
143210
  value: enableFullscreenBtn.value,
143049
143211
  "onUpdate:value": _cache[11] || (_cache[11] = ($event) => enableFullscreenBtn.value = $event)
143050
143212
  }, null, 8, ["value"]),
143051
- createElementVNode("span", _hoisted_75, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.enableFullscreenBtn")), 1)
143213
+ createElementVNode("span", _hoisted_96, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.enableFullscreenBtn")), 1)
143052
143214
  ]),
143053
143215
  createVNode(unref(NTooltip), {
143054
143216
  disabled: !isMultiSeries.value,
@@ -143063,7 +143225,7 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
143063
143225
  "onUpdate:value": _cache[12] || (_cache[12] = ($event) => enableChartTypeSwitcher.value = $event),
143064
143226
  disabled: isMultiSeries.value
143065
143227
  }, null, 8, ["value", "disabled"]),
143066
- createElementVNode("span", _hoisted_76, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.enableChartTypeSwitcher")), 1)
143228
+ createElementVNode("span", _hoisted_97, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.enableChartTypeSwitcher")), 1)
143067
143229
  ], 2)
143068
143230
  ]),
143069
143231
  default: withCtx(() => [
@@ -143071,20 +143233,20 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
143071
143233
  ]),
143072
143234
  _: 1
143073
143235
  }, 8, ["disabled"]),
143074
- createElementVNode("div", _hoisted_77, [
143236
+ createElementVNode("div", _hoisted_98, [
143075
143237
  createVNode(unref(NSwitch), {
143076
143238
  value: enableDataEntry.value,
143077
143239
  "onUpdate:value": _cache[13] || (_cache[13] = ($event) => enableDataEntry.value = $event)
143078
143240
  }, null, 8, ["value"]),
143079
- createElementVNode("span", _hoisted_78, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.enableDataEntry")), 1)
143241
+ createElementVNode("span", _hoisted_99, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.enableDataEntry")), 1)
143080
143242
  ])
143081
143243
  ])
143082
143244
  ]),
143083
- createElementVNode("div", _hoisted_79, [
143084
- createElementVNode("label", _hoisted_80, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.chartSize")), 1),
143085
- createElementVNode("div", _hoisted_81, [
143086
- createElementVNode("div", _hoisted_82, [
143087
- createElementVNode("label", _hoisted_83, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.height")), 1),
143245
+ createElementVNode("div", _hoisted_100, [
143246
+ createElementVNode("label", _hoisted_101, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.chartSize")), 1),
143247
+ createElementVNode("div", _hoisted_102, [
143248
+ createElementVNode("div", _hoisted_103, [
143249
+ createElementVNode("label", _hoisted_104, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.height")), 1),
143088
143250
  createVNode(unref(NInputNumber), {
143089
143251
  value: chartHeight.value,
143090
143252
  "onUpdate:value": _cache[14] || (_cache[14] = ($event) => chartHeight.value = $event),
@@ -143099,8 +143261,8 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
143099
143261
  _: 1
143100
143262
  }, 8, ["value"])
143101
143263
  ]),
143102
- createElementVNode("div", _hoisted_84, [
143103
- createElementVNode("label", _hoisted_85, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.width")), 1),
143264
+ createElementVNode("div", _hoisted_105, [
143265
+ createElementVNode("label", _hoisted_106, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.width")), 1),
143104
143266
  createVNode(unref(NInputNumber), {
143105
143267
  value: chartWidth.value,
143106
143268
  "onUpdate:value": _cache[15] || (_cache[15] = ($event) => chartWidth.value = $event),
@@ -143120,9 +143282,9 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
143120
143282
  ])
143121
143283
  ])
143122
143284
  ]),
143123
- createElementVNode("div", _hoisted_86, [
143124
- createElementVNode("div", _hoisted_87, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.preview")), 1),
143125
- createElementVNode("div", _hoisted_88, [
143285
+ createElementVNode("div", _hoisted_107, [
143286
+ createElementVNode("div", _hoisted_108, toDisplayString(unref(t)("canvasUI.canvasBuilder.dataCharts.preview")), 1),
143287
+ createElementVNode("div", _hoisted_109, [
143126
143288
  createVNode(unref(NCard), { bordered: false }, {
143127
143289
  default: withCtx(() => [
143128
143290
  (openBlock(), createBlock(RawDataCharts, {