@giddaa-housing/ui 3.4.0 → 3.6.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/css/components.css +13 -0
- package/css/generated/shared.css +1 -1
- package/dist/accordion.js +1 -1
- package/dist/activity-timeline.js +1 -1
- package/dist/alert.js +1 -1
- package/dist/auth-layout.js +1 -1
- package/dist/avatar.js +1 -1
- package/dist/badge.d.ts +5 -1
- package/dist/badge.js +20 -6
- package/dist/bar-chart.d.ts +1 -1
- package/dist/bar-chart.js +1 -1
- package/dist/breadcrumb.js +1 -1
- package/dist/bullet-chart.d.ts +1 -1
- package/dist/bullet-chart.js +1 -1
- package/dist/button-BS5KCibF.d.ts +33 -0
- package/dist/button-group.d.ts +1 -1
- package/dist/button-group.js +1 -1
- package/dist/button.d.ts +1 -1
- package/dist/button.js +50 -22
- package/dist/calendar.js +2 -2
- package/dist/call-card.js +1 -1
- package/dist/card.js +1 -1
- package/dist/carousel.d.ts +4 -2
- package/dist/carousel.js +13 -16
- package/dist/chart.d.ts +1 -1
- package/dist/chart.js +1 -1
- package/dist/chat.d.ts +1 -1
- package/dist/chat.js +1 -1
- package/dist/checkbox.d.ts +2 -2
- package/dist/checkbox.js +21 -7
- package/dist/collapsible.js +1 -1
- package/dist/combobox-CACVdp1R.js +430 -0
- package/dist/combobox.d.ts +9 -4
- package/dist/combobox.js +2 -309
- package/dist/cta.d.ts +1 -1
- package/dist/cta.js +1 -1
- package/dist/currency-selector.js +2 -2
- package/dist/data-table.d.ts +2 -2
- package/dist/data-table.js +1 -1
- package/dist/date-picker.d.ts +6 -5
- package/dist/date-picker.js +7 -17
- package/dist/details-card.js +1 -1
- package/dist/dialog.d.ts +3 -1
- package/dist/dialog.js +10 -6
- package/dist/dropdown-menu.d.ts +1 -1
- package/dist/dropdown-menu.js +1 -1
- package/dist/dropzone.js +1 -1
- package/dist/editorial-card.js +2 -4
- package/dist/empty-state.js +1 -1
- package/dist/field.d.ts +4 -1
- package/dist/field.js +29 -12
- package/dist/file-upload.js +1 -1
- package/dist/filter.js +1 -1
- package/dist/footer.d.ts +2 -2
- package/dist/footer.js +1 -1
- package/dist/funnel-chart.d.ts +1 -1
- package/dist/funnel-chart.js +1 -1
- package/dist/gallery-indicator.js +1 -1
- package/dist/heatmap-chart.d.ts +1 -1
- package/dist/icons-C9JXR5Xv.d.ts +111 -0
- package/dist/icons.d.ts +2 -93
- package/dist/icons.js +37 -1
- package/dist/image.d.ts +59 -0
- package/dist/image.js +53 -0
- package/dist/infinite-scroll.js +3 -29
- package/dist/infotip.js +1 -1
- package/dist/input-group.d.ts +6 -6
- package/dist/input-group.js +39 -14
- package/dist/input-otp.d.ts +2 -2
- package/dist/input-otp.js +32 -15
- package/dist/input-size-context-BMhves-J.d.ts +13 -0
- package/dist/input-size-context.d.ts +2 -2
- package/dist/input-size-context.js +9 -2
- package/dist/input.d.ts +20 -2
- package/dist/input.js +31 -12
- package/dist/item.js +1 -1
- package/dist/kpi-card.js +1 -1
- package/dist/label.js +1 -1
- package/dist/line-chart.d.ts +1 -1
- package/dist/line-chart.js +1 -1
- package/dist/list-item.js +1 -1
- package/dist/map-indicator.js +1 -1
- package/dist/mask-input.d.ts +1 -1
- package/dist/match.d.ts +5 -2
- package/dist/match.js +183 -27
- package/dist/media-gallery-hero.js +15 -10
- package/dist/media-player.js +5 -13
- package/dist/message.js +2 -12
- package/dist/mobile-sidebar.js +2 -1
- package/dist/multi-step-form.js +2 -2
- package/dist/number-input.d.ts +2 -2
- package/dist/number-input.js +3 -3
- package/dist/page-header.js +1 -1
- package/dist/pagination.d.ts +1 -1
- package/dist/pagination.js +1 -1
- package/dist/password-input.js +1 -1
- package/dist/phone-input.d.ts +2 -2
- package/dist/phone-input.js +16 -21
- package/dist/photo-gallery.js +6 -3
- package/dist/picker-BTXBrsl4.js +62 -0
- package/dist/picker-j3txxA5t.d.ts +14 -0
- package/dist/pie-chart.d.ts +1 -1
- package/dist/pie-chart.js +1 -1
- package/dist/popover-CNymD33m.d.ts +20 -0
- package/dist/popover.d.ts +1 -19
- package/dist/popover.js +1 -1
- package/dist/price-tag.d.ts +1 -1
- package/dist/price-tag.js +50 -22
- package/dist/progress.js +1 -1
- package/dist/property-listing-card.d.ts +68 -2
- package/dist/property-listing-card.js +115 -29
- package/dist/purchase-option-card.js +1 -1
- package/dist/radar-chart.d.ts +1 -1
- package/dist/radar-chart.js +1 -1
- package/dist/radio-group.d.ts +2 -2
- package/dist/radio-group.js +24 -10
- package/dist/review-block.js +1 -1
- package/dist/rich-text-editor.d.ts +1 -1
- package/dist/rich-text-editor.js +1 -1
- package/dist/scatter-chart.d.ts +1 -1
- package/dist/scatter-chart.js +1 -1
- package/dist/scroll-spy.d.ts +8 -2
- package/dist/scroll-spy.js +16 -16
- package/dist/search-input.js +1 -1
- package/dist/section-jumper.d.ts +31 -0
- package/dist/section-jumper.js +276 -0
- package/dist/select.d.ts +9 -4
- package/dist/select.js +113 -20
- package/dist/separator.js +1 -1
- package/dist/sheet.d.ts +3 -1
- package/dist/sheet.js +10 -6
- package/dist/sidebar.d.ts +2 -2
- package/dist/sidebar.js +4 -16
- package/dist/size-context-BVhHduLi.d.ts +33 -0
- package/dist/size-context.d.ts +2 -2
- package/dist/size-context.js +30 -1
- package/dist/skeleton.js +1 -1
- package/dist/slider.d.ts +5 -3
- package/dist/slider.js +26 -11
- package/dist/sonar.d.ts +1 -1
- package/dist/sonar.js +2 -2
- package/dist/sparkline.d.ts +1 -1
- package/dist/sparkline.js +1 -1
- package/dist/stepper.js +1 -1
- package/dist/styles.css +1622 -264
- package/dist/switch.d.ts +2 -2
- package/dist/switch.js +21 -7
- package/dist/table-card.js +1 -1
- package/dist/table.js +1 -1
- package/dist/tabs.d.ts +1 -1
- package/dist/tabs.js +1 -1
- package/dist/tag.d.ts +1 -1
- package/dist/tag.js +1 -1
- package/dist/testimonial-block.js +1 -1
- package/dist/textarea.d.ts +17 -1
- package/dist/textarea.js +24 -10
- package/dist/theme-switcher.js +1 -1
- package/dist/time-picker.d.ts +5 -4
- package/dist/time-picker.js +5 -7
- package/dist/toast.js +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/top-navbar.js +1 -1
- package/dist/tree-map.d.ts +1 -1
- package/dist/tree-map.js +1 -1
- package/dist/utils/cn.d.ts +5 -0
- package/dist/utils/cn.js +33 -0
- package/dist/utils/format.d.ts +45 -0
- package/dist/utils/format.js +70 -0
- package/dist/utils/phone.d.ts +98 -0
- package/dist/utils/phone.js +93 -0
- package/dist/utils/use-intersection.d.ts +9 -0
- package/dist/utils/use-intersection.js +29 -0
- package/dist/utils/use-is-mobile.d.ts +5 -0
- package/dist/utils/use-is-mobile.js +16 -0
- package/dist/utils/use-reduced-motion.d.ts +5 -0
- package/dist/{use-reduced-motion-BDvOK14x.js → utils/use-reduced-motion.js} +2 -2
- package/dist/utils/use-uncontrolled.d.ts +11 -0
- package/dist/{use-uncontrolled-CLfM1XbB.js → utils/use-uncontrolled.js} +2 -2
- package/dist/video-player-dialog.d.ts +12 -2
- package/dist/video-player-dialog.js +50 -9
- package/dist/waterfall-chart.d.ts +1 -1
- package/dist/waterfall-chart.js +1 -1
- package/package.json +13 -1
- package/dist/button-DW5OijoR.d.ts +0 -17
- package/dist/cn-BI_4DMBf.js +0 -23
- package/dist/input-CfoEJ8A6.d.ts +0 -12
- package/dist/input-size-context-C-SFx9sx.d.ts +0 -10
- package/dist/picker-xSTzeYhc.js +0 -50
- package/dist/size-context-BX6kAdVj.d.ts +0 -11
- package/dist/textarea-IS_D8pXf.d.ts +0 -11
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Play } from "./icons.js";
|
|
3
|
-
import {
|
|
3
|
+
import { cn } from "./utils/cn.js";
|
|
4
4
|
import { buttonVariants } from "./button.js";
|
|
5
5
|
import { Carousel, CarouselContent, CarouselItem, useCarousel } from "./carousel.js";
|
|
6
6
|
import { GalleryIndicator } from "./gallery-indicator.js";
|
|
7
|
+
import { Image } from "./image.js";
|
|
7
8
|
import { ReviewBlock } from "./review-block.js";
|
|
8
9
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
9
10
|
import { cva } from "class-variance-authority";
|
|
10
11
|
//#region src/media-gallery-hero.tsx
|
|
11
|
-
const mediaGalleryHeroVariants = cva("relative isolate h-[350px] w-full overflow-hidden rounded-
|
|
12
|
+
const mediaGalleryHeroVariants = cva("relative isolate h-[350px] w-full overflow-hidden rounded-none md:h-[380px] md:rounded-[40px] lg:h-[480px]");
|
|
12
13
|
const mediaGalleryImagesVariants = cva("absolute inset-0 z-0 hidden size-full min-h-0 min-w-0 md:grid", {
|
|
13
14
|
variants: { imageCount: {
|
|
14
15
|
1: "",
|
|
@@ -42,7 +43,8 @@ function getMediaKey(image) {
|
|
|
42
43
|
return image.id ?? image.src ?? image.alt ?? "placeholder";
|
|
43
44
|
}
|
|
44
45
|
function MediaGalleryTile({ className, image, index, isDesktopTile, onMediaClick, renderMedia }) {
|
|
45
|
-
const content = renderMedia?.(image, index) ?? (image.src ? /* @__PURE__ */ jsx(
|
|
46
|
+
const content = renderMedia?.(image, index) ?? (image.src ? /* @__PURE__ */ jsx(Image, {
|
|
47
|
+
slot: "media-gallery-hero-image",
|
|
46
48
|
alt: image.alt ?? "",
|
|
47
49
|
className: "size-full object-cover",
|
|
48
50
|
draggable: false,
|
|
@@ -51,7 +53,7 @@ function MediaGalleryTile({ className, image, index, isDesktopTile, onMediaClick
|
|
|
51
53
|
className: "text-gdt-sm font-medium text-fg-caption-placeholder",
|
|
52
54
|
children: "Media"
|
|
53
55
|
}));
|
|
54
|
-
const tileClassName = cn("relative flex size-full min-h-0 min-w-0 items-center justify-center overflow-hidden rounded-
|
|
56
|
+
const tileClassName = cn("relative flex size-full min-h-0 min-w-0 items-center justify-center overflow-hidden rounded-none bg-surface-raised md:rounded-[40px]", "[&>img]:size-full [&>img]:object-cover", isDesktopTile && "hidden md:flex", className);
|
|
55
57
|
if (!onMediaClick) return /* @__PURE__ */ jsx("div", {
|
|
56
58
|
className: tileClassName,
|
|
57
59
|
"data-slot": "media-gallery-tile",
|
|
@@ -69,6 +71,7 @@ function MediaGalleryTile({ className, image, index, isDesktopTile, onMediaClick
|
|
|
69
71
|
function MobileGalleryCounter({ total }) {
|
|
70
72
|
const { selectedIndex } = useCarousel();
|
|
71
73
|
return /* @__PURE__ */ jsx(GalleryIndicator, {
|
|
74
|
+
className: "h-[35px] lg:h-[45px]",
|
|
72
75
|
currentPhoto: selectedIndex + 1,
|
|
73
76
|
size: "sm",
|
|
74
77
|
totalPhotos: total
|
|
@@ -77,17 +80,16 @@ function MobileGalleryCounter({ total }) {
|
|
|
77
80
|
function MobileMediaCarousel({ currentMedia, images, mediaTotal, onMediaClick, renderMedia, showMobileIndicator }) {
|
|
78
81
|
const carouselImages = images.length > 0 ? images : [{}];
|
|
79
82
|
return /* @__PURE__ */ jsxs(Carousel, {
|
|
80
|
-
className: "absolute inset-0 z-0 block size-full rounded-
|
|
83
|
+
className: "absolute inset-0 z-0 block size-full rounded-none md:hidden",
|
|
81
84
|
imageSize: "full",
|
|
82
85
|
opts: {
|
|
83
86
|
align: "start",
|
|
84
|
-
loop: carouselImages.length > 1,
|
|
85
87
|
startIndex: Math.max(0, currentMedia - 1)
|
|
86
88
|
},
|
|
87
89
|
children: [/* @__PURE__ */ jsx(CarouselContent, { children: carouselImages.map((image, index) => /* @__PURE__ */ jsx(CarouselItem, {
|
|
88
90
|
className: "h-full",
|
|
89
91
|
children: /* @__PURE__ */ jsx(MediaGalleryTile, {
|
|
90
|
-
className: "rounded-
|
|
92
|
+
className: "rounded-none",
|
|
91
93
|
image,
|
|
92
94
|
index,
|
|
93
95
|
onMediaClick,
|
|
@@ -135,7 +137,8 @@ function MediaGalleryVideo({ alt = "", autoPlay, className, controls, label = "P
|
|
|
135
137
|
playsInline,
|
|
136
138
|
poster,
|
|
137
139
|
src
|
|
138
|
-
}) : poster ? /* @__PURE__ */ jsx(
|
|
140
|
+
}) : poster ? /* @__PURE__ */ jsx(Image, {
|
|
141
|
+
slot: "media-gallery-hero-poster",
|
|
139
142
|
alt,
|
|
140
143
|
className: "size-full object-cover",
|
|
141
144
|
draggable: false,
|
|
@@ -145,7 +148,7 @@ function MediaGalleryVideo({ alt = "", autoPlay, className, controls, label = "P
|
|
|
145
148
|
children: "Video"
|
|
146
149
|
}));
|
|
147
150
|
return /* @__PURE__ */ jsxs("div", {
|
|
148
|
-
className: cn("absolute inset-0 z-0 flex size-full items-center justify-center overflow-hidden rounded-
|
|
151
|
+
className: cn("absolute inset-0 z-0 flex size-full items-center justify-center overflow-hidden rounded-none bg-surface-raised md:rounded-[40px]", "[&>img]:size-full [&>img]:object-cover [&>video]:size-full [&>video]:object-cover", className),
|
|
149
152
|
"data-slot": "media-gallery-video",
|
|
150
153
|
...props,
|
|
151
154
|
children: [content, controls ? null : /* @__PURE__ */ jsx("button", {
|
|
@@ -153,7 +156,7 @@ function MediaGalleryVideo({ alt = "", autoPlay, className, controls, label = "P
|
|
|
153
156
|
className: cn(buttonVariants({
|
|
154
157
|
variant: "glass-overlay",
|
|
155
158
|
size: "icon-xl"
|
|
156
|
-
}), "absolute top-1/2 left-1/2 z-10 size-
|
|
159
|
+
}), "absolute top-1/2 left-1/2 z-10 size-[35px] -translate-x-1/2 -translate-y-1/2 active:not-aria-[haspopup]:-translate-y-1/2 lg:size-[45px] [&>svg]:size-4 lg:[&>svg]:size-5"),
|
|
157
160
|
"data-slot": "media-gallery-video-play",
|
|
158
161
|
onClick: onPlayClick,
|
|
159
162
|
type: "button",
|
|
@@ -184,6 +187,7 @@ function MediaGalleryIndicator({ "aria-label": ariaLabel, className, label, onCl
|
|
|
184
187
|
...props,
|
|
185
188
|
children: /* @__PURE__ */ jsx(GalleryIndicator, {
|
|
186
189
|
"aria-hidden": "true",
|
|
190
|
+
className: "h-[35px] lg:h-[45px]",
|
|
187
191
|
label: indicatorLabel,
|
|
188
192
|
size
|
|
189
193
|
})
|
|
@@ -192,6 +196,7 @@ function MediaGalleryIndicator({ "aria-label": ariaLabel, className, label, onCl
|
|
|
192
196
|
className: cn("absolute right-4 bottom-4 z-10 hidden md:block", className),
|
|
193
197
|
"data-slot": "media-gallery-indicator",
|
|
194
198
|
children: /* @__PURE__ */ jsx(GalleryIndicator, {
|
|
199
|
+
className: "h-[35px] lg:h-[45px]",
|
|
195
200
|
label: indicatorLabel,
|
|
196
201
|
size
|
|
197
202
|
})
|
package/dist/media-player.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Captions, CaptionsOff, Maximize, Minimize, Pause, PictureInPicture2, Play, RefreshCcw, Repeat2, RotateCcw, RotateCw, Settings, TriangleAlert, Volume1, Volume2, VolumeX } from "./icons.js";
|
|
3
|
-
import {
|
|
3
|
+
import { cn } from "./utils/cn.js";
|
|
4
4
|
import { DropdownMenu, DropdownMenuContent, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "./dropdown-menu.js";
|
|
5
|
+
import { formatDuration } from "./utils/format.js";
|
|
5
6
|
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "./tooltip.js";
|
|
6
7
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
7
8
|
import * as React from "react";
|
|
@@ -35,15 +36,6 @@ function setRef(ref, value) {
|
|
|
35
36
|
}
|
|
36
37
|
if (ref) ref.current = value;
|
|
37
38
|
}
|
|
38
|
-
function formatTime(value) {
|
|
39
|
-
if (!Number.isFinite(value)) return "0:00";
|
|
40
|
-
const safeValue = Math.max(0, Math.floor(value ?? 0));
|
|
41
|
-
const hours = Math.floor(safeValue / 3600);
|
|
42
|
-
const minutes = Math.floor(safeValue % 3600 / 60);
|
|
43
|
-
const seconds = safeValue % 60;
|
|
44
|
-
if (hours > 0) return `${hours}:${String(minutes).padStart(2, "0")}:${String(seconds).padStart(2, "0")}`;
|
|
45
|
-
return `${minutes}:${String(seconds).padStart(2, "0")}`;
|
|
46
|
-
}
|
|
47
39
|
function formatRate(value) {
|
|
48
40
|
if (!value || value === 1) return "1x";
|
|
49
41
|
return `${Number.parseFloat(value.toFixed(2))}x`;
|
|
@@ -590,7 +582,7 @@ function MediaPlayerTime({ className, showDuration = true, ...props }) {
|
|
|
590
582
|
"data-slot": "media-player-time",
|
|
591
583
|
className: cn("inline-flex shrink-0 items-center px-1 text-gdt-sm font-medium tabular-nums text-fg-on-brand/80", className),
|
|
592
584
|
...props,
|
|
593
|
-
children: showDuration ? `${
|
|
585
|
+
children: showDuration ? `${formatDuration(currentTime)} / ${formatDuration(duration)}` : formatDuration(currentTime)
|
|
594
586
|
});
|
|
595
587
|
}
|
|
596
588
|
function MediaPlayerSeek({ className, disabled, onValueChange, "aria-label": ariaLabel, step = 5, withTime = true, ...props }) {
|
|
@@ -734,7 +726,7 @@ function MediaPlayerSeek({ className, disabled, onValueChange, "aria-label": ari
|
|
|
734
726
|
}) : null,
|
|
735
727
|
/* @__PURE__ */ jsx("span", {
|
|
736
728
|
className: cn("px-2.5 py-1 text-gdt-xs font-bold tabular-nums", (previewImage || previewChapter?.text) && "pt-0.5 pb-1.5"),
|
|
737
|
-
children:
|
|
729
|
+
children: formatDuration(previewValue)
|
|
738
730
|
})
|
|
739
731
|
]
|
|
740
732
|
}), portalContainer ?? document.body), /* @__PURE__ */ jsxs(Slider.Control, {
|
|
@@ -782,7 +774,7 @@ function MediaPlayerSeek({ className, disabled, onValueChange, "aria-label": ari
|
|
|
782
774
|
]
|
|
783
775
|
}), /* @__PURE__ */ jsx(Slider.Thumb, {
|
|
784
776
|
getAriaLabel: () => ariaLabel ?? "Media timeline",
|
|
785
|
-
getAriaValueText: (_formatted, value) => `${
|
|
777
|
+
getAriaValueText: (_formatted, value) => `${formatDuration(value)} of ${formatDuration(max)}`,
|
|
786
778
|
className: cn("group/seek-thumb size-[14px] rounded-full outline-none", "transition-[inset-inline-start] duration-200 ease-linear data-[dragging]:transition-none"),
|
|
787
779
|
children: /* @__PURE__ */ jsx("span", { className: cn("block size-full rounded-full border-2 border-surface-brand bg-surface-overlay shadow-2", "transition-[scale] duration-[var(--duration-motion-press)] ease-gdt-out group-data-[dragging]/seek-thumb:scale-125 motion-reduce:group-data-[dragging]/seek-thumb:scale-100", "group-has-[:focus-visible]/seek-thumb:[filter:drop-shadow(0_0_0.25rem_var(--color-line-focus))]") })
|
|
788
780
|
})]
|
package/dist/message.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { CheckCheck } from "./icons.js";
|
|
3
|
-
import {
|
|
3
|
+
import { cn } from "./utils/cn.js";
|
|
4
|
+
import { formatTimestamp, toDateTimeAttribute } from "./utils/format.js";
|
|
4
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
6
|
import { mergeProps } from "@base-ui/react/merge-props";
|
|
6
7
|
import { useRender } from "@base-ui/react/use-render";
|
|
@@ -13,17 +14,6 @@ function useMessageContext() {
|
|
|
13
14
|
if (!context) throw new Error("Message parts must be rendered inside <Message>.");
|
|
14
15
|
return context;
|
|
15
16
|
}
|
|
16
|
-
function toDateTimeAttribute(value) {
|
|
17
|
-
return value instanceof Date ? value.toISOString() : value;
|
|
18
|
-
}
|
|
19
|
-
function formatTimestamp(value) {
|
|
20
|
-
if (typeof value === "string") return value;
|
|
21
|
-
return value.toLocaleTimeString([], {
|
|
22
|
-
hour: "2-digit",
|
|
23
|
-
minute: "2-digit",
|
|
24
|
-
hour12: false
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
17
|
/** Styles the bubble itself — the surface inside `Message`, not `Message`'s root. */
|
|
28
18
|
const messageVariants = cva("relative flex w-fit min-w-0 flex-col shadow-1 *:data-[slot=message-media]:max-w-full", {
|
|
29
19
|
variants: {
|
package/dist/mobile-sidebar.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { ChevronDown, Menu, X } from "./icons.js";
|
|
3
|
-
import {
|
|
3
|
+
import { cn } from "./utils/cn.js";
|
|
4
4
|
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "./collapsible.js";
|
|
5
5
|
import { Sheet, SheetBody, SheetClose, SheetContent, SheetFooter, SheetHeader, SheetTitle, SheetTrigger } from "./sheet.js";
|
|
6
6
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -27,6 +27,7 @@ function MobileSidebarContent({ className, showCloseButton = false, ...props })
|
|
|
27
27
|
side: "right",
|
|
28
28
|
size: "sm",
|
|
29
29
|
showCloseButton,
|
|
30
|
+
popupClassName: "h-dvh w-[min(100vw,24.375rem)]",
|
|
30
31
|
className: cn("h-dvh w-[min(100vw,24.375rem)] rounded-none border-y-0 border-r-0 bg-canvas [--sheet-padding-x:1.25rem] [--sheet-padding-top:0.8125rem]", className),
|
|
31
32
|
...props
|
|
32
33
|
});
|
package/dist/multi-step-form.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Check } from "./icons.js";
|
|
3
|
-
import {
|
|
4
|
-
import { t as useUncontrolled } from "./use-uncontrolled-CLfM1XbB.js";
|
|
3
|
+
import { cn } from "./utils/cn.js";
|
|
5
4
|
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "./select.js";
|
|
5
|
+
import { useUncontrolled } from "./utils/use-uncontrolled.js";
|
|
6
6
|
import { Progress, ProgressIndicator, ProgressTrack } from "./progress.js";
|
|
7
7
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
8
|
import * as React from "react";
|
package/dist/number-input.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { n as ComponentSizeValue } from "./size-context-BVhHduLi.js";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import { NumberFieldRootProps } from "@base-ui/react/number-field";
|
|
4
4
|
//#region src/number-input.d.ts
|
|
@@ -32,7 +32,7 @@ type NumberInputProps = Omit<NumberFieldRootProps, "format"> & {
|
|
|
32
32
|
format?: Intl.NumberFormatOptions;
|
|
33
33
|
formatPreset?: NumberInputFormatPreset;
|
|
34
34
|
placeholder?: string;
|
|
35
|
-
size?:
|
|
35
|
+
size?: ComponentSizeValue;
|
|
36
36
|
thousandSeparator?: boolean;
|
|
37
37
|
};
|
|
38
38
|
declare function NumberInput({ children, format, formatPreset, placeholder, size, thousandSeparator, ...props }: NumberInputProps): React.JSX.Element;
|
package/dist/number-input.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Minus, Plus } from "./icons.js";
|
|
3
|
-
import {
|
|
4
|
-
import { SizeProvider, useComponentSize } from "./size-context.js";
|
|
3
|
+
import { cn } from "./utils/cn.js";
|
|
4
|
+
import { SizeProvider, useComponentSize, useComponentSizeValue } from "./size-context.js";
|
|
5
5
|
import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput } from "./input-group.js";
|
|
6
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
7
|
import { NumberField } from "@base-ui/react/number-field";
|
|
@@ -25,7 +25,7 @@ const numberInputFormatPresets = {
|
|
|
25
25
|
plain: { useGrouping: false }
|
|
26
26
|
};
|
|
27
27
|
function NumberInput({ children, format, formatPreset, placeholder, size, thousandSeparator, ...props }) {
|
|
28
|
-
const resolvedSize =
|
|
28
|
+
const resolvedSize = useComponentSizeValue(size);
|
|
29
29
|
const resolvedFormat = format ?? (formatPreset ? numberInputFormatPresets[formatPreset] : void 0) ?? (thousandSeparator ? numberInputFormatPresets.decimal : void 0);
|
|
30
30
|
return /* @__PURE__ */ jsx(SizeProvider, {
|
|
31
31
|
size: resolvedSize,
|
package/dist/page-header.js
CHANGED
package/dist/pagination.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as ButtonLink, t as Button } from "./button-
|
|
1
|
+
import { n as ButtonLink, t as Button } from "./button-BS5KCibF.js";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
//#region src/pagination.d.ts
|
|
4
4
|
declare function Pagination({ className, ...props }: React.ComponentProps<"nav">): React.JSX.Element;
|
package/dist/pagination.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ChevronLeft, ChevronRight, MoreHorizontal } from "./icons.js";
|
|
2
|
-
import {
|
|
2
|
+
import { cn } from "./utils/cn.js";
|
|
3
3
|
import { Button, ButtonLink } from "./button.js";
|
|
4
4
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { cva } from "class-variance-authority";
|
package/dist/password-input.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Eye, EyeOff } from "./icons.js";
|
|
3
|
-
import {
|
|
3
|
+
import { cn } from "./utils/cn.js";
|
|
4
4
|
import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput } from "./input-group.js";
|
|
5
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
6
|
import * as React from "react";
|
package/dist/phone-input.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { n as ComponentSizeValue } from "./size-context-BVhHduLi.js";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import { CountryCode } from "libphonenumber-js";
|
|
4
4
|
//#region src/phone-input.d.ts
|
|
@@ -6,7 +6,7 @@ interface PhoneInputProps {
|
|
|
6
6
|
value?: string;
|
|
7
7
|
onChange?: (value: string | undefined) => void;
|
|
8
8
|
defaultCountry?: CountryCode;
|
|
9
|
-
size?:
|
|
9
|
+
size?: ComponentSizeValue;
|
|
10
10
|
disabled?: boolean;
|
|
11
11
|
readOnly?: boolean;
|
|
12
12
|
placeholder?: string;
|
package/dist/phone-input.js
CHANGED
|
@@ -1,21 +1,17 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Check, ChevronDown, Search } from "./icons.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { cn } from "./utils/cn.js";
|
|
4
|
+
import { resolveResponsiveComponentSize, useComponentSizeValue } from "./size-context.js";
|
|
5
5
|
import { Separator } from "./separator.js";
|
|
6
6
|
import { InputGroup, InputGroupAddon, InputGroupInput } from "./input-group.js";
|
|
7
7
|
import { Popover, PopoverContent, PopoverTrigger } from "./popover.js";
|
|
8
|
+
import { getPhoneCountries } from "./utils/phone.js";
|
|
8
9
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
10
|
import * as React from "react";
|
|
10
|
-
import { AsYouType,
|
|
11
|
+
import { AsYouType, getCountryCallingCode, parsePhoneNumberFromString } from "libphonenumber-js";
|
|
11
12
|
import flags from "react-phone-number-input/flags";
|
|
12
13
|
//#region src/phone-input.tsx
|
|
13
|
-
const
|
|
14
|
-
const COUNTRIES = getCountries().map((code) => ({
|
|
15
|
-
code,
|
|
16
|
-
name: regionNames?.of(code) ?? code,
|
|
17
|
-
calling: getCountryCallingCode(code)
|
|
18
|
-
})).sort((a, b) => a.name.localeCompare(b.name));
|
|
14
|
+
const COUNTRIES = getPhoneCountries();
|
|
19
15
|
function getNationalDigits(value) {
|
|
20
16
|
return value.replace(/\D/g, "");
|
|
21
17
|
}
|
|
@@ -29,13 +25,11 @@ function toE164(digits, country) {
|
|
|
29
25
|
}
|
|
30
26
|
function parseValue(value) {
|
|
31
27
|
if (!value) return { digits: "" };
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
};
|
|
38
|
-
} catch {}
|
|
28
|
+
const parsed = parsePhoneNumberFromString(value);
|
|
29
|
+
if (parsed?.nationalNumber) return {
|
|
30
|
+
country: parsed.country,
|
|
31
|
+
digits: parsed.nationalNumber
|
|
32
|
+
};
|
|
39
33
|
return { digits: "" };
|
|
40
34
|
}
|
|
41
35
|
const flagSizeVariants = {
|
|
@@ -107,7 +101,7 @@ function CountryList({ items, country, onSelect }) {
|
|
|
107
101
|
}),
|
|
108
102
|
/* @__PURE__ */ jsxs("span", {
|
|
109
103
|
className: "shrink-0 text-fg-secondary",
|
|
110
|
-
children: ["+", entry.
|
|
104
|
+
children: ["+", entry.callingCode]
|
|
111
105
|
}),
|
|
112
106
|
selected && /* @__PURE__ */ jsx(Check, { className: "size-4 shrink-0 text-fg-brand" })
|
|
113
107
|
]
|
|
@@ -124,7 +118,7 @@ function CountrySelect({ country, size, disabled, onSelect, finalFocusRef }) {
|
|
|
124
118
|
const q = query.trim().toLowerCase();
|
|
125
119
|
if (!q) return COUNTRIES;
|
|
126
120
|
const normalized = q.replace(/^\+/, "");
|
|
127
|
-
return COUNTRIES.filter((entry) => entry.name.toLowerCase().includes(q) || entry.
|
|
121
|
+
return COUNTRIES.filter((entry) => entry.name.toLowerCase().includes(q) || entry.callingCode.includes(normalized) || entry.code.toLowerCase().includes(q));
|
|
128
122
|
}, [query]);
|
|
129
123
|
function handleOpenChange(next) {
|
|
130
124
|
setOpen(next);
|
|
@@ -174,7 +168,8 @@ function CountrySelect({ country, size, disabled, onSelect, finalFocusRef }) {
|
|
|
174
168
|
});
|
|
175
169
|
}
|
|
176
170
|
function PhoneInput({ value, onChange, defaultCountry = "NG", size, disabled = false, readOnly = false, placeholder = "(0000) 000-0000", className, id, name, ref, "aria-invalid": ariaInvalid }) {
|
|
177
|
-
const
|
|
171
|
+
const sizeValue = useComponentSizeValue(size);
|
|
172
|
+
const resolvedSize = resolveResponsiveComponentSize(sizeValue);
|
|
178
173
|
const inputRef = React.useRef(null);
|
|
179
174
|
const setInputRef = React.useCallback((node) => {
|
|
180
175
|
inputRef.current = node;
|
|
@@ -207,14 +202,14 @@ function PhoneInput({ value, onChange, defaultCountry = "NG", size, disabled = f
|
|
|
207
202
|
}
|
|
208
203
|
const dividerStateClasses = cn("group-hover/input-group:bg-line-strong", "group-focus-within/input-group:bg-line-focus", "group-has-[[aria-invalid=true]]/input-group:bg-line-danger", "group-has-disabled/input-group:bg-line-subtle");
|
|
209
204
|
return /* @__PURE__ */ jsxs(InputGroup, {
|
|
210
|
-
size:
|
|
205
|
+
size: sizeValue,
|
|
211
206
|
className,
|
|
212
207
|
children: [/* @__PURE__ */ jsxs(InputGroupAddon, {
|
|
213
208
|
align: "inline-start",
|
|
214
209
|
className: "gap-2 self-stretch py-0",
|
|
215
210
|
children: [/* @__PURE__ */ jsx(CountrySelect, {
|
|
216
211
|
country,
|
|
217
|
-
size: resolvedSize,
|
|
212
|
+
size: resolvedSize.base,
|
|
218
213
|
disabled,
|
|
219
214
|
onSelect: handleCountrySelect,
|
|
220
215
|
finalFocusRef: inputRef
|
package/dist/photo-gallery.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { ChevronLeft, ChevronRight, Fullscreen, X } from "./icons.js";
|
|
3
|
-
import {
|
|
3
|
+
import { cn } from "./utils/cn.js";
|
|
4
4
|
import { Button } from "./button.js";
|
|
5
5
|
import { Carousel, CarouselContent, CarouselItem } from "./carousel.js";
|
|
6
|
+
import { Image } from "./image.js";
|
|
6
7
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
7
8
|
import * as React from "react";
|
|
8
9
|
import { Dialog } from "@base-ui/react/dialog";
|
|
@@ -60,7 +61,8 @@ function GalleryFrame({ image, fit = "cover", className }) {
|
|
|
60
61
|
return /* @__PURE__ */ jsx("div", {
|
|
61
62
|
"data-slot": "photo-gallery-frame",
|
|
62
63
|
className: cn("relative flex size-full items-center justify-center overflow-hidden", className),
|
|
63
|
-
children: image?.src ? /* @__PURE__ */ jsx(
|
|
64
|
+
children: image?.src ? /* @__PURE__ */ jsx(Image, {
|
|
65
|
+
slot: "photo-gallery-image",
|
|
64
66
|
src: image.src,
|
|
65
67
|
alt: image.alt ?? "Property image",
|
|
66
68
|
className: cn(fit === "contain" ? "max-h-full max-w-full rounded-lg object-contain" : "size-full object-cover"),
|
|
@@ -168,7 +170,8 @@ function GalleryThumbnails({ images, selectedIndex, onSelect, colsClassName, cla
|
|
|
168
170
|
onClick: () => onSelect(index),
|
|
169
171
|
style: { width: "calc((100% - (var(--gallery-cols) - 1) * var(--gallery-gap)) / var(--gallery-cols))" },
|
|
170
172
|
className: cn("relative aspect-4/3 shrink-0 overflow-hidden rounded-lg border-2 bg-surface-raised transition-[border-color,opacity] outline-none focus-visible:border-line-focus focus-visible:shadow-[0px_0px_0px_2px_var(--color-line-focus)]", isActive ? "border-line-focus" : "border-transparent opacity-80 hover:opacity-100"),
|
|
171
|
-
children: image.src ? /* @__PURE__ */ jsx(
|
|
173
|
+
children: image.src ? /* @__PURE__ */ jsx(Image, {
|
|
174
|
+
slot: "photo-gallery-thumbnail-image",
|
|
172
175
|
src: image.src,
|
|
173
176
|
alt: image.alt ?? `Property image ${index + 1}`,
|
|
174
177
|
className: "size-full object-cover",
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { cn } from "./utils/cn.js";
|
|
2
|
+
import { responsiveValueClasses } from "./size-context.js";
|
|
3
|
+
import { Button } from "./button.js";
|
|
4
|
+
import { useInputComponentSizeValue } from "./input-size-context.js";
|
|
5
|
+
import { PopoverTrigger } from "./popover.js";
|
|
6
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
import { cva } from "class-variance-authority";
|
|
8
|
+
//#region src/lib/picker.tsx
|
|
9
|
+
const pickerTriggerSizeVariants = {
|
|
10
|
+
sm: "h-8 px-3 text-gdt-xs [&_svg]:size-3.5",
|
|
11
|
+
md: "h-10 px-3.5 text-gdt-sm [&_svg]:size-4",
|
|
12
|
+
lg: "h-12 px-4 text-gdt-md [&_svg]:size-4.5",
|
|
13
|
+
xl: "h-14 px-4.5 text-gdt-lg [&_svg]:size-5"
|
|
14
|
+
};
|
|
15
|
+
const pickerTriggerVariants = cva("flex w-full items-center justify-between rounded-full border transition-[border-color,box-shadow] outline-none", {
|
|
16
|
+
variants: { size: pickerTriggerSizeVariants },
|
|
17
|
+
defaultVariants: { size: "md" }
|
|
18
|
+
});
|
|
19
|
+
function PickerTrigger({ icon: Icon, displayValue, placeholder, disabled, open, size, className }) {
|
|
20
|
+
const resolvedSize = responsiveValueClasses(useInputComponentSizeValue(size), responsivePickerTriggerSizes);
|
|
21
|
+
return /* @__PURE__ */ jsxs(PopoverTrigger, {
|
|
22
|
+
disabled,
|
|
23
|
+
"data-size": resolvedSize.base,
|
|
24
|
+
className: cn(pickerTriggerVariants({ size: null }), resolvedSize.className, disabled ? "cursor-not-allowed border-line-subtle bg-surface text-fg-caption-placeholder" : open ? "border-line-focus bg-canvas text-fg-primary inset-ring-1 inset-ring-line-focus" : "border-line bg-canvas text-fg-primary hover:border-line-strong", className),
|
|
25
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
26
|
+
className: cn("min-w-0 truncate", !displayValue && "text-fg-caption-placeholder"),
|
|
27
|
+
children: displayValue || placeholder
|
|
28
|
+
}), /* @__PURE__ */ jsx(Icon, { className: cn("ml-2 shrink-0", disabled ? "text-fg-caption-placeholder" : "text-fg-secondary") })]
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
const responsivePickerTriggerSizes = {
|
|
32
|
+
base: pickerTriggerSizeVariants,
|
|
33
|
+
md: {
|
|
34
|
+
sm: "md:h-8 md:px-3 md:text-gdt-xs md:[&_svg]:size-3.5",
|
|
35
|
+
md: "md:h-10 md:px-3.5 md:text-gdt-sm md:[&_svg]:size-4",
|
|
36
|
+
lg: "md:h-12 md:px-4 md:text-gdt-md md:[&_svg]:size-4.5",
|
|
37
|
+
xl: "md:h-14 md:px-4.5 md:text-gdt-lg md:[&_svg]:size-5"
|
|
38
|
+
},
|
|
39
|
+
lg: {
|
|
40
|
+
sm: "lg:h-8 lg:px-3 lg:text-gdt-xs lg:[&_svg]:size-3.5",
|
|
41
|
+
md: "lg:h-10 lg:px-3.5 lg:text-gdt-sm lg:[&_svg]:size-4",
|
|
42
|
+
lg: "lg:h-12 lg:px-4 lg:text-gdt-md lg:[&_svg]:size-4.5",
|
|
43
|
+
xl: "lg:h-14 lg:px-4.5 lg:text-gdt-lg lg:[&_svg]:size-5"
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
function PickerFooter({ secondaryLabel, onSecondary, onApply }) {
|
|
47
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
48
|
+
className: "flex w-full items-center justify-between border-t border-line-subtle px-4 py-3",
|
|
49
|
+
children: [/* @__PURE__ */ jsx(Button, {
|
|
50
|
+
variant: "tertiary-outline",
|
|
51
|
+
size: "sm",
|
|
52
|
+
onClick: onSecondary,
|
|
53
|
+
children: secondaryLabel
|
|
54
|
+
}), /* @__PURE__ */ jsx(Button, {
|
|
55
|
+
size: "sm",
|
|
56
|
+
onClick: onApply,
|
|
57
|
+
children: "Apply"
|
|
58
|
+
})]
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
//#endregion
|
|
62
|
+
export { PickerTrigger as n, PickerFooter as t };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import "./input-size-context-BMhves-J.js";
|
|
2
|
+
import { r as PopoverContent } from "./popover-CNymD33m.js";
|
|
3
|
+
import "./icons-C9JXR5Xv.js";
|
|
4
|
+
import * as React from "react";
|
|
5
|
+
//#region src/lib/picker.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Where a picker's panel goes. Every one of these is a preference the
|
|
8
|
+
* positioner is free to overrule when the panel would otherwise overflow —
|
|
9
|
+
* which is the point, a calendar being tall enough that the room below a
|
|
10
|
+
* trigger often isn't the room it needs.
|
|
11
|
+
*/
|
|
12
|
+
type PickerPlacementProps = Pick<React.ComponentProps<typeof PopoverContent>, "side" | "sideOffset" | "align" | "alignOffset" | "collisionAvoidance">;
|
|
13
|
+
//#endregion
|
|
14
|
+
export { PickerPlacementProps as t };
|
package/dist/pie-chart.d.ts
CHANGED
package/dist/pie-chart.js
CHANGED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { t as ComponentSize } from "./size-context-BVhHduLi.js";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { Popover } from "@base-ui/react/popover";
|
|
4
|
+
//#region src/popover.d.ts
|
|
5
|
+
declare function Popover$1({ ...props }: Popover.Root.Props): React.JSX.Element;
|
|
6
|
+
declare function PopoverTrigger({ ...props }: Popover.Trigger.Props): React.JSX.Element;
|
|
7
|
+
type PopoverContentProps = Popover.Popup.Props & Pick<Popover.Positioner.Props, "align" | "alignOffset" | "collisionAvoidance" | "side" | "sideOffset"> & {
|
|
8
|
+
showArrow?: boolean;
|
|
9
|
+
size?: ComponentSize;
|
|
10
|
+
};
|
|
11
|
+
declare function PopoverContent({ className, align, alignOffset, collisionAvoidance, side, sideOffset, showArrow, size, children, ...props }: PopoverContentProps): React.JSX.Element;
|
|
12
|
+
declare function PopoverHeader({ className, border, ...props }: React.ComponentProps<"div"> & {
|
|
13
|
+
border?: boolean;
|
|
14
|
+
}): React.JSX.Element;
|
|
15
|
+
declare function PopoverBody({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
16
|
+
declare function PopoverFooter({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
17
|
+
declare function PopoverTitle({ className, ...props }: Popover.Title.Props): React.JSX.Element;
|
|
18
|
+
declare function PopoverDescription({ className, ...props }: Popover.Description.Props): React.JSX.Element;
|
|
19
|
+
//#endregion
|
|
20
|
+
export { PopoverFooter as a, PopoverTrigger as c, PopoverDescription as i, PopoverBody as n, PopoverHeader as o, PopoverContent as r, PopoverTitle as s, Popover$1 as t };
|
package/dist/popover.d.ts
CHANGED
|
@@ -1,20 +1,2 @@
|
|
|
1
|
-
import { t as
|
|
2
|
-
import * as React from "react";
|
|
3
|
-
import { Popover as Popover$1 } from "@base-ui/react/popover";
|
|
4
|
-
//#region src/popover.d.ts
|
|
5
|
-
declare function Popover({ ...props }: Popover$1.Root.Props): React.JSX.Element;
|
|
6
|
-
declare function PopoverTrigger({ ...props }: Popover$1.Trigger.Props): React.JSX.Element;
|
|
7
|
-
type PopoverContentProps = Popover$1.Popup.Props & Pick<Popover$1.Positioner.Props, "align" | "alignOffset" | "collisionAvoidance" | "side" | "sideOffset"> & {
|
|
8
|
-
showArrow?: boolean;
|
|
9
|
-
size?: ComponentSize;
|
|
10
|
-
};
|
|
11
|
-
declare function PopoverContent({ className, align, alignOffset, collisionAvoidance, side, sideOffset, showArrow, size, children, ...props }: PopoverContentProps): React.JSX.Element;
|
|
12
|
-
declare function PopoverHeader({ className, border, ...props }: React.ComponentProps<"div"> & {
|
|
13
|
-
border?: boolean;
|
|
14
|
-
}): React.JSX.Element;
|
|
15
|
-
declare function PopoverBody({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
16
|
-
declare function PopoverFooter({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
17
|
-
declare function PopoverTitle({ className, ...props }: Popover$1.Title.Props): React.JSX.Element;
|
|
18
|
-
declare function PopoverDescription({ className, ...props }: Popover$1.Description.Props): React.JSX.Element;
|
|
19
|
-
//#endregion
|
|
1
|
+
import { a as PopoverFooter, c as PopoverTrigger, i as PopoverDescription, n as PopoverBody, o as PopoverHeader, r as PopoverContent, s as PopoverTitle, t as Popover } from "./popover-CNymD33m.js";
|
|
20
2
|
export { Popover, PopoverBody, PopoverContent, PopoverDescription, PopoverFooter, PopoverHeader, PopoverTitle, PopoverTrigger };
|
package/dist/popover.js
CHANGED
package/dist/price-tag.d.ts
CHANGED
|
@@ -85,7 +85,7 @@ type PriceTagProps<TOption extends PriceTagCurrencyOption = PriceTagCurrencyOpti
|
|
|
85
85
|
monthlyPaymentLabel?: string;
|
|
86
86
|
};
|
|
87
87
|
/**
|
|
88
|
-
*
|
|
88
|
+
* Rounded-box price display, optionally a trigger for a currency dropdown.
|
|
89
89
|
*
|
|
90
90
|
* Display only: it prints `value` and `description` as given and never
|
|
91
91
|
* composes a sentence, picks a format, or decides that a line is too small to
|