@fastkit/vui 0.6.30 → 0.6.31

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.
@@ -1,14 +1,14 @@
1
1
  import { createPropsOptions, createFormControlSettings, defineSlotsProps, useFormControl, renderSlotOrEmpty, createFormSelectorSettings, createFormControlProps, useFormSelectorControl, createFormSelectorItemSettings, useFormSelectorItemControl, createFormSelectorItemGroupProps, useFormSelectorItemGroupControl, resolveVNodeChildOrSlots, useParentFormNode, VMenu, createTextInputSettings, useTextInputControl, createTextareaSettings, useTextareaControl, createFormSettings, useForm, getDocumentScroller, useVScrollerRef, VScroller, useInjectTheme, VStackRoot, VueColorSchemePlugin, installVueStackPlugin } from '@fastkit/vue-kit';
2
2
  export * from '@fastkit/vue-kit';
3
3
  export { VDialog, VMenu, VSnackbar } from '@fastkit/vue-kit';
4
- import { createPropsOptions as createPropsOptions$1, defineSlotsProps as defineSlotsProps$1, renderSlotOrEmpty as renderSlotOrEmpty$1, navigationableProps, navigationableEmits, useNavigationable, rawNumberPropType, resolveNumberish, resizeDirectiveArgument, VExpandTransition, LocationService } from '@fastkit/vue-utils';
4
+ import { useRouter, RouterLink, useLink, useRoute } from 'vue-router';
5
+ import { createPropsOptions as createPropsOptions$1, defineSlotsProps as defineSlotsProps$1, renderSlotOrEmpty as renderSlotOrEmpty$1, navigationableInheritProps, VLink, rawNumberPropType, resolveNumberish, resizeDirectiveArgument, VExpandTransition, LocationService, setDefaultRouterLink } from '@fastkit/vue-utils';
5
6
  import { inject, computed, provide, defineComponent, createVNode, mergeProps, ref, watch, withDirectives, createTextVNode, isVNode, Fragment, vShow, vModelSelect, onMounted, onBeforeUnmount, onBeforeUpdate, Transition } from 'vue';
6
7
  import { useScopeColorClass, colorSchemeProps, useColorClasses, toScopeColorClass } from '@fastkit/vue-color-scheme';
7
8
  import { VProgressCircular } from '@fastkit/vue-loading';
8
9
  export * from '@fastkit/vue-loading';
9
10
  export { ICON_NAMES } from '@fastkit/icon-font';
10
11
  import { isPromise } from '@fastkit/helpers';
11
- import { useRouter, RouterLink, useLink, useRoute } from 'vue-router';
12
12
  import { VAppContainer, VAppLayoutControl } from '@fastkit/vue-app-layout';
13
13
  import { getDocumentScroller as getDocumentScroller$1 } from '@fastkit/vue-scroller';
14
14
 
@@ -434,7 +434,7 @@ function resolveRawVButtonIcon(raw, type = 'main') {
434
434
  }
435
435
 
436
436
  const vueButtonProps = createPropsOptions$1({ ...colorSchemeProps(),
437
- ...navigationableProps,
437
+ ...navigationableInheritProps,
438
438
  spacer: [Boolean, String],
439
439
  loading: Boolean,
440
440
  rounded: Boolean,
@@ -450,9 +450,8 @@ const LOADING_SIZE_MAP = {
450
450
  };
451
451
  const VButton = defineComponent({
452
452
  name: 'VButton',
453
+ inheritAttrs: false,
453
454
  props: vueButtonProps,
454
- emits: { ...navigationableEmits
455
- },
456
455
 
457
456
  setup(props, ctx) {
458
457
  const vui = useVui();
@@ -478,48 +477,25 @@ const VButton = defineComponent({
478
477
  variant: () => props.variant || (icon.value ? vui.setting('plainVariant') : defaults.variant)
479
478
  });
480
479
  const isPlain = computed(() => color.variant.value.value === vui.setting('plainVariant') && color.color.value.value === defaults.color);
481
- const navigationable = useNavigationable(props);
482
- const isLoading = computed(() => props.loading);
483
- const isDisabled = computed(() => props.disabled);
480
+ const isLoading = computed(() => props.loading); // const isDisabled = computed(() => props.disabled);
481
+
484
482
  const isRounded = computed(() => props.rounded || !!icon.value);
485
483
  const spacer = computed(() => {
486
484
  const _spacer = props.spacer;
487
485
  if (!_spacer) return;
488
486
  return _spacer === true ? 'left' : _spacer;
489
487
  });
490
- const classes = computed(() => [color.colorClasses.value, navigationable.value.classes, spacer.value ? `v-button--spacer-${spacer.value}` : undefined, `v-button--${control.size.value}`, {
488
+ const classes = computed(() => [color.colorClasses.value, // navigationable.value.classes,
489
+ spacer.value ? `v-button--spacer-${spacer.value}` : undefined, `v-button--${control.size.value}`, {
491
490
  'v-button--loading': isLoading.value,
492
491
  'v-button--icon': !!icon.value,
493
492
  'v-button--rounded': isRounded.value,
494
493
  'v-button--plain': isPlain.value
495
494
  }]);
496
495
  return () => {
497
- const {
498
- Tag,
499
- attrs
500
- } = navigationable.value;
501
- const children = renderSlotOrEmpty$1(ctx.slots, 'default');
502
- const _attrs = { ...attrs
503
- };
504
-
505
- if (isDisabled.value) {
506
- _attrs.disabled = true;
507
- }
508
-
509
- return createVNode(Tag, mergeProps({
496
+ const children = renderSlotOrEmpty$1(ctx.slots);
497
+ return createVNode(VLink, mergeProps(ctx.attrs, {
510
498
  "class": ['v-button', classes.value]
511
- }, _attrs, {
512
- "onClick": ev => {
513
- if (isDisabled.value || isLoading.value) {
514
- ev.preventDefault();
515
-
516
- if (isDisabled.value) {
517
- return;
518
- }
519
- }
520
-
521
- ctx.emit('click', ev);
522
- }
523
499
  }), {
524
500
  default: () => [createVNode("span", {
525
501
  "class": "v-button__content"
@@ -534,7 +510,7 @@ const VButton = defineComponent({
534
510
 
535
511
  });
536
512
 
537
- function _isSlot$b(s) {
513
+ function _isSlot$c(s) {
538
514
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
539
515
  }
540
516
 
@@ -782,7 +758,7 @@ const VPagination = defineComponent({
782
758
  "class": classes,
783
759
  "to": to,
784
760
  "key": key
785
- }, _isSlot$b(children) ? children : {
761
+ }, _isSlot$c(children) ? children : {
786
762
  default: () => [children]
787
763
  });
788
764
  } else {
@@ -829,11 +805,11 @@ const VPagination = defineComponent({
829
805
 
830
806
  function createListTileProps() {
831
807
  const icon = rawIconProp();
832
- return { ...navigationableProps,
808
+ return { ...navigationableInheritProps,
833
809
  ...createPropsOptions$1({
834
810
  startIcon: icon,
835
811
  endIcon: icon,
836
- fallbackTag: {
812
+ linkFallbackTag: {
837
813
  type: String,
838
814
  default: 'div'
839
815
  },
@@ -843,11 +819,12 @@ function createListTileProps() {
843
819
  })
844
820
  };
845
821
  }
846
- const listTileEmits = { ...navigationableEmits,
822
+ const listTileEmits = {
847
823
  changeActive: isActive => true
848
824
  };
849
825
  const VListTile = defineComponent({
850
826
  name: 'VListTile',
827
+ inheritAttrs: false,
851
828
  props: createListTileProps(),
852
829
  emits: { ...listTileEmits
853
830
  },
@@ -863,7 +840,6 @@ const VListTile = defineComponent({
863
840
  return icon;
864
841
  });
865
842
  const endIcon = computed(() => resolveRawIconProp(false, props.endIcon));
866
- const navigationable = useNavigationable(props, () => props.fallbackTag, ctx);
867
843
  const hasTo = computed(() => !!props.to);
868
844
  const link = useLink({
869
845
  to: props.to || ''
@@ -876,10 +852,7 @@ const VListTile = defineComponent({
876
852
  const classes = computed(() => {
877
853
  const _color = color.value;
878
854
  const hasColor = !!_color.value;
879
- const _navigationable = navigationable.value;
880
- const clickable = _navigationable.clickable;
881
- return [color.value.className, _navigationable.classes, {
882
- 'v-list-tile--clickable': clickable,
855
+ return [color.value.className, {
883
856
  'v-list-tile--plain': !hasColor,
884
857
  'v-list-tile--has-color': hasColor,
885
858
  'v-list-tile--active': isActive.value
@@ -893,16 +866,9 @@ const VListTile = defineComponent({
893
866
  return () => {
894
867
  const _startIcon = startIcon.value;
895
868
  const _endIcon = endIcon.value;
896
- const {
897
- Tag,
898
- attrs
899
- } = navigationable.value;
900
- return createVNode(Tag, mergeProps({
901
- "class": ['v-list-tile', classes.value]
902
- }, attrs, {
903
- "onClick": ev => {
904
- ctx.emit('click', ev);
905
- }
869
+ return createVNode(VLink, mergeProps(ctx.attrs, {
870
+ "class": ['v-list-tile', classes.value],
871
+ "clickableClassName": "v-list-tile--clickable"
906
872
  }), {
907
873
  default: () => [_startIcon && createVNode("span", {
908
874
  "class": "v-list-tile__icon v-list-tile__icon--start"
@@ -947,7 +913,7 @@ const VDrawerLayout = defineComponent({
947
913
 
948
914
  });
949
915
 
950
- function _isSlot$a(s) {
916
+ function _isSlot$b(s) {
951
917
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
952
918
  }
953
919
 
@@ -982,7 +948,7 @@ const VHero = defineComponent({
982
948
  }, {
983
949
  default: () => [createVNode(HTagName, {
984
950
  "class": "v-hero__title"
985
- }, _isSlot$a(_slot = renderSlotOrEmpty$1(ctx.slots, 'default')) ? _slot : {
951
+ }, _isSlot$b(_slot = renderSlotOrEmpty$1(ctx.slots, 'default')) ? _slot : {
986
952
  default: () => [_slot]
987
953
  })]
988
954
  })]
@@ -992,7 +958,7 @@ const VHero = defineComponent({
992
958
 
993
959
  });
994
960
 
995
- function _isSlot$9(s) {
961
+ function _isSlot$a(s) {
996
962
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
997
963
  }
998
964
 
@@ -1023,7 +989,7 @@ function renderNavigationItemInput(input, extraProps) {
1023
989
  } = resolveNavigationItemInput(input);
1024
990
  return createVNode(VNavigationItem, { ...props,
1025
991
  ...extraProps
1026
- }, _isSlot$9(label) ? label : {
992
+ }, _isSlot$a(label) ? label : {
1027
993
  default: () => [label]
1028
994
  });
1029
995
  }
@@ -1132,9 +1098,8 @@ const VNavigationItem = defineComponent({
1132
1098
  const onClick = ev => {
1133
1099
  if (!to.value) {
1134
1100
  toggle();
1135
- }
1101
+ } // ctx.emit('click', ev);
1136
1102
 
1137
- ctx.emit('click', ev);
1138
1103
  };
1139
1104
 
1140
1105
  const onChangeActive = isActive => {
@@ -1161,13 +1126,13 @@ const VNavigationItem = defineComponent({
1161
1126
 
1162
1127
  const _children = children.value;
1163
1128
  const fallbackTag = _children ? 'button' : undefined;
1164
- return createVNode(Fragment, null, [createVNode(VListTile, mergeProps(_props.value, {
1129
+ return createVNode(Fragment, null, [createVNode(VListTile, mergeProps(ctx.attrs, _props.value, {
1165
1130
  "fallbackTag": fallbackTag,
1166
1131
  "endIcon": _props.value.endIcon,
1167
1132
  "class": ['v-navigation-item', classes.value],
1168
1133
  "onClick": onClick,
1169
1134
  "onChangeActive": onChangeActive
1170
- }), _isSlot$9(_slot = renderSlotOrEmpty$1(ctx.slots, 'default')) ? _slot : {
1135
+ }), _isSlot$a(_slot = renderSlotOrEmpty$1(ctx.slots, 'default')) ? _slot : {
1171
1136
  default: () => [_slot]
1172
1137
  }), _children && createVNode(VExpandTransition, null, {
1173
1138
  default: () => [withDirectives(createVNode("div", {
@@ -1315,7 +1280,7 @@ const VCheckbox = defineComponent({
1315
1280
 
1316
1281
  });
1317
1282
 
1318
- function _isSlot$8(s) {
1283
+ function _isSlot$9(s) {
1319
1284
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
1320
1285
  }
1321
1286
 
@@ -1327,7 +1292,7 @@ const VCheckboxGroup = defineFormSelectorComponent({
1327
1292
  itemRenderer: ({
1328
1293
  attrs,
1329
1294
  slots
1330
- }) => createVNode(VCheckbox, attrs, _isSlot$8(slots) ? slots : {
1295
+ }) => createVNode(VCheckbox, attrs, _isSlot$9(slots) ? slots : {
1331
1296
  default: () => [slots]
1332
1297
  })
1333
1298
  });
@@ -1379,7 +1344,7 @@ const VRadio = defineComponent({
1379
1344
 
1380
1345
  });
1381
1346
 
1382
- function _isSlot$7(s) {
1347
+ function _isSlot$8(s) {
1383
1348
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
1384
1349
  }
1385
1350
 
@@ -1390,7 +1355,7 @@ const VRadioGroup = defineFormSelectorComponent({
1390
1355
  itemRenderer: ({
1391
1356
  attrs,
1392
1357
  slots
1393
- }) => createVNode(VRadio, attrs, _isSlot$7(slots) ? slots : {
1358
+ }) => createVNode(VRadio, attrs, _isSlot$8(slots) ? slots : {
1394
1359
  default: () => [slots]
1395
1360
  })
1396
1361
  });
@@ -1452,7 +1417,7 @@ const VSwitch = defineComponent({
1452
1417
 
1453
1418
  });
1454
1419
 
1455
- function _isSlot$6(s) {
1420
+ function _isSlot$7(s) {
1456
1421
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
1457
1422
  }
1458
1423
 
@@ -1464,7 +1429,7 @@ const VSwitchGroup = defineFormSelectorComponent({
1464
1429
  itemRenderer: ({
1465
1430
  attrs,
1466
1431
  slots
1467
- }) => createVNode(VSwitch, attrs, _isSlot$6(slots) ? slots : {
1432
+ }) => createVNode(VSwitch, attrs, _isSlot$7(slots) ? slots : {
1468
1433
  default: () => [slots]
1469
1434
  })
1470
1435
  });
@@ -2023,7 +1988,7 @@ const VForm = defineComponent({
2023
1988
 
2024
1989
  });
2025
1990
 
2026
- function _isSlot$5(s) {
1991
+ function _isSlot$6(s) {
2027
1992
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
2028
1993
  }
2029
1994
 
@@ -2072,7 +2037,7 @@ const VTab = defineComponent({
2072
2037
  "class": classes,
2073
2038
  "to": to,
2074
2039
  "replace": replace
2075
- }, _isSlot$5(children) ? children : {
2040
+ }, _isSlot$6(children) ? children : {
2076
2041
  default: () => [children]
2077
2042
  });
2078
2043
  } else {
@@ -2090,7 +2055,7 @@ const VTab = defineComponent({
2090
2055
 
2091
2056
  });
2092
2057
 
2093
- function _isSlot$4(s) {
2058
+ function _isSlot$5(s) {
2094
2059
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
2095
2060
  }
2096
2061
 
@@ -2345,7 +2310,7 @@ const VTabs = defineComponent({
2345
2310
  to(value);
2346
2311
  }
2347
2312
  }
2348
- }, _isSlot$4(children) ? children : {
2313
+ }, _isSlot$5(children) ? children : {
2349
2314
  default: () => [children]
2350
2315
  });
2351
2316
  });
@@ -2367,6 +2332,119 @@ const VTabs = defineComponent({
2367
2332
 
2368
2333
  });
2369
2334
 
2335
+ function _isSlot$4(s) {
2336
+ return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
2337
+ }
2338
+
2339
+ const VBreadcrumbs = defineComponent({
2340
+ name: 'VBreadcrumbs',
2341
+ props: {
2342
+ items: {
2343
+ type: Array,
2344
+ default: () => []
2345
+ },
2346
+ divider: [String, Function] // ...defineSlotsProps<{}>(),
2347
+
2348
+ },
2349
+
2350
+ setup(props, ctx) {
2351
+ const vui = useVui();
2352
+ const computedItemsRef = computed(() => {
2353
+ const items = props.items.map(rawItem => {
2354
+ return typeof rawItem === 'string' ? {
2355
+ text: rawItem
2356
+ } : rawItem;
2357
+ });
2358
+ return items.map(item => {
2359
+ const {
2360
+ to,
2361
+ text
2362
+ } = item;
2363
+ const {
2364
+ disabled = vui.location.match(to) || !vui.location.isAvairable(to)
2365
+ } = item;
2366
+ return { ...item,
2367
+ disabled,
2368
+ text: typeof text === 'function' ? text(vui) : text
2369
+ };
2370
+ });
2371
+ });
2372
+ const lengthRef = computed(() => computedItemsRef.value.length);
2373
+
2374
+ const defaultDividerSlot = () => {
2375
+ return [createVNode("i", {
2376
+ "class": "v-breadcrumbs__divider__icon"
2377
+ }, null)];
2378
+ };
2379
+
2380
+ return () => {
2381
+ if (lengthRef.value < 1) return;
2382
+ let dividerSlot;
2383
+ const propDivider = props.divider;
2384
+
2385
+ if (propDivider) {
2386
+ dividerSlot = typeof propDivider === 'function' ? propDivider : () => propDivider;
2387
+ } else {
2388
+ dividerSlot = defaultDividerSlot;
2389
+ }
2390
+
2391
+ const children = [];
2392
+ computedItemsRef.value.forEach((item, index) => {
2393
+ const {
2394
+ text,
2395
+ icon,
2396
+ disabled,
2397
+ to
2398
+ } = item;
2399
+
2400
+ if (index > 0) {
2401
+ const divider = dividerSlot(vui);
2402
+
2403
+ if (divider) {
2404
+ children.push(createVNode("li", {
2405
+ "class": "v-breadcrumbs__divider",
2406
+ "key": `divider-${index}`
2407
+ }, [divider]));
2408
+ }
2409
+ }
2410
+
2411
+ const myChildren = [];
2412
+
2413
+ if (icon) {
2414
+ const $icon = resolveRawIconProp(false, icon, {
2415
+ class: 'v-breadcrumbs__icon'
2416
+ });
2417
+
2418
+ if ($icon) {
2419
+ myChildren.push($icon);
2420
+ }
2421
+ }
2422
+
2423
+ if (text) myChildren.push(text);
2424
+ const itemChild = to ? createVNode(VLink, {
2425
+ "class": "v-breadcrumbs__link",
2426
+ "to": to,
2427
+ "exactActiveClass": "v-breadcrumbs__link--active"
2428
+ }, _isSlot$4(myChildren) ? myChildren : {
2429
+ default: () => [myChildren]
2430
+ }) : myChildren;
2431
+ children.push(createVNode("li", {
2432
+ "class": ['v-breadcrumbs__item', {
2433
+ 'v-breadcrumbs__item--disabled': disabled
2434
+ }],
2435
+ "key": `link-${index}`
2436
+ }, [itemChild]));
2437
+ });
2438
+ return createVNode("nav", {
2439
+ "class": "v-breadcrumbs"
2440
+ }, [createVNode("ul", {
2441
+ "class": "v-breadcrumbs__list"
2442
+ }, [children])]);
2443
+ };
2444
+ }
2445
+
2446
+ });
2447
+
2370
2448
  function _isSlot$3(s) {
2371
2449
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
2372
2450
  }
@@ -3273,6 +3351,7 @@ class VuiService {
3273
3351
  location;
3274
3352
  constructor(options) {
3275
3353
  this.options = options;
3354
+ this.configure();
3276
3355
  const { selectionSeparator = () => ', ', autoScrollToElementOffsetTop = DEFAULT_AUTO_SCROLL_TO_ELEMENT_OFFSET_TOP, textareaRows = DEFAULT_TEXTAREA_ROWS, requiredChip = () => '*', } = options;
3277
3356
  this.selectionSeparator = selectionSeparator;
3278
3357
  this.autoScrollToElementOffsetTop = autoScrollToElementOffsetTop;
@@ -3283,6 +3362,13 @@ class VuiService {
3283
3362
  router: this.router,
3284
3363
  });
3285
3364
  }
3365
+ configure(options) {
3366
+ options && Object.assign(this.options, options);
3367
+ setDefaultRouterLink(this.getRouterLink());
3368
+ }
3369
+ getRouterLink() {
3370
+ return this.options.RouterLink || RouterLink;
3371
+ }
3286
3372
  setting(key) {
3287
3373
  return this.options.uiSettings[key];
3288
3374
  }
@@ -3359,4 +3445,4 @@ function installVuiPlugin(app, opts) {
3359
3445
  return app.use(VuiPlugin, opts);
3360
3446
  }
3361
3447
 
3362
- export { CONTROL_FIELD_VARIANTS, CONTROL_SIZES, PAGINATION_ALIGNS, VApp, VButton, VCard, VCardActions, VCardContent, VCheckbox, VCheckboxGroup, VContentSwitcher, VDataTable, VDrawerLayout, VForm, VHero, VIcon, VListTile, VNavigation, VNavigationItem, VOption, VOptionGroup, VPagination, VPaper, VRadio, VRadioGroup, VSelect, 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, VuiColorProviderInjectionKey, VuiControlFieldInjectionKey, VuiControlInjectionKey, VuiInjectionKey, VuiPlugin, VuiService, configureDataTableDefaults, createCardProps, createControlFieldProviderProps, createControlProps, createElevationProps, createListTileProps, createNavigationItemProps, createPaperBaseProps, createPaperProps, defineFormSelectorComponent, iconProps, installVuiPlugin, listTileEmits, paginationProps, rawIconProp, renderNavigationItemInput, resolveNavigationItemInput, resolveRawIconProp, useControl, useControlField, useElevation, useVui, useVuiColorProvider, vueButtonProps };
3448
+ export { CONTROL_FIELD_VARIANTS, CONTROL_SIZES, PAGINATION_ALIGNS, VApp, VBreadcrumbs, VButton, VCard, VCardActions, VCardContent, VCheckbox, VCheckboxGroup, VContentSwitcher, VDataTable, VDrawerLayout, VForm, VHero, VIcon, VListTile, VNavigation, VNavigationItem, VOption, VOptionGroup, VPagination, VPaper, VRadio, VRadioGroup, VSelect, 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, VuiColorProviderInjectionKey, VuiControlFieldInjectionKey, VuiControlInjectionKey, VuiInjectionKey, VuiPlugin, VuiService, configureDataTableDefaults, createCardProps, createControlFieldProviderProps, createControlProps, createElevationProps, createListTileProps, createNavigationItemProps, createPaperBaseProps, createPaperProps, defineFormSelectorComponent, iconProps, installVuiPlugin, listTileEmits, paginationProps, rawIconProp, renderNavigationItemInput, resolveNavigationItemInput, resolveRawIconProp, useControl, useControlField, useElevation, useVui, useVuiColorProvider, vueButtonProps };