pukaad-ui-lib 1.333.0 → 1.334.1

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 (25) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/runtime/components/card/card-place-detail.vue +5 -4
  3. package/dist/runtime/components/card/card-place-search-row.d.vue.ts +20 -0
  4. package/dist/runtime/components/card/card-place-search-row.vue +47 -0
  5. package/dist/runtime/components/card/card-place-search-row.vue.d.ts +20 -0
  6. package/dist/runtime/components/image/image-cropper.d.vue.ts +2 -2
  7. package/dist/runtime/components/image/image-cropper.vue.d.ts +2 -2
  8. package/dist/runtime/components/ui/alert-dialog/AlertDialog.vue +1 -2
  9. package/dist/runtime/components/ui/calendar/Calendar.d.vue.ts +1 -1
  10. package/dist/runtime/components/ui/calendar/Calendar.vue.d.ts +1 -1
  11. package/dist/runtime/components/ui/checkbox/Checkbox.vue +2 -4
  12. package/dist/runtime/components/ui/command/CommandDialog.vue +0 -1
  13. package/dist/runtime/components/ui/dialog/Dialog.vue +1 -2
  14. package/dist/runtime/components/ui/dropdown-menu/DropdownMenuContent.vue +0 -1
  15. package/dist/runtime/components/ui/dropdown-menu/DropdownMenuSubContent.vue +0 -1
  16. package/dist/runtime/components/ui/popover/PopoverContent.vue +0 -2
  17. package/dist/runtime/components/ui/select/Select.vue +0 -1
  18. package/dist/runtime/components/ui/select/SelectContent.vue +0 -2
  19. package/dist/runtime/components/ui/separator/Separator.d.vue.ts +1 -1
  20. package/dist/runtime/components/ui/separator/Separator.vue.d.ts +1 -1
  21. package/dist/runtime/components/ui/sheet/Sheet.vue +1 -2
  22. package/dist/runtime/components/ui/tabs/Tabs.d.vue.ts +2 -2
  23. package/dist/runtime/components/ui/tabs/Tabs.vue.d.ts +2 -2
  24. package/dist/runtime/components/ui/tooltip/TooltipProvider.vue +1 -2
  25. package/package.json +5 -2
package/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "pukaad-ui-lib",
3
3
  "configKey": "pukaadUI",
4
- "version": "1.333.0",
4
+ "version": "1.334.1",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "1.0.2",
7
7
  "unbuild": "3.6.1"
@@ -92,17 +92,18 @@ const DAY_NAMES = [
92
92
  const props = defineProps({
93
93
  item: { type: Object, required: false, default: () => ({}) }
94
94
  });
95
+ const toArray = (value) => Array.isArray(value) ? value : [];
95
96
  const categoryText = computed(
96
- () => (props.item.categories ?? []).map((c) => c.category_name).join(", ")
97
+ () => toArray(props.item.categories).filter((c) => c?.category_name).map((c) => c.category_name).join(", ")
97
98
  );
98
99
  const businessHours = computed(
99
- () => (props.item.opening_hours ?? []).map((h) => ({
100
+ () => toArray(props.item.opening_hours).filter((h) => !!h).map((h) => ({
100
101
  day: DAY_NAMES[h.day] ?? "",
101
- time_range: !h.isOpen ? "\u0E2B\u0E22\u0E38\u0E14\u0E17\u0E33\u0E01\u0E32\u0E23" : h.isAllDay ? "\u0E40\u0E1B\u0E34\u0E14\u0E15\u0E25\u0E2D\u0E14 24 \u0E0A\u0E21." : (h.timeSlots ?? []).map((t) => `${t.start} - ${t.end}`).join(", ") || "\u0E40\u0E1B\u0E34\u0E14"
102
+ time_range: !h.isOpen ? "\u0E2B\u0E22\u0E38\u0E14\u0E17\u0E33\u0E01\u0E32\u0E23" : h.isAllDay ? "\u0E40\u0E1B\u0E34\u0E14\u0E15\u0E25\u0E2D\u0E14 24 \u0E0A\u0E21." : toArray(h.timeSlots).map((t) => `${t.start} - ${t.end}`).join(", ") || "\u0E40\u0E1B\u0E34\u0E14"
102
103
  }))
103
104
  );
104
105
  const socialLinks = computed(
105
- () => (props.item.contact_channels ?? []).filter((ch) => ch.value).map((ch) => ({
106
+ () => toArray(props.item.contact_channels).filter((ch) => ch?.value).map((ch) => ({
106
107
  name: ch.channel_type ?? "link",
107
108
  link: ch.value
108
109
  }))
@@ -0,0 +1,20 @@
1
+ export interface PlaceSearchRowItem {
2
+ id: string;
3
+ business_name: string;
4
+ image_cover?: string;
5
+ rating?: number;
6
+ review_count?: number;
7
+ address?: {
8
+ full_address?: string;
9
+ } | null;
10
+ }
11
+ export interface CardPlaceSearchRowProps {
12
+ item: PlaceSearchRowItem;
13
+ }
14
+ declare const __VLS_export: import("vue").DefineComponent<CardPlaceSearchRowProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
+ select: (item: PlaceSearchRowItem) => any;
16
+ }, string, import("vue").PublicProps, Readonly<CardPlaceSearchRowProps> & Readonly<{
17
+ onSelect?: ((item: PlaceSearchRowItem) => any) | undefined;
18
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
19
+ declare const _default: typeof __VLS_export;
20
+ export default _default;
@@ -0,0 +1,47 @@
1
+ <template>
2
+ <div
3
+ class="flex items-center gap-[8px] px-[8px] py-[6px] rounded-md hover:bg-bright cursor-pointer"
4
+ @click="emit('select', props.item)"
5
+ >
6
+ <!-- thumbnail -->
7
+ <Image
8
+ v-if="props.item.image_cover"
9
+ :src="props.item.image_cover"
10
+ :width="71"
11
+ :height="40"
12
+ class="shrink-0 rounded-[4px] object-cover"
13
+ />
14
+ <div
15
+ v-else
16
+ class="w-[71px] h-[40px] bg-cloud shrink-0 rounded-[4px] flex items-center justify-center"
17
+ >
18
+ <Icon name="fa6-solid:map-location-dot" :size="20" class="text-gray" />
19
+ </div>
20
+
21
+ <!-- content -->
22
+ <div class="flex flex-col gap-[4px] min-w-0 flex-1">
23
+ <div class="font-body-medium text-black truncate">
24
+ {{ props.item.business_name }}
25
+ </div>
26
+ <div class="flex items-center gap-[4px] min-w-0">
27
+ <InputRating :model-value="props.item.rating ?? 0" readonly :size="14" />
28
+ <template v-if="props.item.review_count != null">
29
+ <span class="font-body-small text-gray shrink-0">
30
+ {{ $convert.convertNumber(props.item.review_count) }}
31
+ </span>
32
+ <span class="font-body-small text-gray shrink-0">•</span>
33
+ </template>
34
+ <span class="font-body-small text-gray truncate">
35
+ {{ props.item.address?.full_address }}
36
+ </span>
37
+ </div>
38
+ </div>
39
+ </div>
40
+ </template>
41
+
42
+ <script setup>
43
+ const props = defineProps({
44
+ item: { type: Object, required: true }
45
+ });
46
+ const emit = defineEmits(["select"]);
47
+ </script>
@@ -0,0 +1,20 @@
1
+ export interface PlaceSearchRowItem {
2
+ id: string;
3
+ business_name: string;
4
+ image_cover?: string;
5
+ rating?: number;
6
+ review_count?: number;
7
+ address?: {
8
+ full_address?: string;
9
+ } | null;
10
+ }
11
+ export interface CardPlaceSearchRowProps {
12
+ item: PlaceSearchRowItem;
13
+ }
14
+ declare const __VLS_export: import("vue").DefineComponent<CardPlaceSearchRowProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
+ select: (item: PlaceSearchRowItem) => any;
16
+ }, string, import("vue").PublicProps, Readonly<CardPlaceSearchRowProps> & Readonly<{
17
+ onSelect?: ((item: PlaceSearchRowItem) => any) | undefined;
18
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
19
+ declare const _default: typeof __VLS_export;
20
+ export default _default;
@@ -64,15 +64,15 @@ declare const __VLS_export: import("vue").DefineComponent<ImageCropperProps, {
64
64
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ImageCropperProps> & Readonly<{}>, {
65
65
  src: string;
66
66
  center: boolean;
67
+ background: boolean;
68
+ modal: boolean;
67
69
  responsive: boolean;
68
70
  restore: boolean;
69
71
  checkCrossOrigin: boolean;
70
72
  checkOrientation: boolean;
71
73
  crossorigin: "" | "anonymous" | "use-credentials";
72
- modal: boolean;
73
74
  guides: boolean;
74
75
  highlight: boolean;
75
- background: boolean;
76
76
  autoCrop: boolean;
77
77
  movable: boolean;
78
78
  rotatable: boolean;
@@ -64,15 +64,15 @@ declare const __VLS_export: import("vue").DefineComponent<ImageCropperProps, {
64
64
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ImageCropperProps> & Readonly<{}>, {
65
65
  src: string;
66
66
  center: boolean;
67
+ background: boolean;
68
+ modal: boolean;
67
69
  responsive: boolean;
68
70
  restore: boolean;
69
71
  checkCrossOrigin: boolean;
70
72
  checkOrientation: boolean;
71
73
  crossorigin: "" | "anonymous" | "use-credentials";
72
- modal: boolean;
73
74
  guides: boolean;
74
75
  highlight: boolean;
75
- background: boolean;
76
76
  autoCrop: boolean;
77
77
  movable: boolean;
78
78
  rotatable: boolean;
@@ -2,8 +2,7 @@
2
2
  import { AlertDialogRoot, useForwardPropsEmits } from "reka-ui";
3
3
  const props = defineProps({
4
4
  open: { type: Boolean, required: false },
5
- defaultOpen: { type: Boolean, required: false },
6
- unmountOnHide: { type: Boolean, required: false }
5
+ defaultOpen: { type: Boolean, required: false }
7
6
  });
8
7
  const emits = defineEmits(["update:open"]);
9
8
  const forwarded = useForwardPropsEmits(props, emits);
@@ -30,7 +30,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
30
30
  "onUpdate:modelValue"?: ((date: DateValue | undefined) => any) | undefined;
31
31
  "onUpdate:placeholder"?: ((date: DateValue) => any) | undefined;
32
32
  }>, {
33
- modelValue: DateValue | DateValue[] | null;
33
+ modelValue: DateValue | DateValue[];
34
34
  layout: "month-and-year" | "month-only" | "year-only";
35
35
  reverseYears: boolean;
36
36
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -30,7 +30,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
30
30
  "onUpdate:modelValue"?: ((date: DateValue | undefined) => any) | undefined;
31
31
  "onUpdate:placeholder"?: ((date: DateValue) => any) | undefined;
32
32
  }>, {
33
- modelValue: DateValue | DateValue[] | null;
33
+ modelValue: DateValue | DateValue[];
34
34
  layout: "month-and-year" | "month-only" | "year-only";
35
35
  reverseYears: boolean;
36
36
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -3,13 +3,11 @@ import { reactiveOmit } from "@vueuse/core";
3
3
  import { CheckboxIndicator, CheckboxRoot, useForwardPropsEmits } from "reka-ui";
4
4
  import { cn } from "#pukaad-ui/runtime/plugins/shadcn";
5
5
  const props = defineProps({
6
- defaultValue: { type: null, required: false },
7
- modelValue: { type: null, required: false },
6
+ defaultValue: { type: [Boolean, String], required: false },
7
+ modelValue: { type: [Boolean, String, null], required: false },
8
8
  disabled: { type: Boolean, required: false },
9
9
  value: { type: null, required: false },
10
10
  id: { type: String, required: false },
11
- trueValue: { type: null, required: false },
12
- falseValue: { type: null, required: false },
13
11
  asChild: { type: Boolean, required: false },
14
12
  as: { type: null, required: false },
15
13
  name: { type: String, required: false },
@@ -6,7 +6,6 @@ const props = defineProps({
6
6
  open: { type: Boolean, required: false },
7
7
  defaultOpen: { type: Boolean, required: false },
8
8
  modal: { type: Boolean, required: false },
9
- unmountOnHide: { type: Boolean, required: false },
10
9
  title: { type: String, required: false, default: "Command Palette" },
11
10
  description: { type: String, required: false, default: "Search for a command to run..." }
12
11
  });
@@ -3,8 +3,7 @@ import { DialogRoot, useForwardPropsEmits } from "reka-ui";
3
3
  const props = defineProps({
4
4
  open: { type: Boolean, required: false },
5
5
  defaultOpen: { type: Boolean, required: false },
6
- modal: { type: Boolean, required: false },
7
- unmountOnHide: { type: Boolean, required: false }
6
+ modal: { type: Boolean, required: false }
8
7
  });
9
8
  const emits = defineEmits(["update:open"]);
10
9
  const forwarded = useForwardPropsEmits(props, emits);
@@ -11,7 +11,6 @@ const props = defineProps({
11
11
  preventOpenAutoFocus: { type: Boolean, required: false, default: false },
12
12
  forceMount: { type: Boolean, required: false },
13
13
  loop: { type: Boolean, required: false },
14
- memoDependencies: { type: Array, required: false },
15
14
  side: { type: null, required: false },
16
15
  sideOffset: { type: Number, required: false, default: 4 },
17
16
  sideFlip: { type: Boolean, required: false },
@@ -8,7 +8,6 @@ import { cn } from "#pukaad-ui/runtime/plugins/shadcn";
8
8
  const props = defineProps({
9
9
  forceMount: { type: Boolean, required: false },
10
10
  loop: { type: Boolean, required: false },
11
- memoDependencies: { type: Array, required: false },
12
11
  sideOffset: { type: Number, required: false },
13
12
  sideFlip: { type: Boolean, required: false },
14
13
  alignOffset: { type: Number, required: false },
@@ -7,7 +7,6 @@ defineOptions({
7
7
  });
8
8
  const props = defineProps({
9
9
  forceMount: { type: Boolean, required: false },
10
- memoDependencies: { type: Array, required: false },
11
10
  side: { type: null, required: false },
12
11
  sideOffset: { type: Number, required: false, default: 4 },
13
12
  sideFlip: { type: Boolean, required: false },
@@ -26,7 +25,6 @@ const props = defineProps({
26
25
  disableUpdateOnLayoutShift: { type: Boolean, required: false },
27
26
  prioritizePosition: { type: Boolean, required: false },
28
27
  reference: { type: null, required: false },
29
- dir: { type: String, required: false },
30
28
  asChild: { type: Boolean, required: false },
31
29
  as: { type: null, required: false },
32
30
  disableOutsidePointerEvents: { type: Boolean, required: false },
@@ -5,7 +5,6 @@ const props = defineProps({
5
5
  defaultOpen: { type: Boolean, required: false },
6
6
  defaultValue: { type: null, required: false },
7
7
  modelValue: { type: null, required: false },
8
- nullableValue: { type: String, required: false },
9
8
  by: { type: [String, Function], required: false },
10
9
  dir: { type: String, required: false },
11
10
  multiple: { type: Boolean, required: false },
@@ -15,7 +15,6 @@ const props = defineProps({
15
15
  forceMount: { type: Boolean, required: false },
16
16
  position: { type: String, required: false, default: "popper" },
17
17
  bodyLock: { type: Boolean, required: false },
18
- memoDependencies: { type: Array, required: false },
19
18
  side: { type: null, required: false },
20
19
  sideOffset: { type: Number, required: false },
21
20
  sideFlip: { type: Boolean, required: false },
@@ -34,7 +33,6 @@ const props = defineProps({
34
33
  disableUpdateOnLayoutShift: { type: Boolean, required: false },
35
34
  prioritizePosition: { type: Boolean, required: false },
36
35
  reference: { type: null, required: false },
37
- dir: { type: String, required: false },
38
36
  asChild: { type: Boolean, required: false },
39
37
  as: { type: null, required: false },
40
38
  disableOutsidePointerEvents: { type: Boolean, required: false },
@@ -4,7 +4,7 @@ type __VLS_Props = SeparatorProps & {
4
4
  class?: HTMLAttributes["class"];
5
5
  };
6
6
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
7
- orientation: import("reka-ui").DataOrientation;
7
+ orientation: "vertical" | "horizontal";
8
8
  decorative: boolean;
9
9
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
10
  declare const _default: typeof __VLS_export;
@@ -4,7 +4,7 @@ type __VLS_Props = SeparatorProps & {
4
4
  class?: HTMLAttributes["class"];
5
5
  };
6
6
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
7
- orientation: import("reka-ui").DataOrientation;
7
+ orientation: "vertical" | "horizontal";
8
8
  decorative: boolean;
9
9
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
10
  declare const _default: typeof __VLS_export;
@@ -3,8 +3,7 @@ import { DialogRoot, useForwardPropsEmits } from "reka-ui";
3
3
  const props = defineProps({
4
4
  open: { type: Boolean, required: false },
5
5
  defaultOpen: { type: Boolean, required: false },
6
- modal: { type: Boolean, required: false },
7
- unmountOnHide: { type: Boolean, required: false }
6
+ modal: { type: Boolean, required: false }
8
7
  });
9
8
  const emits = defineEmits(["update:open"]);
10
9
  const forwarded = useForwardPropsEmits(props, emits);
@@ -10,9 +10,9 @@ type __VLS_Slots = {} & {
10
10
  default?: (props: typeof __VLS_8) => any;
11
11
  };
12
12
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
13
- "update:modelValue": (payload: import("reka-ui").StringOrNumber) => any;
13
+ "update:modelValue": (payload: string | number) => any;
14
14
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
15
- "onUpdate:modelValue"?: ((payload: import("reka-ui").StringOrNumber) => any) | undefined;
15
+ "onUpdate:modelValue"?: ((payload: string | number) => any) | undefined;
16
16
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
17
17
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
18
18
  declare const _default: typeof __VLS_export;
@@ -10,9 +10,9 @@ type __VLS_Slots = {} & {
10
10
  default?: (props: typeof __VLS_8) => any;
11
11
  };
12
12
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
13
- "update:modelValue": (payload: import("reka-ui").StringOrNumber) => any;
13
+ "update:modelValue": (payload: string | number) => any;
14
14
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
15
- "onUpdate:modelValue"?: ((payload: import("reka-ui").StringOrNumber) => any) | undefined;
15
+ "onUpdate:modelValue"?: ((payload: string | number) => any) | undefined;
16
16
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
17
17
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
18
18
  declare const _default: typeof __VLS_export;
@@ -6,8 +6,7 @@ const props = defineProps({
6
6
  disableHoverableContent: { type: Boolean, required: false },
7
7
  disableClosingTrigger: { type: Boolean, required: false },
8
8
  disabled: { type: Boolean, required: false },
9
- ignoreNonKeyboardFocus: { type: Boolean, required: false },
10
- content: { type: Object, required: false }
9
+ ignoreNonKeyboardFocus: { type: Boolean, required: false }
11
10
  });
12
11
  </script>
13
12
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pukaad-ui-lib",
3
- "version": "1.333.0",
3
+ "version": "1.334.1",
4
4
  "description": "pukaad-ui for MeMSG",
5
5
  "repository": {
6
6
  "type": "git",
@@ -8,6 +8,9 @@
8
8
  },
9
9
  "license": "MIT",
10
10
  "type": "module",
11
+ "overrides": {
12
+ "reka-ui": "2.8.2"
13
+ },
11
14
  "exports": {
12
15
  ".": {
13
16
  "types": "./dist/types.d.mts",
@@ -56,7 +59,7 @@
56
59
  "leaflet": "^1.9.4",
57
60
  "nuxt-rating": "^0.1.6",
58
61
  "quill": "^2.0.3",
59
- "reka-ui": "^2.10.0",
62
+ "reka-ui": "2.8.2",
60
63
  "shadcn-nuxt": "^2.3.3",
61
64
  "tailwind-merge": "^3.4.0",
62
65
  "tailwind-variants": "^3.1.1",