@shwfed/nuxt 0.10.12 → 0.10.13

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/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@shwfed/nuxt",
3
3
  "configKey": "shwfed",
4
- "version": "0.10.12",
4
+ "version": "0.10.13",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "1.0.2",
7
7
  "unbuild": "3.6.1"
@@ -108,13 +108,19 @@ const canAddGroup = computed(() => selectedItemId.value === "general");
108
108
  const canAddGroupButton = computed(() => selectedNode.value?.item.type === "group");
109
109
  const canAddGroupDropdown = computed(() => selectedNode.value?.item.type === "group");
110
110
  const canAddDropdownChildButton = computed(() => selectedNode.value?.item.type === "dropdown");
111
- const flattenedItems = computed(() => flattenButtonConfiguratorTree(draftTree.value).map((item) => ({
112
- itemId: item.itemId,
113
- depth: item.depth,
114
- label: getNodeLabel(item.item),
115
- type: item.item.type,
116
- id: item.item.id
117
- })));
111
+ const flattenedItems = computed(() => flattenButtonConfiguratorTree(draftTree.value).flatMap((item) => {
112
+ const node = getButtonConfiguratorNode(draftTree.value, item.itemId);
113
+ if (!node) {
114
+ return [];
115
+ }
116
+ return [{
117
+ itemId: item.itemId,
118
+ depth: item.depth,
119
+ label: getNodeLabel(node),
120
+ type: item.item.type,
121
+ id: item.item.id
122
+ }];
123
+ }));
118
124
  const filteredItems = computed(() => {
119
125
  if (!normalizedSearch.value) {
120
126
  return flattenedItems.value;
@@ -128,7 +134,7 @@ const selectedItemLabel = computed(() => {
128
134
  if (!selectedNode.value) {
129
135
  return generalItem.value.label;
130
136
  }
131
- return getNodeLabel(selectedNode.value.item);
137
+ return getNodeLabel(selectedNode.value);
132
138
  });
133
139
  const selectedContainerItemIds = computed(() => {
134
140
  if (selectedItemId.value === "general") {
@@ -158,7 +164,7 @@ const childItems = computed(() => selectedContainerItemIds.value.flatMap((itemId
158
164
  }
159
165
  return [{
160
166
  itemId: node.itemId,
161
- label: getNodeLabel(node.item),
167
+ label: getNodeLabel(node),
162
168
  type: node.item.type,
163
169
  id: node.item.id
164
170
  }];
@@ -168,7 +174,7 @@ const buttonParentOptions = computed(() => draftTree.value.nodes.flatMap((node)
168
174
  return [{
169
175
  id: node.item.id,
170
176
  itemId: node.itemId,
171
- label: getNodeLabel(node.item),
177
+ label: getNodeLabel(node),
172
178
  type: "group"
173
179
  }];
174
180
  }
@@ -176,7 +182,7 @@ const buttonParentOptions = computed(() => draftTree.value.nodes.flatMap((node)
176
182
  return [{
177
183
  id: node.item.id,
178
184
  itemId: node.itemId,
179
- label: getNodeLabel(node.item),
185
+ label: getNodeLabel(node),
180
186
  type: "dropdown"
181
187
  }];
182
188
  }
@@ -185,7 +191,7 @@ const buttonParentOptions = computed(() => draftTree.value.nodes.flatMap((node)
185
191
  const dropdownParentOptions = computed(() => draftTree.value.nodes.flatMap((node) => node.item.type === "group" ? [{
186
192
  id: node.item.id,
187
193
  itemId: node.itemId,
188
- label: getNodeLabel(node.item)
194
+ label: getNodeLabel(node)
189
195
  }] : []));
190
196
  watch(() => props.config, (config) => {
191
197
  applyDraftConfig(config);
@@ -239,11 +245,21 @@ function isCopyableNode(node) {
239
245
  }
240
246
  return node.item.type === "button" || node.item.type === "dropdown";
241
247
  }
242
- function getNodeLabel(item) {
243
- if (item.type === "group") {
248
+ function getNodeLabel(node) {
249
+ if (node.item.type === "group") {
250
+ const childLabels = node.childItemIds.flatMap((itemId) => {
251
+ const childNode = getButtonConfiguratorNode(draftTree.value, itemId);
252
+ if (!childNode || childNode.item.type === "group") {
253
+ return [];
254
+ }
255
+ return [getNodeLabel(childNode)];
256
+ });
257
+ if (childLabels.length > 0) {
258
+ return childLabels.join("\u3001");
259
+ }
244
260
  return t("group-label");
245
261
  }
246
- return getZhText(item.title) ?? t(item.type === "button" ? "untitled-button" : "untitled-dropdown");
262
+ return getZhText(node.item.title) ?? t(node.item.type === "button" ? "untitled-button" : "untitled-dropdown");
247
263
  }
248
264
  function applyDraftConfig(config) {
249
265
  draftGap.value = config.gap ?? 4;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shwfed/nuxt",
3
- "version": "0.10.12",
3
+ "version": "0.10.13",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "type": "module",