@nexdom/uimed-vue 2.0.0-beta.35 → 2.0.0-beta.36

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.
Files changed (2) hide show
  1. package/dist/components.js +32 -3
  2. package/package.json +1 -1
@@ -3,6 +3,7 @@ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock
3
3
  import { pt } from "vuetify/locale";
4
4
  import { VApp, VAppBar, VAppBarNavIcon, VAppBarTitle, VAutocomplete, VAvatar, VBadge, VBtn, VCard, VCardActions, VCardText, VCheckboxBtn, VCol, VCombobox, VContainer, VDataIterator, VDatePicker, VDialog, VDivider, VEmptyState, VExpansionPanel, VExpansionPanelText, VExpansionPanelTitle, VExpansionPanels, VForm, VIcon, VIconBtn, VImg, VList, VListGroup, VListItem, VListItemAction, VListSubheader, VLocaleProvider, VMain, VMenu, VNavigationDrawer, VPagination, VProgressCircular, VProgressLinear, VRow, VSkeletonLoader, VSnackbarQueue, VTable, VTextField, VTimePicker } from "vuetify/components";
5
5
  import { formatDateTime, isEmail, isEmpty, isPhone, isUrl } from "@nexdom/shared/utils";
6
+ import { VHighlight } from "vuetify/labs/VHighlight";
6
7
  //#region src/composables/navigation/use-route-props.ts
7
8
  function useRouteProps(route) {
8
9
  return computed(() => routeToProps(route));
@@ -1343,6 +1344,8 @@ var autocomplete_field_default = /* @__PURE__ */ defineComponent({
1343
1344
  multiple: isMultiple.value
1344
1345
  }));
1345
1346
  const vuetifyComponent = computed(() => props.strict ? VAutocomplete : VCombobox);
1347
+ const search = ref("");
1348
+ const maskClass = computed(() => props.strict ? "v-autocomplete__mask" : "v-combobox__mask");
1346
1349
  const normalizedItems = computed(() => {
1347
1350
  return props.items.map((item) => {
1348
1351
  if (typeof item === "string") return {
@@ -1356,6 +1359,8 @@ var autocomplete_field_default = /* @__PURE__ */ defineComponent({
1356
1359
  return openBlock(), createBlock(resolveDynamicComponent(vuetifyComponent.value), {
1357
1360
  modelValue: modelValue.value,
1358
1361
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
1362
+ search: search.value,
1363
+ "onUpdate:search": _cache[1] || (_cache[1] = ($event) => search.value = $event),
1359
1364
  variant: unref(vuetifyVariant),
1360
1365
  items: normalizedItems.value,
1361
1366
  "data-testid": props.dataTestid,
@@ -1372,11 +1377,35 @@ var autocomplete_field_default = /* @__PURE__ */ defineComponent({
1372
1377
  rules: unref(rules),
1373
1378
  "menu-props": unref(autocompleteFieldMenuProps),
1374
1379
  chips: ""
1375
- }, {
1380
+ }, createSlots({
1376
1381
  loader: withCtx((loader) => [createVNode(field_loader_default, normalizeProps(guardReactiveProps(loader)), null, 16)]),
1377
- _: 1
1378
- }, 8, [
1382
+ _: 2
1383
+ }, [isMultiple.value ? {
1384
+ name: "item",
1385
+ fn: withCtx(({ props: itemProps }) => [createVNode(unref(VListItem), normalizeProps(guardReactiveProps(itemProps)), {
1386
+ prepend: withCtx(({ isSelected }) => [createVNode(unref(VCheckboxBtn), {
1387
+ "model-value": isSelected,
1388
+ ripple: false,
1389
+ inert: "",
1390
+ "aria-hidden": "true"
1391
+ }, null, 8, ["model-value"])]),
1392
+ title: withCtx(() => [createVNode(unref(VHighlight), {
1393
+ text: itemProps.title,
1394
+ query: search.value,
1395
+ "match-all": "",
1396
+ "ignore-case": "",
1397
+ "mark-class": maskClass.value
1398
+ }, null, 8, [
1399
+ "text",
1400
+ "query",
1401
+ "mark-class"
1402
+ ])]),
1403
+ _: 2
1404
+ }, 1040)]),
1405
+ key: "0"
1406
+ } : void 0]), 1064, [
1379
1407
  "modelValue",
1408
+ "search",
1380
1409
  "variant",
1381
1410
  "items",
1382
1411
  "data-testid",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nexdom/uimed-vue",
3
- "version": "2.0.0-beta.35",
3
+ "version": "2.0.0-beta.36",
4
4
  "description": "A ui framework for NEXDOM applications.",
5
5
  "keywords": [
6
6
  "lib",