@fastkit/vui 0.8.18 → 0.10.0

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/vui.mjs CHANGED
@@ -1,8 +1,8 @@
1
- import { createPropsOptions, createFormControlSettings, defineSlotsProps, useFormControl, VTooltip, renderSlotOrEmpty, createFormSelectorSettings, createFormControlProps, useFormSelectorControl, resolveVNodeChildOrSlots, createFormSelectorItemSettings, useFormSelectorItemControl, createFormSelectorItemGroupProps, useFormSelectorItemGroupControl, useParentFormNode, useKeybord, VMenu, createTextInputSettings, useTextInputControl, createTextareaSettings, useTextareaControl, createFormSettings, useForm, getDocumentScroller, useVScrollerRef, VScroller, useInjectTheme, VStackRoot, resolveVStackDynamicInput, VueColorSchemePlugin, installVueStackPlugin, onAppUnmount } from '@fastkit/vue-kit';
1
+ import { createPropsOptions, createFormControlSettings, defineSlotsProps, useFormControl, VTooltip, renderSlotOrEmpty, createFormSelectorSettings, createFormControlProps, useFormSelectorControl, resolveVNodeChildOrSlots, createFormSelectorItemSettings, useFormSelectorItemControl, createFormSelectorItemGroupProps, useFormSelectorItemGroupControl, useParentFormNode, useKeyboard, VMenu, createTextInputSettings, useTextInputControl, createTextareaSettings, useTextareaControl, createFormSettings, useForm, getDocumentScroller, useVScrollerRef, VScroller, useInjectTheme, VStackRoot, resolveVStackDynamicInput, VueColorSchemePlugin, installVueStackPlugin, onAppUnmount } from '@fastkit/vue-kit';
2
2
  export * from '@fastkit/vue-kit';
3
3
  export { VDialog, VMenu, VSnackbar, VTooltip } from '@fastkit/vue-kit';
4
4
  import { inject, computed, provide, createVNode, mergeProps, defineComponent, Fragment, isVNode, ref, watch, onMounted, onBeforeUnmount, cloneVNode, withDirectives, createTextVNode, vShow, onBeforeUpdate, vModelSelect, nextTick, Transition, reactive } from 'vue';
5
- import { useRouter, RouterLink, useLink, useRoute } from 'vue-router';
5
+ import { useRouter, RouterLink, useRoute, useLink } from 'vue-router';
6
6
  import { createPropsOptions as createPropsOptions$1, renderSlotOrEmpty as renderSlotOrEmpty$1, defineSlotsProps as defineSlotsProps$1, htmlAttributesPropOptions, navigationableInheritProps, useNavigationable, VLink, isFragment, rawNumberPropType, resolveNumberish, resizeDirectiveArgument, VExpandTransition, LocationService, setDefaultRouterLink } from '@fastkit/vue-utils';
7
7
  import { getDocumentScroller as getDocumentScroller$1 } from '@fastkit/vue-scroller';
8
8
  import { VProgressCircular } from '@fastkit/vue-loading';
@@ -13,7 +13,7 @@ export { ICON_NAMES } from '@fastkit/icon-font';
13
13
  import { VAppContainer, VAppLayoutControl } from '@fastkit/vue-app-layout';
14
14
  import { createTextableProps, createTextableEmits, TextableControl } from '@fastkit/vue-form-control';
15
15
  import { useEditor, EditorContent, BubbleMenu } from '@tiptap/vue-3';
16
- import StarterKit from '@tiptap/starter-kit';
16
+ import { StarterKit } from '@tiptap/starter-kit';
17
17
  import { Extension } from '@tiptap/core';
18
18
  import { Decoration, DecorationSet } from 'prosemirror-view';
19
19
  import { Plugin, PluginKey, TextSelection } from 'prosemirror-state';
@@ -144,6 +144,7 @@ function useControlField(props, opts = {}) {
144
144
  return provider;
145
145
  }
146
146
 
147
+ // export function toRawIconProp<T = void>(
147
148
  // prop: RawIconProp<T>,
148
149
  // payload: () => T,
149
150
  // ): RawIconProp {
@@ -157,7 +158,6 @@ function useControlField(props, opts = {}) {
157
158
  // return fn;
158
159
  // }
159
160
  // export const rawRawIconProp = [String, Function] as PropType<RawIconProp>;
160
-
161
161
  const _rawIconProp = [String, Function];
162
162
  function rawIconProp() {
163
163
  return _rawIconProp;
@@ -177,12 +177,12 @@ const iconProps = createPropsOptions$1({
177
177
  type: Number
178
178
  }
179
179
  });
180
- const VIcon = defineComponent({
180
+ const VIcon = /* @__PURE__ */ defineComponent({
181
181
  name: 'VIcon',
182
- props: { ...iconProps
182
+ props: {
183
+ ...iconProps
183
184
  },
184
185
  emits: {},
185
-
186
186
  setup(props, ctx) {
187
187
  const iconName = computed(() => props.name);
188
188
  const clickable = computed(() => typeof ctx.attrs.onClick !== 'undefined');
@@ -206,7 +206,6 @@ const VIcon = defineComponent({
206
206
  "style": bodyStyles.value
207
207
  }, null)]);
208
208
  }
209
-
210
209
  });
211
210
 
212
211
  const {
@@ -221,7 +220,6 @@ function createRequiredChipRenderer(required, props, vui = useVui()) {
221
220
  requiredChip
222
221
  } = props;
223
222
  if (requiredChip === false) return;
224
-
225
223
  if (requiredChip) {
226
224
  if (typeof requiredChip === 'string') {
227
225
  chip = requiredChip;
@@ -229,22 +227,20 @@ function createRequiredChipRenderer(required, props, vui = useVui()) {
229
227
  chip = requiredChip();
230
228
  }
231
229
  }
232
-
233
230
  if (chip === undefined) {
234
231
  chip = vui.getRequiredChip();
235
232
  }
236
-
237
233
  return chip;
238
234
  };
239
235
  }
240
- const VFormControl = defineComponent({
236
+ const VFormControl = /* @__PURE__ */ defineComponent({
241
237
  name: 'VFormControl',
242
- props: { ...props$8,
238
+ props: {
239
+ ...props$8,
243
240
  ...defineSlotsProps(),
244
241
  error: Boolean
245
242
  },
246
243
  emits: emits$8,
247
-
248
244
  setup(props, ctx) {
249
245
  const vui = useVui();
250
246
  const control = useFormControl(props, ctx, {
@@ -257,15 +253,12 @@ const VFormControl = defineComponent({
257
253
  let {
258
254
  hinttipDelay
259
255
  } = control;
260
-
261
256
  if (hinttipDelay == null) {
262
257
  hinttipDelay = vui.setting('hinttipDelay');
263
258
  }
264
-
265
259
  if (hinttipDelay == null) {
266
260
  hinttipDelay = 500;
267
261
  }
268
-
269
262
  return hinttipDelay;
270
263
  });
271
264
  ctx.expose(control.expose());
@@ -320,7 +313,6 @@ const VFormControl = defineComponent({
320
313
  }, [appends])])])]);
321
314
  };
322
315
  }
323
-
324
316
  });
325
317
 
326
318
  function defineFormSelectorComponent(opts) {
@@ -336,97 +328,100 @@ function defineFormSelectorComponent(opts) {
336
328
  } = createFormSelectorSettings({
337
329
  defaultMultiple
338
330
  });
339
- return defineComponent({
340
- name: opts.name,
341
- props: { ...props,
342
- ...createFormControlProps(),
343
- ...createControlProps(),
344
- stacked: {
345
- type: Boolean,
346
- default: true
331
+ return (/* @__PURE__ */ defineComponent({
332
+ name: opts.name,
333
+ props: {
334
+ ...props,
335
+ ...createFormControlProps(),
336
+ ...createControlProps(),
337
+ stacked: {
338
+ type: Boolean,
339
+ default: true
340
+ },
341
+ // eslint-disable-next-line vue/require-prop-types
342
+ loadingMessage: {},
343
+ // eslint-disable-next-line vue/require-prop-types
344
+ failedToLoadItemsMessage: {},
345
+ ...defineSlotsProps()
347
346
  },
348
- // eslint-disable-next-line vue/require-prop-types
349
- loadingMessage: {},
350
- // eslint-disable-next-line vue/require-prop-types
351
- failedToLoadItemsMessage: {},
352
- ...defineSlotsProps()
353
- },
354
- emits,
355
-
356
- setup(props, ctx) {
357
- const selectorControl = useFormSelectorControl(props, ctx, {
358
- nodeType,
359
- defaultMultiple
360
- });
361
- const control = useControl(props);
362
- const vui = useVui();
363
- const loadingMessageRef = computed(() => {
364
- const slot = resolveVNodeChildOrSlots(props.loadingMessage, vui.setting('loadingMessage'), 'Loading...');
365
- return slot && slot(vui);
366
- });
367
- const failedToLoadItemsMessageRef = computed(() => {
368
- const slot = resolveVNodeChildOrSlots(props.failedToLoadItemsMessage, vui.setting('failedToLoadDataMessage'), 'Failed to load data.');
369
- return slot && slot(vui);
370
- });
371
- return { ...selectorControl.expose(),
372
- ...control,
373
- loadingMessageRef,
374
- failedToLoadItemsMessageRef
375
- };
376
- },
377
-
378
- render() {
379
- const {
380
- selectorControl
381
- } = this;
382
- return createVNode(VFormControl, {
383
- "nodeControl": this.nodeControl,
384
- "focused": this.nodeControl.focused,
385
- "hiddenInfo": this.hiddenInfo,
386
- "class": ['v-form-selector', className, { ...this.classes,
387
- 'v-form-selector--stacked': this.stacked
388
- }],
389
- "label": this.label,
390
- "hint": this.hint,
391
- "hinttip": this.hinttip,
392
- "requiredChip": this.requiredChip,
393
- "error": selectorControl.itemsLoadFailed
394
- }, { ...this.$slots,
395
- default: () => createVNode("div", {
396
- "class": "v-form-selector__body"
397
- }, [selectorControl.itemsLoadFailed && createVNode("div", {
398
- "key": "failed",
399
- "class": "v-form-selector__placeholder v-form-selector__placeholder--error"
400
- }, [this.failedToLoadItemsMessageRef]), selectorControl.itemsLoading && createVNode("div", {
401
- "key": "loading",
402
- "class": "v-form-selector__placeholder"
403
- }, [createVNode(VProgressCircular, {
404
- "indeterminate": true,
405
- "class": "mr-1",
406
- "size": CONTROL_LOADING_SPINNER_SIZES[this.size || 'md']
407
- }, null), this.loadingMessageRef]), this.propGroups.map(group => {
408
- const {
409
- items
410
- } = group;
411
- return createVNode(Fragment, null, [items.map(attrs => {
412
- const selected = selectorControl.isSelected(attrs.value);
413
- return itemRenderer({
414
- selected,
415
- control: selectorControl,
416
- attrs: { ...attrs,
417
- modelValue: selected,
418
- key: attrs.value
419
- },
420
- slots: {
421
- default: () => attrs.label(this.selectorControl)
422
- }
423
- });
424
- })]);
425
- }), renderSlotOrEmpty(this.$slots, 'default')])
426
- });
427
- }
428
-
429
- });
347
+ emits,
348
+ setup(props, ctx) {
349
+ const selectorControl = useFormSelectorControl(props, ctx, {
350
+ nodeType,
351
+ defaultMultiple
352
+ });
353
+ const control = useControl(props);
354
+ const vui = useVui();
355
+ const loadingMessageRef = computed(() => {
356
+ const slot = resolveVNodeChildOrSlots(props.loadingMessage, vui.setting('loadingMessage'), 'Loading...');
357
+ return slot && slot(vui);
358
+ });
359
+ const failedToLoadItemsMessageRef = computed(() => {
360
+ const slot = resolveVNodeChildOrSlots(props.failedToLoadItemsMessage, vui.setting('failedToLoadDataMessage'), 'Failed to load data.');
361
+ return slot && slot(vui);
362
+ });
363
+ return {
364
+ ...selectorControl.expose(),
365
+ ...control,
366
+ loadingMessageRef,
367
+ failedToLoadItemsMessageRef
368
+ };
369
+ },
370
+ render() {
371
+ const {
372
+ selectorControl
373
+ } = this;
374
+ return createVNode(VFormControl, {
375
+ "nodeControl": this.nodeControl,
376
+ "focused": this.nodeControl.focused,
377
+ "hiddenInfo": this.hiddenInfo,
378
+ "class": ['v-form-selector', className, {
379
+ ...this.classes,
380
+ 'v-form-selector--stacked': this.stacked
381
+ }],
382
+ "label": this.label,
383
+ "hint": this.hint,
384
+ "hinttip": this.hinttip,
385
+ "requiredChip": this.requiredChip,
386
+ "error": selectorControl.itemsLoadFailed
387
+ }, {
388
+ ...this.$slots,
389
+ default: () => createVNode("div", {
390
+ "class": "v-form-selector__body"
391
+ }, [selectorControl.itemsLoadFailed && createVNode("div", {
392
+ "key": "failed",
393
+ "class": "v-form-selector__placeholder v-form-selector__placeholder--error"
394
+ }, [this.failedToLoadItemsMessageRef]), selectorControl.itemsLoading && createVNode("div", {
395
+ "key": "loading",
396
+ "class": "v-form-selector__placeholder"
397
+ }, [createVNode(VProgressCircular, {
398
+ "indeterminate": true,
399
+ "class": "mr-1",
400
+ "size": CONTROL_LOADING_SPINNER_SIZES[this.size || 'md']
401
+ }, null), this.loadingMessageRef]), this.propGroups.map(group => {
402
+ const {
403
+ items
404
+ } = group;
405
+ return createVNode(Fragment, null, [items.map(attrs => {
406
+ const selected = selectorControl.isSelected(attrs.value);
407
+ return itemRenderer({
408
+ selected,
409
+ control: selectorControl,
410
+ attrs: {
411
+ ...attrs,
412
+ modelValue: selected,
413
+ key: attrs.value
414
+ },
415
+ slots: {
416
+ default: () => attrs.label(this.selectorControl)
417
+ }
418
+ });
419
+ })]);
420
+ }), renderSlotOrEmpty(this.$slots, 'default')])
421
+ });
422
+ }
423
+ })
424
+ );
430
425
  }
431
426
 
432
427
  function createElevationProps() {
@@ -449,8 +444,7 @@ function useElevation(props, opts = {}) {
449
444
  function _isSlot$f(s) {
450
445
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
451
446
  }
452
-
453
- const VSkeltonLoaderBone = defineComponent({
447
+ const VSkeltonLoaderBone = /* @__PURE__ */ defineComponent({
454
448
  name: 'VSkeltonLoaderBone',
455
449
  inheritAttrs: false,
456
450
  props: {
@@ -459,11 +453,9 @@ const VSkeltonLoaderBone = defineComponent({
459
453
  default: 'div'
460
454
  }
461
455
  },
462
-
463
456
  setup(props, ctx) {
464
457
  return () => {
465
458
  let _slot;
466
-
467
459
  const TagName = props.tag;
468
460
  return createVNode(TagName, mergeProps(ctx.attrs, {
469
461
  "class": "v-skelton-loader-bone"
@@ -472,23 +464,20 @@ const VSkeltonLoaderBone = defineComponent({
472
464
  });
473
465
  };
474
466
  }
475
-
476
467
  });
477
468
 
478
469
  const IMAGE_ATTRS = ['alt', 'crossorigin', 'decoding', 'sizes', 'src', 'srcset', 'usemap'];
479
470
  function splitAttrs(attrs) {
480
- const el = { ...attrs
471
+ const el = {
472
+ ...attrs
481
473
  };
482
474
  const img = {};
483
-
484
475
  for (const ATTR of IMAGE_ATTRS) {
485
476
  const value = attrs[ATTR];
486
-
487
477
  if (value != null) {
488
478
  img[ATTR] = value;
489
479
  }
490
480
  }
491
-
492
481
  return {
493
482
  el,
494
483
  img
@@ -496,7 +485,6 @@ function splitAttrs(attrs) {
496
485
  }
497
486
  const NUMBERISH_PROP = [Number, String];
498
487
  const DEFAULT_HEIGHT = 150;
499
-
500
488
  const resolveBusyImageSizeValue = source => {
501
489
  if (source == null) return;
502
490
  return isNaN(source) ? String(source) : `${source}px`;
@@ -505,11 +493,10 @@ const resolveBusyImageSizeValue = source => {
505
493
  * 画像表示用コンポーネント
506
494
  * <img /> タグのように振る舞うが、ローディング表示や、表示サイズの調整など、ちょっといい感じにやるためのコンポーネント
507
495
  */
508
-
509
-
510
- const VBusyImage = defineComponent({
496
+ const VBusyImage = /* @__PURE__ */ defineComponent({
511
497
  name: 'VBusyImage',
512
- props: { ...undefined,
498
+ props: {
499
+ ...undefined,
513
500
  aspectRatio: String,
514
501
  width: NUMBERISH_PROP,
515
502
  height: NUMBERISH_PROP,
@@ -520,9 +507,8 @@ const VBusyImage = defineComponent({
520
507
  load: ev => true,
521
508
  error: ev => true
522
509
  },
523
-
524
510
  setup(props, ctx) {
525
- const loadStateRef = ref(props.cover && isAvairableSrc(ctx.attrs.src) ? 'loading' : 'pending');
511
+ const loadStateRef = ref(props.cover && isAvailableSrc(ctx.attrs.src) ? 'loading' : 'pending');
526
512
  const attrsRef = computed(() => splitAttrs(ctx.attrs));
527
513
  const isPendingRef = computed(() => loadStateRef.value === 'pending');
528
514
  const isLoadingRef = computed(() => loadStateRef.value === 'loading');
@@ -544,30 +530,24 @@ const VBusyImage = defineComponent({
544
530
  width,
545
531
  height
546
532
  } = props;
547
-
548
533
  if (height == null && cover) {
549
534
  height = DEFAULT_HEIGHT;
550
535
  }
551
-
552
536
  if (width == null && cover) {
553
537
  width = height;
554
538
  }
555
-
556
539
  width = resolveBusyImageSizeValue(width);
557
540
  height = resolveBusyImageSizeValue(height);
558
541
  main.width = width;
559
542
  main.height = height;
560
543
  placeholder.width = width;
561
544
  placeholder.height = height;
562
-
563
545
  if (placeholder.height == null) {
564
546
  placeholder.height = resolveBusyImageSizeValue(DEFAULT_HEIGHT);
565
547
  }
566
-
567
548
  if (placeholder.width == null) {
568
549
  placeholder.width = placeholder.height;
569
550
  }
570
-
571
551
  return {
572
552
  placeholder,
573
553
  main
@@ -579,22 +559,19 @@ const VBusyImage = defineComponent({
579
559
  value: coverImage
580
560
  } = coverImageRef;
581
561
  const coverSrc = coverImage && coverImage.src;
582
- const styles = { ...currentRectRef.value
562
+ const styles = {
563
+ ...currentRectRef.value
583
564
  };
584
-
585
565
  if (coverSrc) {
586
566
  styles.backgroundImage = `url(${coverSrc})`;
587
567
  }
588
-
589
568
  return styles;
590
569
  });
591
570
  let booted = false;
592
571
  watch(() => ctx.attrs.src, value => {
593
572
  coverImageRef.value = undefined;
594
-
595
- if (isAvairableSrc(value)) {
573
+ if (isAvailableSrc(value)) {
596
574
  loadStateRef.value = 'loading';
597
-
598
575
  if (props.cover) {
599
576
  loadImage(value).then(image => {
600
577
  coverImageRef.value = image;
@@ -609,7 +586,6 @@ const VBusyImage = defineComponent({
609
586
  }, {
610
587
  immediate: IN_WINDOW
611
588
  });
612
-
613
589
  const setManualState = loadType => {
614
590
  loadStateRef.value = loadType === 'load' ? 'loaded' : 'error';
615
591
  const ev = new Event(loadType, {
@@ -619,13 +595,11 @@ const VBusyImage = defineComponent({
619
595
  });
620
596
  ctx.emit(loadType, ev);
621
597
  };
622
-
623
598
  onMounted(() => {
624
599
  if (booted || props.cover) return;
625
600
  const image = nodeRef.value;
626
601
  if (!image) return;
627
602
  const loadType = imageIsReady(image);
628
-
629
603
  if (loadType) {
630
604
  setManualState(loadType);
631
605
  }
@@ -633,19 +607,16 @@ const VBusyImage = defineComponent({
633
607
  onBeforeUnmount(() => {
634
608
  coverImageRef.value = undefined;
635
609
  });
636
-
637
610
  const handleLoad = ev => {
638
611
  booted = true;
639
612
  loadStateRef.value = 'loaded';
640
613
  ctx.emit('load', ev);
641
614
  };
642
-
643
615
  const handleError = ev => {
644
616
  booted = true;
645
617
  loadStateRef.value = 'error';
646
618
  ctx.emit('error', ev);
647
619
  };
648
-
649
620
  ctx.expose({
650
621
  state: loadStateRef,
651
622
  isPending: isPendingRef,
@@ -676,15 +647,12 @@ const VBusyImage = defineComponent({
676
647
  }, [children])]);
677
648
  };
678
649
  }
679
-
680
650
  });
681
-
682
651
  function imageIsReady(image) {
683
652
  if (!image.complete) return false;
684
653
  return image.naturalWidth + image.naturalHeight > 0 ? 'load' : 'error';
685
654
  }
686
-
687
- function isAvairableSrc(src) {
655
+ function isAvailableSrc(src) {
688
656
  return typeof src === 'string' && src !== '';
689
657
  }
690
658
 
@@ -697,10 +665,11 @@ function extractRawGridValueClasses(value, prefix, getter) {
697
665
  }
698
666
  // export const DEFAULT_MEDIA_MATCH_KEY = MEDIA_MATCH_CONDITIONS[0].key;
699
667
 
700
- const VGridItem = defineComponent({
668
+ const VGridItem = /* @__PURE__ */ defineComponent({
701
669
  name: 'VGridItem',
702
670
  inheritAttrs: false,
703
- props: { ...htmlAttributesPropOptions,
671
+ props: {
672
+ ...htmlAttributesPropOptions,
704
673
  tag: {
705
674
  type: String,
706
675
  default: 'div'
@@ -711,11 +680,11 @@ const VGridItem = defineComponent({
711
680
  justify: undefined,
712
681
  order: undefined
713
682
  },
714
-
715
683
  setup(props, ctx) {
716
684
  const data = computed(() => {
717
685
  const classes = [];
718
- const attrs = { ...ctx.attrs
686
+ const attrs = {
687
+ ...ctx.attrs
719
688
  };
720
689
  const {
721
690
  size,
@@ -730,14 +699,14 @@ const VGridItem = defineComponent({
730
699
  size != null && classes.push(extractRawGridValueClasses(size, 'grid-size-'));
731
700
  align && classes.push(extractRawGridValueClasses(align, 'self-align-'));
732
701
  justify && classes.push(extractRawGridValueClasses(justify, 'self-justify-'));
733
- order != null && classes.push(extractRawGridValueClasses(order, 'order-')); // MEDIA_MATCH_CONDITIONS.forEach(({ key }) => {
702
+ order != null && classes.push(extractRawGridValueClasses(order, 'order-'));
703
+ // MEDIA_MATCH_CONDITIONS.forEach(({ key }) => {
734
704
  // const v = attrs[key];
735
705
  // delete attrs[key];
736
706
  // if (v != null) {
737
707
  // classes.push(`grid-size-${v}--${key}`);
738
708
  // }
739
709
  // });
740
-
741
710
  return {
742
711
  classes,
743
712
  attrs
@@ -754,17 +723,16 @@ const VGridItem = defineComponent({
754
723
  }, attrs), ctx.slots);
755
724
  };
756
725
  }
757
-
758
726
  });
759
727
 
760
728
  function spacingValueToString(value) {
761
729
  return Number.isInteger(value) ? String(value) : `${value}h`;
762
730
  }
763
-
764
- const VGridContainer = defineComponent({
731
+ const VGridContainer = /* @__PURE__ */ defineComponent({
765
732
  name: 'VGridContainer',
766
733
  inheritAttrs: false,
767
- props: { ...htmlAttributesPropOptions,
734
+ props: {
735
+ ...htmlAttributesPropOptions,
768
736
  wrapperTag: {
769
737
  type: String,
770
738
  default: 'div'
@@ -781,11 +749,11 @@ const VGridContainer = defineComponent({
781
749
  alignContent: undefined,
782
750
  justifyContent: undefined
783
751
  },
784
-
785
752
  setup(props, ctx) {
786
753
  const data = computed(() => {
787
754
  const classes = [];
788
- const attrs = { ...ctx.attrs
755
+ const attrs = {
756
+ ...ctx.attrs
789
757
  };
790
758
  const {
791
759
  spacing,
@@ -806,7 +774,8 @@ const VGridContainer = defineComponent({
806
774
  delete attrs.direction;
807
775
  delete attrs.wrap;
808
776
  delete attrs.alignContent;
809
- delete attrs.justifyContent; // spacingX = mergeSpacing(spacing, spacingX);
777
+ delete attrs.justifyContent;
778
+ // spacingX = mergeSpacing(spacing, spacingX);
810
779
  // spacingY = mergeSpacing(spacing, spacingY);
811
780
  // if (!spacingX) {
812
781
  // spacingX = spacing;
@@ -815,7 +784,6 @@ const VGridContainer = defineComponent({
815
784
  // classes.push(extractRawGridItemValueClasses(align, 'self-align-'));
816
785
  // justify &&
817
786
  // classes.push(extractRawGridItemValueClasses(justify, 'self-justify-'));
818
-
819
787
  spacing != null && classes.push(extractRawGridValueClasses(spacing, 'grid-spacing-', spacingValueToString));
820
788
  spacingX != null && classes.push(extractRawGridValueClasses(spacingX, 'grid-spacing-x-', spacingValueToString));
821
789
  spacingY != null && classes.push(extractRawGridValueClasses(spacingY, 'grid-spacing-y-', spacingValueToString));
@@ -849,11 +817,11 @@ const VGridContainer = defineComponent({
849
817
  });
850
818
  };
851
819
  }
852
-
853
820
  });
854
821
 
855
822
  function createPaperBaseProps() {
856
- return { ...htmlAttributesPropOptions,
823
+ return {
824
+ ...htmlAttributesPropOptions,
857
825
  color: String,
858
826
  tag: {
859
827
  type: [String, Object],
@@ -863,7 +831,8 @@ function createPaperBaseProps() {
863
831
  };
864
832
  }
865
833
  function createPaperProps() {
866
- return { ...createElevationProps(),
834
+ return {
835
+ ...createElevationProps(),
867
836
  ...createPaperBaseProps(),
868
837
  square: Boolean,
869
838
  headerProps: Object,
@@ -872,11 +841,10 @@ function createPaperProps() {
872
841
  innerClass: [String, Array, Object]
873
842
  };
874
843
  }
875
- const VPaper = defineComponent({
844
+ const VPaper = /* @__PURE__ */ defineComponent({
876
845
  name: 'VPaper',
877
846
  inheritAttrs: false,
878
847
  props: createPaperProps(),
879
-
880
848
  setup(props, ctx) {
881
849
  const tag = computed(() => props.tag);
882
850
  const elevation = useElevation(props, {
@@ -910,12 +878,12 @@ const VPaper = defineComponent({
910
878
  });
911
879
  };
912
880
  }
913
-
914
881
  });
915
882
 
916
883
  const AVATAR_SIZES = ['sm', 'md', 'lg'];
917
884
  function createAvatarProps() {
918
- return { ...colorSchemeProps(),
885
+ return {
886
+ ...colorSchemeProps(),
919
887
  ...navigationableInheritProps,
920
888
  size: {
921
889
  type: [String, Number],
@@ -927,11 +895,10 @@ function createAvatarProps() {
927
895
  src: String
928
896
  };
929
897
  }
930
- const VAvatar = defineComponent({
898
+ const VAvatar = /* @__PURE__ */ defineComponent({
931
899
  name: 'VAvatar',
932
900
  inheritAttrs: false,
933
901
  props: createAvatarProps(),
934
-
935
902
  setup(props, ctx) {
936
903
  const vui = useVui();
937
904
  const defaults = vui.setting('buttonDefault');
@@ -981,12 +948,12 @@ const VAvatar = defineComponent({
981
948
  });
982
949
  };
983
950
  }
984
-
985
951
  });
986
952
 
987
953
  const CHIP_SIZES = ['xs', 'sm', 'md', 'lg', 'xl'];
988
954
  function createChipProps() {
989
- return { ...colorSchemeProps(),
955
+ return {
956
+ ...colorSchemeProps(),
990
957
  ...navigationableInheritProps,
991
958
  size: {
992
959
  type: String,
@@ -998,10 +965,8 @@ function createChipProps() {
998
965
  disabled: Boolean
999
966
  };
1000
967
  }
1001
-
1002
968
  function resolveRawVChipIcon(raw, type) {
1003
969
  if (!raw) return;
1004
-
1005
970
  if (typeof raw === 'function') {
1006
971
  return () => {
1007
972
  const child = raw();
@@ -1011,18 +976,15 @@ function resolveRawVChipIcon(raw, type) {
1011
976
  }, [child]);
1012
977
  };
1013
978
  }
1014
-
1015
979
  return () => createVNode(VIcon, {
1016
980
  "class": ['v-chip__icon', `v-chip__icon--${type}`],
1017
981
  "name": raw
1018
982
  }, null);
1019
983
  }
1020
-
1021
- const VChip = defineComponent({
984
+ const VChip = /* @__PURE__ */ defineComponent({
1022
985
  name: 'VChip',
1023
986
  inheritAttrs: false,
1024
987
  props: createChipProps(),
1025
-
1026
988
  setup(props, ctx) {
1027
989
  const vui = useVui();
1028
990
  const defaults = vui.setting('buttonDefault');
@@ -1032,12 +994,10 @@ const VChip = defineComponent({
1032
994
  });
1033
995
  const startIcon = computed(() => {
1034
996
  const _icon = resolveRawVChipIcon(props.startIcon, 'start');
1035
-
1036
997
  return _icon && _icon();
1037
998
  });
1038
999
  const endIcon = computed(() => {
1039
1000
  const _icon = resolveRawVChipIcon(props.endIcon, 'end');
1040
-
1041
1001
  return _icon && _icon();
1042
1002
  });
1043
1003
  const navigationable = useNavigationable(ctx, {
@@ -1066,31 +1026,29 @@ const VChip = defineComponent({
1066
1026
  });
1067
1027
  };
1068
1028
  }
1069
-
1070
1029
  });
1071
1030
 
1072
1031
  function createCardProps() {
1073
- return { ...createPaperProps(),
1032
+ return {
1033
+ ...createPaperProps(),
1074
1034
  ...navigationableInheritProps,
1075
1035
  disabled: Boolean
1076
1036
  };
1077
1037
  }
1078
- const VCard = defineComponent({
1038
+ const VCard = /* @__PURE__ */ defineComponent({
1079
1039
  name: 'VCard',
1080
1040
  inheritAttrs: false,
1081
1041
  props: createCardProps(),
1082
-
1083
1042
  setup(props, ctx) {
1084
1043
  const _props = computed(() => props);
1085
-
1086
1044
  const data = computed(() => {
1087
1045
  const hasLink = !!ctx.attrs.href || !!ctx.attrs.to;
1088
- const attrs = { ..._props.value,
1046
+ const attrs = {
1047
+ ..._props.value,
1089
1048
  ...ctx.attrs,
1090
1049
  class: ['v-card', ctx.attrs.class, typeof ctx.attrs.onClick === 'function' && 'clickable'],
1091
1050
  tag: hasLink ? VLink : 'div'
1092
1051
  };
1093
-
1094
1052
  if (props.disabled) {
1095
1053
  attrs.disabled = 'disabled';
1096
1054
  delete attrs.onClick;
@@ -1099,7 +1057,6 @@ const VCard = defineComponent({
1099
1057
  } else {
1100
1058
  delete attrs.disabled;
1101
1059
  }
1102
-
1103
1060
  return {
1104
1061
  attrs
1105
1062
  };
@@ -1108,12 +1065,10 @@ const VCard = defineComponent({
1108
1065
  return createVNode(VPaper, data.value.attrs, ctx.slots);
1109
1066
  };
1110
1067
  }
1111
-
1112
1068
  });
1113
1069
 
1114
- const VCardContent = defineComponent({
1070
+ const VCardContent = /* @__PURE__ */ defineComponent({
1115
1071
  name: 'VCardContent',
1116
-
1117
1072
  setup(props, ctx) {
1118
1073
  return () => {
1119
1074
  return createVNode("div", {
@@ -1121,12 +1076,10 @@ const VCardContent = defineComponent({
1121
1076
  }, [renderSlotOrEmpty$1(ctx.slots, 'default')]);
1122
1077
  };
1123
1078
  }
1124
-
1125
1079
  });
1126
1080
 
1127
- const VCardActions = defineComponent({
1081
+ const VCardActions = /* @__PURE__ */ defineComponent({
1128
1082
  name: 'VCardActions',
1129
-
1130
1083
  setup(props, ctx) {
1131
1084
  return () => {
1132
1085
  return createVNode("div", {
@@ -1134,9 +1087,9 @@ const VCardActions = defineComponent({
1134
1087
  }, [renderSlotOrEmpty$1(ctx.slots, 'default')]);
1135
1088
  };
1136
1089
  }
1137
-
1138
1090
  });
1139
1091
 
1092
+ const BUTTON_ALIGNS = ['left', 'center', 'right'];
1140
1093
  function resolveRawVButtonIcon(raw, type = 'main') {
1141
1094
  if (!raw) return;
1142
1095
  return typeof raw === 'function' ? raw : () => createVNode(VIcon, {
@@ -1144,8 +1097,8 @@ function resolveRawVButtonIcon(raw, type = 'main') {
1144
1097
  "name": raw
1145
1098
  }, null);
1146
1099
  }
1147
-
1148
- const vueButtonProps = createPropsOptions$1({ ...htmlAttributesPropOptions,
1100
+ const vueButtonProps = createPropsOptions$1({
1101
+ ...htmlAttributesPropOptions,
1149
1102
  ...colorSchemeProps(),
1150
1103
  ...navigationableInheritProps,
1151
1104
  spacer: [Boolean, String],
@@ -1153,6 +1106,10 @@ const vueButtonProps = createPropsOptions$1({ ...htmlAttributesPropOptions,
1153
1106
  icon: [String, Function],
1154
1107
  startIcon: [String, Function],
1155
1108
  endIcon: [String, Function],
1109
+ align: {
1110
+ type: String,
1111
+ default: 'center'
1112
+ },
1156
1113
  ...createControlProps()
1157
1114
  });
1158
1115
  const LOADING_SIZE_MAP = {
@@ -1160,28 +1117,24 @@ const LOADING_SIZE_MAP = {
1160
1117
  md: 20,
1161
1118
  lg: 28
1162
1119
  };
1163
- const VButton = defineComponent({
1120
+ const VButton = /* @__PURE__ */ defineComponent({
1164
1121
  name: 'VButton',
1165
1122
  inheritAttrs: false,
1166
1123
  props: vueButtonProps,
1167
-
1168
1124
  setup(props, ctx) {
1169
1125
  const vui = useVui();
1170
1126
  const control = useControl(props);
1171
1127
  const defaults = vui.setting('buttonDefault');
1172
1128
  const icon = computed(() => {
1173
1129
  const _icon = resolveRawVButtonIcon(props.icon);
1174
-
1175
1130
  return _icon && _icon();
1176
1131
  });
1177
1132
  const startIcon = computed(() => {
1178
1133
  const _icon = resolveRawVButtonIcon(props.startIcon, 'start');
1179
-
1180
1134
  return _icon && _icon();
1181
1135
  });
1182
1136
  const endIcon = computed(() => {
1183
1137
  const _icon = resolveRawVButtonIcon(props.endIcon, 'end');
1184
-
1185
1138
  return _icon && _icon();
1186
1139
  });
1187
1140
  const color = useColorClasses({
@@ -1189,18 +1142,19 @@ const VButton = defineComponent({
1189
1142
  variant: () => props.variant || (icon.value ? vui.setting('plainVariant') : defaults.variant)
1190
1143
  });
1191
1144
  const isPlain = computed(() => color.variant.value.value === vui.setting('plainVariant') && color.color.value.value === defaults.color);
1192
- const isLoading = computed(() => props.loading); // const isDisabled = computed(() => props.disabled);
1145
+ const isLoading = computed(() => props.loading);
1146
+ // const isDisabled = computed(() => props.disabled);
1193
1147
  // const isRounded = computed(() =>
1194
1148
  // props.rounded != null ? props.rounded : !!icon.value,
1195
1149
  // );
1196
-
1197
1150
  const spacer = computed(() => {
1198
1151
  const _spacer = props.spacer;
1199
1152
  if (!_spacer) return;
1200
1153
  return _spacer === true ? 'left' : _spacer;
1201
1154
  });
1202
- const classes = computed(() => [color.colorClasses.value, // navigationable.value.classes,
1203
- spacer.value ? `v-button--spacer-${spacer.value}` : undefined, `v-button--${control.size.value}`, {
1155
+ const classes = computed(() => [color.colorClasses.value,
1156
+ // navigationable.value.classes,
1157
+ spacer.value ? `v-button--spacer-${spacer.value}` : undefined, `v-button--${control.size.value}`, `v-button--align-${props.align}`, {
1204
1158
  'v-button--loading': isLoading.value,
1205
1159
  'v-button--icon': !!icon.value,
1206
1160
  'v-button--rounded': props.rounded,
@@ -1221,26 +1175,23 @@ const VButton = defineComponent({
1221
1175
  });
1222
1176
  };
1223
1177
  }
1224
-
1225
1178
  });
1226
1179
 
1227
- const VButtonGroup = defineComponent({
1180
+ const VButtonGroup = /* @__PURE__ */ defineComponent({
1228
1181
  name: 'VButtonGroup',
1229
- props: { ...colorSchemeProps(),
1182
+ props: {
1183
+ ...colorSchemeProps(),
1230
1184
  ...createControlProps(),
1231
1185
  disabled: Boolean
1232
1186
  },
1233
-
1234
1187
  setup(props, ctx) {
1235
1188
  return () => {
1236
1189
  let hasIcon = false;
1237
1190
  let buttonLength = 0;
1238
1191
  let tmp = renderSlotOrEmpty$1(ctx.slots) || [];
1239
-
1240
1192
  if (tmp.length === 1 && isFragment(tmp[0])) {
1241
1193
  tmp = tmp[0].children;
1242
1194
  }
1243
-
1244
1195
  const children = tmp.map(node => {
1245
1196
  if (!isVNode(node) || node.type !== VButton) {
1246
1197
  return {
@@ -1248,13 +1199,10 @@ const VButtonGroup = defineComponent({
1248
1199
  node
1249
1200
  };
1250
1201
  }
1251
-
1252
1202
  buttonLength++;
1253
-
1254
1203
  if (!hasIcon && node.props && !!node.props.icon) {
1255
1204
  hasIcon = true;
1256
1205
  }
1257
-
1258
1206
  return {
1259
1207
  isButton: true,
1260
1208
  node
@@ -1267,7 +1215,8 @@ const VButtonGroup = defineComponent({
1267
1215
  const hasLeft = buttonIndex > 1;
1268
1216
  const hasRight = buttonIndex < buttonLength;
1269
1217
  const childProps = child.node.props;
1270
- return cloneVNode(child.node, { ...props,
1218
+ return cloneVNode(child.node, {
1219
+ ...props,
1271
1220
  ...childProps,
1272
1221
  rouded: false,
1273
1222
  class: ['v-button-group__item', {
@@ -1277,7 +1226,6 @@ const VButtonGroup = defineComponent({
1277
1226
  }]
1278
1227
  });
1279
1228
  }
1280
-
1281
1229
  return child.node;
1282
1230
  });
1283
1231
  return createVNode("div", {
@@ -1287,13 +1235,11 @@ const VButtonGroup = defineComponent({
1287
1235
  }, [$children]);
1288
1236
  };
1289
1237
  }
1290
-
1291
1238
  });
1292
1239
 
1293
1240
  function _isSlot$e(s) {
1294
1241
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
1295
1242
  }
1296
-
1297
1243
  const PAGINATION_ALIGNS = ['left', 'center', 'right'];
1298
1244
  function paginationProps() {
1299
1245
  return createPropsOptions$1({
@@ -1304,7 +1250,6 @@ function paginationProps() {
1304
1250
  type: rawNumberPropType,
1305
1251
  default: 1
1306
1252
  },
1307
-
1308
1253
  /**
1309
1254
  * Total number of pages
1310
1255
  */
@@ -1312,12 +1257,10 @@ function paginationProps() {
1312
1257
  type: rawNumberPropType,
1313
1258
  default: 0
1314
1259
  },
1315
-
1316
1260
  /**
1317
1261
  * Maximum number of links to display.
1318
1262
  */
1319
1263
  totalVisible: rawNumberPropType,
1320
-
1321
1264
  /**
1322
1265
  * true when narrowing
1323
1266
  */
@@ -1327,7 +1270,6 @@ function paginationProps() {
1327
1270
  type: String,
1328
1271
  default: 'center'
1329
1272
  },
1330
-
1331
1273
  /**
1332
1274
  * To synchronize with a query, use the query name
1333
1275
  */
@@ -1336,14 +1278,13 @@ function paginationProps() {
1336
1278
  color: String
1337
1279
  });
1338
1280
  }
1339
- const VPagination = defineComponent({
1281
+ const VPagination = /* @__PURE__ */ defineComponent({
1340
1282
  name: 'VPagination',
1341
1283
  props: paginationProps(),
1342
1284
  emits: {
1343
1285
  change: page => true,
1344
1286
  'update:modelValue': page => true
1345
1287
  },
1346
-
1347
1288
  setup(props, ctx) {
1348
1289
  const vui = useVui();
1349
1290
  const elRef = ref(null);
@@ -1366,40 +1307,31 @@ const VPagination = defineComponent({
1366
1307
  const {
1367
1308
  routeQuery
1368
1309
  } = props;
1369
-
1370
1310
  if (routeQuery) {
1371
1311
  return vui.location.getQuery(routeQuery, Number, 1);
1372
1312
  }
1373
-
1374
1313
  return internalValue.value;
1375
1314
  });
1376
-
1377
1315
  const _range = (from, to) => {
1378
1316
  const range = [];
1379
1317
  from = from > 0 ? from : 1;
1380
-
1381
1318
  for (let i = from; i <= to; i++) {
1382
1319
  range.push(i);
1383
1320
  }
1384
-
1385
1321
  return range;
1386
1322
  };
1387
-
1388
1323
  const computedItems = computed(() => {
1389
1324
  const maxButtons = computedNumbersLength.value;
1390
1325
  const totalVisible = computedTotalVisible.value;
1391
1326
  const length = computedLength.value;
1392
1327
  const pageValue = computedPage.value;
1393
1328
  const maxLength = Math.min(Math.max(0, totalVisible || 0) || length, Math.max(0, maxButtons) || length, length);
1394
-
1395
1329
  if (length <= maxLength) {
1396
1330
  return _range(1, length);
1397
1331
  }
1398
-
1399
1332
  const even = maxLength % 2 === 0 ? 1 : 0;
1400
1333
  const left = Math.floor(maxLength / 2);
1401
1334
  const right = length - left + 1 + even;
1402
-
1403
1335
  if (pageValue > left && pageValue < right) {
1404
1336
  const start = pageValue - left + 2;
1405
1337
  const end = pageValue + left - 2 - even;
@@ -1427,7 +1359,6 @@ const VPagination = defineComponent({
1427
1359
  'v-pagination--dense': props.dense,
1428
1360
  [`v-pagination--${props.align}`]: true
1429
1361
  }, colorScope.value.className]);
1430
-
1431
1362
  async function setPage(value) {
1432
1363
  if (isDisabled.value) return;
1433
1364
  const {
@@ -1436,7 +1367,6 @@ const VPagination = defineComponent({
1436
1367
  } = props;
1437
1368
  const newPage = resolveNumberish(value);
1438
1369
  if (computedPage.value === newPage) return;
1439
-
1440
1370
  if (beforeChange) {
1441
1371
  try {
1442
1372
  let result = beforeChange(newPage);
@@ -1444,7 +1374,6 @@ const VPagination = defineComponent({
1444
1374
  if (result === false) return;
1445
1375
  } catch (e) {}
1446
1376
  }
1447
-
1448
1377
  if (routeQuery) {
1449
1378
  const to = createRoutableLocationByPage(newPage, routeQuery);
1450
1379
  return router.push(to).then(failure => {
@@ -1456,7 +1385,6 @@ const VPagination = defineComponent({
1456
1385
  ctx.emit('change', newPage);
1457
1386
  }
1458
1387
  }
1459
-
1460
1388
  function createPageInfo(source) {
1461
1389
  const currentPage = computedPage.value;
1462
1390
  const length = computedLength.value;
@@ -1464,7 +1392,6 @@ const VPagination = defineComponent({
1464
1392
  let page;
1465
1393
  let active;
1466
1394
  let disabled;
1467
-
1468
1395
  if (typeof source === 'number') {
1469
1396
  number = true;
1470
1397
  page = source;
@@ -1482,7 +1409,6 @@ const VPagination = defineComponent({
1482
1409
  active = false;
1483
1410
  disabled = page < 1 || page > length;
1484
1411
  }
1485
-
1486
1412
  return {
1487
1413
  number,
1488
1414
  page,
@@ -1490,13 +1416,11 @@ const VPagination = defineComponent({
1490
1416
  disabled
1491
1417
  };
1492
1418
  }
1493
-
1494
1419
  function createRoutableLocationByPage(page, routeQuery) {
1495
1420
  return vui.location.getQueryMergedLocation({
1496
1421
  [routeQuery]: page
1497
1422
  });
1498
1423
  }
1499
-
1500
1424
  function genItem(source, index) {
1501
1425
  const {
1502
1426
  number,
@@ -1514,25 +1438,21 @@ const VPagination = defineComponent({
1514
1438
  if (type === 'truncate') {
1515
1439
  return createVNode("span", null, [createTextVNode("...")]);
1516
1440
  }
1517
-
1518
1441
  const isPrev = type === 'prev';
1519
1442
  const icon = isPrev ? vui.icon('prev') : vui.icon('next');
1520
1443
  return resolveRawIconProp(false, icon, {
1521
1444
  class: 'v-pagination__item__icon'
1522
1445
  });
1523
1446
  })();
1524
-
1525
1447
  const onClick = ev => {
1526
1448
  ev.preventDefault();
1527
1449
  if (page === undefined || active || disabled) return;
1528
1450
  setPage(page);
1529
1451
  };
1530
-
1531
1452
  const key = `${source}-${index}`;
1532
1453
  const {
1533
1454
  routeQuery
1534
1455
  } = props;
1535
-
1536
1456
  if (page !== undefined && routeQuery) {
1537
1457
  const to = createRoutableLocationByPage(page, routeQuery);
1538
1458
  return createVNode(RouterLink, {
@@ -1552,7 +1472,6 @@ const VPagination = defineComponent({
1552
1472
  }, [children]);
1553
1473
  }
1554
1474
  }
1555
-
1556
1475
  watch(() => props.modelValue, modelValue => {
1557
1476
  internalValue.value = resolveNumberish(modelValue);
1558
1477
  }, {
@@ -1568,7 +1487,6 @@ const VPagination = defineComponent({
1568
1487
  width
1569
1488
  }) => {
1570
1489
  const el = elRef.value;
1571
-
1572
1490
  if (el) {
1573
1491
  const style = window.getComputedStyle(el, 'before');
1574
1492
  const width = style.getPropertyValue('width');
@@ -1576,17 +1494,16 @@ const VPagination = defineComponent({
1576
1494
  const size = parseFloat(width) + parseFloat(margin) * 0.5;
1577
1495
  itemSize.value = size;
1578
1496
  }
1579
-
1580
1497
  containerWidth.value = width;
1581
1498
  })]);
1582
1499
  };
1583
1500
  }
1584
-
1585
1501
  });
1586
1502
 
1587
1503
  function createListTileProps() {
1588
1504
  const icon = rawIconProp();
1589
- return { ...navigationableInheritProps,
1505
+ return {
1506
+ ...navigationableInheritProps,
1590
1507
  ...createPropsOptions$1({
1591
1508
  startIcon: icon,
1592
1509
  endIcon: icon,
@@ -1603,26 +1520,25 @@ function createListTileProps() {
1603
1520
  const listTileEmits = {
1604
1521
  changeActive: isActive => true
1605
1522
  };
1606
- const VListTile = defineComponent({
1523
+ const VListTile = /* @__PURE__ */ defineComponent({
1607
1524
  name: 'VListTile',
1608
1525
  inheritAttrs: false,
1609
1526
  props: createListTileProps(),
1610
- emits: { ...listTileEmits
1527
+ emits: {
1528
+ ...listTileEmits
1611
1529
  },
1612
-
1613
1530
  setup(props, ctx) {
1531
+ const vui = useVui();
1614
1532
  const startIcon = computed(() => {
1615
1533
  let icon = resolveRawIconProp(false, props.startIcon);
1616
-
1617
1534
  if (!icon && props.startIconEmptySpace) {
1618
1535
  icon = resolveRawIconProp(false, '$empty');
1619
1536
  }
1620
-
1621
1537
  return icon;
1622
1538
  });
1623
1539
  const endIcon = computed(() => resolveRawIconProp(false, props.endIcon));
1624
1540
  const hasTo = computed(() => !!ctx.attrs.to);
1625
- const link = useLink({
1541
+ const link = vui.useLink({
1626
1542
  to: ctx.attrs.to || ''
1627
1543
  });
1628
1544
  const isActive = computed(() => {
@@ -1661,14 +1577,13 @@ const VListTile = defineComponent({
1661
1577
  });
1662
1578
  };
1663
1579
  }
1664
-
1665
1580
  });
1666
1581
 
1667
- const VDrawerLayout = defineComponent({
1582
+ const VDrawerLayout = /* @__PURE__ */ defineComponent({
1668
1583
  name: 'VDrawerLayout',
1669
- props: { ...createPaperBaseProps()
1584
+ props: {
1585
+ ...createPaperBaseProps()
1670
1586
  },
1671
-
1672
1587
  setup(props, ctx) {
1673
1588
  return () => {
1674
1589
  const paperProps = computed(() => ({
@@ -1692,16 +1607,16 @@ const VDrawerLayout = defineComponent({
1692
1607
  }), ctx.slots);
1693
1608
  };
1694
1609
  }
1695
-
1696
1610
  });
1697
1611
 
1612
+ // Adornment
1698
1613
  function _isSlot$d(s) {
1699
1614
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
1700
1615
  }
1701
-
1702
- const VHero = defineComponent({
1616
+ const VHero = /* @__PURE__ */ defineComponent({
1703
1617
  name: 'VHero',
1704
- props: { ...htmlAttributesPropOptions,
1618
+ props: {
1619
+ ...htmlAttributesPropOptions,
1705
1620
  color: {
1706
1621
  type: String,
1707
1622
  default: 'primary'
@@ -1716,11 +1631,9 @@ const VHero = defineComponent({
1716
1631
  },
1717
1632
  ...defineSlotsProps$1()
1718
1633
  },
1719
-
1720
1634
  setup(props, ctx) {
1721
1635
  return () => {
1722
1636
  let _slot;
1723
-
1724
1637
  const TagName = props.tag;
1725
1638
  const HTagName = props.hTag;
1726
1639
  const adornment = renderSlotOrEmpty$1(ctx.slots, 'adornment');
@@ -1741,37 +1654,36 @@ const VHero = defineComponent({
1741
1654
  });
1742
1655
  };
1743
1656
  }
1744
-
1745
1657
  });
1746
1658
 
1747
1659
  function _isSlot$c(s) {
1748
1660
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
1749
1661
  }
1750
-
1751
1662
  function createNavigationItemProps() {
1752
- return { ...createListTileProps(),
1753
- match: String,
1663
+ return {
1664
+ ...createListTileProps(),
1665
+ match: [String, Array],
1754
1666
  depth: {
1755
1667
  type: Number,
1756
1668
  default: 0
1757
1669
  },
1758
1670
  nested: Boolean,
1759
- color: String // key: {
1671
+ color: String
1672
+ // key: {
1760
1673
  // type: [String, Number],
1761
1674
  // required: true,
1762
1675
  // },
1763
-
1764
1676
  };
1765
1677
  }
1678
+
1766
1679
  function resolveNavigationItemInput(input) {
1767
1680
  let label = input.label;
1768
- const props = { ...input
1681
+ const props = {
1682
+ ...input
1769
1683
  };
1770
-
1771
1684
  if (typeof label === 'function') {
1772
1685
  label = label();
1773
1686
  }
1774
-
1775
1687
  delete props.label;
1776
1688
  return {
1777
1689
  label,
@@ -1783,21 +1695,27 @@ function renderNavigationItemInput(input, extraProps) {
1783
1695
  label,
1784
1696
  props
1785
1697
  } = resolveNavigationItemInput(input);
1786
- return createVNode(VNavigationItem, { ...props,
1698
+ return createVNode(VNavigationItem, {
1699
+ ...props,
1787
1700
  ...extraProps
1788
1701
  }, _isSlot$c(label) ? label : {
1789
1702
  default: () => [label]
1790
1703
  });
1791
1704
  }
1792
- const VNavigationItem = defineComponent({
1705
+ const TRIM_END_SLASH_RE = /\/$/;
1706
+ function trimEndSlash(sorce) {
1707
+ return sorce ? sorce.replace(TRIM_END_SLASH_RE, '') : sorce;
1708
+ }
1709
+ const VNavigationItem = /* @__PURE__ */ defineComponent({
1793
1710
  name: 'VNavigationItem',
1794
1711
  inheritAttrs: false,
1795
- props: { ...createNavigationItemProps(),
1712
+ props: {
1713
+ ...createNavigationItemProps(),
1796
1714
  children: Array
1797
1715
  },
1798
- emits: { ...listTileEmits
1716
+ emits: {
1717
+ ...listTileEmits
1799
1718
  },
1800
-
1801
1719
  setup(props, ctx) {
1802
1720
  const vui = useVui();
1803
1721
  const opened = ref(false);
@@ -1813,51 +1731,59 @@ const VNavigationItem = defineComponent({
1813
1731
  const {
1814
1732
  to
1815
1733
  } = ctx.attrs;
1816
- if (match) return match;
1734
+ if (match) {
1735
+ return (Array.isArray(match) ? match : [match]).map(trimEndSlash);
1736
+ }
1817
1737
  if (!to) return;
1818
- if (typeof to === 'string') return to;
1819
- return to.path;
1738
+ const toPath = typeof to === 'string' ? to : to.path;
1739
+ if (!toPath) return;
1740
+ return [trimEndSlash(toPath)];
1820
1741
  });
1821
1742
  const classes = computed(() => [{
1822
1743
  'v-navigation-item--opened': opened.value,
1823
1744
  [`v-navigation-item--depth-${props.depth}`]: props.depth > 0
1824
1745
  }]);
1825
- const route = useRoute(); // const classes = computed(() => [
1746
+ const route = useRoute();
1747
+ // const classes = computed(() => [
1826
1748
  // // {
1827
1749
  // // 'v-navigation-item--matched': matched.value,
1828
1750
  // // },
1829
1751
  // ]);
1830
-
1831
1752
  watch(() => route.path, newPath => {
1832
1753
  const c = children.value;
1833
1754
  const m = match.value;
1834
-
1835
- if (!c || !m) {
1755
+ if (!c || !m || !m.length) {
1836
1756
  // matched.value = false;
1837
1757
  return;
1838
1758
  }
1839
-
1840
- if (newPath.match(m)) {
1841
- open(); // matched.value = true;
1759
+ const trimedNewPath = trimEndSlash(newPath);
1760
+ if (m.some(_ => trimedNewPath.match(_))) {
1761
+ open();
1762
+ // matched.value = true;
1842
1763
  } else {
1843
- close(); // matched.value = false;
1764
+ close();
1765
+ // matched.value = false;
1844
1766
  }
1767
+ // if (trimEndSlash(newPath).match(m)) {
1768
+ // open();
1769
+ // // matched.value = true;
1770
+ // } else {
1771
+ // close();
1772
+ // // matched.value = false;
1773
+ // }
1845
1774
  }, {
1846
1775
  immediate: true
1847
- }); // const iconPayload = () => opened.value;
1848
-
1776
+ });
1777
+ // const iconPayload = () => opened.value;
1849
1778
  const _props = computed(() => {
1850
1779
  const c = children.value;
1851
1780
  let {
1852
1781
  endIcon
1853
1782
  } = props;
1854
-
1855
1783
  if (c && !endIcon) {
1856
1784
  endIcon = vui.icon('navigationExpand');
1857
-
1858
1785
  if (typeof endIcon === 'string') {
1859
1786
  const name = endIcon;
1860
-
1861
1787
  endIcon = gen => {
1862
1788
  return gen({
1863
1789
  name,
@@ -1866,19 +1792,20 @@ const VNavigationItem = defineComponent({
1866
1792
  };
1867
1793
  }
1868
1794
  }
1869
-
1870
- const __props = { ...props,
1795
+ const __props = {
1796
+ ...props,
1871
1797
  endIcon
1872
1798
  };
1873
- delete __props.children; // const _activeClass = props.activeClass;
1799
+ delete __props.children;
1800
+ // const _activeClass = props.activeClass;
1874
1801
  // const activeClass = `v-navigation-item--active${
1875
1802
  // _activeClass ? ` ${_activeClass}` : ''
1876
1803
  // }`;
1877
-
1878
- return { ...__props // activeClass,
1804
+ return {
1805
+ ...__props
1806
+ // activeClass,
1879
1807
  // startIcon: toRawIconProp(__props.startIcon, iconPayload),
1880
1808
  // endIcon: toRawIconProp(__props.endIcon, iconPayload),
1881
-
1882
1809
  };
1883
1810
  });
1884
1811
 
@@ -1886,25 +1813,22 @@ const VNavigationItem = defineComponent({
1886
1813
  if (!children.value) return;
1887
1814
  opened.value = true;
1888
1815
  }
1889
-
1890
1816
  function close() {
1891
1817
  opened.value = false;
1892
1818
  }
1893
-
1894
1819
  function toggle() {
1895
1820
  return opened.value ? close() : open();
1896
1821
  }
1897
-
1898
1822
  const onClick = ev => {
1899
1823
  if (!to.value) {
1900
1824
  return toggle();
1901
- } // console.log('★');
1825
+ }
1826
+ // console.log('★');
1902
1827
  // open();
1903
1828
  // if (!to.value) {
1904
1829
  // toggle();
1905
1830
  // }
1906
1831
  // ctx.emit('click', ev);
1907
-
1908
1832
  };
1909
1833
 
1910
1834
  const onChangeActive = isActive => {
@@ -1925,13 +1849,11 @@ const VNavigationItem = defineComponent({
1925
1849
  // }
1926
1850
  ctx.emit('changeActive', isActive);
1927
1851
  };
1928
-
1929
1852
  ctx.expose({
1930
1853
  close
1931
1854
  });
1932
1855
  return () => {
1933
1856
  let _slot;
1934
-
1935
1857
  const _children = children.value;
1936
1858
  const fallbackTag = _children ? 'button' : undefined;
1937
1859
  return createVNode(Fragment, null, [createVNode(VListTile, mergeProps(ctx.attrs, _props.value, {
@@ -1950,19 +1872,17 @@ const VNavigationItem = defineComponent({
1950
1872
  ...child
1951
1873
  }, {
1952
1874
  startIconEmptySpace: _props.value.startIconEmptySpace,
1953
- depth: props.nested ? props.depth + 1 : props.depth // onClick,
1875
+ depth: props.nested ? props.depth + 1 : props.depth
1876
+ // onClick,
1954
1877
  // onChangeActive,
1955
-
1956
1878
  }))]), [[vShow, opened.value]])]
1957
1879
  })]);
1958
1880
  };
1959
1881
  }
1960
-
1961
1882
  });
1962
1883
 
1963
- const VNavigation = defineComponent({
1964
- name: 'VNavigation',
1965
- props: {
1884
+ function createNavigationProps() {
1885
+ return createPropsOptions$1({
1966
1886
  items: {
1967
1887
  type: Array,
1968
1888
  required: true
@@ -1973,8 +1893,11 @@ const VNavigation = defineComponent({
1973
1893
  default: true
1974
1894
  },
1975
1895
  caption: [String, Function]
1976
- },
1977
-
1896
+ });
1897
+ }
1898
+ const VNavigation = /* @__PURE__ */ defineComponent({
1899
+ name: 'VNavigation',
1900
+ props: createNavigationProps(),
1978
1901
  setup(props, ctx) {
1979
1902
  const items = computed(() => props.items);
1980
1903
  const color = useScopeColorClass(props);
@@ -1988,14 +1911,12 @@ const VNavigation = defineComponent({
1988
1911
  onBeforeUpdate(() => {
1989
1912
  itemsRef.value = [];
1990
1913
  });
1991
-
1992
1914
  function setItemRef(item, itemRef) {
1993
1915
  itemsRef.value.push({
1994
1916
  key: item.key,
1995
1917
  ref: itemRef
1996
1918
  });
1997
1919
  }
1998
-
1999
1920
  function onItemActivated(item) {
2000
1921
  itemsRef.value.forEach(({
2001
1922
  key,
@@ -2005,7 +1926,6 @@ const VNavigation = defineComponent({
2005
1926
  ref.close();
2006
1927
  });
2007
1928
  }
2008
-
2009
1929
  return () => {
2010
1930
  const $caption = caption.value;
2011
1931
  return createVNode("nav", {
@@ -2019,27 +1939,24 @@ const VNavigation = defineComponent({
2019
1939
  setItemRef(item, ref);
2020
1940
  },
2021
1941
  onChangeActive: isActive => {
2022
- if (isActive
2023
- /* && item.children && item.children.length*/
2024
- ) {
1942
+ if (isActive /* && item.children && item.children.length*/) {
2025
1943
  onItemActivated(item);
2026
1944
  }
2027
1945
  }
2028
1946
  }))]);
2029
1947
  };
2030
1948
  }
2031
-
2032
1949
  });
2033
1950
 
2034
- const VCheckable = defineComponent({
1951
+ const VCheckable = /* @__PURE__ */ defineComponent({
2035
1952
  name: 'VCheckable',
2036
1953
  props: {
2037
1954
  invalid: Boolean,
2038
1955
  disabled: Boolean,
2039
1956
  readonly: Boolean,
2040
1957
  checked: Boolean,
2041
- ...defineSlotsProps() // autoWidth: Boolean,
2042
-
1958
+ ...defineSlotsProps()
1959
+ // autoWidth: Boolean,
2043
1960
  },
2044
1961
 
2045
1962
  setup(props, ctx) {
@@ -2047,8 +1964,8 @@ const VCheckable = defineComponent({
2047
1964
  const invalid = computed(() => props.invalid);
2048
1965
  const disabled = computed(() => props.disabled);
2049
1966
  const readonly = computed(() => props.readonly);
2050
- const checked = computed(() => props.checked); // const autoWidth = computed(() => props.autoWidth);
2051
-
1967
+ const checked = computed(() => props.checked);
1968
+ // const autoWidth = computed(() => props.autoWidth);
2052
1969
  const classes = computed(() => {
2053
1970
  return [{
2054
1971
  'v-checkable--invalid': invalid.value,
@@ -2069,21 +1986,20 @@ const VCheckable = defineComponent({
2069
1986
  "class": "v-checkable__label"
2070
1987
  }, [renderSlotOrEmpty(ctx.slots, 'label')])]);
2071
1988
  }
2072
-
2073
1989
  });
2074
1990
 
2075
1991
  const {
2076
1992
  props: props$7,
2077
1993
  emits: emits$7
2078
1994
  } = createFormSelectorItemSettings();
2079
- const VCheckbox = defineComponent({
1995
+ const VCheckbox = /* @__PURE__ */ defineComponent({
2080
1996
  name: 'VCheckbox',
2081
- props: { ...props$7,
1997
+ props: {
1998
+ ...props$7,
2082
1999
  ...createControlProps(),
2083
2000
  indeterminate: Boolean
2084
2001
  },
2085
2002
  emits: emits$7,
2086
-
2087
2003
  setup(props, ctx) {
2088
2004
  const nodeControl = useFormSelectorItemControl(props, ctx, {
2089
2005
  nodeType: VUI_CHECKBOX_SYMBOL,
@@ -2091,12 +2007,12 @@ const VCheckbox = defineComponent({
2091
2007
  });
2092
2008
  const control = useControl(props);
2093
2009
  const isIndeterminate = computed(() => props.indeterminate);
2094
- return { ...nodeControl.expose(),
2010
+ return {
2011
+ ...nodeControl.expose(),
2095
2012
  ...control,
2096
2013
  isIndeterminate
2097
2014
  };
2098
2015
  },
2099
-
2100
2016
  render() {
2101
2017
  const {
2102
2018
  selectorItemControl,
@@ -2121,13 +2037,11 @@ const VCheckbox = defineComponent({
2121
2037
  label: () => renderSlotOrEmpty(this.$slots, 'default')
2122
2038
  });
2123
2039
  }
2124
-
2125
2040
  });
2126
2041
 
2127
2042
  function _isSlot$b(s) {
2128
2043
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
2129
2044
  }
2130
-
2131
2045
  const VCheckboxGroup = defineFormSelectorComponent({
2132
2046
  name: 'VCheckboxGroup',
2133
2047
  defaultMultiple: true,
@@ -2145,24 +2059,24 @@ const {
2145
2059
  props: props$6,
2146
2060
  emits: emits$6
2147
2061
  } = createFormSelectorItemSettings();
2148
- const VRadio = defineComponent({
2062
+ const VRadio = /* @__PURE__ */ defineComponent({
2149
2063
  name: 'VRadio',
2150
- props: { ...props$6,
2064
+ props: {
2065
+ ...props$6,
2151
2066
  ...createControlProps()
2152
2067
  },
2153
2068
  emits: emits$6,
2154
-
2155
2069
  setup(props, ctx) {
2156
2070
  const nodeControl = useFormSelectorItemControl(props, ctx, {
2157
2071
  nodeType: VUI_RADIO_SYMBOL,
2158
2072
  parentNodeType: VUI_RADIO_GROUP_SYMBOL
2159
2073
  });
2160
2074
  const control = useControl(props);
2161
- return { ...nodeControl.expose(),
2075
+ return {
2076
+ ...nodeControl.expose(),
2162
2077
  ...control
2163
2078
  };
2164
2079
  },
2165
-
2166
2080
  render() {
2167
2081
  const {
2168
2082
  selectorItemControl
@@ -2185,13 +2099,11 @@ const VRadio = defineComponent({
2185
2099
  label: () => renderSlotOrEmpty(this.$slots, 'default')
2186
2100
  });
2187
2101
  }
2188
-
2189
2102
  });
2190
2103
 
2191
2104
  function _isSlot$a(s) {
2192
2105
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
2193
2106
  }
2194
-
2195
2107
  const VRadioGroup = defineFormSelectorComponent({
2196
2108
  name: 'VRadioGroup',
2197
2109
  nodeType: VUI_RADIO_GROUP_SYMBOL,
@@ -2208,30 +2120,28 @@ const {
2208
2120
  props: props$5,
2209
2121
  emits: emits$5
2210
2122
  } = createFormSelectorItemSettings();
2211
- const VSwitch = defineComponent({
2123
+ const VSwitch = /* @__PURE__ */ defineComponent({
2212
2124
  name: 'VSwitch',
2213
- props: { ...props$5,
2125
+ props: {
2126
+ ...props$5,
2214
2127
  ...createControlProps()
2215
2128
  },
2216
2129
  emits: emits$5,
2217
-
2218
2130
  setup(props, ctx) {
2219
2131
  const nodeControl = useFormSelectorItemControl(props, ctx, {
2220
2132
  nodeType: VUI_SWITCH_SYMBOL,
2221
2133
  parentNodeType: VUI_SWITCH_GROUP_SYMBOL
2222
2134
  });
2223
2135
  const control = useControl(props);
2224
-
2225
2136
  if (typeof window !== 'undefined') {
2226
2137
  window.yy = {};
2227
2138
  window.yy[String(Date.now())] = nodeControl;
2228
2139
  }
2229
-
2230
- return { ...nodeControl.expose(),
2140
+ return {
2141
+ ...nodeControl.expose(),
2231
2142
  ...control
2232
2143
  };
2233
2144
  },
2234
-
2235
2145
  render() {
2236
2146
  const {
2237
2147
  selectorItemControl
@@ -2258,13 +2168,11 @@ const VSwitch = defineComponent({
2258
2168
  label: () => renderSlotOrEmpty(this.$slots, 'default')
2259
2169
  });
2260
2170
  }
2261
-
2262
2171
  });
2263
2172
 
2264
2173
  function _isSlot$9(s) {
2265
2174
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
2266
2175
  }
2267
-
2268
2176
  const VSwitchGroup = defineFormSelectorComponent({
2269
2177
  name: 'VSwitchGroup',
2270
2178
  defaultMultiple: true,
@@ -2282,13 +2190,13 @@ const {
2282
2190
  props: props$4,
2283
2191
  emits: emits$4
2284
2192
  } = createFormSelectorItemSettings();
2285
- const VOption = defineComponent({
2193
+ const VOption = /* @__PURE__ */ defineComponent({
2286
2194
  name: 'VOption',
2287
- props: { ...props$4,
2195
+ props: {
2196
+ ...props$4,
2288
2197
  ...createControlProps()
2289
2198
  },
2290
2199
  emits: emits$4,
2291
-
2292
2200
  setup(props, ctx) {
2293
2201
  const nodeControl = useFormSelectorItemControl(props, ctx, {
2294
2202
  nodeType: VUI_OPTION_SYMBOL,
@@ -2302,11 +2210,11 @@ const VOption = defineComponent({
2302
2210
  'v-option--disabled': nodeControl.isDisabled
2303
2211
  }, control.classes.value];
2304
2212
  });
2305
- return { ...nodeControl.expose(),
2213
+ return {
2214
+ ...nodeControl.expose(),
2306
2215
  classes
2307
2216
  };
2308
2217
  },
2309
-
2310
2218
  render() {
2311
2219
  const {
2312
2220
  selectorItemControl,
@@ -2323,17 +2231,16 @@ const VOption = defineComponent({
2323
2231
  "class": "v-option__label"
2324
2232
  }, [renderSlotOrEmpty(this.$slots, 'default')])]);
2325
2233
  }
2326
-
2327
2234
  });
2328
2235
 
2329
- const VOptionGroup = defineComponent({
2236
+ const VOptionGroup = /* @__PURE__ */ defineComponent({
2330
2237
  name: 'VOptionGroup',
2331
- props: { ...createFormSelectorItemGroupProps(),
2238
+ props: {
2239
+ ...createFormSelectorItemGroupProps(),
2332
2240
  // eslint-disable-next-line vue/require-prop-types
2333
2241
  label: {},
2334
2242
  ...defineSlotsProps()
2335
2243
  },
2336
-
2337
2244
  setup(props, ctx) {
2338
2245
  const groupControl = useFormSelectorItemGroupControl(props, ctx, {
2339
2246
  parentNodeType: VUI_SELECT_SYMBOL
@@ -2346,12 +2253,12 @@ const VOptionGroup = defineComponent({
2346
2253
  'v-option-group--disabled': groupControl.isDisabled
2347
2254
  }];
2348
2255
  });
2349
- return { ...groupControl.expose(),
2256
+ return {
2257
+ ...groupControl.expose(),
2350
2258
  classes,
2351
2259
  labelSlot
2352
2260
  };
2353
2261
  },
2354
-
2355
2262
  render() {
2356
2263
  const {
2357
2264
  labelSlot,
@@ -2365,12 +2272,12 @@ const VOptionGroup = defineComponent({
2365
2272
  "class": "v-option-group__label"
2366
2273
  }, [label]), renderSlotOrEmpty(this.$slots, 'default')]);
2367
2274
  }
2368
-
2369
2275
  });
2370
2276
 
2371
2277
  const ADORNMENT_POSITIONS = ['start', 'end'];
2372
2278
  function createControlFieldProps() {
2373
- return { ...createPropsOptions({
2279
+ return {
2280
+ ...createPropsOptions({
2374
2281
  startAdornment: {},
2375
2282
  endAdornment: {},
2376
2283
  tabindex: {
@@ -2382,9 +2289,10 @@ function createControlFieldProps() {
2382
2289
  ...createControlProps()
2383
2290
  };
2384
2291
  }
2385
- const VControlField = defineComponent({
2292
+ const VControlField = /* @__PURE__ */ defineComponent({
2386
2293
  name: 'VControlField',
2387
- props: { ...createControlFieldProps(),
2294
+ props: {
2295
+ ...createControlFieldProps(),
2388
2296
  focused: Boolean,
2389
2297
  autoHeight: Boolean,
2390
2298
  ...defineSlotsProps(),
@@ -2394,7 +2302,6 @@ const VControlField = defineComponent({
2394
2302
  emits: {
2395
2303
  click: ev => true
2396
2304
  },
2397
-
2398
2305
  setup(props, ctx) {
2399
2306
  const parentNode = useParentFormNode();
2400
2307
  const control = useControl(props);
@@ -2403,11 +2310,11 @@ const VControlField = defineComponent({
2403
2310
  const disabled = computed(() => !!parentNode && parentNode.isDisabled);
2404
2311
  const invalid = computed(() => !!parentNode && parentNode.invalid);
2405
2312
  const autoHeight = computed(() => props.autoHeight);
2406
- const readonly = computed(() => !!parentNode && parentNode.isReadonly); // const computedTabindex = computed(() =>
2313
+ const readonly = computed(() => !!parentNode && parentNode.isReadonly);
2314
+ // const computedTabindex = computed(() =>
2407
2315
  // disabled.value ? -1 : props.tabindex,
2408
2316
  // );
2409
2317
  // const isOutlined = computed(() => inputBox.variant.value === 'outlined');
2410
-
2411
2318
  const colorProvider = useVuiColorProvider();
2412
2319
  const classes = computed(() => {
2413
2320
  const classes = ['v-control-field', `v-control-field--${inputBox.variant.value}`, {
@@ -2427,10 +2334,8 @@ const VControlField = defineComponent({
2427
2334
  });
2428
2335
  return slots;
2429
2336
  });
2430
-
2431
2337
  const renderAdornment = position => {
2432
2338
  let child;
2433
-
2434
2339
  if (position === 'end' && props.loading) {
2435
2340
  child = createVNode(VProgressCircular, {
2436
2341
  "indeterminate": true,
@@ -2439,15 +2344,14 @@ const VControlField = defineComponent({
2439
2344
  } else {
2440
2345
  child = renderSlotOrEmpty(resolvedSlots.value, position);
2441
2346
  }
2442
-
2443
2347
  if (!child) return;
2444
2348
  return createVNode("div", {
2445
2349
  "class": ['v-control-field__adornment', `v-control-field__adornment--${position}`]
2446
2350
  }, [child]);
2447
2351
  };
2448
-
2449
2352
  const handleClick = ev => {
2450
- ctx.emit('click', ev); // if (ev.target === hostElRef.value) {
2353
+ ctx.emit('click', ev);
2354
+ // if (ev.target === hostElRef.value) {
2451
2355
  // ctx.emit('clickHost', ev);
2452
2356
  // }
2453
2357
  };
@@ -2456,8 +2360,8 @@ const VControlField = defineComponent({
2456
2360
  classes,
2457
2361
  renderAdornment,
2458
2362
  hostElRef: () => hostElRef,
2459
- handleClick // computedTabindex,
2460
-
2363
+ handleClick
2364
+ // computedTabindex,
2461
2365
  };
2462
2366
  },
2463
2367
 
@@ -2470,23 +2374,22 @@ const VControlField = defineComponent({
2470
2374
  "class": "v-control-field__body"
2471
2375
  }, [renderSlotOrEmpty(this.$slots, 'default')]), this.renderAdornment('end')]);
2472
2376
  }
2473
-
2474
2377
  });
2475
2378
 
2476
2379
  function _isSlot$8(s) {
2477
2380
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
2478
2381
  }
2479
-
2480
- const ARROW_KEY_TYPES = useKeybord.Key(['ArrowUp', 'ArrowDown']);
2481
- const CHOICE_KEY_TYPES = useKeybord.Key(['Enter', ' ']);
2482
- const KEYBORD_EVENT_TYPES = useKeybord.Key([...ARROW_KEY_TYPES, ...CHOICE_KEY_TYPES]);
2382
+ const ARROW_KEY_TYPES = useKeyboard.Key(['ArrowUp', 'ArrowDown']);
2383
+ const CHOICE_KEY_TYPES = useKeyboard.Key(['Enter', ' ']);
2384
+ const KEYBORD_EVENT_TYPES = useKeyboard.Key([...ARROW_KEY_TYPES, ...CHOICE_KEY_TYPES]);
2483
2385
  const {
2484
2386
  props: props$3,
2485
2387
  emits: emits$3
2486
2388
  } = createFormSelectorSettings();
2487
- const VSelect = defineComponent({
2389
+ const VSelect = /* @__PURE__ */ defineComponent({
2488
2390
  name: 'VSelect',
2489
- props: { ...props$3,
2391
+ props: {
2392
+ ...props$3,
2490
2393
  ...createFormControlProps(),
2491
2394
  ...createControlFieldProps(),
2492
2395
  ...createControlFieldProviderProps(),
@@ -2496,22 +2399,19 @@ const VSelect = defineComponent({
2496
2399
  placeholder: String,
2497
2400
  loadingMessage: {},
2498
2401
  failedToLoadItemsMessage: {}
2499
- })
2402
+ }),
2403
+ closeOnNavigation: Boolean
2500
2404
  },
2501
2405
  emits: emits$3,
2502
-
2503
2406
  setup(props, ctx) {
2504
2407
  const menuRef = ref(null);
2505
2408
  const menuOpened = ref(false);
2506
-
2507
2409
  const showMenu = () => {
2508
2410
  menuOpened.value = true;
2509
2411
  };
2510
-
2511
2412
  const closeMenu = () => {
2512
2413
  menuOpened.value = false;
2513
2414
  };
2514
-
2515
2415
  const inputControl = useFormSelectorControl(props, ctx, {
2516
2416
  nodeType: VUI_SELECT_SYMBOL,
2517
2417
  onSelectItem: item => {
@@ -2531,14 +2431,12 @@ const VSelect = defineComponent({
2531
2431
  const slot = resolveVNodeChildOrSlots(props.failedToLoadItemsMessage, vui.setting('failedToLoadDataMessage'), 'Failed to load data.');
2532
2432
  return slot && slot(vui);
2533
2433
  });
2534
-
2535
2434
  const focus = opts => {
2536
2435
  fieldRef.value && fieldRef.value.focus(opts);
2537
2436
  };
2538
-
2539
2437
  const renderSelections = selectedItems => {
2438
+ const selectionSlot = ctx.slots.selection;
2540
2439
  const children = [];
2541
-
2542
2440
  if (inputControl.itemsLoadFailed) {
2543
2441
  children.push(createVNode("span", {
2544
2442
  "class": "v-select__placeholder"
@@ -2552,18 +2450,19 @@ const VSelect = defineComponent({
2552
2450
  if (index > 0) {
2553
2451
  children.push(vui.selectionSeparator());
2554
2452
  }
2555
-
2556
- children.push(item.renderDefaultSlot());
2453
+ const child = selectionSlot ? selectionSlot({
2454
+ item,
2455
+ index
2456
+ }) : item.renderDefaultSlot();
2457
+ children.push(child);
2557
2458
  });
2558
2459
  } else if (props.placeholder != null) {
2559
2460
  children.push(createVNode("span", {
2560
2461
  "class": "v-select__placeholder"
2561
2462
  }, [props.placeholder]));
2562
2463
  }
2563
-
2564
2464
  return children;
2565
2465
  };
2566
-
2567
2466
  const clearKeyFocused = () => {
2568
2467
  const menu = menuRef.value;
2569
2468
  if (!menu) return;
@@ -2572,7 +2471,6 @@ const VSelect = defineComponent({
2572
2471
  const els = Array.from(bodyEl.querySelectorAll('.v-option'));
2573
2472
  els.forEach(el => el.classList.remove('v-option--key-focused'));
2574
2473
  };
2575
-
2576
2474
  const getItemElements = () => {
2577
2475
  const menu = menuRef.value;
2578
2476
  if (!menu) return;
@@ -2588,7 +2486,6 @@ const VSelect = defineComponent({
2588
2486
  if (!els.length) return;
2589
2487
  return els;
2590
2488
  };
2591
-
2592
2489
  const arrowKeyHandler = ev => {
2593
2490
  const {
2594
2491
  key
@@ -2603,22 +2500,18 @@ const VSelect = defineComponent({
2603
2500
  length
2604
2501
  } = els;
2605
2502
  const isUp = key === 'ArrowUp';
2606
-
2607
2503
  if (currentIndex == null) {
2608
2504
  nextIndex = isUp ? length - 1 : 0;
2609
2505
  } else {
2610
2506
  const shiftAmount = key === 'ArrowUp' ? -1 : 1;
2611
2507
  nextIndex = currentIndex + shiftAmount;
2612
-
2613
2508
  if (nextIndex < 0) {
2614
2509
  nextIndex = length - 1;
2615
2510
  } else if (nextIndex >= length) {
2616
2511
  nextIndex = 0;
2617
2512
  }
2618
2513
  }
2619
-
2620
2514
  const nextEl = els[nextIndex];
2621
-
2622
2515
  if (nextEl) {
2623
2516
  clearKeyFocused();
2624
2517
  nextEl.classList.add('v-option--key-focused');
@@ -2630,7 +2523,6 @@ const VSelect = defineComponent({
2630
2523
  ev.preventDefault();
2631
2524
  }
2632
2525
  };
2633
-
2634
2526
  const choiceKeyHandler = ev => {
2635
2527
  const {
2636
2528
  key
@@ -2639,7 +2531,6 @@ const VSelect = defineComponent({
2639
2531
  const els = getItemElements();
2640
2532
  if (!els) return;
2641
2533
  const currentEl = els.find(el => el.classList.contains('v-option--key-focused'));
2642
-
2643
2534
  if (currentEl) {
2644
2535
  const ev = new MouseEvent('click', {
2645
2536
  view: window,
@@ -2653,19 +2544,18 @@ const VSelect = defineComponent({
2653
2544
  });
2654
2545
  }
2655
2546
  };
2656
-
2657
- const keybordEventHandler = ev => {
2547
+ const keyboardEventHandler = ev => {
2658
2548
  if (ARROW_KEY_TYPES.includes(ev.key)) return arrowKeyHandler(ev);
2659
2549
  if (CHOICE_KEY_TYPES.includes(ev.key)) return choiceKeyHandler(ev);
2660
2550
  };
2661
-
2662
- useKeybord([{
2551
+ useKeyboard([{
2663
2552
  key: KEYBORD_EVENT_TYPES,
2664
- handler: keybordEventHandler
2553
+ handler: keyboardEventHandler
2665
2554
  }], {
2666
2555
  autorun: true
2667
2556
  });
2668
- return { ...inputControl.expose(),
2557
+ return {
2558
+ ...inputControl.expose(),
2669
2559
  ...control,
2670
2560
  iconName,
2671
2561
  menuOpened,
@@ -2678,7 +2568,6 @@ const VSelect = defineComponent({
2678
2568
  clearKeyFocused
2679
2569
  };
2680
2570
  },
2681
-
2682
2571
  render() {
2683
2572
  const {
2684
2573
  nodeControl,
@@ -2689,7 +2578,6 @@ const VSelect = defineComponent({
2689
2578
  const children = this.$slots.default && this.$slots.default() || [];
2690
2579
  const propGroups = this.propGroups.map(group => {
2691
2580
  let _slot;
2692
-
2693
2581
  return createVNode(VOptionGroup, {
2694
2582
  "key": group.id,
2695
2583
  "groupId": group.id,
@@ -2718,10 +2606,12 @@ const VSelect = defineComponent({
2718
2606
  "onClickLabel": ev => {
2719
2607
  this.focus();
2720
2608
  }
2721
- }, { ...this.$slots,
2609
+ }, {
2610
+ ...this.$slots,
2722
2611
  default: () => createVNode(VMenu, {
2723
2612
  "width": "fit",
2724
2613
  "maxWidth": "fit",
2614
+ "closeOnNavigation": this.closeOnNavigation,
2725
2615
  "distance": 0,
2726
2616
  "alwaysRender": true,
2727
2617
  "modelValue": this.menuOpened,
@@ -2750,20 +2640,18 @@ const VSelect = defineComponent({
2750
2640
  let t = ev.target;
2751
2641
  const count = 0;
2752
2642
  let hit = false;
2753
-
2754
2643
  while (count < 5) {
2755
2644
  if (t.classList.contains('v-select__input')) {
2756
2645
  hit = true;
2757
2646
  break;
2758
2647
  }
2759
-
2760
2648
  t = t.parentElement;
2761
2649
  }
2762
-
2763
2650
  control.show(hit ? t : ev);
2764
2651
  }
2765
2652
  }
2766
- }, { ...this.$slots,
2653
+ }, {
2654
+ ...this.$slots,
2767
2655
  default: () => [withDirectives(createVNode("select", {
2768
2656
  "class": "v-select__input__element",
2769
2657
  "name": this.name,
@@ -2795,7 +2683,6 @@ const VSelect = defineComponent({
2795
2683
  }
2796
2684
  }, null);
2797
2685
  }
2798
-
2799
2686
  if (this.clearable && this.nodeControl.value != null) {
2800
2687
  return createVNode(VButton, {
2801
2688
  "key": "clear",
@@ -2807,7 +2694,6 @@ const VSelect = defineComponent({
2807
2694
  }
2808
2695
  }, null);
2809
2696
  }
2810
-
2811
2697
  return createVNode(VIcon, {
2812
2698
  "key": "icon",
2813
2699
  "name": this.iconName,
@@ -2818,10 +2704,9 @@ const VSelect = defineComponent({
2818
2704
  })
2819
2705
  });
2820
2706
  }
2821
-
2822
2707
  });
2823
2708
 
2824
- const VTextCounter = defineComponent({
2709
+ const VTextCounter = /* @__PURE__ */ defineComponent({
2825
2710
  name: 'VTextCounter',
2826
2711
  props: {
2827
2712
  length: {
@@ -2833,22 +2718,20 @@ const VTextCounter = defineComponent({
2833
2718
  required: true
2834
2719
  }
2835
2720
  },
2836
-
2837
2721
  render() {
2838
2722
  return createVNode("span", {
2839
2723
  "class": "v-text-counter"
2840
2724
  }, [`${this.length} / ${this.maxlength}`]);
2841
2725
  }
2842
-
2843
2726
  });
2844
2727
 
2845
2728
  const {
2846
2729
  props: props$2,
2847
2730
  emits: emits$2
2848
2731
  } = createTextInputSettings();
2849
-
2850
2732
  function createTextFieldProps() {
2851
- return { ...props$2,
2733
+ return {
2734
+ ...props$2,
2852
2735
  ...createFormControlProps(),
2853
2736
  ...createControlFieldProps(),
2854
2737
  ...createControlFieldProviderProps(),
@@ -2856,23 +2739,21 @@ function createTextFieldProps() {
2856
2739
  ...defineSlotsProps()
2857
2740
  };
2858
2741
  }
2859
-
2860
- const VTextField = defineComponent({
2742
+ const VTextField = /* @__PURE__ */ defineComponent({
2861
2743
  name: 'VTextField',
2862
2744
  props: createTextFieldProps(),
2863
2745
  emits: emits$2,
2864
-
2865
2746
  setup(props, ctx) {
2866
2747
  const inputControl = useTextInputControl(props, ctx, {
2867
2748
  nodeType: VUI_TEXT_FIELD_SYMBOL
2868
2749
  });
2869
2750
  const control = useControl(props);
2870
2751
  useControlField(props);
2871
- return { ...inputControl.expose(),
2752
+ return {
2753
+ ...inputControl.expose(),
2872
2754
  ...control
2873
2755
  };
2874
2756
  },
2875
-
2876
2757
  render() {
2877
2758
  return createVNode(VFormControl, {
2878
2759
  "nodeControl": this.nodeControl,
@@ -2886,13 +2767,15 @@ const VTextField = defineComponent({
2886
2767
  "onClickLabel": ev => {
2887
2768
  this.focus();
2888
2769
  }
2889
- }, { ...this.$slots,
2770
+ }, {
2771
+ ...this.$slots,
2890
2772
  default: () => createVNode(VControlField, {
2891
2773
  "class": "v-text-field__input",
2892
2774
  "startAdornment": this.startAdornment,
2893
2775
  "endAdornment": this.endAdornment,
2894
2776
  "size": this.size
2895
- }, { ...this.$slots,
2777
+ }, {
2778
+ ...this.$slots,
2896
2779
  default: () => this.textInputControl.createInputElement({
2897
2780
  class: 'v-text-field__input__element'
2898
2781
  })
@@ -2906,35 +2789,33 @@ const VTextField = defineComponent({
2906
2789
  }
2907
2790
  });
2908
2791
  }
2909
-
2910
2792
  });
2911
2793
 
2912
- const VNumberField = defineComponent({
2794
+ const VNumberField = /* @__PURE__ */ defineComponent({
2913
2795
  name: 'VNumberField',
2914
- props: { ...undefined,
2796
+ props: {
2797
+ ...undefined,
2915
2798
  modelValue: {
2916
2799
  type: Number,
2917
2800
  default: null
2918
2801
  }
2919
2802
  },
2920
- emits: { ...undefined,
2803
+ emits: {
2804
+ ...undefined,
2921
2805
  'update:modelValue': value => true,
2922
2806
  change: value => true
2923
2807
  },
2924
-
2925
2808
  setup(props, ctx) {
2926
2809
  const toString = value => {
2927
2810
  if (value == null) return '';
2928
2811
  return String(value);
2929
2812
  };
2930
-
2931
2813
  const toNumber = value => {
2932
2814
  if (value == null) return null;
2933
2815
  if (typeof value === 'number') return value;
2934
2816
  if (value.trim() === '') return null;
2935
2817
  return Number(value);
2936
2818
  };
2937
-
2938
2819
  return () => {
2939
2820
  return createVNode(VTextField, mergeProps(ctx.attrs, {
2940
2821
  "type": "number",
@@ -2948,16 +2829,16 @@ const VNumberField = defineComponent({
2948
2829
  }), ctx.slots);
2949
2830
  };
2950
2831
  }
2951
-
2952
2832
  });
2953
2833
 
2954
2834
  const {
2955
2835
  props: props$1,
2956
2836
  emits: emits$1
2957
2837
  } = createTextareaSettings();
2958
- const VTextarea = defineComponent({
2838
+ const VTextarea = /* @__PURE__ */ defineComponent({
2959
2839
  name: 'VTextarea',
2960
- props: { ...props$1,
2840
+ props: {
2841
+ ...props$1,
2961
2842
  ...createFormControlProps(),
2962
2843
  ...createControlFieldProps(),
2963
2844
  ...createControlFieldProviderProps(),
@@ -2965,7 +2846,6 @@ const VTextarea = defineComponent({
2965
2846
  ...defineSlotsProps()
2966
2847
  },
2967
2848
  emits: emits$1,
2968
-
2969
2849
  setup(props, ctx) {
2970
2850
  const vui = useVui();
2971
2851
  const inputControl = useTextareaControl(props, ctx, {
@@ -2974,11 +2854,11 @@ const VTextarea = defineComponent({
2974
2854
  });
2975
2855
  const control = useControl(props);
2976
2856
  useControlField(props);
2977
- return { ...inputControl.expose(),
2857
+ return {
2858
+ ...inputControl.expose(),
2978
2859
  ...control
2979
2860
  };
2980
2861
  },
2981
-
2982
2862
  render() {
2983
2863
  return createVNode(VFormControl, {
2984
2864
  "nodeControl": this.nodeControl,
@@ -2992,14 +2872,16 @@ const VTextarea = defineComponent({
2992
2872
  "onClickLabel": ev => {
2993
2873
  this.focus();
2994
2874
  }
2995
- }, { ...this.$slots,
2875
+ }, {
2876
+ ...this.$slots,
2996
2877
  default: () => createVNode(VControlField, {
2997
2878
  "class": "v-textarea__input",
2998
2879
  "size": this.size,
2999
2880
  "autoHeight": true,
3000
2881
  "startAdornment": this.startAdornment,
3001
2882
  "endAdornment": this.endAdornment
3002
- }, { ...this.$slots,
2883
+ }, {
2884
+ ...this.$slots,
3003
2885
  default: () => this.textareaControl.createInputElement({
3004
2886
  class: 'v-textarea__input__element'
3005
2887
  })
@@ -3013,7 +2895,6 @@ const VTextarea = defineComponent({
3013
2895
  }
3014
2896
  });
3015
2897
  }
3016
-
3017
2898
  });
3018
2899
 
3019
2900
  const EDITOR_EVENTS = [
@@ -3135,10 +3016,10 @@ function resolveRawWysiwygEditorTools(rawTools, vui) {
3135
3016
  function _isSlot$7(s) {
3136
3017
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
3137
3018
  }
3138
-
3139
- const VWysiwygEditor = defineComponent({
3019
+ const VWysiwygEditor = /* @__PURE__ */ defineComponent({
3140
3020
  name: 'VWysiwygEditor',
3141
- props: { // ...props,
3021
+ props: {
3022
+ // ...props,
3142
3023
  ...createTextableProps(),
3143
3024
  ...createFormControlProps(),
3144
3025
  ...createControlFieldProps(),
@@ -3157,9 +3038,9 @@ const VWysiwygEditor = defineComponent({
3157
3038
  disabledMinHeight: Boolean,
3158
3039
  disabledMaxHeight: Boolean
3159
3040
  },
3160
- emits: { ...createTextableEmits()
3041
+ emits: {
3042
+ ...createTextableEmits()
3161
3043
  },
3162
-
3163
3044
  setup(props, ctx) {
3164
3045
  const vui = useVui();
3165
3046
  const textRef = ref('');
@@ -3201,16 +3082,15 @@ const VWysiwygEditor = defineComponent({
3201
3082
  orderedList: false,
3202
3083
  history: false,
3203
3084
  italic: false
3204
- }), // Linter.configure({
3085
+ }),
3086
+ // Linter.configure({
3205
3087
  // plugins: [BadWords(['abc', 'evidently']), Punctuation, HeadingLevel],
3206
3088
  // }),
3207
3089
  ...resolveRawWysiwygExtensions(props.extensions, initializeCtx), ...wysiwygSettings.value.extensions];
3208
-
3209
3090
  const updateEditable = () => {
3210
3091
  if (!editor.value) return;
3211
3092
  editor.value.setEditable(inputControl.canOperation);
3212
3093
  };
3213
-
3214
3094
  watch(() => inputControl.canOperation, updateEditable);
3215
3095
  watch(() => props.modelValue, modelValue => {
3216
3096
  const $editor = editor.value;
@@ -3224,7 +3104,8 @@ const VWysiwygEditor = defineComponent({
3224
3104
  textRef.value = editor.getText();
3225
3105
  updateEditable();
3226
3106
  });
3227
- const editor = useEditor({ ...initializeCtx.editorOptions(),
3107
+ const editor = useEditor({
3108
+ ...initializeCtx.editorOptions(),
3228
3109
  autofocus: props.autofocus,
3229
3110
  content: props.modelValue,
3230
3111
  extensions,
@@ -3233,33 +3114,29 @@ const VWysiwygEditor = defineComponent({
3233
3114
  class: 'v-wysiwyg-editor__input__prose'
3234
3115
  }
3235
3116
  }
3236
- }); // editor.value.state.doc.content
3237
-
3117
+ });
3118
+ // editor.value.state.doc.content
3238
3119
  const focus = (position, options) => {
3239
3120
  if (!editor.value) return;
3240
3121
  return editor.value.chain().focus(position, options);
3241
3122
  };
3242
-
3243
3123
  const blur = () => {
3244
3124
  if (!editor.value) return;
3245
3125
  return editor.value.chain().blur();
3246
3126
  };
3247
-
3248
3127
  const wysiwygContext = computed(() => {
3249
3128
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
3250
- const _editor = editor.value; // if (!_editor) {
3129
+ const _editor = editor.value;
3130
+ // if (!_editor) {
3251
3131
  // throw new Error('missing editor value');
3252
3132
  // }
3253
-
3254
3133
  return {
3255
3134
  vui,
3256
3135
  editor: _editor
3257
3136
  };
3258
3137
  });
3259
-
3260
3138
  const createTools = (bubbleMenu = false) => {
3261
3139
  let _slot;
3262
-
3263
3140
  const {
3264
3141
  value: settings
3265
3142
  } = wysiwygSettings;
@@ -3285,11 +3162,9 @@ const VWysiwygEditor = defineComponent({
3285
3162
  const isDisabled = !inputControl.canOperation || !!_editor && resolveContextableValue(context, disabled);
3286
3163
  let iconName;
3287
3164
  let child;
3288
-
3289
3165
  if (typeof icon === 'function') {
3290
3166
  if (_editor) {
3291
3167
  const _child = icon(context);
3292
-
3293
3168
  if (typeof _child === 'function') {
3294
3169
  child = _child();
3295
3170
  } else {
@@ -3299,7 +3174,6 @@ const VWysiwygEditor = defineComponent({
3299
3174
  } else {
3300
3175
  iconName = icon;
3301
3176
  }
3302
-
3303
3177
  if (!iconName && child == null) return;
3304
3178
  return createVNode(VButton, {
3305
3179
  "tabindex": -1,
@@ -3315,7 +3189,6 @@ const VWysiwygEditor = defineComponent({
3315
3189
  default: () => [_slot]
3316
3190
  });
3317
3191
  };
3318
-
3319
3192
  onBeforeUnmount(() => {
3320
3193
  editor.value && editor.value.destroy();
3321
3194
  });
@@ -3328,7 +3201,6 @@ const VWysiwygEditor = defineComponent({
3328
3201
  createTools
3329
3202
  };
3330
3203
  },
3331
-
3332
3204
  render() {
3333
3205
  return createVNode(VFormControl, {
3334
3206
  "nodeControl": this.nodeControl,
@@ -3347,7 +3219,8 @@ const VWysiwygEditor = defineComponent({
3347
3219
  scrollIntoView: true
3348
3220
  });
3349
3221
  }
3350
- }, { ...this.$slots,
3222
+ }, {
3223
+ ...this.$slots,
3351
3224
  default: () => {
3352
3225
  const {
3353
3226
  editor
@@ -3360,10 +3233,10 @@ const VWysiwygEditor = defineComponent({
3360
3233
  "startAdornment": this.startAdornment,
3361
3234
  "endAdornment": this.endAdornment,
3362
3235
  "size": this.size
3363
- }, { ...this.$slots,
3236
+ }, {
3237
+ ...this.$slots,
3364
3238
  default: () => {
3365
3239
  let _slot2;
3366
-
3367
3240
  return createVNode("div", {
3368
3241
  "class": "v-wysiwyg-editor__body"
3369
3242
  }, [createVNode(EditorContent, mergeProps({
@@ -3389,9 +3262,7 @@ const VWysiwygEditor = defineComponent({
3389
3262
  }
3390
3263
  });
3391
3264
  }
3392
-
3393
3265
  });
3394
-
3395
3266
  function resolveContextableValue(ctx, source) {
3396
3267
  return typeof source === 'function' ? source(ctx) : source;
3397
3268
  }
@@ -3399,11 +3270,9 @@ function resolveContextableValue(ctx, source) {
3399
3270
  const PROBLEM_CLASS_NAME = 'v-linter__problem';
3400
3271
  const ISSUE_ICON_CLASS_NAME = 'v-linter__issue-icon';
3401
3272
  const ISSUE_DATASET_NAME = 'data-issue-id';
3402
-
3403
3273
  function resolveWysiwygLinterFixMessage(message) {
3404
3274
  return typeof message === 'function' ? message() : message;
3405
3275
  }
3406
-
3407
3276
  function renderIcon(view, issue) {
3408
3277
  const {
3409
3278
  level = 'warning'
@@ -3412,14 +3281,11 @@ function renderIcon(view, issue) {
3412
3281
  const message = resolveWysiwygLinterFixMessage(issue.message);
3413
3282
  icon.className = `${ISSUE_ICON_CLASS_NAME} ${level}-scope`;
3414
3283
  icon.setAttribute(ISSUE_DATASET_NAME, issue.id);
3415
-
3416
3284
  if (typeof message === 'string') {
3417
3285
  icon.title = message;
3418
3286
  }
3419
-
3420
3287
  return icon;
3421
3288
  }
3422
-
3423
3289
  function runAllLinterPlugins(doc, plugins) {
3424
3290
  const decorations = [];
3425
3291
  const issues = plugins.map(RegisteredLinterPlugin => {
@@ -3436,7 +3302,6 @@ function runAllLinterPlugins(doc, plugins) {
3436
3302
  'data-issue-id': issue.id,
3437
3303
  title: typeof message === 'string' ? message : undefined
3438
3304
  }));
3439
-
3440
3305
  if (icon) {
3441
3306
  decorations.push(Decoration.widget(issue.from, view => renderIcon(view, issue)));
3442
3307
  }
@@ -3447,7 +3312,6 @@ function runAllLinterPlugins(doc, plugins) {
3447
3312
  decorationSet
3448
3313
  };
3449
3314
  }
3450
-
3451
3315
  const WysiwygLinter = createWysiwygExtension(ctx => {
3452
3316
  function showMenu(view, issue, event) {
3453
3317
  const message = resolveWysiwygLinterFixMessage(issue.message);
@@ -3476,22 +3340,18 @@ const WysiwygLinter = createWysiwygExtension(ctx => {
3476
3340
  }, [resolveWysiwygLinterFixMessage(fixer.message)])])]))])])
3477
3341
  });
3478
3342
  }
3479
-
3480
3343
  return Extension.create({
3481
3344
  name: 'linter',
3482
-
3483
3345
  addOptions() {
3484
3346
  return {
3485
3347
  plugins: []
3486
3348
  };
3487
3349
  },
3488
-
3489
3350
  addStorage() {
3490
3351
  return {
3491
3352
  issues: []
3492
3353
  };
3493
3354
  },
3494
-
3495
3355
  addProseMirrorPlugins() {
3496
3356
  const {
3497
3357
  plugins
@@ -3499,7 +3359,6 @@ const WysiwygLinter = createWysiwygExtension(ctx => {
3499
3359
  const {
3500
3360
  storage
3501
3361
  } = this;
3502
-
3503
3362
  const runAll = doc => {
3504
3363
  const {
3505
3364
  issues,
@@ -3508,14 +3367,11 @@ const WysiwygLinter = createWysiwygExtension(ctx => {
3508
3367
  storage.issues = issues;
3509
3368
  return decorationSet;
3510
3369
  };
3511
-
3512
3370
  const getIssue = id => storage.issues.find(issue => issue.id === id);
3513
-
3514
3371
  const getIssueElementByEvent = source => {
3515
3372
  if (!source || !(source instanceof HTMLElement)) {
3516
3373
  return;
3517
3374
  }
3518
-
3519
3375
  const issueId = source.getAttribute(ISSUE_DATASET_NAME);
3520
3376
  const issue = issueId && getIssue(issueId);
3521
3377
  if (!issue) return;
@@ -3523,7 +3379,6 @@ const WysiwygLinter = createWysiwygExtension(ctx => {
3523
3379
  issue
3524
3380
  };
3525
3381
  };
3526
-
3527
3382
  const linterPlugin = new Plugin({
3528
3383
  key: new PluginKey('linter'),
3529
3384
  state: {
@@ -3532,24 +3387,19 @@ const WysiwygLinter = createWysiwygExtension(ctx => {
3532
3387
  }) {
3533
3388
  return runAll(doc);
3534
3389
  },
3535
-
3536
3390
  apply(transaction, oldState) {
3537
3391
  return transaction.docChanged ? runAll(transaction.doc) : oldState;
3538
3392
  }
3539
-
3540
3393
  },
3541
3394
  props: {
3542
3395
  decorations(state) {
3543
3396
  return linterPlugin.getState(state);
3544
3397
  },
3545
-
3546
3398
  handleClick(view, _, event) {
3547
3399
  const info = getIssueElementByEvent(event.target);
3548
-
3549
3400
  if (!info) {
3550
3401
  return false;
3551
3402
  }
3552
-
3553
3403
  const {
3554
3404
  issue
3555
3405
  } = info;
@@ -3557,19 +3407,15 @@ const WysiwygLinter = createWysiwygExtension(ctx => {
3557
3407
  from,
3558
3408
  to
3559
3409
  } = issue;
3560
-
3561
3410
  const focus = () => view.dispatch(view.state.tr.setSelection(TextSelection.create(view.state.doc, from, to)).scrollIntoView());
3562
-
3563
3411
  focus();
3564
3412
  showMenu(view, issue, event);
3565
3413
  return true;
3566
3414
  }
3567
-
3568
3415
  }
3569
3416
  });
3570
3417
  return [linterPlugin];
3571
3418
  }
3572
-
3573
3419
  });
3574
3420
  });
3575
3421
 
@@ -3632,9 +3478,7 @@ function WysiwygLinterBadWords(words) {
3632
3478
  if (!node.isText) {
3633
3479
  return;
3634
3480
  }
3635
-
3636
3481
  const matches = regex.exec(node.text);
3637
-
3638
3482
  if (matches) {
3639
3483
  const fixValue = matches[0] + '!!!!!';
3640
3484
  this.record({
@@ -3658,7 +3502,6 @@ function WysiwygLinterBadWords(words) {
3658
3502
  });
3659
3503
  return this;
3660
3504
  }
3661
-
3662
3505
  };
3663
3506
  }
3664
3507
 
@@ -3946,13 +3789,11 @@ function createWysiwygColorTool(opts) {
3946
3789
  color
3947
3790
  } = item;
3948
3791
  let command = ctx.editor.chain().focus();
3949
-
3950
3792
  if (color) {
3951
3793
  command = command.setColor(color);
3952
3794
  } else {
3953
3795
  command = command.unsetColor();
3954
3796
  }
3955
-
3956
3797
  command.run();
3957
3798
  stack.close();
3958
3799
  }
@@ -3971,7 +3812,6 @@ function createWysiwygColorTool(opts) {
3971
3812
  };
3972
3813
  return tool;
3973
3814
  };
3974
-
3975
3815
  return WysiwygColorTool;
3976
3816
  }
3977
3817
 
@@ -3982,17 +3822,18 @@ const {
3982
3822
  nodeType: VUI_FORM_SYMBOL
3983
3823
  });
3984
3824
  function createVFormProps() {
3985
- return { ...props,
3825
+ return {
3826
+ ...props,
3986
3827
  ...createControlProps(),
3987
- ...defineSlotsProps() // disableAutoScroll: Boolean,
3988
-
3828
+ ...defineSlotsProps()
3829
+ // disableAutoScroll: Boolean,
3989
3830
  };
3990
3831
  }
3991
- const VForm = defineComponent({
3832
+
3833
+ const VForm = /* @__PURE__ */ defineComponent({
3992
3834
  name: 'VForm',
3993
3835
  props: createVFormProps(),
3994
3836
  emits,
3995
-
3996
3837
  setup(props, ctx) {
3997
3838
  const vui = useVui();
3998
3839
  const nodeControl = useForm(props, ctx, {
@@ -4015,11 +3856,11 @@ const VForm = defineComponent({
4015
3856
  }];
4016
3857
  });
4017
3858
  useControl(props);
4018
- return { ...nodeControl.expose(),
3859
+ return {
3860
+ ...nodeControl.expose(),
4019
3861
  classes
4020
3862
  };
4021
3863
  },
4022
-
4023
3864
  render() {
4024
3865
  const {
4025
3866
  form
@@ -4032,14 +3873,12 @@ const VForm = defineComponent({
4032
3873
  "onSubmit": form.handleSubmit
4033
3874
  }, [renderSlotOrEmpty(this.$slots, 'default', form)]);
4034
3875
  }
4035
-
4036
3876
  });
4037
3877
 
4038
3878
  function _isSlot$6(s) {
4039
3879
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
4040
3880
  }
4041
-
4042
- const VTab = defineComponent({
3881
+ const VTab = /* @__PURE__ */ defineComponent({
4043
3882
  name: 'VTab',
4044
3883
  props: {
4045
3884
  value: {
@@ -4053,7 +3892,6 @@ const VTab = defineComponent({
4053
3892
  emits: {
4054
3893
  click: ev => true
4055
3894
  },
4056
-
4057
3895
  setup(props, ctx) {
4058
3896
  const classesRef = computed(() => ({
4059
3897
  'v-tab--active': props.active
@@ -4071,13 +3909,11 @@ const VTab = defineComponent({
4071
3909
  active
4072
3910
  } = props;
4073
3911
  const classes = ['v-tab', classesRef.value];
4074
-
4075
3912
  const children = createVNode("span", {
4076
3913
  "class": "v-tab__content"
4077
3914
  }, [icon && resolveRawIconProp(active, icon, {
4078
3915
  class: 'v-tab__icon'
4079
3916
  }), renderSlotOrEmpty$1(ctx.slots)]);
4080
-
4081
3917
  if (to) {
4082
3918
  const replace = typeof to === 'string' ? undefined : to.replace;
4083
3919
  return createVNode(RouterLink, {
@@ -4099,23 +3935,21 @@ const VTab = defineComponent({
4099
3935
  }
4100
3936
  };
4101
3937
  }
4102
-
4103
3938
  });
4104
3939
 
4105
3940
  function _isSlot$5(s) {
4106
3941
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
4107
3942
  }
4108
-
4109
- const VTabs = defineComponent({
3943
+ const VTabs = /* @__PURE__ */ defineComponent({
4110
3944
  name: 'VTabs',
4111
3945
  props: {
4112
3946
  modelValue: String,
4113
3947
  items: {
4114
3948
  type: Array,
4115
- required: true // validator: (value: VTabsItem[]) => {
3949
+ required: true
3950
+ // validator: (value: VTabsItem[]) => {
4116
3951
  // return Array.isArray(value) && value.length > 0;
4117
3952
  // },
4118
-
4119
3953
  },
4120
3954
 
4121
3955
  /**
@@ -4125,12 +3959,10 @@ const VTabs = defineComponent({
4125
3959
  type: Number,
4126
3960
  default: 20
4127
3961
  },
4128
-
4129
3962
  /**
4130
3963
  * ルーター同期する場合設定する
4131
3964
  */
4132
3965
  router: Function,
4133
-
4134
3966
  /**
4135
3967
  * ルーティング連携を行う際に、クエリベースのURLマッチングを行う
4136
3968
  * タブのURLが /page1?tab=xxx のようになる時に設定する
@@ -4144,7 +3976,6 @@ const VTabs = defineComponent({
4144
3976
  'update:modelValue': newValue => true,
4145
3977
  change: newValue => true
4146
3978
  },
4147
-
4148
3979
  setup(props, ctx) {
4149
3980
  const vui = useVui();
4150
3981
  const internalValueRef = ref(null);
@@ -4177,7 +4008,6 @@ const VTabs = defineComponent({
4177
4008
  } = item;
4178
4009
  const active = current === value;
4179
4010
  let location;
4180
-
4181
4011
  if (router) {
4182
4012
  const to = router(value);
4183
4013
  const route = vui.router.resolve(to);
@@ -4186,31 +4016,26 @@ const VTabs = defineComponent({
4186
4016
  route
4187
4017
  };
4188
4018
  }
4189
-
4190
- return { ...item,
4019
+ return {
4020
+ ...item,
4191
4021
  active,
4192
4022
  location
4193
4023
  };
4194
4024
  });
4195
4025
  });
4196
-
4197
4026
  const setTabRef = ref => {
4198
4027
  tabRefs.value.push(ref);
4199
- }; // const isMountedRef = ref(false);
4200
-
4201
-
4028
+ };
4029
+ // const isMountedRef = ref(false);
4202
4030
  function setupInternalValue(routable) {
4203
4031
  let value = props.modelValue;
4204
-
4205
4032
  if (value == null || value === '') {
4206
4033
  const firstItem = props.items[0];
4207
4034
  if (!firstItem) return;
4208
4035
  value = firstItem.value;
4209
4036
  }
4210
-
4211
4037
  if (internalValueRef.value !== value) {
4212
4038
  internalValueRef.value = value;
4213
-
4214
4039
  if (routable) {
4215
4040
  const {
4216
4041
  router
@@ -4234,48 +4059,37 @@ const VTabs = defineComponent({
4234
4059
  }
4235
4060
  }
4236
4061
  }
4237
-
4238
4062
  async function to(value) {
4239
4063
  const {
4240
4064
  value: currentValue
4241
4065
  } = currentRef;
4242
-
4243
4066
  if (currentValue === value) {
4244
4067
  return;
4245
4068
  }
4246
-
4247
4069
  const {
4248
4070
  onBeforeChange
4249
4071
  } = props;
4250
-
4251
4072
  if (onBeforeChange) {
4252
4073
  let result = onBeforeChange(value, currentRef.value);
4253
-
4254
4074
  if (isPromise(result)) {
4255
4075
  result = await result;
4256
4076
  }
4257
-
4258
4077
  console.log(result);
4259
-
4260
4078
  if (result === false) {
4261
4079
  return;
4262
4080
  }
4263
4081
  }
4264
-
4265
4082
  currentRef.value = value;
4266
4083
  }
4267
-
4268
4084
  function cancelScroll() {
4269
4085
  if (scrollResult) {
4270
4086
  scrollResult.cancel();
4271
4087
  scrollResult = undefined;
4272
4088
  }
4273
4089
  }
4274
-
4275
4090
  const findTab = tab => {
4276
4091
  return tabRefs.value.find(t => t.value === tab);
4277
4092
  };
4278
-
4279
4093
  function scrollToTab(tabValue) {
4280
4094
  const tab = findTab(tabValue);
4281
4095
  if (!tab) return;
@@ -4302,15 +4116,12 @@ const VTabs = defineComponent({
4302
4116
  if (hiddenLeft > 0) hiddenLeft += autoScrollOffset;
4303
4117
  if (hiddenRight > 0) hiddenRight += autoScrollOffset;
4304
4118
  let scrollAmmount = 0;
4305
-
4306
4119
  if (hiddenRight > 0) {
4307
4120
  scrollAmmount = hiddenRight;
4308
4121
  }
4309
-
4310
4122
  if (hiddenLeft > 0) {
4311
4123
  scrollAmmount = -hiddenLeft;
4312
4124
  }
4313
-
4314
4125
  if (Math.abs(scrollAmmount) > 0) {
4315
4126
  cancelScroll();
4316
4127
  scrollResult = scroller.scroller.by(scrollAmmount, 0, {
@@ -4318,7 +4129,6 @@ const VTabs = defineComponent({
4318
4129
  });
4319
4130
  }
4320
4131
  }
4321
-
4322
4132
  watch(() => props.modelValue, () => setupInternalValue(true));
4323
4133
  watch(() => props.items, () => setupInternalValue(), {
4324
4134
  deep: true
@@ -4334,7 +4144,6 @@ const VTabs = defineComponent({
4334
4144
  }) => {
4335
4145
  return location && location.route.fullPath === path;
4336
4146
  });
4337
-
4338
4147
  if (hit) {
4339
4148
  currentRef.value = hit.value;
4340
4149
  }
@@ -4364,15 +4173,12 @@ const VTabs = defineComponent({
4364
4173
  if (!label) {
4365
4174
  label = itemSlot;
4366
4175
  }
4367
-
4368
4176
  const children = typeof label === 'function' ? label({
4369
4177
  value,
4370
4178
  active,
4371
4179
  vui
4372
4180
  }) : label;
4373
-
4374
4181
  const _to = location && location.to || undefined;
4375
-
4376
4182
  return createVNode(VTab, {
4377
4183
  "value": value,
4378
4184
  "to": _to,
@@ -4403,22 +4209,20 @@ const VTabs = defineComponent({
4403
4209
  })]);
4404
4210
  };
4405
4211
  }
4406
-
4407
4212
  });
4408
4213
 
4409
4214
  function _isSlot$4(s) {
4410
4215
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
4411
4216
  }
4412
-
4413
- const VBreadcrumbs = defineComponent({
4217
+ const VBreadcrumbs = /* @__PURE__ */ defineComponent({
4414
4218
  name: 'VBreadcrumbs',
4415
4219
  props: {
4416
4220
  items: {
4417
4221
  type: Array,
4418
4222
  default: () => []
4419
4223
  },
4420
- divider: [String, Function] // ...defineSlotsProps<{}>(),
4421
-
4224
+ divider: [String, Function]
4225
+ // ...defineSlotsProps<{}>(),
4422
4226
  },
4423
4227
 
4424
4228
  setup(props, ctx) {
@@ -4435,33 +4239,30 @@ const VBreadcrumbs = defineComponent({
4435
4239
  text
4436
4240
  } = item;
4437
4241
  const {
4438
- disabled = vui.location.match(to) || !vui.location.isAvairable(to)
4242
+ disabled = vui.location.match(to) || !vui.location.isAvailable(to)
4439
4243
  } = item;
4440
- return { ...item,
4244
+ return {
4245
+ ...item,
4441
4246
  disabled,
4442
4247
  text: typeof text === 'function' ? text(vui) : text
4443
4248
  };
4444
4249
  });
4445
4250
  });
4446
4251
  const lengthRef = computed(() => computedItemsRef.value.length);
4447
-
4448
4252
  const defaultDividerSlot = () => {
4449
4253
  return [createVNode("i", {
4450
4254
  "class": "v-breadcrumbs__divider__icon"
4451
4255
  }, null)];
4452
4256
  };
4453
-
4454
4257
  return () => {
4455
4258
  if (lengthRef.value < 1) return;
4456
4259
  let dividerSlot;
4457
4260
  const propDivider = props.divider;
4458
-
4459
4261
  if (propDivider) {
4460
4262
  dividerSlot = typeof propDivider === 'function' ? propDivider : () => propDivider;
4461
4263
  } else {
4462
4264
  dividerSlot = defaultDividerSlot;
4463
4265
  }
4464
-
4465
4266
  const children = [];
4466
4267
  computedItemsRef.value.forEach((item, index) => {
4467
4268
  const {
@@ -4470,10 +4271,8 @@ const VBreadcrumbs = defineComponent({
4470
4271
  disabled,
4471
4272
  to
4472
4273
  } = item;
4473
-
4474
4274
  if (index > 0) {
4475
4275
  const divider = dividerSlot(vui);
4476
-
4477
4276
  if (divider) {
4478
4277
  children.push(createVNode("li", {
4479
4278
  "class": "v-breadcrumbs__divider",
@@ -4481,19 +4280,15 @@ const VBreadcrumbs = defineComponent({
4481
4280
  }, [divider]));
4482
4281
  }
4483
4282
  }
4484
-
4485
4283
  const myChildren = [];
4486
-
4487
4284
  if (icon) {
4488
4285
  const $icon = resolveRawIconProp(false, icon, {
4489
4286
  class: 'v-breadcrumbs__icon'
4490
4287
  });
4491
-
4492
4288
  if ($icon) {
4493
4289
  myChildren.push($icon);
4494
4290
  }
4495
4291
  }
4496
-
4497
4292
  if (text) myChildren.push(text);
4498
4293
  const itemChild = to ? createVNode(VLink, {
4499
4294
  "class": "v-breadcrumbs__link",
@@ -4516,14 +4311,12 @@ const VBreadcrumbs = defineComponent({
4516
4311
  }, [children])]);
4517
4312
  };
4518
4313
  }
4519
-
4520
4314
  });
4521
4315
 
4522
4316
  function _isSlot$3(s) {
4523
4317
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
4524
4318
  }
4525
-
4526
- const VContentSwitcher = defineComponent({
4319
+ const VContentSwitcher = /* @__PURE__ */ defineComponent({
4527
4320
  name: 'VContentSwitcher',
4528
4321
  props: {
4529
4322
  modelValue: String,
@@ -4536,7 +4329,6 @@ const VContentSwitcher = defineComponent({
4536
4329
  emits: {
4537
4330
  'update:modelValue': modelValue => true
4538
4331
  },
4539
-
4540
4332
  setup(props, ctx) {
4541
4333
  const internalValueRef = ref('');
4542
4334
  const transitionRef = ref('');
@@ -4560,31 +4352,26 @@ const VContentSwitcher = defineComponent({
4560
4352
  } = props;
4561
4353
  if (settings === true) settings = {};
4562
4354
  if (!settings) return;
4563
- return { ...settings
4355
+ return {
4356
+ ...settings
4564
4357
  };
4565
4358
  });
4566
-
4567
4359
  function seeTop(options) {
4568
4360
  const scoller = getDocumentScroller$1();
4569
4361
  const {
4570
4362
  value: anchor
4571
4363
  } = anchorRef;
4572
-
4573
4364
  if (anchor) {
4574
4365
  scoller.toElement(anchor, options);
4575
4366
  }
4576
4367
  }
4577
-
4578
4368
  function getEl() {
4579
4369
  const el = elRef.value;
4580
-
4581
4370
  if (!el) {
4582
4371
  throw new Error('missing element');
4583
4372
  }
4584
-
4585
4373
  return el;
4586
4374
  }
4587
-
4588
4375
  watch(() => props.modelValue, (value, beforeValue) => {
4589
4376
  if (value == null) return;
4590
4377
  internalValueRef.value = value;
@@ -4593,19 +4380,16 @@ const VContentSwitcher = defineComponent({
4593
4380
  const index = order.indexOf(value);
4594
4381
  const beforeIndex = order.indexOf(beforeValue);
4595
4382
  let transition = 'fade';
4596
-
4597
4383
  if (index !== -1 && beforeIndex !== -1) {
4598
4384
  if (index > beforeIndex) transition = 'v-content-switcher-next';
4599
4385
  if (index < beforeIndex) transition = 'v-content-switcher-prev';
4600
4386
  }
4601
-
4602
4387
  transitionRef.value = transition;
4603
4388
  }, {
4604
4389
  immediate: true
4605
4390
  });
4606
4391
  watch(currentRef, () => {
4607
4392
  const autotopSettings = autotopSettingsRef.value;
4608
-
4609
4393
  if (autotopSettings && props.modelValue != null) {
4610
4394
  seeTop(autotopSettings);
4611
4395
  }
@@ -4614,14 +4398,12 @@ const VContentSwitcher = defineComponent({
4614
4398
  const current = currentRef.value;
4615
4399
  const children = renderSlotOrEmpty$1(ctx.slots) || [];
4616
4400
  const currentSlot = ctx.slots[current];
4617
-
4618
4401
  if (currentSlot) {
4619
4402
  children.push(createVNode("div", {
4620
4403
  "class": "v-content-switcher__content",
4621
4404
  "key": current
4622
4405
  }, [currentSlot(this)]));
4623
4406
  }
4624
-
4625
4407
  return createVNode("div", {
4626
4408
  "class": "v-content-switcher",
4627
4409
  "ref": elRef
@@ -4650,7 +4432,6 @@ const VContentSwitcher = defineComponent({
4650
4432
  })]);
4651
4433
  };
4652
4434
  }
4653
-
4654
4435
  });
4655
4436
 
4656
4437
  const DATA_TABLE_DEFAULTS = {
@@ -4669,13 +4450,12 @@ const DATA_TABLE_DEFAULTS = {
4669
4450
  };
4670
4451
  function configureDataTableDefaults(defaults) {
4671
4452
  Object.assign(DATA_TABLE_DEFAULTS, defaults);
4672
-
4673
4453
  if (!defaults.defaultOrder && defaults.ascQueryValue) {
4674
4454
  DATA_TABLE_DEFAULTS.defaultOrder = defaults.ascQueryValue;
4675
4455
  }
4676
4456
  }
4677
4457
  const SELECTABLE_HEADER_SYMBOL = '__selectable_header__';
4678
- const VDataTable = defineComponent({
4458
+ const VDataTable = /* @__PURE__ */ defineComponent({
4679
4459
  name: 'VDataTable',
4680
4460
  props: {
4681
4461
  /** 選択中のkeyの配列 */
@@ -4687,7 +4467,6 @@ const VDataTable = defineComponent({
4687
4467
  type: String,
4688
4468
  default: () => DATA_TABLE_DEFAULTS.itemKey
4689
4469
  },
4690
-
4691
4470
  /**
4692
4471
  * ページネーションクエリ名
4693
4472
  */
@@ -4695,7 +4474,6 @@ const VDataTable = defineComponent({
4695
4474
  type: String,
4696
4475
  default: () => DATA_TABLE_DEFAULTS.pageQuery
4697
4476
  },
4698
-
4699
4477
  /**
4700
4478
  * ソートクエリ名
4701
4479
  */
@@ -4703,7 +4481,6 @@ const VDataTable = defineComponent({
4703
4481
  type: String,
4704
4482
  default: () => DATA_TABLE_DEFAULTS.sortQuery
4705
4483
  },
4706
-
4707
4484
  /**
4708
4485
  * 表示順クエリ名
4709
4486
  */
@@ -4711,7 +4488,6 @@ const VDataTable = defineComponent({
4711
4488
  type: String,
4712
4489
  default: () => DATA_TABLE_DEFAULTS.orderQuery
4713
4490
  },
4714
-
4715
4491
  /**
4716
4492
  * 検索クエリ名
4717
4493
  */
@@ -4719,7 +4495,6 @@ const VDataTable = defineComponent({
4719
4495
  type: [String, Array],
4720
4496
  default: () => DATA_TABLE_DEFAULTS.searchQuery
4721
4497
  },
4722
-
4723
4498
  /**
4724
4499
  * リミット件数クエリ名
4725
4500
  */
@@ -4774,7 +4549,6 @@ const VDataTable = defineComponent({
4774
4549
  emits: {
4775
4550
  input: selecteds => true
4776
4551
  },
4777
-
4778
4552
  setup(props, ctx) {
4779
4553
  const vui = useVui();
4780
4554
  const bootedRef = ref(false);
@@ -4788,13 +4562,11 @@ const VDataTable = defineComponent({
4788
4562
  selectable
4789
4563
  } = props;
4790
4564
  const ret = [];
4791
-
4792
4565
  if (selectable) {
4793
4566
  ret.push({
4794
4567
  key: SELECTABLE_HEADER_SYMBOL
4795
4568
  });
4796
4569
  }
4797
-
4798
4570
  ret.push(...headers.filter(h => !h.hidden));
4799
4571
  return ret;
4800
4572
  });
@@ -4802,34 +4574,27 @@ const VDataTable = defineComponent({
4802
4574
  let {
4803
4575
  searchQuery
4804
4576
  } = props;
4805
-
4806
4577
  if (!searchQuery) {
4807
4578
  return [];
4808
4579
  }
4809
-
4810
4580
  if (!Array.isArray(searchQuery)) {
4811
4581
  searchQuery = [searchQuery];
4812
4582
  }
4813
-
4814
4583
  const values = [];
4815
4584
  searchQuery.forEach(query => {
4816
4585
  const value = vui.location.getQuery(query);
4817
-
4818
4586
  if (value == null || value === '') {
4819
4587
  return;
4820
4588
  }
4821
-
4822
4589
  if (typeof value === 'object' && !Object.keys(value).length) {
4823
4590
  return;
4824
4591
  }
4825
-
4826
4592
  values.push(value);
4827
4593
  });
4828
4594
  return values;
4829
4595
  });
4830
4596
  const emptyMessage = computed(() => {
4831
4597
  let message;
4832
-
4833
4598
  if (searchQueryValues.value.length) {
4834
4599
  message = props.noResultsMessage || vui.setting('noResultsMessage') || 'No search results found.'; // 検索結果が見つかりませんでした。
4835
4600
  } else {
@@ -4849,13 +4614,10 @@ const VDataTable = defineComponent({
4849
4614
  maxHeight
4850
4615
  } = props;
4851
4616
  const footerHeight = footerHeightRef.value;
4852
-
4853
4617
  const _maxHeight = maxHeight || (fixedHeader ? '100%' : maxHeight);
4854
-
4855
4618
  if (!_maxHeight) {
4856
4619
  return;
4857
4620
  }
4858
-
4859
4621
  return {
4860
4622
  maxHeight: layout.calicurateViewHeight(_maxHeight, -footerHeight - 100, 200)
4861
4623
  };
@@ -4870,35 +4632,29 @@ const VDataTable = defineComponent({
4870
4632
  get: () => {
4871
4633
  return vui.location.getQuery(props.sortQuery);
4872
4634
  },
4873
-
4874
4635
  set(value) {
4875
4636
  vui.location.pushQuery({
4876
4637
  [props.sortQuery]: value || null,
4877
4638
  [props.pageQuery]: 1
4878
4639
  });
4879
4640
  }
4880
-
4881
4641
  });
4882
4642
  const ordersRef = computed(() => [props.ascQueryValue, props.descQueryValue]);
4883
4643
  const usePaigingRef = computed(() => props.limits.length > 0);
4884
4644
  const orderByRef = computed({
4885
4645
  get: () => {
4886
4646
  const value = vui.location.getQuery(props.orderQuery);
4887
-
4888
4647
  if (typeof value !== 'string' || !ordersRef.value.includes(value)) {
4889
4648
  return;
4890
4649
  }
4891
-
4892
4650
  return value;
4893
4651
  },
4894
-
4895
4652
  set(value) {
4896
4653
  vui.location.pushQuery({
4897
4654
  [props.orderQuery]: value || null,
4898
4655
  [props.pageQuery]: 1
4899
4656
  });
4900
4657
  }
4901
-
4902
4658
  });
4903
4659
  const offsetRef = computed(() => (pageRef.value - 1) * limitRef.value);
4904
4660
  const limitRef = computed({
@@ -4920,14 +4676,12 @@ const VDataTable = defineComponent({
4920
4676
  return Math.ceil(total / _limit);
4921
4677
  });
4922
4678
  const lengthRef = computed(() => props.items.length);
4923
- const isASCRef = computed(() => orderByRef.value === props.ascQueryValue); // const isDESCRef = computed(() => orderByRef.value === props.descQueryValue);
4924
-
4679
+ const isASCRef = computed(() => orderByRef.value === props.ascQueryValue);
4680
+ // const isDESCRef = computed(() => orderByRef.value === props.descQueryValue);
4925
4681
  const sortIconRef = computed(() => {
4926
4682
  let icon = vui.icon('sort');
4927
-
4928
4683
  if (typeof icon === 'string') {
4929
4684
  const name = icon;
4930
-
4931
4685
  icon = gen => {
4932
4686
  return gen({
4933
4687
  name,
@@ -4935,7 +4689,6 @@ const VDataTable = defineComponent({
4935
4689
  });
4936
4690
  };
4937
4691
  }
4938
-
4939
4692
  return icon;
4940
4693
  });
4941
4694
  const isIndeterminateRef = computed(() => {
@@ -4945,7 +4698,6 @@ const VDataTable = defineComponent({
4945
4698
  return length > 0 && length < sortedItemKeysRef.value.length;
4946
4699
  });
4947
4700
  const isAllSelectedRef = computed(() => internalValues.value.length === sortedItemKeysRef.value.length);
4948
-
4949
4701
  function setSort(settings) {
4950
4702
  const {
4951
4703
  sort,
@@ -4953,30 +4705,27 @@ const VDataTable = defineComponent({
4953
4705
  } = settings;
4954
4706
  if ((sort === undefined || sortByRef.value === sort) && (order === undefined || orderByRef.value === order)) return;
4955
4707
  const queries = {};
4956
-
4957
4708
  if (sort) {
4958
4709
  queries[props.sortQuery] = sort;
4959
4710
  }
4960
-
4961
4711
  if (order) {
4962
4712
  queries[props.orderQuery] = order;
4963
4713
  }
4964
-
4965
- vui.location.pushQuery({ ...queries,
4966
- [props.pageQuery]: 1
4714
+ vui.location.pushQuery({
4715
+ ...queries,
4716
+ ...(usePaigingRef.value ? {
4717
+ [props.pageQuery]: 1
4718
+ } : undefined)
4967
4719
  });
4968
4720
  }
4969
-
4970
4721
  function toggleOrderBy() {
4971
4722
  return setSort({
4972
4723
  order: orderByRef.value === props.ascQueryValue ? props.descQueryValue : props.ascQueryValue
4973
4724
  });
4974
4725
  }
4975
-
4976
4726
  function isSelected(key) {
4977
4727
  return internalValues.value.includes(key);
4978
4728
  }
4979
-
4980
4729
  function select(key) {
4981
4730
  if (!internalValues.value.includes(key)) {
4982
4731
  const values = internalValues.value.slice();
@@ -4993,7 +4742,6 @@ const VDataTable = defineComponent({
4993
4742
  ctx.emit('input', values);
4994
4743
  }
4995
4744
  }
4996
-
4997
4745
  function selectAll() {
4998
4746
  if (!isAllSelectedRef.value) {
4999
4747
  const values = sortedItemKeysRef.value.slice();
@@ -5001,7 +4749,6 @@ const VDataTable = defineComponent({
5001
4749
  ctx.emit('input', values);
5002
4750
  }
5003
4751
  }
5004
-
5005
4752
  function deselectAll() {
5006
4753
  if (internalValues.value.length) {
5007
4754
  const values = [];
@@ -5009,34 +4756,28 @@ const VDataTable = defineComponent({
5009
4756
  ctx.emit('input', values);
5010
4757
  }
5011
4758
  }
5012
-
5013
4759
  function deselect(key) {
5014
4760
  const values = internalValues.value.slice();
5015
4761
  const index = values.indexOf(key);
5016
-
5017
4762
  if (index !== -1) {
5018
4763
  values.splice(index, 1);
5019
4764
  internalValues.value = values;
5020
4765
  ctx.emit('input', values);
5021
4766
  }
5022
4767
  }
5023
-
5024
4768
  function handleClickSortHeader(header, ev) {
5025
4769
  const {
5026
4770
  sortQuery
5027
4771
  } = header;
5028
4772
  if (!sortQuery) return;
5029
-
5030
4773
  if (sortByRef.value === sortQuery) {
5031
4774
  return toggleOrderBy();
5032
4775
  }
5033
-
5034
4776
  return setSort({
5035
4777
  sort: sortQuery,
5036
4778
  order: defaultOrderQueryRef.value
5037
4779
  });
5038
4780
  }
5039
-
5040
4781
  function genPagination() {
5041
4782
  return createVNode(VPagination, {
5042
4783
  "class": "v-data-table__pagination",
@@ -5047,7 +4788,6 @@ const VDataTable = defineComponent({
5047
4788
  "length": pageLengthRef.value
5048
4789
  }, null);
5049
4790
  }
5050
-
5051
4791
  function genControls() {
5052
4792
  const {
5053
4793
  total
@@ -5081,7 +4821,6 @@ const VDataTable = defineComponent({
5081
4821
  "class": "v-data-table__controls__pagination"
5082
4822
  }, [genPagination()])]);
5083
4823
  }
5084
-
5085
4824
  function genTableHeader() {
5086
4825
  const sortBy = sortByRef.value;
5087
4826
  const isIndeterminate = isIndeterminateRef.value;
@@ -5090,7 +4829,7 @@ const VDataTable = defineComponent({
5090
4829
  defaultOrder,
5091
4830
  ascQueryValue
5092
4831
  } = props;
5093
- const usePaiging = usePaigingRef.value;
4832
+ // const usePaiging = usePaigingRef.value;
5094
4833
  const children = headersRef.value.map(header => {
5095
4834
  const {
5096
4835
  label,
@@ -5099,17 +4838,13 @@ const VDataTable = defineComponent({
5099
4838
  key
5100
4839
  } = header;
5101
4840
  const headerChildren = [];
5102
-
5103
4841
  if (label != null && typeof label !== 'boolean') {
5104
4842
  let _children = typeof label === 'function' ? label(vui) : label;
5105
-
5106
4843
  if (_children && !Array.isArray(_children) && typeof _children === 'object') {
5107
4844
  _children = JSON.stringify(_children);
5108
4845
  }
5109
-
5110
4846
  headerChildren.push(_children);
5111
4847
  }
5112
-
5113
4848
  if (key === SELECTABLE_HEADER_SYMBOL) {
5114
4849
  headerChildren.push(createVNode(VCheckbox, {
5115
4850
  "modelValue": isAllSelected,
@@ -5122,14 +4857,12 @@ const VDataTable = defineComponent({
5122
4857
  }
5123
4858
  }
5124
4859
  }, null));
5125
- } // if (key === DELETOR_HEADER_SYMBOL) {
4860
+ }
4861
+ // if (key === DELETOR_HEADER_SYMBOL) {
5126
4862
  // headerChildren.push('削除');
5127
4863
  // }
5128
-
5129
-
5130
4864
  const sortActive = sortBy === sortQuery;
5131
-
5132
- if (sortQuery && usePaiging) {
4865
+ if (sortQuery) {
5133
4866
  const isASC = sortActive ? isASCRef.value : defaultOrder === ascQueryValue;
5134
4867
  headerChildren.unshift(createVNode(VIcon, {
5135
4868
  "class": "v-data-table__table__sort-icon v-data-table__table__sort-icon--empty",
@@ -5142,21 +4875,18 @@ const VDataTable = defineComponent({
5142
4875
  }]
5143
4876
  }));
5144
4877
  }
5145
-
5146
4878
  const classes = ['v-data-table__table__cell', {
5147
4879
  'v-data-table__table__cell--active': sortActive
5148
4880
  }];
5149
-
5150
4881
  if (align) {
5151
4882
  classes.push(`v-data-table__table__cell--${align}`);
5152
4883
  }
5153
-
5154
4884
  return createVNode("th", {
5155
4885
  "class": classes,
5156
4886
  "key": header.key,
5157
- "tabindex": sortQuery && usePaiging ? 0 : undefined,
4887
+ "tabindex": sortQuery ? 0 : undefined,
5158
4888
  "onClick": ev => {
5159
- if (!sortQuery || !usePaiging) return;
4889
+ if (!sortQuery) return;
5160
4890
  handleClickSortHeader(header);
5161
4891
  }
5162
4892
  }, [createVNode("div", {
@@ -5167,19 +4897,17 @@ const VDataTable = defineComponent({
5167
4897
  "class": "v-data-table__table__header"
5168
4898
  }, [createVNode("tr", null, [children])]);
5169
4899
  }
5170
-
5171
4900
  function toggleSelect(key) {
5172
4901
  return isSelected(key) ? deselect(key) : select(key);
5173
4902
  }
5174
-
5175
4903
  function defaultItemSlot(payload) {
5176
4904
  const {
5177
4905
  key,
5178
4906
  item,
5179
4907
  selected
5180
4908
  } = payload;
5181
- const headers = headersRef.value; // const { $scopedSlots, $createElement, deletor } = this;
5182
-
4909
+ const headers = headersRef.value;
4910
+ // const { $scopedSlots, $createElement, deletor } = this;
5183
4911
  const children = headers.map(header => {
5184
4912
  const {
5185
4913
  cell,
@@ -5188,23 +4916,18 @@ const VDataTable = defineComponent({
5188
4916
  } = header;
5189
4917
  const cellSlot = cell || ctx.slots.cell;
5190
4918
  let cellChildren;
5191
-
5192
4919
  if (cellSlot) {
5193
4920
  const cellPayload = {
5194
4921
  vui,
5195
4922
  item,
5196
4923
  selected
5197
4924
  };
5198
-
5199
4925
  let _children = cellSlot(cellPayload);
5200
-
5201
4926
  if (_children && !Array.isArray(_children) && typeof _children === 'object') {
5202
4927
  _children = JSON.stringify(_children);
5203
4928
  }
5204
-
5205
4929
  cellChildren = _children;
5206
4930
  }
5207
-
5208
4931
  if (!cellChildren) {
5209
4932
  switch (headerKey) {
5210
4933
  case SELECTABLE_HEADER_SYMBOL:
@@ -5259,7 +4982,6 @@ const VDataTable = defineComponent({
5259
4982
  "key": key
5260
4983
  }, [children]);
5261
4984
  }
5262
-
5263
4985
  function genBody() {
5264
4986
  const {
5265
4987
  items,
@@ -5281,7 +5003,6 @@ const VDataTable = defineComponent({
5281
5003
  "class": "v-data-table__table__body"
5282
5004
  }, [children]);
5283
5005
  }
5284
-
5285
5006
  watch(() => props.modelValue, modelValue => {
5286
5007
  internalValues.value = modelValue.slice();
5287
5008
  });
@@ -5330,36 +5051,31 @@ const VDataTable = defineComponent({
5330
5051
  })])]);
5331
5052
  };
5332
5053
  }
5333
-
5334
5054
  });
5335
5055
 
5336
5056
  function _isSlot$2(s) {
5337
5057
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
5338
5058
  }
5339
-
5340
- const VApp = defineComponent({
5059
+ const VApp = /* @__PURE__ */ defineComponent({
5341
5060
  name: 'VApp',
5342
-
5343
5061
  setup(props, ctx) {
5344
5062
  useInjectTheme();
5345
5063
  return () => {
5346
5064
  let _slot;
5347
-
5348
5065
  return createVNode(VStackRoot, null, _isSlot$2(_slot = renderSlotOrEmpty(ctx.slots, 'default')) ? _slot : {
5349
5066
  default: () => [_slot]
5350
5067
  });
5351
5068
  };
5352
5069
  }
5353
-
5354
5070
  });
5355
5071
 
5356
- const VToolbar = defineComponent({
5072
+ const VToolbar = /* @__PURE__ */ defineComponent({
5357
5073
  name: 'VToolbar',
5358
- props: { ...createElevationProps(),
5074
+ props: {
5075
+ ...createElevationProps(),
5359
5076
  ...colorSchemeProps(),
5360
5077
  dense: Boolean
5361
5078
  },
5362
-
5363
5079
  setup(props, ctx) {
5364
5080
  const vui = useVui();
5365
5081
  const elevation = useElevation(props, {
@@ -5382,24 +5098,20 @@ const VToolbar = defineComponent({
5382
5098
  }, [renderSlotOrEmpty$1(ctx.slots, 'default')]);
5383
5099
  };
5384
5100
  }
5385
-
5386
5101
  });
5387
5102
 
5388
5103
  function _isSlot$1(s) {
5389
5104
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
5390
5105
  }
5391
-
5392
- const VToolbarMenu = defineComponent({
5106
+ const VToolbarMenu = /* @__PURE__ */ defineComponent({
5393
5107
  name: 'VToolbarMenu',
5394
5108
  inheritAttrs: false,
5395
5109
  props: {},
5396
-
5397
5110
  setup(props, ctx) {
5398
5111
  const vui = useVui();
5399
5112
  const plain = vui.setting('plainVariant');
5400
5113
  return () => {
5401
5114
  let _slot;
5402
-
5403
5115
  const variant = props.variant || plain;
5404
5116
  return createVNode(VButton, mergeProps(ctx.attrs, {
5405
5117
  "variant": variant,
@@ -5409,10 +5121,9 @@ const VToolbarMenu = defineComponent({
5409
5121
  });
5410
5122
  };
5411
5123
  }
5412
-
5413
5124
  });
5414
5125
 
5415
- const VToolbarEdge = defineComponent({
5126
+ const VToolbarEdge = /* @__PURE__ */ defineComponent({
5416
5127
  name: 'VToolbarEdge',
5417
5128
  props: {
5418
5129
  edge: {
@@ -5420,7 +5131,6 @@ const VToolbarEdge = defineComponent({
5420
5131
  required: true
5421
5132
  }
5422
5133
  },
5423
-
5424
5134
  setup(props, ctx) {
5425
5135
  const edge = computed(() => props.edge);
5426
5136
  return () => {
@@ -5433,14 +5143,12 @@ const VToolbarEdge = defineComponent({
5433
5143
  }, [children]);
5434
5144
  };
5435
5145
  }
5436
-
5437
5146
  });
5438
5147
 
5439
5148
  function _isSlot(s) {
5440
5149
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
5441
5150
  }
5442
-
5443
- const VToolbarTitle = defineComponent({
5151
+ const VToolbarTitle = /* @__PURE__ */ defineComponent({
5444
5152
  name: 'VToolbarTitle',
5445
5153
  props: {
5446
5154
  tag: {
@@ -5448,13 +5156,10 @@ const VToolbarTitle = defineComponent({
5448
5156
  default: 'span'
5449
5157
  }
5450
5158
  },
5451
-
5452
5159
  setup(props, ctx) {
5453
5160
  const _TagName = computed(() => props.tag);
5454
-
5455
5161
  return () => {
5456
5162
  let _slot;
5457
-
5458
5163
  const TagName = _TagName.value;
5459
5164
  return createVNode(TagName, {
5460
5165
  "class": "v-toolbar-title"
@@ -5463,7 +5168,6 @@ const VToolbarTitle = defineComponent({
5463
5168
  });
5464
5169
  };
5465
5170
  }
5466
-
5467
5171
  });
5468
5172
 
5469
5173
  const DEFAULT_AUTO_SCROLL_TO_ELEMENT_OFFSET_TOP = -20;
@@ -5472,8 +5176,8 @@ function mergeVuiServiceUISettings(base, overrides) {
5472
5176
  if (!overrides) {
5473
5177
  return base;
5474
5178
  }
5475
-
5476
- const merged = { ...base
5179
+ const merged = {
5180
+ ...base
5477
5181
  };
5478
5182
  Object.entries(overrides).forEach(([key, value]) => {
5479
5183
  if (value) {
@@ -5486,8 +5190,8 @@ function mergeVuiServiceIconSettings(base, overrides) {
5486
5190
  if (!overrides) {
5487
5191
  return base;
5488
5192
  }
5489
-
5490
- const merged = { ...base
5193
+ const merged = {
5194
+ ...base
5491
5195
  };
5492
5196
  Object.entries(overrides).forEach(([key, value]) => {
5493
5197
  if (value) {
@@ -5500,8 +5204,8 @@ function mergeVuiServiceOptions(base, overrides) {
5500
5204
  if (!overrides) {
5501
5205
  return base;
5502
5206
  }
5503
-
5504
- const merged = { ...base,
5207
+ const merged = {
5208
+ ...base,
5505
5209
  uiSettings: mergeVuiServiceUISettings(base.uiSettings, overrides.uiSettings),
5506
5210
  icons: mergeVuiServiceIconSettings(base.icons, overrides.icons)
5507
5211
  };
@@ -5517,7 +5221,6 @@ class VuiService {
5517
5221
  get scroller() {
5518
5222
  return getDocumentScroller$1();
5519
5223
  }
5520
-
5521
5224
  constructor(options, stackService) {
5522
5225
  this.options = options;
5523
5226
  this.configure();
@@ -5536,64 +5239,51 @@ class VuiService {
5536
5239
  router: this.router
5537
5240
  });
5538
5241
  this.stack = stackService;
5242
+ this.useLink = options.useLink || useLink;
5539
5243
  }
5540
-
5541
5244
  configure(options) {
5542
5245
  options && Object.assign(this.options, options);
5543
5246
  setDefaultRouterLink(this.getRouterLink());
5544
5247
  }
5545
-
5546
5248
  getRouterLink() {
5547
5249
  return this.options.RouterLink || RouterLink;
5548
5250
  }
5549
-
5550
5251
  setting(key) {
5551
5252
  return this.options.uiSettings[key];
5552
5253
  }
5553
-
5554
5254
  icon(iconType) {
5555
5255
  return this.options.icons[iconType];
5556
5256
  }
5557
-
5558
5257
  getAutoScrollToElementOffsetTop() {
5559
5258
  let {
5560
5259
  autoScrollToElementOffsetTop
5561
5260
  } = this;
5562
-
5563
5261
  if (typeof autoScrollToElementOffsetTop === 'function') {
5564
5262
  autoScrollToElementOffsetTop = autoScrollToElementOffsetTop();
5565
5263
  }
5566
-
5567
5264
  return autoScrollToElementOffsetTop || 0;
5568
5265
  }
5569
-
5570
5266
  getRequiredChip() {
5571
5267
  const {
5572
5268
  requiredChip
5573
5269
  } = this;
5574
5270
  return requiredChip && requiredChip();
5575
5271
  }
5576
-
5577
5272
  dialog(...args) {
5578
5273
  return this.stack.dialog(...args);
5579
5274
  }
5580
-
5581
5275
  alert(...args) {
5582
5276
  return this.stack.alert(...args);
5583
5277
  }
5584
-
5585
5278
  confirm(...args) {
5586
5279
  return this.stack.confirm(...args);
5587
5280
  }
5588
-
5589
5281
  snackbar(...args) {
5590
5282
  return this.stack.snackbar(...args);
5591
5283
  }
5592
-
5593
5284
  menu(...args) {
5594
5285
  return this.stack.menu(...args);
5595
5286
  }
5596
-
5597
5287
  formPrompt(settings, slot) {
5598
5288
  let form;
5599
5289
  const options = {
@@ -5604,9 +5294,7 @@ class VuiService {
5604
5294
  size,
5605
5295
  state
5606
5296
  } = options;
5607
-
5608
5297
  const _state = reactive(state);
5609
-
5610
5298
  options.actions = options.actions || [this.stack.action('cancel', undefined, {
5611
5299
  size
5612
5300
  }), this.stack.action('ok', undefined, {
@@ -5618,7 +5306,8 @@ class VuiService {
5618
5306
  }
5619
5307
  }
5620
5308
  })];
5621
- const resolved = resolveVStackDynamicInput({ ...options,
5309
+ const resolved = resolveVStackDynamicInput({
5310
+ ...options,
5622
5311
  content: stack => {
5623
5312
  return createVNode(VForm, {
5624
5313
  "disableAutoScroll": true,
@@ -5642,15 +5331,16 @@ class VuiService {
5642
5331
  });
5643
5332
  return this.dialog(resolved);
5644
5333
  }
5645
-
5646
5334
  prompt(rawOptions = {}) {
5647
5335
  const options = typeof rawOptions === 'string' ? {
5648
5336
  input: {
5649
5337
  label: rawOptions
5650
5338
  }
5651
- } : { ...rawOptions
5339
+ } : {
5340
+ ...rawOptions
5652
5341
  };
5653
- options.input = { ...options.input
5342
+ options.input = {
5343
+ ...options.input
5654
5344
  };
5655
5345
  options.dense = true;
5656
5346
  const {
@@ -5673,19 +5363,17 @@ class VuiService {
5673
5363
  return result ? result.input : result;
5674
5364
  });
5675
5365
  }
5676
-
5677
5366
  }
5678
5367
 
5679
5368
  function mergeVuiPluginOptions(base, override) {
5680
5369
  if (!override) return base;
5681
5370
  const merged = mergeVuiServiceOptions(base, override);
5682
-
5683
5371
  if (override.stack) {
5684
- merged.stack = { ...merged.stack,
5372
+ merged.stack = {
5373
+ ...merged.stack,
5685
5374
  ...override.stack
5686
5375
  };
5687
5376
  }
5688
-
5689
5377
  return merged;
5690
5378
  }
5691
5379
  class VuiPlugin {
@@ -5694,11 +5382,11 @@ class VuiPlugin {
5694
5382
  colorScheme,
5695
5383
  stack,
5696
5384
  uiSettings
5697
- } = opts; // ColorScheme
5698
-
5385
+ } = opts;
5386
+ // ColorScheme
5699
5387
  const vueColorSchemePlugin = new VueColorSchemePlugin(colorScheme);
5700
- app.use(vueColorSchemePlugin); // Stack
5701
-
5388
+ app.use(vueColorSchemePlugin);
5389
+ // Stack
5702
5390
  installVueStackPlugin(app, {
5703
5391
  actions: {
5704
5392
  ok: ({
@@ -5719,8 +5407,8 @@ class VuiPlugin {
5719
5407
  ...(stack ? stack.actions : {})
5720
5408
  },
5721
5409
  ...stack
5722
- }); // Vui
5723
-
5410
+ });
5411
+ // Vui
5724
5412
  const $vui = new VuiService(opts, app.config.globalProperties.$vstack);
5725
5413
  app.provide(VuiInjectionKey, $vui);
5726
5414
  app.config.globalProperties.$vui = $vui;
@@ -5728,10 +5416,9 @@ class VuiPlugin {
5728
5416
  delete app.config.globalProperties.$vui;
5729
5417
  });
5730
5418
  }
5731
-
5732
5419
  }
5733
5420
  function installVuiPlugin(app, opts) {
5734
5421
  return app.use(VuiPlugin, opts);
5735
5422
  }
5736
5423
 
5737
- export { ARROW_KEY_TYPES, AVATAR_SIZES, CHIP_SIZES, CHOICE_KEY_TYPES, CONTROL_FIELD_VARIANTS, CONTROL_LOADING_SPINNER_SIZES, CONTROL_SIZES, KEYBORD_EVENT_TYPES, PAGINATION_ALIGNS, VApp, VAvatar, VBreadcrumbs, VBusyImage, VButton, VButtonGroup, VCard, VCardActions, VCardContent, VCheckbox, VCheckboxGroup, VChip, VContentSwitcher, VDataTable, VDrawerLayout, VForm, VFormControl, VGridContainer, VGridItem, VHero, VIcon, VListTile, VNavigation, VNavigationItem, VNumberField, VOption, VOptionGroup, VPagination, VPaper, VRadio, VRadioGroup, VSelect, VSkeltonLoaderBone, VSwitch, VSwitchGroup, VTabs, VTextField, VTextarea, VToolbar, VToolbarEdge, VToolbarMenu, VToolbarTitle, VUI_CHECKBOX_GROUP_SYMBOL, VUI_CHECKBOX_SYMBOL, VUI_FORM_SYMBOL, VUI_OPTION_SYMBOL, VUI_RADIO_GROUP_SYMBOL, VUI_RADIO_SYMBOL, VUI_SELECT_SYMBOL, VUI_SWITCH_GROUP_SYMBOL, VUI_SWITCH_SYMBOL, VUI_TEXTAREA_SYMBOL, VUI_TEXT_FIELD_SYMBOL, VUI_WYSIWYG_EDITOR_SYMBOL, VWysiwygEditor, VuiColorProviderInjectionKey, VuiControlFieldInjectionKey, VuiControlInjectionKey, VuiInjectionKey, VuiPlugin, VuiService, WysiwygBulletListTool, WysiwygColorExtension, WysiwygEditorInitializeContext, WysiwygFormatBoldTool, WysiwygFormatItalicTool, WysiwygFormatUnderlineTool, WysiwygHistoryTool, WysiwygLinkTool, WysiwygLinter, WysiwygLinterBadWords, WysiwygLinterHeadingLevel, WysiwygLinterPlugin, WysiwygLinterPunctuation, WysiwygOrderedListTool, configureDataTableDefaults, createAvatarProps, createCardProps, createChipProps, createControlFieldProviderProps, createControlProps, createElevationProps, createListTileProps, createNavigationItemProps, createPaperBaseProps, createPaperProps, createRequiredChipRenderer, createVFormProps, createWysiwygColorTool, createWysiwygExtension, defineFormSelectorComponent, iconProps, installVuiPlugin, listTileEmits, mergeVuiPluginOptions, mergeVuiServiceIconSettings, mergeVuiServiceOptions, mergeVuiServiceUISettings, paginationProps, rawIconProp, renderNavigationItemInput, resolveNavigationItemInput, resolveRawIconProp, resolveRawWysiwygEditorTools, resolveRawWysiwygExtensions, splitAttrs, useControl, useControlField, useElevation, useVui, useVuiColorProvider, vueButtonProps };
5424
+ export { ARROW_KEY_TYPES, AVATAR_SIZES, BUTTON_ALIGNS, CHIP_SIZES, CHOICE_KEY_TYPES, CONTROL_FIELD_VARIANTS, CONTROL_LOADING_SPINNER_SIZES, CONTROL_SIZES, KEYBORD_EVENT_TYPES, PAGINATION_ALIGNS, VApp, VAvatar, VBreadcrumbs, VBusyImage, VButton, VButtonGroup, VCard, VCardActions, VCardContent, VCheckbox, VCheckboxGroup, VChip, VContentSwitcher, VDataTable, VDrawerLayout, VForm, VFormControl, VGridContainer, VGridItem, VHero, VIcon, VListTile, VNavigation, VNavigationItem, VNumberField, VOption, VOptionGroup, VPagination, VPaper, VRadio, VRadioGroup, VSelect, VSkeltonLoaderBone, VSwitch, VSwitchGroup, VTabs, VTextField, VTextarea, VToolbar, VToolbarEdge, VToolbarMenu, VToolbarTitle, VUI_CHECKBOX_GROUP_SYMBOL, VUI_CHECKBOX_SYMBOL, VUI_FORM_SYMBOL, VUI_OPTION_SYMBOL, VUI_RADIO_GROUP_SYMBOL, VUI_RADIO_SYMBOL, VUI_SELECT_SYMBOL, VUI_SWITCH_GROUP_SYMBOL, VUI_SWITCH_SYMBOL, VUI_TEXTAREA_SYMBOL, VUI_TEXT_FIELD_SYMBOL, VUI_WYSIWYG_EDITOR_SYMBOL, VWysiwygEditor, VuiColorProviderInjectionKey, VuiControlFieldInjectionKey, VuiControlInjectionKey, VuiInjectionKey, VuiPlugin, VuiService, WysiwygBulletListTool, WysiwygColorExtension, WysiwygEditorInitializeContext, WysiwygFormatBoldTool, WysiwygFormatItalicTool, WysiwygFormatUnderlineTool, WysiwygHistoryTool, WysiwygLinkTool, WysiwygLinter, WysiwygLinterBadWords, WysiwygLinterHeadingLevel, WysiwygLinterPlugin, WysiwygLinterPunctuation, WysiwygOrderedListTool, configureDataTableDefaults, createAvatarProps, createCardProps, createChipProps, createControlFieldProviderProps, createControlProps, createElevationProps, createListTileProps, createNavigationItemProps, createNavigationProps, createPaperBaseProps, createPaperProps, createRequiredChipRenderer, createVFormProps, createWysiwygColorTool, createWysiwygExtension, defineFormSelectorComponent, iconProps, installVuiPlugin, listTileEmits, mergeVuiPluginOptions, mergeVuiServiceIconSettings, mergeVuiServiceOptions, mergeVuiServiceUISettings, paginationProps, rawIconProp, renderNavigationItemInput, resolveNavigationItemInput, resolveRawIconProp, resolveRawWysiwygEditorTools, resolveRawWysiwygExtensions, splitAttrs, useControl, useControlField, useElevation, useVui, useVuiColorProvider, vueButtonProps };