@giddaa-housing/ui 3.0.0 → 3.1.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.
Files changed (65) hide show
  1. package/css/generated/shared.css +1 -1
  2. package/css/giddaa.css +162 -0
  3. package/css/preset.css +8 -1
  4. package/dist/activity-timeline.js +3 -3
  5. package/dist/auth-layout.js +18 -18
  6. package/dist/badge.js +1 -0
  7. package/dist/bar-chart.d.ts +1 -1
  8. package/dist/breadcrumb.js +1 -0
  9. package/dist/bullet-chart.d.ts +1 -1
  10. package/dist/button-group.d.ts +1 -1
  11. package/dist/button-group.js +1 -0
  12. package/dist/button.js +1 -0
  13. package/dist/card.js +1 -0
  14. package/dist/carousel.d.ts +1 -1
  15. package/dist/chart.d.ts +1 -1
  16. package/dist/combobox.d.ts +1 -1
  17. package/dist/cta.js +1 -0
  18. package/dist/details-card.js +1 -0
  19. package/dist/dropdown-menu.d.ts +1 -1
  20. package/dist/editorial-card.js +1 -0
  21. package/dist/footer.d.ts +4 -2
  22. package/dist/footer.js +39 -34
  23. package/dist/funnel-chart.d.ts +1 -1
  24. package/dist/heatmap-chart.d.ts +1 -1
  25. package/dist/input-group.js +4 -5
  26. package/dist/input-size-context.js +4 -2
  27. package/dist/input.js +2 -1
  28. package/dist/item.js +1 -0
  29. package/dist/kpi-card.js +1 -0
  30. package/dist/line-chart.d.ts +1 -1
  31. package/dist/mask-input.d.ts +61 -0
  32. package/dist/mask-input.js +0 -0
  33. package/dist/mobile-sidebar.d.ts +57 -0
  34. package/dist/mobile-sidebar.js +196 -0
  35. package/dist/number-input.d.ts +1 -1
  36. package/dist/number-input.js +1 -0
  37. package/dist/password-input.js +1 -0
  38. package/dist/phone-input.d.ts +1 -1
  39. package/dist/pie-chart.d.ts +1 -1
  40. package/dist/popover.d.ts +1 -1
  41. package/dist/property-listing-card.js +1 -0
  42. package/dist/purchase-option-card.js +1 -0
  43. package/dist/radar-chart.d.ts +1 -1
  44. package/dist/review-block.js +1 -0
  45. package/dist/rich-text-editor.d.ts +1 -1
  46. package/dist/scatter-chart.d.ts +1 -1
  47. package/dist/search-input.js +1 -0
  48. package/dist/select.d.ts +1 -1
  49. package/dist/{size-context-D4mYvcg8.d.ts → size-context-BX6kAdVj.d.ts} +2 -1
  50. package/dist/size-context.d.ts +2 -2
  51. package/dist/size-context.js +5 -2
  52. package/dist/sparkline.d.ts +1 -1
  53. package/dist/stepper.js +1 -0
  54. package/dist/styles.css +505 -111
  55. package/dist/table-card.js +1 -0
  56. package/dist/table.js +2 -2
  57. package/dist/tabs.d.ts +1 -1
  58. package/dist/tag.d.ts +1 -1
  59. package/dist/testimonial-block.js +1 -0
  60. package/dist/textarea.js +1 -0
  61. package/dist/top-navbar.d.ts +100 -0
  62. package/dist/top-navbar.js +295 -0
  63. package/dist/tree-map.d.ts +1 -1
  64. package/dist/waterfall-chart.d.ts +1 -1
  65. package/package.json +13 -1
@@ -0,0 +1,196 @@
1
+ "use client";
2
+ import { t as cn } from "./cn-BI_4DMBf.js";
3
+ import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "./collapsible.js";
4
+ import { Sheet, SheetBody, SheetClose, SheetContent, SheetFooter, SheetHeader, SheetTitle, SheetTrigger } from "./sheet.js";
5
+ import { ChevronDownIcon, MenuIcon, XIcon } from "lucide-react";
6
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
7
+ import { mergeProps } from "@base-ui/react/merge-props";
8
+ import { useRender } from "@base-ui/react/use-render";
9
+ //#region src/mobile-sidebar.tsx
10
+ function MobileSidebarRoot(props) {
11
+ return /* @__PURE__ */ jsx(Sheet, { ...props });
12
+ }
13
+ function MobileSidebarTrigger({ className, children, ...props }) {
14
+ return /* @__PURE__ */ jsx(SheetTrigger, {
15
+ "data-slot": "mobile-sidebar-trigger",
16
+ className: cn("inline-flex size-10 items-center justify-center rounded-lg text-fg-secondary outline-none transition-[background-color,color,translate] duration-(--duration-motion-press) ease-gdt-out hover:bg-surface hover:text-fg-primary focus-visible:shadow-[0_0_0_2px_var(--color-line-focus)] active:translate-y-px motion-reduce:active:translate-y-0", className),
17
+ ...props,
18
+ children: children ?? /* @__PURE__ */ jsx(MenuIcon, {
19
+ "aria-hidden": "true",
20
+ className: "size-6"
21
+ })
22
+ });
23
+ }
24
+ function MobileSidebarContent({ className, showCloseButton = false, ...props }) {
25
+ return /* @__PURE__ */ jsx(SheetContent, {
26
+ "data-slot": "mobile-sidebar-content",
27
+ side: "right",
28
+ size: "sm",
29
+ showCloseButton,
30
+ 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
+ ...props
32
+ });
33
+ }
34
+ function MobileSidebarHeader({ className, ...props }) {
35
+ return /* @__PURE__ */ jsx(SheetHeader, {
36
+ "data-slot": "mobile-sidebar-header",
37
+ className: cn("min-h-16 flex-row items-center justify-between gap-4 px-5 py-[13px]", className),
38
+ ...props
39
+ });
40
+ }
41
+ function MobileSidebarTitle({ className, ...props }) {
42
+ return /* @__PURE__ */ jsx(SheetTitle, {
43
+ "data-slot": "mobile-sidebar-title",
44
+ className: cn("sr-only", className),
45
+ ...props
46
+ });
47
+ }
48
+ function MobileSidebarClose({ className, children, ...props }) {
49
+ return /* @__PURE__ */ jsx(SheetClose, {
50
+ "data-slot": "mobile-sidebar-close",
51
+ className: cn("inline-flex size-8 shrink-0 items-center justify-center rounded-lg text-fg-primary outline-none transition-[background-color,translate] duration-(--duration-motion-press) ease-gdt-out hover:bg-surface focus-visible:shadow-[0_0_0_2px_var(--color-line-focus)] active:translate-y-px motion-reduce:active:translate-y-0", className),
52
+ ...props,
53
+ children: children ?? /* @__PURE__ */ jsx(XIcon, {
54
+ "aria-hidden": "true",
55
+ className: "size-5"
56
+ })
57
+ });
58
+ }
59
+ function MobileSidebarBody({ className, ...props }) {
60
+ return /* @__PURE__ */ jsx(SheetBody, {
61
+ "data-slot": "mobile-sidebar-body",
62
+ className: cn("flex flex-col px-5 py-3", className),
63
+ ...props
64
+ });
65
+ }
66
+ function MobileSidebarFooter({ className, ...props }) {
67
+ return /* @__PURE__ */ jsx(SheetFooter, {
68
+ "data-slot": "mobile-sidebar-footer",
69
+ className: cn("flex-col items-stretch gap-3 px-5 py-4 [&>*]:w-full", className),
70
+ ...props
71
+ });
72
+ }
73
+ function MobileSidebarNav({ className, ...props }) {
74
+ return /* @__PURE__ */ jsx("nav", {
75
+ "data-slot": "mobile-sidebar-nav",
76
+ className,
77
+ ...props
78
+ });
79
+ }
80
+ function MobileSidebarList({ className, ...props }) {
81
+ return /* @__PURE__ */ jsx("ul", {
82
+ "data-slot": "mobile-sidebar-list",
83
+ className: cn("flex flex-col", className),
84
+ ...props
85
+ });
86
+ }
87
+ function MobileSidebarItem({ className, ...props }) {
88
+ return /* @__PURE__ */ jsx("li", {
89
+ "data-slot": "mobile-sidebar-item",
90
+ className: cn("min-w-0", className),
91
+ ...props
92
+ });
93
+ }
94
+ function MobileSidebarLink({ active = false, icon, className, children, render, ...props }) {
95
+ return useRender({
96
+ defaultTagName: "a",
97
+ props: mergeProps({
98
+ "aria-current": active ? "page" : void 0,
99
+ className: cn("group/mobile-sidebar-link grid min-h-11 w-full grid-cols-1 items-center rounded-xl px-2 py-2.5 text-left text-gdt-md font-semibold text-fg-primary outline-none transition-colors hover:bg-surface focus-visible:shadow-[0_0_0_2px_var(--color-line-focus)]", active && "bg-surface-brand-subtle text-fg-brand", className),
100
+ children: /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs("span", {
101
+ className: cn("grid min-w-0 items-center", icon ? "grid-cols-[1.25rem_minmax(0,1fr)] gap-3" : "grid-cols-1"),
102
+ children: [icon ? /* @__PURE__ */ jsx("span", {
103
+ className: "flex size-5 items-center justify-center [&>svg]:size-5",
104
+ children: icon
105
+ }) : null, /* @__PURE__ */ jsx("span", {
106
+ className: "min-w-0 truncate",
107
+ children
108
+ })]
109
+ }) })
110
+ }, props),
111
+ render,
112
+ state: {
113
+ slot: "mobile-sidebar-link",
114
+ active
115
+ }
116
+ });
117
+ }
118
+ function MobileSidebarGroup({ className, ...props }) {
119
+ return /* @__PURE__ */ jsx(Collapsible, {
120
+ "data-slot": "mobile-sidebar-group",
121
+ className: cn("min-w-0", className),
122
+ ...props
123
+ });
124
+ }
125
+ function MobileSidebarGroupTrigger({ active = false, icon, className, children, ...props }) {
126
+ return /* @__PURE__ */ jsxs(CollapsibleTrigger, {
127
+ "data-slot": "mobile-sidebar-group-trigger",
128
+ "data-active": active || void 0,
129
+ className: cn("grid min-h-11 w-full grid-cols-[minmax(0,1fr)_auto] items-center gap-3 rounded-xl px-2 py-2.5 text-left text-gdt-md font-semibold text-fg-primary outline-none transition-colors hover:bg-surface focus-visible:shadow-[0_0_0_2px_var(--color-line-focus)]", active && "bg-surface-brand-subtle text-fg-brand", className),
130
+ ...props,
131
+ children: [/* @__PURE__ */ jsxs("span", {
132
+ className: cn("grid min-w-0 items-center", icon ? "grid-cols-[1.25rem_minmax(0,1fr)] gap-3" : "grid-cols-1"),
133
+ children: [icon ? /* @__PURE__ */ jsx("span", {
134
+ className: "flex size-5 items-center justify-center [&>svg]:size-5",
135
+ children: icon
136
+ }) : null, /* @__PURE__ */ jsx("span", {
137
+ className: "min-w-0 truncate",
138
+ children
139
+ })]
140
+ }), /* @__PURE__ */ jsx(ChevronDownIcon, {
141
+ "aria-hidden": "true",
142
+ className: "size-4 shrink-0 text-current transition-transform duration-(--duration-motion-press) ease-gdt-out group-data-[panel-open]/collapsible-trigger:rotate-180 motion-reduce:transition-none"
143
+ })]
144
+ });
145
+ }
146
+ function MobileSidebarGroupPanel({ className, ...props }) {
147
+ return /* @__PURE__ */ jsx(CollapsibleContent, {
148
+ "data-slot": "mobile-sidebar-group-panel",
149
+ className: cn("overflow-hidden", className),
150
+ ...props
151
+ });
152
+ }
153
+ function MobileSidebarSubList({ className, ...props }) {
154
+ return /* @__PURE__ */ jsx("ul", {
155
+ "data-slot": "mobile-sidebar-sub-list",
156
+ className: cn("ml-8 flex flex-col pb-1", className),
157
+ ...props
158
+ });
159
+ }
160
+ function MobileSidebarSubheading({ className, ...props }) {
161
+ return /* @__PURE__ */ jsx("li", {
162
+ "data-slot": "mobile-sidebar-subheading",
163
+ className: cn("px-2 pt-1.5 text-gdt-capitalized font-semibold uppercase text-fg-brand", className),
164
+ ...props
165
+ });
166
+ }
167
+ function MobileSidebarSubLink({ className, render, ...props }) {
168
+ return useRender({
169
+ defaultTagName: "a",
170
+ props: mergeProps({ className: cn("block rounded-lg px-2 py-1.5 text-gdt-sm font-medium text-fg-secondary outline-none transition-colors hover:bg-surface hover:text-fg-primary focus-visible:shadow-[0_0_0_2px_var(--color-line-focus)]", className) }, props),
171
+ render,
172
+ state: { slot: "mobile-sidebar-sub-link" }
173
+ });
174
+ }
175
+ const MobileSidebar = {
176
+ Root: MobileSidebarRoot,
177
+ Trigger: MobileSidebarTrigger,
178
+ Content: MobileSidebarContent,
179
+ Header: MobileSidebarHeader,
180
+ Title: MobileSidebarTitle,
181
+ Close: MobileSidebarClose,
182
+ Body: MobileSidebarBody,
183
+ Footer: MobileSidebarFooter,
184
+ Nav: MobileSidebarNav,
185
+ List: MobileSidebarList,
186
+ Item: MobileSidebarItem,
187
+ Link: MobileSidebarLink,
188
+ Group: MobileSidebarGroup,
189
+ GroupTrigger: MobileSidebarGroupTrigger,
190
+ GroupPanel: MobileSidebarGroupPanel,
191
+ SubList: MobileSidebarSubList,
192
+ Subheading: MobileSidebarSubheading,
193
+ SubLink: MobileSidebarSubLink
194
+ };
195
+ //#endregion
196
+ export { MobileSidebar, MobileSidebarBody, MobileSidebarClose, MobileSidebarContent, MobileSidebarFooter, MobileSidebarGroup, MobileSidebarGroupPanel, MobileSidebarGroupTrigger, MobileSidebarHeader, MobileSidebarItem, MobileSidebarLink, MobileSidebarList, MobileSidebarNav, MobileSidebarRoot, MobileSidebarSubLink, MobileSidebarSubList, MobileSidebarSubheading, MobileSidebarTitle, MobileSidebarTrigger };
@@ -1,4 +1,4 @@
1
- import { t as ComponentSize } from "./size-context-D4mYvcg8.js";
1
+ import { t as ComponentSize } from "./size-context-BX6kAdVj.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
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { t as cn } from "./cn-BI_4DMBf.js";
2
3
  import { SizeProvider, useComponentSize } from "./size-context.js";
3
4
  import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput } from "./input-group.js";
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { t as cn } from "./cn-BI_4DMBf.js";
2
3
  import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput } from "./input-group.js";
3
4
  import { Eye, EyeOff } from "lucide-react";
@@ -1,4 +1,4 @@
1
- import { t as ComponentSize } from "./size-context-D4mYvcg8.js";
1
+ import { t as ComponentSize } from "./size-context-BX6kAdVj.js";
2
2
  import * as React from "react";
3
3
  import { CountryCode } from "libphonenumber-js";
4
4
  //#region src/phone-input.d.ts
@@ -1,4 +1,4 @@
1
- import { t as ComponentSize } from "./size-context-D4mYvcg8.js";
1
+ import { t as ComponentSize } from "./size-context-BX6kAdVj.js";
2
2
  import { ChartConfig } from "./chart.js";
3
3
  import * as React from "react";
4
4
  import { Pie, PieChart as PieChart$1 } from "recharts";
package/dist/popover.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { t as ComponentSize } from "./size-context-D4mYvcg8.js";
1
+ import { t as ComponentSize } from "./size-context-BX6kAdVj.js";
2
2
  import * as React from "react";
3
3
  import { Popover as Popover$1 } from "@base-ui/react/popover";
4
4
  //#region src/popover.d.ts
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { t as cn } from "./cn-BI_4DMBf.js";
2
3
  import { Button, ButtonLink } from "./button.js";
3
4
  import { Carousel, CarouselContent, CarouselIndicator, CarouselItem } from "./carousel.js";
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { t as cn } from "./cn-BI_4DMBf.js";
2
3
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
4
  import { mergeProps } from "@base-ui/react/merge-props";
@@ -1,4 +1,4 @@
1
- import { t as ComponentSize } from "./size-context-D4mYvcg8.js";
1
+ import { t as ComponentSize } from "./size-context-BX6kAdVj.js";
2
2
  import { ChartConfig } from "./chart.js";
3
3
  import * as React from "react";
4
4
  import { PolarAngleAxis, PolarGrid, PolarRadiusAxis, Radar, RadarChart as RadarChart$1 } from "recharts";
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { t as cn } from "./cn-BI_4DMBf.js";
2
3
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
4
  import { mergeProps } from "@base-ui/react/merge-props";
@@ -1,4 +1,4 @@
1
- import { t as ComponentSize } from "./size-context-D4mYvcg8.js";
1
+ import { t as ComponentSize } from "./size-context-BX6kAdVj.js";
2
2
  import * as React from "react";
3
3
  //#region src/rich-text-editor.d.ts
4
4
  interface RichTextEditorProps {
@@ -1,4 +1,4 @@
1
- import { t as ComponentSize } from "./size-context-D4mYvcg8.js";
1
+ import { t as ComponentSize } from "./size-context-BX6kAdVj.js";
2
2
  import { ChartConfig } from "./chart.js";
3
3
  import * as React from "react";
4
4
  import { CartesianGrid, Scatter, ScatterChart as ScatterChart$1, XAxis, YAxis } from "recharts";
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { t as cn } from "./cn-BI_4DMBf.js";
2
3
  import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput } from "./input-group.js";
3
4
  import { Search, X } from "lucide-react";
package/dist/select.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { t as ComponentSize } from "./size-context-D4mYvcg8.js";
1
+ import { t as ComponentSize } from "./size-context-BX6kAdVj.js";
2
2
  import * as React from "react";
3
3
  import { Select as Select$1 } from "@base-ui/react/select";
4
4
  //#region src/select.d.ts
@@ -1,10 +1,11 @@
1
1
  import { ReactNode } from "react";
2
2
  //#region src/size-context.d.ts
3
3
  type ComponentSize = "sm" | "md" | "lg";
4
+ declare function useInheritedComponentSize(): ComponentSize | undefined;
4
5
  declare function SizeProvider({ children, size }: {
5
6
  children: ReactNode;
6
7
  size?: ComponentSize | null;
7
8
  }): import("react").JSX.Element;
8
9
  declare function useComponentSize(size?: ComponentSize | null, fallback?: ComponentSize): ComponentSize;
9
10
  //#endregion
10
- export { SizeProvider as n, useComponentSize as r, ComponentSize as t };
11
+ export { useInheritedComponentSize as i, SizeProvider as n, useComponentSize as r, ComponentSize as t };
@@ -1,2 +1,2 @@
1
- import { n as SizeProvider, r as useComponentSize, t as ComponentSize } from "./size-context-D4mYvcg8.js";
2
- export { type ComponentSize, SizeProvider, useComponentSize };
1
+ import { i as useInheritedComponentSize, n as SizeProvider, r as useComponentSize, t as ComponentSize } from "./size-context-BX6kAdVj.js";
2
+ export { type ComponentSize, SizeProvider, useComponentSize, useInheritedComponentSize };
@@ -3,6 +3,9 @@ import { Fragment, jsx } from "react/jsx-runtime";
3
3
  import { createContext, useContext } from "react";
4
4
  //#region src/size-context.tsx
5
5
  const SizeContext = createContext(void 0);
6
+ function useInheritedComponentSize() {
7
+ return useContext(SizeContext);
8
+ }
6
9
  function SizeProvider({ children, size }) {
7
10
  if (!size) return /* @__PURE__ */ jsx(Fragment, { children });
8
11
  return /* @__PURE__ */ jsx(SizeContext.Provider, {
@@ -11,8 +14,8 @@ function SizeProvider({ children, size }) {
11
14
  });
12
15
  }
13
16
  function useComponentSize(size, fallback = "md") {
14
- const inheritedSize = useContext(SizeContext);
17
+ const inheritedSize = useInheritedComponentSize();
15
18
  return size ?? inheritedSize ?? fallback;
16
19
  }
17
20
  //#endregion
18
- export { SizeProvider, useComponentSize };
21
+ export { SizeProvider, useComponentSize, useInheritedComponentSize };
@@ -1,4 +1,4 @@
1
- import { t as ComponentSize } from "./size-context-D4mYvcg8.js";
1
+ import { t as ComponentSize } from "./size-context-BX6kAdVj.js";
2
2
  import { ChartContainer, ChartValueType } from "./chart.js";
3
3
  import * as React from "react";
4
4
  //#region src/sparkline.d.ts
package/dist/stepper.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { t as cn } from "./cn-BI_4DMBf.js";
2
3
  import { CheckIcon } from "lucide-react";
3
4
  import { jsx, jsxs } from "react/jsx-runtime";