@dimasbaguspm/versaur 0.0.31 → 0.0.32

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/dist/js/index.js CHANGED
@@ -1,33 +1,34 @@
1
- import { L as t, P as s, S as r } from "./skeleton-BNZyaRjo.js";
2
- import { A as n, a as p, B as u, b as i, F as l, e as I, P as c, c as S, d as m, S as B, T as g } from "./top-bar-sahvpzBv.js";
3
- import { B as b, C as T, b as x, a as h, D as f, k as C, E as P, M as k, P as A, R as M, d as F, c as D, S as L, e as R, j as w, i as G, h as j, f as v, T as y, g as E } from "./bottom-sheet-input-CI-9wYa7.js";
4
- import { B as q, D as H, M as z } from "./bottom-sheet-3W_vCYl6.js";
5
- import { M as K, T as O } from "./tooltip-C1P1eN0U.js";
6
- import { A as U, a as V, b as W, c as X, d as Y, B as Z, o as _, e as $, f as aa, g as ea, h as ta, C as sa, i as ra, F as oa, I as na, l as pa, n as ua, m as ia, N as la, T as Ia, j as ca, k as Sa } from "./image-rectangle-BpMI_fTE.js";
7
- import { S as Ba } from "./snackbar-DH8jCh2V.js";
8
- import { B as da, T as ba } from "./tabs-BOdkXJdy.js";
9
- import { S as xa, u as ha } from "./use-snackbars-B0MaRlg1.js";
1
+ import { L as e, P as s, S as r } from "./skeleton-BNZyaRjo.js";
2
+ import { A as n, a as p, B as u, b as i, F as l, e as I, P as c, c as S, d as m, S as B, T as g } from "./top-bar-DJNgsR7X.js";
3
+ import { B as b, C as T, b as x, a as h, D as f, k as C, E as P, M, P as k, R as A, d as F, c as D, S as L, e as R, j as w, i as G, h as j, f as v, T as y, g as E } from "./bottom-sheet-input-lRqhqp7I.js";
4
+ import { B as q, D as H, M as z } from "./bottom-sheet-DJgcgmgw.js";
5
+ import { A as K, a as O, b as Q, c as U, d as V, B as W, p as X, e as Y, f as Z, h as _, i as $, g as aa, C as ta, j as ea, F as sa, I as ra, m as oa, o as na, n as pa, M as ua, N as ia, T as la, k as Ia, l as ca } from "./image-rectangle-BS6j3xEC.js";
6
+ import { T as ma } from "./tooltip-J7r2xoUk.js";
7
+ import { S as ga } from "./snackbar-DH8jCh2V.js";
8
+ import { B as ba, T as Ta } from "./tabs-80jJFJ7W.js";
9
+ import { S as ha, u as fa } from "./use-snackbars-B0MaRlg1.js";
10
10
  export {
11
- U as Alert,
12
- V as Anchor,
11
+ K as Alert,
12
+ O as Anchor,
13
13
  n as AppBar,
14
- W as Attribute,
15
- X as AttributeList,
16
- Y as Avatar,
17
- Z as Badge,
14
+ Q as Attribute,
15
+ U as AttributeList,
16
+ V as Avatar,
17
+ W as Badge,
18
18
  p as BadgeGroup,
19
- _ as BaseImage,
19
+ X as BaseImage,
20
20
  u as BottomBar,
21
21
  q as BottomSheet,
22
22
  b as BottomSheetInput,
23
- $ as Brand,
24
- da as Breadcrumbs,
25
- aa as Button,
26
- ea as ButtonFloat,
23
+ Y as Brand,
24
+ ba as Breadcrumbs,
25
+ Z as Button,
26
+ _ as ButtonFloat,
27
27
  i as ButtonGroup,
28
- ta as ButtonIcon,
29
- sa as Calculator,
30
- ra as Card,
28
+ $ as ButtonIcon,
29
+ aa as ButtonMenuIcon,
30
+ ta as Calculator,
31
+ ea as Card,
31
32
  T as CheckboxInput,
32
33
  x as ChipMultipleInput,
33
34
  h as ChipSingleInput,
@@ -35,24 +36,24 @@ export {
35
36
  H as Drawer,
36
37
  C as DrawerInput,
37
38
  P as EmailInput,
38
- oa as FilterChip,
39
+ sa as FilterChip,
39
40
  l as FilterChipGroup,
40
41
  I as FormLayout,
41
- na as Icon,
42
- pa as ImageCircle,
43
- ua as ImageRectangle,
44
- ia as ImageSquare,
45
- t as LoadingIndicator,
46
- K as Menu,
42
+ ra as Icon,
43
+ oa as ImageCircle,
44
+ na as ImageRectangle,
45
+ pa as ImageSquare,
46
+ e as LoadingIndicator,
47
+ ua as Menu,
47
48
  z as Modal,
48
- k as ModalInput,
49
- la as NoResults,
49
+ M as ModalInput,
50
+ ia as NoResults,
50
51
  c as PageContent,
51
52
  S as PageHeader,
52
53
  m as PageLayout,
53
- A as PriceInput,
54
+ k as PriceInput,
54
55
  s as ProgressIndicator,
55
- M as RadioInput,
56
+ A as RadioInput,
56
57
  F as SearchInput,
57
58
  D as SegmentMultipleInput,
58
59
  L as SegmentSingleInput,
@@ -61,17 +62,17 @@ export {
61
62
  G as SelectableSingleInput,
62
63
  B as SideBar,
63
64
  r as Skeleton,
64
- Ba as Snackbar,
65
- xa as SnackbarsProvider,
65
+ ga as Snackbar,
66
+ ha as SnackbarsProvider,
66
67
  j as SwitchInput,
67
- Ia as Table,
68
- ba as Tabs,
69
- ca as Text,
68
+ la as Table,
69
+ Ta as Tabs,
70
+ Ia as Text,
70
71
  v as TextAreaInput,
71
72
  y as TextInput,
72
- Sa as Tile,
73
+ ca as Tile,
73
74
  E as TimePickerInput,
74
- O as Tooltip,
75
+ ma as Tooltip,
75
76
  g as TopBar,
76
- ha as useSnackbars
77
+ fa as useSnackbars
77
78
  };
@@ -1,4 +1,4 @@
1
- import { A as r, a as e, B as s, b as t, F as p, e as B, P as u, c as d, d as g, S as P, T as i } from "../top-bar-sahvpzBv.js";
1
+ import { A as r, a as e, B as s, b as t, F as p, e as B, P as u, c as d, d as g, S as P, T as i } from "../top-bar-DJNgsR7X.js";
2
2
  export {
3
3
  r as AppBar,
4
4
  e as BadgeGroup,
@@ -1,4 +1,4 @@
1
- import { B as s, T as b } from "../tabs-BOdkXJdy.js";
1
+ import { B as s, T as b } from "../tabs-80jJFJ7W.js";
2
2
  export {
3
3
  s as Breadcrumbs,
4
4
  b as Tabs
@@ -1,9 +1,10 @@
1
- import { B as e, D as r, M as t } from "../bottom-sheet-3W_vCYl6.js";
2
- import { M, T as m } from "../tooltip-C1P1eN0U.js";
1
+ import { B as a, D as e, M as t } from "../bottom-sheet-DJgcgmgw.js";
2
+ import { M as m } from "../image-rectangle-BS6j3xEC.js";
3
+ import { T as M } from "../tooltip-J7r2xoUk.js";
3
4
  export {
4
- e as BottomSheet,
5
- r as Drawer,
6
- M as Menu,
5
+ a as BottomSheet,
6
+ e as Drawer,
7
+ m as Menu,
7
8
  t as Modal,
8
- m as Tooltip
9
+ M as Tooltip
9
10
  };
@@ -1,27 +1,28 @@
1
- import { A as t, a as e, b as r, c as o, d as l, B as n, o as c, e as i, f as u, g, h as m, C as B, i as I, F as A, I as b, l as C, n as d, m as T, N as f, T as h, j as p, k as x } from "../image-rectangle-BpMI_fTE.js";
2
- import { S } from "../snackbar-DH8jCh2V.js";
1
+ import { A as t, a as e, b as o, c as r, d as n, B as l, p as u, e as c, f as i, h as B, i as I, g, C as m, j as A, F as b, I as C, m as d, o as p, n as T, N as f, T as h, k as x, l as F } from "../image-rectangle-BS6j3xEC.js";
2
+ import { S as k } from "../snackbar-DH8jCh2V.js";
3
3
  export {
4
4
  t as Alert,
5
5
  e as Anchor,
6
- r as Attribute,
7
- o as AttributeList,
8
- l as Avatar,
9
- n as Badge,
10
- c as BaseImage,
11
- i as Brand,
12
- u as Button,
13
- g as ButtonFloat,
14
- m as ButtonIcon,
15
- B as Calculator,
16
- I as Card,
17
- A as FilterChip,
18
- b as Icon,
19
- C as ImageCircle,
20
- d as ImageRectangle,
6
+ o as Attribute,
7
+ r as AttributeList,
8
+ n as Avatar,
9
+ l as Badge,
10
+ u as BaseImage,
11
+ c as Brand,
12
+ i as Button,
13
+ B as ButtonFloat,
14
+ I as ButtonIcon,
15
+ g as ButtonMenuIcon,
16
+ m as Calculator,
17
+ A as Card,
18
+ b as FilterChip,
19
+ C as Icon,
20
+ d as ImageCircle,
21
+ p as ImageRectangle,
21
22
  T as ImageSquare,
22
23
  f as NoResults,
23
- S as Snackbar,
24
+ k as Snackbar,
24
25
  h as Table,
25
- p as Text,
26
- x as Tile
26
+ x as Text,
27
+ F as Tile
27
28
  };
@@ -1,6 +1,6 @@
1
1
  import { c as d, j as s, a as u } from "./index-DOdDlCoL.js";
2
2
  import { forwardRef as f, createContext as x, useContext as g, useState as p, useLayoutEffect as y, useRef as h } from "react";
3
- import { I as w } from "./image-rectangle-BpMI_fTE.js";
3
+ import { I as w } from "./image-rectangle-BS6j3xEC.js";
4
4
  import "./snackbar-DH8jCh2V.js";
5
5
  import { ChevronRight as T } from "lucide-react";
6
6
  const j = d(
@@ -0,0 +1,81 @@
1
+ import { c as v, j as c, a as w } from "./index-DOdDlCoL.js";
2
+ import { useRef as m, useState as d, useEffect as h, useId as T, cloneElement as j } from "react";
3
+ import { k as y } from "./image-rectangle-BS6j3xEC.js";
4
+ function P(e = "auto") {
5
+ const n = m(null), [a, t] = d("bottom");
6
+ return h(() => {
7
+ if (!open || e !== "auto" || !n.current) {
8
+ t(e === "auto" ? "bottom" : e);
9
+ return;
10
+ }
11
+ const o = n.current.getBoundingClientRect(), l = window.innerWidth, r = window.innerHeight, i = {
12
+ top: o.top,
13
+ bottom: r - o.bottom,
14
+ left: o.left,
15
+ right: l - o.right
16
+ };
17
+ i.bottom > 64 ? t("bottom") : i.top > 64 ? t("top") : i.right > 128 ? t("right") : t("left");
18
+ }, [e, n]), { position: a, ref: n };
19
+ }
20
+ const E = v(
21
+ "absolute z-50 px-2 py-1 rounded bg-neutral pointer-events-auto transition-opacity duration-150 min-w-[max-content] max-w-sm whitespace-pre-line",
22
+ {
23
+ variants: {
24
+ position: {
25
+ top: "bottom-full left-1/2 -translate-x-1/2 mb-2",
26
+ bottom: "top-full left-1/2 -translate-x-1/2 mt-2",
27
+ left: "right-full top-1/2 -translate-y-1/2 mr-2",
28
+ right: "left-full top-1/2 -translate-y-1/2 ml-2",
29
+ auto: "top-full left-1/2 -translate-x-1/2 mt-2"
30
+ }
31
+ },
32
+ defaultVariants: {
33
+ position: "auto"
34
+ }
35
+ }
36
+ ), O = ({
37
+ children: e,
38
+ content: n,
39
+ position: a = "auto",
40
+ popoverClassName: t,
41
+ delay: o,
42
+ ...l
43
+ }) => {
44
+ const r = T(), [i, u] = d(!1), s = m(null), p = () => {
45
+ o ? s.current = setTimeout(() => u(!0), o) : u(!0);
46
+ }, f = () => {
47
+ s.current && clearTimeout(s.current), u(!1);
48
+ };
49
+ h(() => () => {
50
+ s.current && clearTimeout(s.current);
51
+ }, []);
52
+ const b = {
53
+ tabIndex: 0,
54
+ "aria-describedby": r,
55
+ onMouseEnter: p,
56
+ onFocus: p,
57
+ onMouseLeave: f,
58
+ onBlur: f,
59
+ ...l
60
+ }, { ref: x, position: g } = P(a);
61
+ return /* @__PURE__ */ c.jsxs("div", { className: "relative w-fit", ref: x, children: [
62
+ j(e, b),
63
+ /* @__PURE__ */ c.jsx(
64
+ "div",
65
+ {
66
+ id: r,
67
+ className: w(
68
+ E({ position: g }),
69
+ t,
70
+ !i && "opacity-0 pointer-events-none"
71
+ ),
72
+ role: "tooltip",
73
+ "aria-hidden": !i,
74
+ children: /* @__PURE__ */ c.jsx(y, { as: "p", fontSize: "xs", fontWeight: "normal", color: "black", children: n })
75
+ }
76
+ )
77
+ ] });
78
+ };
79
+ export {
80
+ O as T
81
+ };
@@ -1,7 +1,7 @@
1
1
  import { c as i, j as s, a as l } from "./index-DOdDlCoL.js";
2
2
  import * as b from "react";
3
3
  import { forwardRef as o } from "react";
4
- import { j as u } from "./image-rectangle-BpMI_fTE.js";
4
+ import { k as u } from "./image-rectangle-BS6j3xEC.js";
5
5
  import "./snackbar-DH8jCh2V.js";
6
6
  const j = i(
7
7
  "w-full flex flex-wrap items-center pt-3 mb-3 gap-2 bg-white [&>[data-versaur-appbar-bottom]]:basis-full [&>[data-versaur-appbar-bottom]]:w-full [&:has([data-versaur-appbar-bottom])>[data-versaur-appbar-leading]]:pl-4 [&:has([data-versaur-appbar-bottom])>[data-versaur-appbar-trailing]]:pr-4 [&:not(:has([data-versaur-appbar-bottom]))]:px-4",
@@ -374,7 +374,7 @@ const j = i(
374
374
  children: t
375
375
  }
376
376
  )
377
- ), I = i("w-full mt-4"), k = i(
377
+ ), k = i("w-full mt-4"), I = i(
378
378
  "flex flex-col sm:flex-row sm:items-start sm:justify-between gap-4 px-4 sm:px-6 mb-4"
379
379
  ), F = i("mb-4 px-4 sm:px-6"), O = i(
380
380
  "flex-1 min-w-0 flex flex-col gap-2 w-full sm:w-auto"
@@ -387,7 +387,7 @@ const j = i(
387
387
  "div",
388
388
  {
389
389
  ref: r,
390
- className: l(k(), a),
390
+ className: l(I(), a),
391
391
  "data-versaur-page-header-top": !0,
392
392
  ...e,
393
393
  children: t
@@ -486,7 +486,7 @@ const j = i(
486
486
  "header",
487
487
  {
488
488
  ref: g,
489
- className: l(I(), a),
489
+ className: l(k(), a),
490
490
  role: "banner",
491
491
  ...f,
492
492
  children: [
@@ -0,0 +1,4 @@
1
+ import { ButtonMenuIconProps } from './types';
2
+ export declare const ButtonMenuIcon: import('react').ForwardRefExoticComponent<ButtonMenuIconProps & import('react').RefAttributes<HTMLButtonElement>> & {
3
+ Item: import('react').ForwardRefExoticComponent<import('../../overlays/menu/types').MenuItemProps & import('react').RefAttributes<HTMLLIElement>>;
4
+ };
@@ -0,0 +1,2 @@
1
+ export { ButtonMenuIcon } from './button-menu-icon';
2
+ export type { ButtonMenuIconProps } from './types';
@@ -1,7 +1,7 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { IconProps } from '../icon';
3
3
  import { ButtonIconProps } from '../button-icon';
4
- export interface ButtonMenuProps extends Omit<ButtonIconProps, 'content'>, Pick<IconProps, 'as'> {
4
+ export interface ButtonMenuIconProps extends Omit<ButtonIconProps, 'content'>, Pick<IconProps, 'as'> {
5
5
  /**
6
6
  * Callback function triggered when the menu open state changes.
7
7
  */
@@ -6,6 +6,7 @@ export * from './avatar';
6
6
  export * from './badge';
7
7
  export * from './brand';
8
8
  export * from './button';
9
+ export * from './button-menu-icon';
9
10
  export * from './button-float';
10
11
  export * from './button-icon';
11
12
  export * from './calculator';
@@ -55,7 +55,7 @@ const symbolToSubpath = {
55
55
  "Button": "primitive",
56
56
  "ButtonFloat": "primitive",
57
57
  "ButtonIcon": "primitive",
58
- "ButtonMenu": "primitive",
58
+ "ButtonMenuIcon": "primitive",
59
59
  "Calculator": "primitive",
60
60
  "Card": "primitive",
61
61
  "FilterChip": "primitive",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dimasbaguspm/versaur",
3
- "version": "0.0.31",
3
+ "version": "0.0.32",
4
4
  "description": "React UI library with Tailwind CSS",
5
5
  "author": "Dimas Bagus Prayogo Mukti<dimas.bagus.pm@gmail.com>",
6
6
  "license": "MIT",
@@ -1,156 +0,0 @@
1
- import { c as h, j as i, a as f } from "./index-DOdDlCoL.js";
2
- import { useEffect as p, forwardRef as b, useRef as c, useId as g, cloneElement as v, useState as w } from "react";
3
- import { u as T } from "./bottom-sheet-3W_vCYl6.js";
4
- import { f as E, j as I } from "./image-rectangle-BpMI_fTE.js";
5
- import "./snackbar-DH8jCh2V.js";
6
- const C = h(
7
- "absolute z-70 min-w-40 bg-background rounded-lg border border-border transition-all duration-200 ease-out will-change-transform",
8
- {
9
- variants: {
10
- size: {
11
- sm: "py-1.5 px-1",
12
- md: "py-2 px-1"
13
- },
14
- open: {
15
- true: "opacity-100 translate-y-1",
16
- false: "opacity-0 pointer-events-none translate-y-3"
17
- }
18
- },
19
- defaultVariants: {
20
- size: "md",
21
- open: !1
22
- }
23
- }
24
- );
25
- function N(t, e, r, o) {
26
- p(() => {
27
- if (!t) return;
28
- function n(s) {
29
- !e.current?.contains(s.target) && !r.current?.contains(s.target) && o();
30
- }
31
- return document.addEventListener("mousedown", n), () => document.removeEventListener("mousedown", n);
32
- }, [t, o, e, r]);
33
- }
34
- const R = b(
35
- ({ children: t }, e) => /* @__PURE__ */ i.jsx("ul", { ref: e, className: "flex flex-col gap-1", children: t })
36
- ), z = b(
37
- ({ children: t, disabled: e, ...r }, o) => /* @__PURE__ */ i.jsx("li", { ref: o, ...r, children: /* @__PURE__ */ i.jsx(
38
- E,
39
- {
40
- variant: "ghost",
41
- className: f("block text-left w-full"),
42
- disabled: e,
43
- children: t
44
- }
45
- ) })
46
- ), P = ({
47
- isOpen: t,
48
- onOutsideClick: e,
49
- size: r = "md",
50
- content: o,
51
- children: n
52
- }) => {
53
- const s = c(null), l = c(null), a = g();
54
- return N(t, l, s, e), T(t, e), /* @__PURE__ */ i.jsxs("div", { className: "relative w-fit", children: [
55
- v(n, {
56
- // @ts-expect-error: ref is valid for button or forwardRef components
57
- ref: s,
58
- "aria-haspopup": "menu",
59
- "aria-expanded": t,
60
- "aria-controls": a
61
- }),
62
- t && /* @__PURE__ */ i.jsx(
63
- "div",
64
- {
65
- id: a,
66
- ref: l,
67
- className: f(C({ size: r, open: t })),
68
- role: "menu",
69
- "aria-hidden": !t,
70
- children: o
71
- }
72
- )
73
- ] });
74
- }, H = Object.assign(P, {
75
- Content: R,
76
- Item: z
77
- });
78
- function k(t = "auto") {
79
- const e = c(null), [r, o] = w("bottom");
80
- return p(() => {
81
- if (!open || t !== "auto" || !e.current) {
82
- o(t === "auto" ? "bottom" : t);
83
- return;
84
- }
85
- const n = e.current.getBoundingClientRect(), s = window.innerWidth, l = window.innerHeight, a = {
86
- top: n.top,
87
- bottom: l - n.bottom,
88
- left: n.left,
89
- right: s - n.right
90
- };
91
- a.bottom > 64 ? o("bottom") : a.top > 64 ? o("top") : a.right > 128 ? o("right") : o("left");
92
- }, [t, e]), { position: r, ref: e };
93
- }
94
- const B = h(
95
- "absolute z-50 px-2 py-1 rounded bg-neutral pointer-events-auto transition-opacity duration-150 min-w-[max-content] max-w-sm whitespace-pre-line",
96
- {
97
- variants: {
98
- position: {
99
- top: "bottom-full left-1/2 -translate-x-1/2 mb-2",
100
- bottom: "top-full left-1/2 -translate-x-1/2 mt-2",
101
- left: "right-full top-1/2 -translate-y-1/2 mr-2",
102
- right: "left-full top-1/2 -translate-y-1/2 ml-2",
103
- auto: "top-full left-1/2 -translate-x-1/2 mt-2"
104
- }
105
- },
106
- defaultVariants: {
107
- position: "auto"
108
- }
109
- }
110
- ), q = ({
111
- children: t,
112
- content: e,
113
- position: r = "auto",
114
- popoverClassName: o,
115
- delay: n,
116
- ...s
117
- }) => {
118
- const l = g(), [a, m] = w(!1), u = c(null), d = () => {
119
- n ? u.current = setTimeout(() => m(!0), n) : m(!0);
120
- }, x = () => {
121
- u.current && clearTimeout(u.current), m(!1);
122
- };
123
- p(() => () => {
124
- u.current && clearTimeout(u.current);
125
- }, []);
126
- const j = {
127
- tabIndex: 0,
128
- "aria-describedby": l,
129
- onMouseEnter: d,
130
- onFocus: d,
131
- onMouseLeave: x,
132
- onBlur: x,
133
- ...s
134
- }, { ref: y, position: M } = k(r);
135
- return /* @__PURE__ */ i.jsxs("div", { className: "relative w-fit", ref: y, children: [
136
- v(t, j),
137
- /* @__PURE__ */ i.jsx(
138
- "div",
139
- {
140
- id: l,
141
- className: f(
142
- B({ position: M }),
143
- o,
144
- !a && "opacity-0 pointer-events-none"
145
- ),
146
- role: "tooltip",
147
- "aria-hidden": !a,
148
- children: /* @__PURE__ */ i.jsx(I, { as: "p", fontSize: "xs", fontWeight: "normal", color: "black", children: e })
149
- }
150
- )
151
- ] });
152
- };
153
- export {
154
- H as M,
155
- q as T
156
- };
@@ -1,4 +0,0 @@
1
- import { ButtonMenuProps } from './types';
2
- export declare const ButtonMenu: import('react').ForwardRefExoticComponent<ButtonMenuProps & import('react').RefAttributes<HTMLButtonElement>> & {
3
- Item: import('react').ForwardRefExoticComponent<import('../../overlays/menu/types').MenuItemProps & import('react').RefAttributes<HTMLLIElement>>;
4
- };
@@ -1,2 +0,0 @@
1
- export { ButtonMenu } from './button-menu';
2
- export type { ButtonMenuProps } from './types';