@dododog/ui 0.6.4 → 0.8.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.
@@ -25,7 +25,7 @@ function _interopNamespace(e) {
25
25
  var React__namespace = /*#__PURE__*/_interopNamespace(React);
26
26
 
27
27
  var FilterPill = React__namespace.forwardRef(
28
- ({ label, isActive = false, count, onClear, children, className }, ref) => {
28
+ ({ label, isActive = false, count, onClear, children, className, onToggle }, ref) => {
29
29
  const [isOpen, setIsOpen] = React__namespace.useState(false);
30
30
  const containerRef = React__namespace.useRef(null);
31
31
  React__namespace.useEffect(() => {
@@ -42,9 +42,10 @@ var FilterPill = React__namespace.forwardRef(
42
42
  "button",
43
43
  {
44
44
  type: "button",
45
- onClick: () => setIsOpen(!isOpen),
45
+ onClick: onToggle ?? (() => setIsOpen(!isOpen)),
46
+ "aria-pressed": onToggle ? isActive : void 0,
46
47
  className: chunkADIDI7AJ_js.cn(
47
- "inline-flex items-center gap-1.5 px-3 py-2 text-sm font-medium rounded-full border transition-all",
48
+ "inline-flex min-h-[44px] items-center gap-1.5 px-3 py-2 text-sm font-medium rounded-full border transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-secondary focus-visible:ring-offset-2 active:opacity-70",
48
49
  isActive ? "bg-primary text-white border-primary" : "bg-white text-gray-700 border-gray-200 hover:border-gray-300"
49
50
  ),
50
51
  children: [
@@ -53,7 +54,7 @@ var FilterPill = React__namespace.forwardRef(
53
54
  "inline-flex items-center justify-center w-5 h-5 text-xs rounded-full",
54
55
  isActive ? "bg-white/20 text-white" : "bg-gray-100 text-gray-600"
55
56
  ), children: count }),
56
- /* @__PURE__ */ jsxRuntime.jsx(
57
+ !onToggle && /* @__PURE__ */ jsxRuntime.jsx(
57
58
  "svg",
58
59
  {
59
60
  xmlns: "http://www.w3.org/2000/svg",
@@ -0,0 +1,143 @@
1
+ 'use strict';
2
+
3
+ var chunkADIDI7AJ_js = require('./chunk-ADIDI7AJ.js');
4
+ var React = require('react');
5
+ var classVarianceAuthority = require('class-variance-authority');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+
8
+ function _interopNamespace(e) {
9
+ if (e && e.__esModule) return e;
10
+ var n = Object.create(null);
11
+ if (e) {
12
+ Object.keys(e).forEach(function (k) {
13
+ if (k !== 'default') {
14
+ var d = Object.getOwnPropertyDescriptor(e, k);
15
+ Object.defineProperty(n, k, d.get ? d : {
16
+ enumerable: true,
17
+ get: function () { return e[k]; }
18
+ });
19
+ }
20
+ });
21
+ }
22
+ n.default = e;
23
+ return Object.freeze(n);
24
+ }
25
+
26
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
27
+
28
+ var signInCalloutVariants = classVarianceAuthority.cva(
29
+ "flex flex-col gap-4 rounded-2xl border p-5 sm:flex-row sm:items-center sm:gap-5 sm:p-6",
30
+ {
31
+ variants: {
32
+ variant: {
33
+ default: "border-primary/15 bg-sand-light",
34
+ subtle: "border-gray-200 bg-white",
35
+ highlight: "border-secondary/30 bg-secondary/5"
36
+ }
37
+ },
38
+ defaultVariants: {
39
+ variant: "default"
40
+ }
41
+ }
42
+ );
43
+ var ctaClasses = "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full bg-secondary px-6 py-3 text-sm font-semibold text-white shadow-md transition-all duration-200 hover:bg-secondary-dark hover:shadow-lg active:scale-95 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-secondary focus-visible:ring-offset-2";
44
+ var DefaultIcon = /* @__PURE__ */ jsxRuntime.jsxs(
45
+ "svg",
46
+ {
47
+ xmlns: "http://www.w3.org/2000/svg",
48
+ width: "24",
49
+ height: "24",
50
+ viewBox: "0 0 24 24",
51
+ fill: "none",
52
+ stroke: "currentColor",
53
+ strokeWidth: "2",
54
+ strokeLinecap: "round",
55
+ strokeLinejoin: "round",
56
+ "aria-hidden": "true",
57
+ children: [
58
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M18 20a6 6 0 0 0-12 0" }),
59
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "10", r: "4" }),
60
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "10" })
61
+ ]
62
+ }
63
+ );
64
+ var CheckIcon = /* @__PURE__ */ jsxRuntime.jsx(
65
+ "svg",
66
+ {
67
+ xmlns: "http://www.w3.org/2000/svg",
68
+ width: "16",
69
+ height: "16",
70
+ viewBox: "0 0 24 24",
71
+ fill: "none",
72
+ stroke: "currentColor",
73
+ strokeWidth: "2.5",
74
+ strokeLinecap: "round",
75
+ strokeLinejoin: "round",
76
+ className: "mt-0.5 shrink-0 text-secondary",
77
+ "aria-hidden": "true",
78
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M20 6 9 17l-5-5" })
79
+ }
80
+ );
81
+ var SignInCallout = React__namespace.forwardRef(
82
+ ({
83
+ title,
84
+ description,
85
+ ctaLabel,
86
+ onSignIn,
87
+ href,
88
+ benefits,
89
+ icon,
90
+ variant = "default",
91
+ className,
92
+ ...props
93
+ }, ref) => {
94
+ return /* @__PURE__ */ jsxRuntime.jsxs(
95
+ "div",
96
+ {
97
+ ref,
98
+ className: chunkADIDI7AJ_js.cn(signInCalloutVariants({ variant }), className),
99
+ ...props,
100
+ children: [
101
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-1 items-start gap-4", children: [
102
+ /* @__PURE__ */ jsxRuntime.jsx(
103
+ "span",
104
+ {
105
+ className: "flex h-11 w-11 shrink-0 items-center justify-center rounded-full bg-secondary/10 text-secondary",
106
+ "aria-hidden": "true",
107
+ children: icon ?? DefaultIcon
108
+ }
109
+ ),
110
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
111
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-base font-semibold text-primary", children: title }),
112
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1 text-sm text-gray-600", children: description }),
113
+ benefits && benefits.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "mt-3 flex flex-col gap-1.5", children: benefits.map((benefit, index) => /* @__PURE__ */ jsxRuntime.jsxs(
114
+ "li",
115
+ {
116
+ className: "flex items-start gap-2 text-sm text-gray-700",
117
+ children: [
118
+ CheckIcon,
119
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: benefit })
120
+ ]
121
+ },
122
+ index
123
+ )) })
124
+ ] })
125
+ ] }),
126
+ href ? /* @__PURE__ */ jsxRuntime.jsx("a", { href, className: chunkADIDI7AJ_js.cn(ctaClasses, "w-full sm:w-auto"), children: ctaLabel }) : /* @__PURE__ */ jsxRuntime.jsx(
127
+ "button",
128
+ {
129
+ type: "button",
130
+ onClick: onSignIn,
131
+ className: chunkADIDI7AJ_js.cn(ctaClasses, "w-full sm:w-auto"),
132
+ children: ctaLabel
133
+ }
134
+ )
135
+ ]
136
+ }
137
+ );
138
+ }
139
+ );
140
+ SignInCallout.displayName = "SignInCallout";
141
+
142
+ exports.SignInCallout = SignInCallout;
143
+ exports.signInCalloutVariants = signInCalloutVariants;
@@ -3,7 +3,7 @@ import * as React from 'react';
3
3
  import { jsx, jsxs } from 'react/jsx-runtime';
4
4
 
5
5
  var FilterPill = React.forwardRef(
6
- ({ label, isActive = false, count, onClear, children, className }, ref) => {
6
+ ({ label, isActive = false, count, onClear, children, className, onToggle }, ref) => {
7
7
  const [isOpen, setIsOpen] = React.useState(false);
8
8
  const containerRef = React.useRef(null);
9
9
  React.useEffect(() => {
@@ -20,9 +20,10 @@ var FilterPill = React.forwardRef(
20
20
  "button",
21
21
  {
22
22
  type: "button",
23
- onClick: () => setIsOpen(!isOpen),
23
+ onClick: onToggle ?? (() => setIsOpen(!isOpen)),
24
+ "aria-pressed": onToggle ? isActive : void 0,
24
25
  className: cn(
25
- "inline-flex items-center gap-1.5 px-3 py-2 text-sm font-medium rounded-full border transition-all",
26
+ "inline-flex min-h-[44px] items-center gap-1.5 px-3 py-2 text-sm font-medium rounded-full border transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-secondary focus-visible:ring-offset-2 active:opacity-70",
26
27
  isActive ? "bg-primary text-white border-primary" : "bg-white text-gray-700 border-gray-200 hover:border-gray-300"
27
28
  ),
28
29
  children: [
@@ -31,7 +32,7 @@ var FilterPill = React.forwardRef(
31
32
  "inline-flex items-center justify-center w-5 h-5 text-xs rounded-full",
32
33
  isActive ? "bg-white/20 text-white" : "bg-gray-100 text-gray-600"
33
34
  ), children: count }),
34
- /* @__PURE__ */ jsx(
35
+ !onToggle && /* @__PURE__ */ jsx(
35
36
  "svg",
36
37
  {
37
38
  xmlns: "http://www.w3.org/2000/svg",
@@ -0,0 +1,120 @@
1
+ import { cn } from './chunk-IMKLN273.mjs';
2
+ import * as React from 'react';
3
+ import { cva } from 'class-variance-authority';
4
+ import { jsxs, jsx } from 'react/jsx-runtime';
5
+
6
+ var signInCalloutVariants = cva(
7
+ "flex flex-col gap-4 rounded-2xl border p-5 sm:flex-row sm:items-center sm:gap-5 sm:p-6",
8
+ {
9
+ variants: {
10
+ variant: {
11
+ default: "border-primary/15 bg-sand-light",
12
+ subtle: "border-gray-200 bg-white",
13
+ highlight: "border-secondary/30 bg-secondary/5"
14
+ }
15
+ },
16
+ defaultVariants: {
17
+ variant: "default"
18
+ }
19
+ }
20
+ );
21
+ var ctaClasses = "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full bg-secondary px-6 py-3 text-sm font-semibold text-white shadow-md transition-all duration-200 hover:bg-secondary-dark hover:shadow-lg active:scale-95 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-secondary focus-visible:ring-offset-2";
22
+ var DefaultIcon = /* @__PURE__ */ jsxs(
23
+ "svg",
24
+ {
25
+ xmlns: "http://www.w3.org/2000/svg",
26
+ width: "24",
27
+ height: "24",
28
+ viewBox: "0 0 24 24",
29
+ fill: "none",
30
+ stroke: "currentColor",
31
+ strokeWidth: "2",
32
+ strokeLinecap: "round",
33
+ strokeLinejoin: "round",
34
+ "aria-hidden": "true",
35
+ children: [
36
+ /* @__PURE__ */ jsx("path", { d: "M18 20a6 6 0 0 0-12 0" }),
37
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "10", r: "4" }),
38
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "12", r: "10" })
39
+ ]
40
+ }
41
+ );
42
+ var CheckIcon = /* @__PURE__ */ jsx(
43
+ "svg",
44
+ {
45
+ xmlns: "http://www.w3.org/2000/svg",
46
+ width: "16",
47
+ height: "16",
48
+ viewBox: "0 0 24 24",
49
+ fill: "none",
50
+ stroke: "currentColor",
51
+ strokeWidth: "2.5",
52
+ strokeLinecap: "round",
53
+ strokeLinejoin: "round",
54
+ className: "mt-0.5 shrink-0 text-secondary",
55
+ "aria-hidden": "true",
56
+ children: /* @__PURE__ */ jsx("path", { d: "M20 6 9 17l-5-5" })
57
+ }
58
+ );
59
+ var SignInCallout = React.forwardRef(
60
+ ({
61
+ title,
62
+ description,
63
+ ctaLabel,
64
+ onSignIn,
65
+ href,
66
+ benefits,
67
+ icon,
68
+ variant = "default",
69
+ className,
70
+ ...props
71
+ }, ref) => {
72
+ return /* @__PURE__ */ jsxs(
73
+ "div",
74
+ {
75
+ ref,
76
+ className: cn(signInCalloutVariants({ variant }), className),
77
+ ...props,
78
+ children: [
79
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-1 items-start gap-4", children: [
80
+ /* @__PURE__ */ jsx(
81
+ "span",
82
+ {
83
+ className: "flex h-11 w-11 shrink-0 items-center justify-center rounded-full bg-secondary/10 text-secondary",
84
+ "aria-hidden": "true",
85
+ children: icon ?? DefaultIcon
86
+ }
87
+ ),
88
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
89
+ /* @__PURE__ */ jsx("p", { className: "text-base font-semibold text-primary", children: title }),
90
+ /* @__PURE__ */ jsx("div", { className: "mt-1 text-sm text-gray-600", children: description }),
91
+ benefits && benefits.length > 0 && /* @__PURE__ */ jsx("ul", { className: "mt-3 flex flex-col gap-1.5", children: benefits.map((benefit, index) => /* @__PURE__ */ jsxs(
92
+ "li",
93
+ {
94
+ className: "flex items-start gap-2 text-sm text-gray-700",
95
+ children: [
96
+ CheckIcon,
97
+ /* @__PURE__ */ jsx("span", { children: benefit })
98
+ ]
99
+ },
100
+ index
101
+ )) })
102
+ ] })
103
+ ] }),
104
+ href ? /* @__PURE__ */ jsx("a", { href, className: cn(ctaClasses, "w-full sm:w-auto"), children: ctaLabel }) : /* @__PURE__ */ jsx(
105
+ "button",
106
+ {
107
+ type: "button",
108
+ onClick: onSignIn,
109
+ className: cn(ctaClasses, "w-full sm:w-auto"),
110
+ children: ctaLabel
111
+ }
112
+ )
113
+ ]
114
+ }
115
+ );
116
+ }
117
+ );
118
+ SignInCallout.displayName = "SignInCallout";
119
+
120
+ export { SignInCallout, signInCalloutVariants };
@@ -7,6 +7,12 @@ interface FilterPillProps {
7
7
  onClear?: () => void;
8
8
  children?: React.ReactNode;
9
9
  className?: string;
10
+ /**
11
+ * Mode TOGGLE (additif) : quand fourni, le clic bascule le filtre au lieu
12
+ * d'ouvrir un dropdown — le chevron disparaît et l'état est exposé via
13
+ * `aria-pressed`. Utilisé par les filtres de la section chambres (fiche V2).
14
+ */
15
+ onToggle?: () => void;
10
16
  }
11
17
  declare const FilterPill: React.ForwardRefExoticComponent<FilterPillProps & React.RefAttributes<HTMLDivElement>>;
12
18
 
@@ -7,6 +7,12 @@ interface FilterPillProps {
7
7
  onClear?: () => void;
8
8
  children?: React.ReactNode;
9
9
  className?: string;
10
+ /**
11
+ * Mode TOGGLE (additif) : quand fourni, le clic bascule le filtre au lieu
12
+ * d'ouvrir un dropdown — le chevron disparaît et l'état est exposé via
13
+ * `aria-pressed`. Utilisé par les filtres de la section chambres (fiche V2).
14
+ */
15
+ onToggle?: () => void;
10
16
  }
11
17
  declare const FilterPill: React.ForwardRefExoticComponent<FilterPillProps & React.RefAttributes<HTMLDivElement>>;
12
18
 
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var chunkN2Q4Z2FU_js = require('../../chunk-N2Q4Z2FU.js');
3
+ var chunkTJDHGNMR_js = require('../../chunk-TJDHGNMR.js');
4
4
  require('../../chunk-ADIDI7AJ.js');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "FilterPill", {
9
9
  enumerable: true,
10
- get: function () { return chunkN2Q4Z2FU_js.FilterPill; }
10
+ get: function () { return chunkTJDHGNMR_js.FilterPill; }
11
11
  });
@@ -1,2 +1,2 @@
1
- export { FilterPill } from '../../chunk-TNWMTKNR.mjs';
1
+ export { FilterPill } from '../../chunk-YKBASX5A.mjs';
2
2
  import '../../chunk-IMKLN273.mjs';
@@ -0,0 +1,26 @@
1
+ import * as class_variance_authority_types from 'class-variance-authority/types';
2
+ import * as React from 'react';
3
+ import { VariantProps } from 'class-variance-authority';
4
+
5
+ declare const signInCalloutVariants: (props?: ({
6
+ variant?: "default" | "subtle" | "highlight" | null | undefined;
7
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
8
+ interface SignInCalloutProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "title">, VariantProps<typeof signInCalloutVariants> {
9
+ /** Titre de l'encart, ex. « Vous avez déjà un compte ? ». */
10
+ title: string;
11
+ /** Texte descriptif — chaîne ou contenu riche. */
12
+ description: React.ReactNode;
13
+ /** Libellé du bouton d'action, ex. « Se connecter ». */
14
+ ctaLabel: string;
15
+ /** Handler de clic sur le CTA (rendu comme <button>). Ignoré si `href` est fourni. */
16
+ onSignIn?: () => void;
17
+ /** Lien du CTA (rendu comme <a>). Prioritaire sur `onSignIn`. */
18
+ href?: string;
19
+ /** Liste facultative de bénéfices affichés sous la description. */
20
+ benefits?: string[];
21
+ /** Icône décorative personnalisée (par défaut : silhouette utilisateur). */
22
+ icon?: React.ReactNode;
23
+ }
24
+ declare const SignInCallout: React.ForwardRefExoticComponent<SignInCalloutProps & React.RefAttributes<HTMLDivElement>>;
25
+
26
+ export { SignInCallout, type SignInCalloutProps, signInCalloutVariants };
@@ -0,0 +1,26 @@
1
+ import * as class_variance_authority_types from 'class-variance-authority/types';
2
+ import * as React from 'react';
3
+ import { VariantProps } from 'class-variance-authority';
4
+
5
+ declare const signInCalloutVariants: (props?: ({
6
+ variant?: "default" | "subtle" | "highlight" | null | undefined;
7
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
8
+ interface SignInCalloutProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "title">, VariantProps<typeof signInCalloutVariants> {
9
+ /** Titre de l'encart, ex. « Vous avez déjà un compte ? ». */
10
+ title: string;
11
+ /** Texte descriptif — chaîne ou contenu riche. */
12
+ description: React.ReactNode;
13
+ /** Libellé du bouton d'action, ex. « Se connecter ». */
14
+ ctaLabel: string;
15
+ /** Handler de clic sur le CTA (rendu comme <button>). Ignoré si `href` est fourni. */
16
+ onSignIn?: () => void;
17
+ /** Lien du CTA (rendu comme <a>). Prioritaire sur `onSignIn`. */
18
+ href?: string;
19
+ /** Liste facultative de bénéfices affichés sous la description. */
20
+ benefits?: string[];
21
+ /** Icône décorative personnalisée (par défaut : silhouette utilisateur). */
22
+ icon?: React.ReactNode;
23
+ }
24
+ declare const SignInCallout: React.ForwardRefExoticComponent<SignInCalloutProps & React.RefAttributes<HTMLDivElement>>;
25
+
26
+ export { SignInCallout, type SignInCalloutProps, signInCalloutVariants };
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ var chunkWXSBKARZ_js = require('../../chunk-WXSBKARZ.js');
4
+ require('../../chunk-ADIDI7AJ.js');
5
+
6
+
7
+
8
+ Object.defineProperty(exports, "SignInCallout", {
9
+ enumerable: true,
10
+ get: function () { return chunkWXSBKARZ_js.SignInCallout; }
11
+ });
12
+ Object.defineProperty(exports, "signInCalloutVariants", {
13
+ enumerable: true,
14
+ get: function () { return chunkWXSBKARZ_js.signInCalloutVariants; }
15
+ });
@@ -0,0 +1,2 @@
1
+ export { SignInCallout, signInCalloutVariants } from '../../chunk-Z3KRMKHP.mjs';
2
+ import '../../chunk-IMKLN273.mjs';
package/dist/index.d.mts CHANGED
@@ -66,6 +66,7 @@ export { CardList, CardListProps } from './components/CardList/index.mjs';
66
66
  export { FilterAccordion, FilterAccordionItemData, FilterAccordionProps } from './components/FilterAccordion/index.mjs';
67
67
  export { RoomRate, RoomRateCancellation, RoomRateCancellationKind, RoomTypeCard, RoomTypeCardProps, RoomTypeCardSkeleton, RoomTypeCardSkeletonProps, RoomTypeData } from './components/RoomTypeCard/index.mjs';
68
68
  import * as react_jsx_runtime from 'react/jsx-runtime';
69
+ export { SignInCallout, SignInCalloutProps, signInCalloutVariants } from './components/SignInCallout/index.mjs';
69
70
  export { cn } from './utils/index.mjs';
70
71
  import 'clsx';
71
72
 
package/dist/index.d.ts CHANGED
@@ -66,6 +66,7 @@ export { CardList, CardListProps } from './components/CardList/index.js';
66
66
  export { FilterAccordion, FilterAccordionItemData, FilterAccordionProps } from './components/FilterAccordion/index.js';
67
67
  export { RoomRate, RoomRateCancellation, RoomRateCancellationKind, RoomTypeCard, RoomTypeCardProps, RoomTypeCardSkeleton, RoomTypeCardSkeletonProps, RoomTypeData } from './components/RoomTypeCard/index.js';
68
68
  import * as react_jsx_runtime from 'react/jsx-runtime';
69
+ export { SignInCallout, SignInCalloutProps, signInCalloutVariants } from './components/SignInCallout/index.js';
69
70
  export { cn } from './utils/index.js';
70
71
  import 'clsx';
71
72
 
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  'use strict';
2
2
 
3
+ var chunkL7OYR6U3_js = require('./chunk-L7OYR6U3.js');
3
4
  var chunkVTELEOT7_js = require('./chunk-VTELEOT7.js');
4
5
  var chunkDTIYZ3TQ_js = require('./chunk-DTIYZ3TQ.js');
5
6
  var chunkE6ZNND75_js = require('./chunk-E6ZNND75.js');
@@ -11,22 +12,22 @@ var chunk3VU6TPAT_js = require('./chunk-3VU6TPAT.js');
11
12
  var chunkI4S3R6C6_js = require('./chunk-I4S3R6C6.js');
12
13
  var chunk762LQMWP_js = require('./chunk-762LQMWP.js');
13
14
  var chunk7IJOHVNJ_js = require('./chunk-7IJOHVNJ.js');
14
- var chunkL7OYR6U3_js = require('./chunk-L7OYR6U3.js');
15
+ var chunkPG4I4NWO_js = require('./chunk-PG4I4NWO.js');
15
16
  var chunkGXKON34B_js = require('./chunk-GXKON34B.js');
16
- var chunkTZHT7NZU_js = require('./chunk-TZHT7NZU.js');
17
17
  var chunkS26SN3WK_js = require('./chunk-S26SN3WK.js');
18
+ var chunkNCU5PY34_js = require('./chunk-NCU5PY34.js');
18
19
  var chunkHS3MAW3G_js = require('./chunk-HS3MAW3G.js');
19
20
  var chunkQWDKSY6Y_js = require('./chunk-QWDKSY6Y.js');
20
21
  var chunk3R7PT3JG_js = require('./chunk-3R7PT3JG.js');
21
22
  var chunkDS4LM7OS_js = require('./chunk-DS4LM7OS.js');
22
- var chunkNCU5PY34_js = require('./chunk-NCU5PY34.js');
23
+ var chunkWXSBKARZ_js = require('./chunk-WXSBKARZ.js');
23
24
  var chunkTE4WHZ4Q_js = require('./chunk-TE4WHZ4Q.js');
24
25
  var chunkHN6B4TAW_js = require('./chunk-HN6B4TAW.js');
25
26
  var chunkKZSGVMUG_js = require('./chunk-KZSGVMUG.js');
26
27
  var chunkNBDPT3XQ_js = require('./chunk-NBDPT3XQ.js');
27
28
  var chunkSCGN5H6D_js = require('./chunk-SCGN5H6D.js');
28
29
  var chunkB4LR4H6R_js = require('./chunk-B4LR4H6R.js');
29
- var chunkPG4I4NWO_js = require('./chunk-PG4I4NWO.js');
30
+ var chunkTZHT7NZU_js = require('./chunk-TZHT7NZU.js');
30
31
  var chunkPRDIS2VR_js = require('./chunk-PRDIS2VR.js');
31
32
  var chunkIRKM5UF4_js = require('./chunk-IRKM5UF4.js');
32
33
  var chunkECVKFE6U_js = require('./chunk-ECVKFE6U.js');
@@ -40,15 +41,15 @@ var chunkTDGU5Y2P_js = require('./chunk-TDGU5Y2P.js');
40
41
  var chunkIEHX4DU6_js = require('./chunk-IEHX4DU6.js');
41
42
  var chunkS5TLUDNM_js = require('./chunk-S5TLUDNM.js');
42
43
  var chunk7W3TFPIF_js = require('./chunk-7W3TFPIF.js');
43
- var chunkN2Q4Z2FU_js = require('./chunk-N2Q4Z2FU.js');
44
+ var chunkTJDHGNMR_js = require('./chunk-TJDHGNMR.js');
44
45
  var chunkS732LTPT_js = require('./chunk-S732LTPT.js');
45
46
  var chunkC4RZBOKH_js = require('./chunk-C4RZBOKH.js');
46
47
  var chunkKOO5ZXLD_js = require('./chunk-KOO5ZXLD.js');
47
48
  var chunkP7GAKOCX_js = require('./chunk-P7GAKOCX.js');
48
- var chunkIJIUUBFT_js = require('./chunk-IJIUUBFT.js');
49
49
  var chunkT4AT3YCT_js = require('./chunk-T4AT3YCT.js');
50
50
  var chunkAIA3NHCK_js = require('./chunk-AIA3NHCK.js');
51
51
  var chunkE24VNM6S_js = require('./chunk-E24VNM6S.js');
52
+ var chunkIJIUUBFT_js = require('./chunk-IJIUUBFT.js');
52
53
  var chunkXXC2YD3D_js = require('./chunk-XXC2YD3D.js');
53
54
  var chunkVWFY24XF_js = require('./chunk-VWFY24XF.js');
54
55
  var chunkT5FLQQP6_js = require('./chunk-T5FLQQP6.js');
@@ -484,6 +485,14 @@ function MobileBookingBar({
484
485
  );
485
486
  }
486
487
 
488
+ Object.defineProperty(exports, "Textarea", {
489
+ enumerable: true,
490
+ get: function () { return chunkL7OYR6U3_js.Textarea; }
491
+ });
492
+ Object.defineProperty(exports, "textareaVariants", {
493
+ enumerable: true,
494
+ get: function () { return chunkL7OYR6U3_js.textareaVariants; }
495
+ });
487
496
  Object.defineProperty(exports, "Toast", {
488
497
  enumerable: true,
489
498
  get: function () { return chunkVTELEOT7_js.Toast; }
@@ -552,21 +561,21 @@ Object.defineProperty(exports, "tagVariants", {
552
561
  enumerable: true,
553
562
  get: function () { return chunk7IJOHVNJ_js.tagVariants; }
554
563
  });
555
- Object.defineProperty(exports, "Textarea", {
564
+ Object.defineProperty(exports, "ProgressBar", {
556
565
  enumerable: true,
557
- get: function () { return chunkL7OYR6U3_js.Textarea; }
566
+ get: function () { return chunkPG4I4NWO_js.ProgressBar; }
558
567
  });
559
- Object.defineProperty(exports, "textareaVariants", {
568
+ Object.defineProperty(exports, "progressBarVariants", {
560
569
  enumerable: true,
561
- get: function () { return chunkL7OYR6U3_js.textareaVariants; }
570
+ get: function () { return chunkPG4I4NWO_js.progressBarVariants; }
562
571
  });
563
- Object.defineProperty(exports, "RadioGroup", {
572
+ Object.defineProperty(exports, "progressFillVariants", {
564
573
  enumerable: true,
565
- get: function () { return chunkGXKON34B_js.RadioGroup; }
574
+ get: function () { return chunkPG4I4NWO_js.progressFillVariants; }
566
575
  });
567
- Object.defineProperty(exports, "Rating", {
576
+ Object.defineProperty(exports, "RadioGroup", {
568
577
  enumerable: true,
569
- get: function () { return chunkTZHT7NZU_js.Rating; }
578
+ get: function () { return chunkGXKON34B_js.RadioGroup; }
570
579
  });
571
580
  Object.defineProperty(exports, "RoomTypeCard", {
572
581
  enumerable: true,
@@ -576,6 +585,22 @@ Object.defineProperty(exports, "RoomTypeCardSkeleton", {
576
585
  enumerable: true,
577
586
  get: function () { return chunkS26SN3WK_js.RoomTypeCardSkeleton; }
578
587
  });
588
+ Object.defineProperty(exports, "Skeleton", {
589
+ enumerable: true,
590
+ get: function () { return chunkNCU5PY34_js.Skeleton; }
591
+ });
592
+ Object.defineProperty(exports, "SkeletonCircle", {
593
+ enumerable: true,
594
+ get: function () { return chunkNCU5PY34_js.SkeletonCircle; }
595
+ });
596
+ Object.defineProperty(exports, "SkeletonImage", {
597
+ enumerable: true,
598
+ get: function () { return chunkNCU5PY34_js.SkeletonImage; }
599
+ });
600
+ Object.defineProperty(exports, "SkeletonText", {
601
+ enumerable: true,
602
+ get: function () { return chunkNCU5PY34_js.SkeletonText; }
603
+ });
579
604
  Object.defineProperty(exports, "SearchBar", {
580
605
  enumerable: true,
581
606
  get: function () { return chunkHS3MAW3G_js.SearchBar; }
@@ -596,21 +621,13 @@ Object.defineProperty(exports, "Sidebar", {
596
621
  enumerable: true,
597
622
  get: function () { return chunkDS4LM7OS_js.Sidebar; }
598
623
  });
599
- Object.defineProperty(exports, "Skeleton", {
624
+ Object.defineProperty(exports, "SignInCallout", {
600
625
  enumerable: true,
601
- get: function () { return chunkNCU5PY34_js.Skeleton; }
626
+ get: function () { return chunkWXSBKARZ_js.SignInCallout; }
602
627
  });
603
- Object.defineProperty(exports, "SkeletonCircle", {
604
- enumerable: true,
605
- get: function () { return chunkNCU5PY34_js.SkeletonCircle; }
606
- });
607
- Object.defineProperty(exports, "SkeletonImage", {
628
+ Object.defineProperty(exports, "signInCalloutVariants", {
608
629
  enumerable: true,
609
- get: function () { return chunkNCU5PY34_js.SkeletonImage; }
610
- });
611
- Object.defineProperty(exports, "SkeletonText", {
612
- enumerable: true,
613
- get: function () { return chunkNCU5PY34_js.SkeletonText; }
630
+ get: function () { return chunkWXSBKARZ_js.signInCalloutVariants; }
614
631
  });
615
632
  Object.defineProperty(exports, "LoadingOverlay", {
616
633
  enumerable: true,
@@ -636,17 +653,9 @@ Object.defineProperty(exports, "PriceDisplay", {
636
653
  enumerable: true,
637
654
  get: function () { return chunkB4LR4H6R_js.PriceDisplay; }
638
655
  });
639
- Object.defineProperty(exports, "ProgressBar", {
640
- enumerable: true,
641
- get: function () { return chunkPG4I4NWO_js.ProgressBar; }
642
- });
643
- Object.defineProperty(exports, "progressBarVariants", {
644
- enumerable: true,
645
- get: function () { return chunkPG4I4NWO_js.progressBarVariants; }
646
- });
647
- Object.defineProperty(exports, "progressFillVariants", {
656
+ Object.defineProperty(exports, "Rating", {
648
657
  enumerable: true,
649
- get: function () { return chunkPG4I4NWO_js.progressFillVariants; }
658
+ get: function () { return chunkTZHT7NZU_js.Rating; }
650
659
  });
651
660
  Object.defineProperty(exports, "PromoBanner", {
652
661
  enumerable: true,
@@ -714,7 +723,7 @@ Object.defineProperty(exports, "FilterAccordion", {
714
723
  });
715
724
  Object.defineProperty(exports, "FilterPill", {
716
725
  enumerable: true,
717
- get: function () { return chunkN2Q4Z2FU_js.FilterPill; }
726
+ get: function () { return chunkTJDHGNMR_js.FilterPill; }
718
727
  });
719
728
  Object.defineProperty(exports, "FloatingDock", {
720
729
  enumerable: true,
@@ -732,10 +741,6 @@ Object.defineProperty(exports, "Carousel", {
732
741
  enumerable: true,
733
742
  get: function () { return chunkP7GAKOCX_js.Carousel; }
734
743
  });
735
- Object.defineProperty(exports, "Checkbox", {
736
- enumerable: true,
737
- get: function () { return chunkIJIUUBFT_js.Checkbox; }
738
- });
739
744
  Object.defineProperty(exports, "Counter", {
740
745
  enumerable: true,
741
746
  get: function () { return chunkT4AT3YCT_js.Counter; }
@@ -752,6 +757,10 @@ Object.defineProperty(exports, "DetailList", {
752
757
  enumerable: true,
753
758
  get: function () { return chunkE24VNM6S_js.DetailList; }
754
759
  });
760
+ Object.defineProperty(exports, "Checkbox", {
761
+ enumerable: true,
762
+ get: function () { return chunkIJIUUBFT_js.Checkbox; }
763
+ });
755
764
  Object.defineProperty(exports, "Divider", {
756
765
  enumerable: true,
757
766
  get: function () { return chunkXXC2YD3D_js.Divider; }
package/dist/index.mjs CHANGED
@@ -1,3 +1,4 @@
1
+ export { Textarea, textareaVariants } from './chunk-ZZ4EWC53.mjs';
1
2
  export { Toast, toastVariants } from './chunk-YVTUUNAX.mjs';
2
3
  export { Toggle } from './chunk-2AB5ZHY5.mjs';
3
4
  export { Tooltip } from './chunk-2MJTZ6RR.mjs';
@@ -9,22 +10,22 @@ export { Stepper } from './chunk-2ASKBL63.mjs';
9
10
  export { Switch, switchThumbVariants, switchTrackVariants } from './chunk-DMCMWOBJ.mjs';
10
11
  export { Tabs } from './chunk-VOZPGXQD.mjs';
11
12
  export { Tag, tagVariants } from './chunk-WOG6V7OW.mjs';
12
- export { Textarea, textareaVariants } from './chunk-ZZ4EWC53.mjs';
13
+ export { ProgressBar, progressBarVariants, progressFillVariants } from './chunk-UGYMWWKT.mjs';
13
14
  export { RadioGroup } from './chunk-F2BUMJYW.mjs';
14
- export { Rating } from './chunk-SGDC4IVX.mjs';
15
15
  export { RoomTypeCard, RoomTypeCardSkeleton } from './chunk-QTW2FJUJ.mjs';
16
+ export { Skeleton, SkeletonCircle, SkeletonImage, SkeletonText } from './chunk-PAHSQMXV.mjs';
16
17
  export { SearchBar } from './chunk-KQK7LFWM.mjs';
17
18
  export { SegmentedControl } from './chunk-36Y7UU32.mjs';
18
19
  export { Select, selectVariants } from './chunk-333YD5QI.mjs';
19
20
  export { Sidebar } from './chunk-MPL35D5G.mjs';
20
- export { Skeleton, SkeletonCircle, SkeletonImage, SkeletonText } from './chunk-PAHSQMXV.mjs';
21
+ export { SignInCallout, signInCalloutVariants } from './chunk-Z3KRMKHP.mjs';
21
22
  export { LoadingOverlay } from './chunk-WVEJS2J2.mjs';
22
23
  export { MegaMenu } from './chunk-EUEM2D5M.mjs';
23
24
  export { MobileMenu } from './chunk-R4DC7XPP.mjs';
24
25
  export { Modal } from './chunk-74B2EGKT.mjs';
25
26
  export { Pagination } from './chunk-XQVODPHL.mjs';
26
27
  export { PriceDisplay } from './chunk-REXLQTNE.mjs';
27
- export { ProgressBar, progressBarVariants, progressFillVariants } from './chunk-UGYMWWKT.mjs';
28
+ export { Rating } from './chunk-SGDC4IVX.mjs';
28
29
  export { PromoBanner, promoBannerVariants } from './chunk-FNDR3WOZ.mjs';
29
30
  export { Header } from './chunk-PPDKQ3FF.mjs';
30
31
  export { HotelCard } from './chunk-XSSRFA5O.mjs';
@@ -38,15 +39,15 @@ export { DualRangeSlider } from './chunk-ERL3WXNY.mjs';
38
39
  export { EmptyState } from './chunk-OCUHCDAQ.mjs';
39
40
  export { ErrorBoundary } from './chunk-5257MWFI.mjs';
40
41
  export { FilterAccordion } from './chunk-VQVRKRSM.mjs';
41
- export { FilterPill } from './chunk-TNWMTKNR.mjs';
42
+ export { FilterPill } from './chunk-YKBASX5A.mjs';
42
43
  export { FloatingDock } from './chunk-PBDPZTHK.mjs';
43
44
  export { Footer } from './chunk-SZ3SV4SJ.mjs';
44
45
  export { GuestPicker } from './chunk-EJ7LDW7E.mjs';
45
46
  export { Carousel } from './chunk-OOPP4ES2.mjs';
46
- export { Checkbox } from './chunk-EEIPCJQ2.mjs';
47
47
  export { Counter } from './chunk-LRNSVRUN.mjs';
48
48
  export { DatePickerInput, DateRangePicker } from './chunk-FL3GD5FJ.mjs';
49
49
  export { DetailList } from './chunk-N6THLJIG.mjs';
50
+ export { Checkbox } from './chunk-EEIPCJQ2.mjs';
50
51
  export { Divider } from './chunk-E4B6LXK7.mjs';
51
52
  export { Drawer } from './chunk-ZLF7IL3Y.mjs';
52
53
  export { DropdownMenu } from './chunk-Q7BKR6O7.mjs';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dododog/ui",
3
- "version": "0.6.4",
3
+ "version": "0.8.0",
4
4
  "description": "React UI component library for DodoDog — pet-friendly travel platform",
5
5
  "sideEffects": false,
6
6
  "license": "MIT",
@@ -278,6 +278,11 @@
278
278
  "import": "./dist/components/Sidebar/index.mjs",
279
279
  "require": "./dist/components/Sidebar/index.js"
280
280
  },
281
+ "./sign-in-callout": {
282
+ "types": "./dist/components/SignInCallout/index.d.ts",
283
+ "import": "./dist/components/SignInCallout/index.mjs",
284
+ "require": "./dist/components/SignInCallout/index.js"
285
+ },
281
286
  "./skeleton": {
282
287
  "types": "./dist/components/Skeleton/index.d.ts",
283
288
  "import": "./dist/components/Skeleton/index.mjs",
@@ -362,25 +367,19 @@
362
367
  "main": "./dist/index.js",
363
368
  "module": "./dist/index.mjs",
364
369
  "types": "./dist/index.d.ts",
365
- "scripts": {
366
- "build": "NODE_OPTIONS='--max-old-space-size=8192' tsup",
367
- "dev": "tsup --watch",
368
- "lint": "eslint . --max-warnings 0",
369
- "clean": "rm -rf .turbo node_modules dist"
370
- },
371
370
  "peerDependencies": {
372
371
  "react": ">=18",
373
372
  "tailwindcss": ">=3"
374
373
  },
375
374
  "devDependencies": {
376
- "@dododog/eslint-config": "workspace:*",
377
- "@dododog/typescript-config": "workspace:*",
378
375
  "@types/react": "^18.2.61",
379
376
  "@types/react-dom": "^18.2.19",
380
377
  "eslint": "^8.57.0",
381
378
  "react": "^18.2.0",
382
379
  "tsup": "^8.0.2",
383
- "typescript": "5.5.4"
380
+ "typescript": "5.5.4",
381
+ "@dododog/eslint-config": "0.0.0",
382
+ "@dododog/typescript-config": "0.0.0"
384
383
  },
385
384
  "publishConfig": {
386
385
  "access": "public"
@@ -390,5 +389,11 @@
390
389
  "class-variance-authority": "^0.7.1",
391
390
  "clsx": "^2.1.1",
392
391
  "tailwind-merge": "^2.6.1"
392
+ },
393
+ "scripts": {
394
+ "build": "NODE_OPTIONS='--max-old-space-size=8192' tsup",
395
+ "dev": "tsup --watch",
396
+ "lint": "eslint . --max-warnings 0",
397
+ "clean": "rm -rf .turbo node_modules dist"
393
398
  }
394
- }
399
+ }