@v-c/menu 0.0.4 → 0.0.6
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/Icon.cjs +2 -2
- package/dist/Icon.js +2 -2
- package/dist/Menu.cjs +16 -9
- package/dist/Menu.js +16 -9
- package/dist/MenuItem.cjs +21 -7
- package/dist/MenuItem.js +21 -7
- package/dist/MenuItemGroup.cjs +16 -2
- package/dist/MenuItemGroup.js +16 -2
- package/dist/SubMenu/PopupTrigger.cjs +8 -1
- package/dist/SubMenu/PopupTrigger.js +8 -1
- package/dist/SubMenu/index.cjs +33 -15
- package/dist/SubMenu/index.js +33 -15
- package/dist/context/MenuContext.cjs +4 -4
- package/dist/context/MenuContext.js +4 -4
- package/package.json +4 -4
package/dist/Icon.cjs
CHANGED
package/dist/Icon.js
CHANGED
package/dist/Menu.cjs
CHANGED
|
@@ -140,11 +140,11 @@ var Menu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots, expose, att
|
|
|
140
140
|
}
|
|
141
141
|
if (!props.multiple && mergedOpenKeys.value.length && internalMode.value !== "inline") triggerOpenKeys(EMPTY_LIST);
|
|
142
142
|
};
|
|
143
|
-
const onInternalClick =
|
|
143
|
+
const onInternalClick = (info) => {
|
|
144
144
|
props.onClick?.(require_warnUtil.warnItemProp(info));
|
|
145
145
|
triggerSelection(info);
|
|
146
|
-
}
|
|
147
|
-
const onInternalOpenChange =
|
|
146
|
+
};
|
|
147
|
+
const onInternalOpenChange = (key, open) => {
|
|
148
148
|
let newOpenKeys = mergedOpenKeys.value.filter((k) => k !== key);
|
|
149
149
|
if (open) newOpenKeys.push(key);
|
|
150
150
|
else if (internalMode.value !== "inline") {
|
|
@@ -152,7 +152,7 @@ var Menu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots, expose, att
|
|
|
152
152
|
newOpenKeys = newOpenKeys.filter((k) => !subPathKeys.has(k));
|
|
153
153
|
}
|
|
154
154
|
if (!(0, __v_c_util_dist_isEqual.default)(mergedOpenKeys.value, newOpenKeys, true)) triggerOpenKeys(newOpenKeys, true);
|
|
155
|
-
}
|
|
155
|
+
};
|
|
156
156
|
const triggerAccessibilityOpen = (key, open) => {
|
|
157
157
|
onInternalOpenChange(key, open ?? !mergedOpenKeys.value.includes(key));
|
|
158
158
|
};
|
|
@@ -423,9 +423,9 @@ var Menu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots, expose, att
|
|
|
423
423
|
String,
|
|
424
424
|
Number,
|
|
425
425
|
null,
|
|
426
|
+
Boolean,
|
|
426
427
|
Array,
|
|
427
|
-
Function
|
|
428
|
-
Boolean
|
|
428
|
+
Function
|
|
429
429
|
],
|
|
430
430
|
required: false,
|
|
431
431
|
skipCheck: true,
|
|
@@ -436,17 +436,24 @@ var Menu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots, expose, att
|
|
|
436
436
|
String,
|
|
437
437
|
Number,
|
|
438
438
|
null,
|
|
439
|
+
Boolean,
|
|
439
440
|
Array,
|
|
440
|
-
Function
|
|
441
|
-
Boolean
|
|
441
|
+
Function
|
|
442
442
|
],
|
|
443
443
|
required: false,
|
|
444
444
|
skipCheck: true,
|
|
445
445
|
default: void 0
|
|
446
446
|
},
|
|
447
447
|
overflowedIndicator: {
|
|
448
|
-
type:
|
|
448
|
+
type: [
|
|
449
|
+
String,
|
|
450
|
+
Number,
|
|
451
|
+
null,
|
|
452
|
+
Boolean,
|
|
453
|
+
Array
|
|
454
|
+
],
|
|
449
455
|
required: false,
|
|
456
|
+
skipCheck: true,
|
|
450
457
|
default: void 0
|
|
451
458
|
},
|
|
452
459
|
overflowedIndicatorPopupClassName: {
|
package/dist/Menu.js
CHANGED
|
@@ -135,11 +135,11 @@ var Menu_default = /* @__PURE__ */ defineComponent((props, { slots, expose, attr
|
|
|
135
135
|
}
|
|
136
136
|
if (!props.multiple && mergedOpenKeys.value.length && internalMode.value !== "inline") triggerOpenKeys(EMPTY_LIST);
|
|
137
137
|
};
|
|
138
|
-
const onInternalClick =
|
|
138
|
+
const onInternalClick = (info) => {
|
|
139
139
|
props.onClick?.(warnItemProp(info));
|
|
140
140
|
triggerSelection(info);
|
|
141
|
-
}
|
|
142
|
-
const onInternalOpenChange =
|
|
141
|
+
};
|
|
142
|
+
const onInternalOpenChange = (key, open) => {
|
|
143
143
|
let newOpenKeys = mergedOpenKeys.value.filter((k) => k !== key);
|
|
144
144
|
if (open) newOpenKeys.push(key);
|
|
145
145
|
else if (internalMode.value !== "inline") {
|
|
@@ -147,7 +147,7 @@ var Menu_default = /* @__PURE__ */ defineComponent((props, { slots, expose, attr
|
|
|
147
147
|
newOpenKeys = newOpenKeys.filter((k) => !subPathKeys.has(k));
|
|
148
148
|
}
|
|
149
149
|
if (!isEqual(mergedOpenKeys.value, newOpenKeys, true)) triggerOpenKeys(newOpenKeys, true);
|
|
150
|
-
}
|
|
150
|
+
};
|
|
151
151
|
const triggerAccessibilityOpen = (key, open) => {
|
|
152
152
|
onInternalOpenChange(key, open ?? !mergedOpenKeys.value.includes(key));
|
|
153
153
|
};
|
|
@@ -418,9 +418,9 @@ var Menu_default = /* @__PURE__ */ defineComponent((props, { slots, expose, attr
|
|
|
418
418
|
String,
|
|
419
419
|
Number,
|
|
420
420
|
null,
|
|
421
|
+
Boolean,
|
|
421
422
|
Array,
|
|
422
|
-
Function
|
|
423
|
-
Boolean
|
|
423
|
+
Function
|
|
424
424
|
],
|
|
425
425
|
required: false,
|
|
426
426
|
skipCheck: true,
|
|
@@ -431,17 +431,24 @@ var Menu_default = /* @__PURE__ */ defineComponent((props, { slots, expose, attr
|
|
|
431
431
|
String,
|
|
432
432
|
Number,
|
|
433
433
|
null,
|
|
434
|
+
Boolean,
|
|
434
435
|
Array,
|
|
435
|
-
Function
|
|
436
|
-
Boolean
|
|
436
|
+
Function
|
|
437
437
|
],
|
|
438
438
|
required: false,
|
|
439
439
|
skipCheck: true,
|
|
440
440
|
default: void 0
|
|
441
441
|
},
|
|
442
442
|
overflowedIndicator: {
|
|
443
|
-
type:
|
|
443
|
+
type: [
|
|
444
|
+
String,
|
|
445
|
+
Number,
|
|
446
|
+
null,
|
|
447
|
+
Boolean,
|
|
448
|
+
Array
|
|
449
|
+
],
|
|
444
450
|
required: false,
|
|
451
|
+
skipCheck: true,
|
|
445
452
|
default: void 0
|
|
446
453
|
},
|
|
447
454
|
overflowedIndicatorPopupClassName: {
|
package/dist/MenuItem.cjs
CHANGED
|
@@ -168,17 +168,24 @@ var InternalMenuItem = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots,
|
|
|
168
168
|
String,
|
|
169
169
|
Number,
|
|
170
170
|
null,
|
|
171
|
+
Boolean,
|
|
171
172
|
Array,
|
|
172
|
-
Function
|
|
173
|
-
Boolean
|
|
173
|
+
Function
|
|
174
174
|
],
|
|
175
175
|
required: false,
|
|
176
176
|
skipCheck: true,
|
|
177
177
|
default: void 0
|
|
178
178
|
},
|
|
179
179
|
extra: {
|
|
180
|
-
type:
|
|
180
|
+
type: [
|
|
181
|
+
String,
|
|
182
|
+
Number,
|
|
183
|
+
null,
|
|
184
|
+
Boolean,
|
|
185
|
+
Array
|
|
186
|
+
],
|
|
181
187
|
required: false,
|
|
188
|
+
skipCheck: true,
|
|
182
189
|
default: void 0
|
|
183
190
|
},
|
|
184
191
|
onMouseEnter: {
|
|
@@ -219,7 +226,7 @@ var MenuItem = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots, attrs }
|
|
|
219
226
|
onCleanup(() => {
|
|
220
227
|
measure?.unregisterPath(eventKey.value, connectedKeyPath.value);
|
|
221
228
|
});
|
|
222
|
-
});
|
|
229
|
+
}, { immediate: true });
|
|
223
230
|
return () => {
|
|
224
231
|
if (measure) return null;
|
|
225
232
|
return (0, vue.createVNode)(InternalMenuItem, {
|
|
@@ -274,17 +281,24 @@ var MenuItem = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots, attrs }
|
|
|
274
281
|
String,
|
|
275
282
|
Number,
|
|
276
283
|
null,
|
|
284
|
+
Boolean,
|
|
277
285
|
Array,
|
|
278
|
-
Function
|
|
279
|
-
Boolean
|
|
286
|
+
Function
|
|
280
287
|
],
|
|
281
288
|
required: false,
|
|
282
289
|
skipCheck: true,
|
|
283
290
|
default: void 0
|
|
284
291
|
},
|
|
285
292
|
extra: {
|
|
286
|
-
type:
|
|
293
|
+
type: [
|
|
294
|
+
String,
|
|
295
|
+
Number,
|
|
296
|
+
null,
|
|
297
|
+
Boolean,
|
|
298
|
+
Array
|
|
299
|
+
],
|
|
287
300
|
required: false,
|
|
301
|
+
skipCheck: true,
|
|
288
302
|
default: void 0
|
|
289
303
|
},
|
|
290
304
|
onMouseEnter: {
|
package/dist/MenuItem.js
CHANGED
|
@@ -163,17 +163,24 @@ var InternalMenuItem = /* @__PURE__ */ defineComponent((props, { slots, attrs })
|
|
|
163
163
|
String,
|
|
164
164
|
Number,
|
|
165
165
|
null,
|
|
166
|
+
Boolean,
|
|
166
167
|
Array,
|
|
167
|
-
Function
|
|
168
|
-
Boolean
|
|
168
|
+
Function
|
|
169
169
|
],
|
|
170
170
|
required: false,
|
|
171
171
|
skipCheck: true,
|
|
172
172
|
default: void 0
|
|
173
173
|
},
|
|
174
174
|
extra: {
|
|
175
|
-
type:
|
|
175
|
+
type: [
|
|
176
|
+
String,
|
|
177
|
+
Number,
|
|
178
|
+
null,
|
|
179
|
+
Boolean,
|
|
180
|
+
Array
|
|
181
|
+
],
|
|
176
182
|
required: false,
|
|
183
|
+
skipCheck: true,
|
|
177
184
|
default: void 0
|
|
178
185
|
},
|
|
179
186
|
onMouseEnter: {
|
|
@@ -214,7 +221,7 @@ var MenuItem_default = /* @__PURE__ */ defineComponent((props, { slots, attrs })
|
|
|
214
221
|
onCleanup(() => {
|
|
215
222
|
measure?.unregisterPath(eventKey.value, connectedKeyPath.value);
|
|
216
223
|
});
|
|
217
|
-
});
|
|
224
|
+
}, { immediate: true });
|
|
218
225
|
return () => {
|
|
219
226
|
if (measure) return null;
|
|
220
227
|
return createVNode(InternalMenuItem, {
|
|
@@ -269,17 +276,24 @@ var MenuItem_default = /* @__PURE__ */ defineComponent((props, { slots, attrs })
|
|
|
269
276
|
String,
|
|
270
277
|
Number,
|
|
271
278
|
null,
|
|
279
|
+
Boolean,
|
|
272
280
|
Array,
|
|
273
|
-
Function
|
|
274
|
-
Boolean
|
|
281
|
+
Function
|
|
275
282
|
],
|
|
276
283
|
required: false,
|
|
277
284
|
skipCheck: true,
|
|
278
285
|
default: void 0
|
|
279
286
|
},
|
|
280
287
|
extra: {
|
|
281
|
-
type:
|
|
288
|
+
type: [
|
|
289
|
+
String,
|
|
290
|
+
Number,
|
|
291
|
+
null,
|
|
292
|
+
Boolean,
|
|
293
|
+
Array
|
|
294
|
+
],
|
|
282
295
|
required: false,
|
|
296
|
+
skipCheck: true,
|
|
283
297
|
default: void 0
|
|
284
298
|
},
|
|
285
299
|
onMouseEnter: {
|
package/dist/MenuItemGroup.cjs
CHANGED
|
@@ -34,8 +34,15 @@ var InternalMenuItemGroup = /* @__PURE__ */ (0, vue.defineComponent)((props, { s
|
|
|
34
34
|
}, {
|
|
35
35
|
props: {
|
|
36
36
|
title: {
|
|
37
|
-
type:
|
|
37
|
+
type: [
|
|
38
|
+
String,
|
|
39
|
+
Number,
|
|
40
|
+
null,
|
|
41
|
+
Boolean,
|
|
42
|
+
Array
|
|
43
|
+
],
|
|
38
44
|
required: false,
|
|
45
|
+
skipCheck: true,
|
|
39
46
|
default: void 0
|
|
40
47
|
},
|
|
41
48
|
eventKey: {
|
|
@@ -73,8 +80,15 @@ var MenuItemGroup = /* @__PURE__ */ (0, vue.defineComponent)((props, ctx) => {
|
|
|
73
80
|
}, {
|
|
74
81
|
props: {
|
|
75
82
|
title: {
|
|
76
|
-
type:
|
|
83
|
+
type: [
|
|
84
|
+
String,
|
|
85
|
+
Number,
|
|
86
|
+
null,
|
|
87
|
+
Boolean,
|
|
88
|
+
Array
|
|
89
|
+
],
|
|
77
90
|
required: false,
|
|
91
|
+
skipCheck: true,
|
|
78
92
|
default: void 0
|
|
79
93
|
},
|
|
80
94
|
eventKey: {
|
package/dist/MenuItemGroup.js
CHANGED
|
@@ -31,8 +31,15 @@ var InternalMenuItemGroup = /* @__PURE__ */ defineComponent((props, { slots }) =
|
|
|
31
31
|
}, {
|
|
32
32
|
props: {
|
|
33
33
|
title: {
|
|
34
|
-
type:
|
|
34
|
+
type: [
|
|
35
|
+
String,
|
|
36
|
+
Number,
|
|
37
|
+
null,
|
|
38
|
+
Boolean,
|
|
39
|
+
Array
|
|
40
|
+
],
|
|
35
41
|
required: false,
|
|
42
|
+
skipCheck: true,
|
|
36
43
|
default: void 0
|
|
37
44
|
},
|
|
38
45
|
eventKey: {
|
|
@@ -70,8 +77,15 @@ var MenuItemGroup_default = /* @__PURE__ */ defineComponent((props, ctx) => {
|
|
|
70
77
|
}, {
|
|
71
78
|
props: {
|
|
72
79
|
title: {
|
|
73
|
-
type:
|
|
80
|
+
type: [
|
|
81
|
+
String,
|
|
82
|
+
Number,
|
|
83
|
+
null,
|
|
84
|
+
Boolean,
|
|
85
|
+
Array
|
|
86
|
+
],
|
|
74
87
|
required: false,
|
|
88
|
+
skipCheck: true,
|
|
75
89
|
default: void 0
|
|
76
90
|
},
|
|
77
91
|
eventKey: {
|
|
@@ -100,8 +100,15 @@ var PopupTrigger = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots }) =
|
|
|
100
100
|
default: void 0
|
|
101
101
|
},
|
|
102
102
|
popup: {
|
|
103
|
-
type:
|
|
103
|
+
type: [
|
|
104
|
+
String,
|
|
105
|
+
Number,
|
|
106
|
+
null,
|
|
107
|
+
Boolean,
|
|
108
|
+
Array
|
|
109
|
+
],
|
|
104
110
|
required: true,
|
|
111
|
+
skipCheck: true,
|
|
105
112
|
default: void 0
|
|
106
113
|
},
|
|
107
114
|
popupStyle: {
|
|
@@ -96,8 +96,15 @@ var PopupTrigger_default = /* @__PURE__ */ defineComponent((props, { slots }) =>
|
|
|
96
96
|
default: void 0
|
|
97
97
|
},
|
|
98
98
|
popup: {
|
|
99
|
-
type:
|
|
99
|
+
type: [
|
|
100
|
+
String,
|
|
101
|
+
Number,
|
|
102
|
+
null,
|
|
103
|
+
Boolean,
|
|
104
|
+
Array
|
|
105
|
+
],
|
|
100
106
|
required: true,
|
|
107
|
+
skipCheck: true,
|
|
101
108
|
default: void 0
|
|
102
109
|
},
|
|
103
110
|
popupStyle: {
|
package/dist/SubMenu/index.cjs
CHANGED
|
@@ -205,8 +205,15 @@ var InternalSubMenu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots,
|
|
|
205
205
|
default: void 0
|
|
206
206
|
},
|
|
207
207
|
title: {
|
|
208
|
-
type:
|
|
208
|
+
type: [
|
|
209
|
+
String,
|
|
210
|
+
Number,
|
|
211
|
+
null,
|
|
212
|
+
Boolean,
|
|
213
|
+
Array
|
|
214
|
+
],
|
|
209
215
|
required: false,
|
|
216
|
+
skipCheck: true,
|
|
210
217
|
default: void 0
|
|
211
218
|
},
|
|
212
219
|
internalPopupClose: {
|
|
@@ -249,9 +256,9 @@ var InternalSubMenu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots,
|
|
|
249
256
|
String,
|
|
250
257
|
Number,
|
|
251
258
|
null,
|
|
259
|
+
Boolean,
|
|
252
260
|
Array,
|
|
253
|
-
Function
|
|
254
|
-
Boolean
|
|
261
|
+
Function
|
|
255
262
|
],
|
|
256
263
|
required: false,
|
|
257
264
|
skipCheck: true,
|
|
@@ -262,9 +269,9 @@ var InternalSubMenu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots,
|
|
|
262
269
|
String,
|
|
263
270
|
Number,
|
|
264
271
|
null,
|
|
272
|
+
Boolean,
|
|
265
273
|
Array,
|
|
266
|
-
Function
|
|
267
|
-
Boolean
|
|
274
|
+
Function
|
|
268
275
|
],
|
|
269
276
|
required: false,
|
|
270
277
|
skipCheck: true,
|
|
@@ -330,19 +337,23 @@ var InternalSubMenu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots,
|
|
|
330
337
|
inheritAttrs: false
|
|
331
338
|
});
|
|
332
339
|
var SubMenu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots }) => {
|
|
333
|
-
const
|
|
340
|
+
const eventKey = (0, vue.computed)(() => props?.eventKey);
|
|
341
|
+
const connectedKeyPath = require_PathContext.useFullPath(eventKey);
|
|
334
342
|
const measure = require_PathContext.useMeasure();
|
|
335
343
|
const validKeyPath = (0, vue.computed)(() => connectedKeyPath.value.filter((k) => k !== void 0));
|
|
336
|
-
(0, vue.watch)([
|
|
337
|
-
if (measure
|
|
338
|
-
|
|
344
|
+
(0, vue.watch)([connectedKeyPath], (_n, _o, onCleanup) => {
|
|
345
|
+
if (measure) measure.registerPath(eventKey.value, connectedKeyPath.value);
|
|
346
|
+
onCleanup(() => {
|
|
347
|
+
measure?.unregisterPath(eventKey.value, connectedKeyPath.value);
|
|
348
|
+
});
|
|
349
|
+
}, { immediate: true });
|
|
339
350
|
return () => {
|
|
340
351
|
const children = slots.default?.();
|
|
341
352
|
const childList = require_commonUtil.parseChildren(children, validKeyPath.value);
|
|
342
353
|
let renderNode;
|
|
343
354
|
if (measure) renderNode = childList;
|
|
344
355
|
else renderNode = (0, vue.createVNode)(InternalSubMenu, props, _isSlot(childList) ? childList : { default: () => [childList] });
|
|
345
|
-
return (0, vue.createVNode)(require_PathContext.PathTrackerContext.Provider, { "value":
|
|
356
|
+
return (0, vue.createVNode)(require_PathContext.PathTrackerContext.Provider, { "value": connectedKeyPath.value }, _isSlot(renderNode) ? renderNode : { default: () => [renderNode] });
|
|
346
357
|
};
|
|
347
358
|
}, {
|
|
348
359
|
props: {
|
|
@@ -357,8 +368,15 @@ var SubMenu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots }) => {
|
|
|
357
368
|
default: void 0
|
|
358
369
|
},
|
|
359
370
|
title: {
|
|
360
|
-
type:
|
|
371
|
+
type: [
|
|
372
|
+
String,
|
|
373
|
+
Number,
|
|
374
|
+
null,
|
|
375
|
+
Boolean,
|
|
376
|
+
Array
|
|
377
|
+
],
|
|
361
378
|
required: false,
|
|
379
|
+
skipCheck: true,
|
|
362
380
|
default: void 0
|
|
363
381
|
},
|
|
364
382
|
internalPopupClose: {
|
|
@@ -401,9 +419,9 @@ var SubMenu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots }) => {
|
|
|
401
419
|
String,
|
|
402
420
|
Number,
|
|
403
421
|
null,
|
|
422
|
+
Boolean,
|
|
404
423
|
Array,
|
|
405
|
-
Function
|
|
406
|
-
Boolean
|
|
424
|
+
Function
|
|
407
425
|
],
|
|
408
426
|
required: false,
|
|
409
427
|
skipCheck: true,
|
|
@@ -414,9 +432,9 @@ var SubMenu = /* @__PURE__ */ (0, vue.defineComponent)((props, { slots }) => {
|
|
|
414
432
|
String,
|
|
415
433
|
Number,
|
|
416
434
|
null,
|
|
435
|
+
Boolean,
|
|
417
436
|
Array,
|
|
418
|
-
Function
|
|
419
|
-
Boolean
|
|
437
|
+
Function
|
|
420
438
|
],
|
|
421
439
|
required: false,
|
|
422
440
|
skipCheck: true,
|
package/dist/SubMenu/index.js
CHANGED
|
@@ -201,8 +201,15 @@ var InternalSubMenu = /* @__PURE__ */ defineComponent((props, { slots, attrs })
|
|
|
201
201
|
default: void 0
|
|
202
202
|
},
|
|
203
203
|
title: {
|
|
204
|
-
type:
|
|
204
|
+
type: [
|
|
205
|
+
String,
|
|
206
|
+
Number,
|
|
207
|
+
null,
|
|
208
|
+
Boolean,
|
|
209
|
+
Array
|
|
210
|
+
],
|
|
205
211
|
required: false,
|
|
212
|
+
skipCheck: true,
|
|
206
213
|
default: void 0
|
|
207
214
|
},
|
|
208
215
|
internalPopupClose: {
|
|
@@ -245,9 +252,9 @@ var InternalSubMenu = /* @__PURE__ */ defineComponent((props, { slots, attrs })
|
|
|
245
252
|
String,
|
|
246
253
|
Number,
|
|
247
254
|
null,
|
|
255
|
+
Boolean,
|
|
248
256
|
Array,
|
|
249
|
-
Function
|
|
250
|
-
Boolean
|
|
257
|
+
Function
|
|
251
258
|
],
|
|
252
259
|
required: false,
|
|
253
260
|
skipCheck: true,
|
|
@@ -258,9 +265,9 @@ var InternalSubMenu = /* @__PURE__ */ defineComponent((props, { slots, attrs })
|
|
|
258
265
|
String,
|
|
259
266
|
Number,
|
|
260
267
|
null,
|
|
268
|
+
Boolean,
|
|
261
269
|
Array,
|
|
262
|
-
Function
|
|
263
|
-
Boolean
|
|
270
|
+
Function
|
|
264
271
|
],
|
|
265
272
|
required: false,
|
|
266
273
|
skipCheck: true,
|
|
@@ -326,19 +333,23 @@ var InternalSubMenu = /* @__PURE__ */ defineComponent((props, { slots, attrs })
|
|
|
326
333
|
inheritAttrs: false
|
|
327
334
|
});
|
|
328
335
|
var SubMenu_default = /* @__PURE__ */ defineComponent((props, { slots }) => {
|
|
329
|
-
const
|
|
336
|
+
const eventKey = computed(() => props?.eventKey);
|
|
337
|
+
const connectedKeyPath = useFullPath(eventKey);
|
|
330
338
|
const measure = useMeasure();
|
|
331
339
|
const validKeyPath = computed(() => connectedKeyPath.value.filter((k) => k !== void 0));
|
|
332
|
-
watch([
|
|
333
|
-
if (measure
|
|
334
|
-
|
|
340
|
+
watch([connectedKeyPath], (_n, _o, onCleanup) => {
|
|
341
|
+
if (measure) measure.registerPath(eventKey.value, connectedKeyPath.value);
|
|
342
|
+
onCleanup(() => {
|
|
343
|
+
measure?.unregisterPath(eventKey.value, connectedKeyPath.value);
|
|
344
|
+
});
|
|
345
|
+
}, { immediate: true });
|
|
335
346
|
return () => {
|
|
336
347
|
const children = slots.default?.();
|
|
337
348
|
const childList = parseChildren(children, validKeyPath.value);
|
|
338
349
|
let renderNode;
|
|
339
350
|
if (measure) renderNode = childList;
|
|
340
351
|
else renderNode = createVNode(InternalSubMenu, props, _isSlot(childList) ? childList : { default: () => [childList] });
|
|
341
|
-
return createVNode(PathTrackerContext.Provider, { "value":
|
|
352
|
+
return createVNode(PathTrackerContext.Provider, { "value": connectedKeyPath.value }, _isSlot(renderNode) ? renderNode : { default: () => [renderNode] });
|
|
342
353
|
};
|
|
343
354
|
}, {
|
|
344
355
|
props: {
|
|
@@ -353,8 +364,15 @@ var SubMenu_default = /* @__PURE__ */ defineComponent((props, { slots }) => {
|
|
|
353
364
|
default: void 0
|
|
354
365
|
},
|
|
355
366
|
title: {
|
|
356
|
-
type:
|
|
367
|
+
type: [
|
|
368
|
+
String,
|
|
369
|
+
Number,
|
|
370
|
+
null,
|
|
371
|
+
Boolean,
|
|
372
|
+
Array
|
|
373
|
+
],
|
|
357
374
|
required: false,
|
|
375
|
+
skipCheck: true,
|
|
358
376
|
default: void 0
|
|
359
377
|
},
|
|
360
378
|
internalPopupClose: {
|
|
@@ -397,9 +415,9 @@ var SubMenu_default = /* @__PURE__ */ defineComponent((props, { slots }) => {
|
|
|
397
415
|
String,
|
|
398
416
|
Number,
|
|
399
417
|
null,
|
|
418
|
+
Boolean,
|
|
400
419
|
Array,
|
|
401
|
-
Function
|
|
402
|
-
Boolean
|
|
420
|
+
Function
|
|
403
421
|
],
|
|
404
422
|
required: false,
|
|
405
423
|
skipCheck: true,
|
|
@@ -410,9 +428,9 @@ var SubMenu_default = /* @__PURE__ */ defineComponent((props, { slots }) => {
|
|
|
410
428
|
String,
|
|
411
429
|
Number,
|
|
412
430
|
null,
|
|
431
|
+
Boolean,
|
|
413
432
|
Array,
|
|
414
|
-
Function
|
|
415
|
-
Boolean
|
|
433
|
+
Function
|
|
416
434
|
],
|
|
417
435
|
required: false,
|
|
418
436
|
skipCheck: true,
|
|
@@ -148,9 +148,9 @@ var InheritableContextProvider = /* @__PURE__ */ (0, vue.defineComponent)((props
|
|
|
148
148
|
String,
|
|
149
149
|
Number,
|
|
150
150
|
null,
|
|
151
|
+
Boolean,
|
|
151
152
|
Array,
|
|
152
|
-
Function
|
|
153
|
-
Boolean
|
|
153
|
+
Function
|
|
154
154
|
],
|
|
155
155
|
required: false,
|
|
156
156
|
skipCheck: true,
|
|
@@ -161,9 +161,9 @@ var InheritableContextProvider = /* @__PURE__ */ (0, vue.defineComponent)((props
|
|
|
161
161
|
String,
|
|
162
162
|
Number,
|
|
163
163
|
null,
|
|
164
|
+
Boolean,
|
|
164
165
|
Array,
|
|
165
|
-
Function
|
|
166
|
-
Boolean
|
|
166
|
+
Function
|
|
167
167
|
],
|
|
168
168
|
required: false,
|
|
169
169
|
skipCheck: true,
|
|
@@ -145,9 +145,9 @@ var MenuContext_default = /* @__PURE__ */ defineComponent((props, { slots }) =>
|
|
|
145
145
|
String,
|
|
146
146
|
Number,
|
|
147
147
|
null,
|
|
148
|
+
Boolean,
|
|
148
149
|
Array,
|
|
149
|
-
Function
|
|
150
|
-
Boolean
|
|
150
|
+
Function
|
|
151
151
|
],
|
|
152
152
|
required: false,
|
|
153
153
|
skipCheck: true,
|
|
@@ -158,9 +158,9 @@ var MenuContext_default = /* @__PURE__ */ defineComponent((props, { slots }) =>
|
|
|
158
158
|
String,
|
|
159
159
|
Number,
|
|
160
160
|
null,
|
|
161
|
+
Boolean,
|
|
161
162
|
Array,
|
|
162
|
-
Function
|
|
163
|
-
Boolean
|
|
163
|
+
Function
|
|
164
164
|
],
|
|
165
165
|
required: false,
|
|
166
166
|
skipCheck: true,
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@v-c/menu",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.6",
|
|
5
5
|
"description": "menu ui component for vue",
|
|
6
6
|
"exports": {
|
|
7
7
|
".": {
|
|
@@ -25,9 +25,9 @@
|
|
|
25
25
|
"vue": "^3.0.0"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@v-c/overflow": "0.0.
|
|
29
|
-
"@v-c/trigger": "0.0.
|
|
30
|
-
"@v-c/util": "0.0.
|
|
28
|
+
"@v-c/overflow": "0.0.2",
|
|
29
|
+
"@v-c/trigger": "0.0.15",
|
|
30
|
+
"@v-c/util": "0.0.15"
|
|
31
31
|
},
|
|
32
32
|
"scripts": {
|
|
33
33
|
"build": "vite build",
|