@powerhousedao/design-system 1.40.2 → 2.5.0-dev.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 (141) hide show
  1. package/dist/src/connect/components/document-timeline/components/h-divider.d.ts +10 -0
  2. package/dist/src/connect/components/document-timeline/components/h-divider.d.ts.map +1 -0
  3. package/dist/src/connect/components/document-timeline/components/h-divider.js +40 -0
  4. package/dist/src/connect/components/document-timeline/components/h-divider.js.map +1 -0
  5. package/dist/src/connect/components/document-timeline/components/index.d.ts +3 -0
  6. package/dist/src/connect/components/document-timeline/components/index.d.ts.map +1 -0
  7. package/dist/src/connect/components/document-timeline/components/index.js +3 -0
  8. package/dist/src/connect/components/document-timeline/components/index.js.map +1 -0
  9. package/dist/src/connect/components/document-timeline/components/timeline-bar.d.ts +12 -0
  10. package/dist/src/connect/components/document-timeline/components/timeline-bar.d.ts.map +1 -0
  11. package/dist/src/connect/components/document-timeline/components/timeline-bar.js +52 -0
  12. package/dist/src/connect/components/document-timeline/components/timeline-bar.js.map +1 -0
  13. package/dist/src/connect/components/document-timeline/document-timeline.d.ts +25 -0
  14. package/dist/src/connect/components/document-timeline/document-timeline.d.ts.map +1 -0
  15. package/dist/src/connect/components/document-timeline/document-timeline.js +57 -0
  16. package/dist/src/connect/components/document-timeline/document-timeline.js.map +1 -0
  17. package/dist/src/connect/components/document-timeline/index.d.ts +3 -0
  18. package/dist/src/connect/components/document-timeline/index.d.ts.map +1 -0
  19. package/dist/src/connect/components/document-timeline/index.js +3 -0
  20. package/dist/src/connect/components/document-timeline/index.js.map +1 -0
  21. package/dist/src/connect/components/document-timeline/mock-utils.d.ts +3 -0
  22. package/dist/src/connect/components/document-timeline/mock-utils.d.ts.map +1 -0
  23. package/dist/src/connect/components/document-timeline/mock-utils.js +53 -0
  24. package/dist/src/connect/components/document-timeline/mock-utils.js.map +1 -0
  25. package/dist/src/connect/components/document-toolbar/document-toolbar.d.ts +5 -1
  26. package/dist/src/connect/components/document-toolbar/document-toolbar.d.ts.map +1 -1
  27. package/dist/src/connect/components/document-toolbar/document-toolbar.js +31 -15
  28. package/dist/src/connect/components/document-toolbar/document-toolbar.js.map +1 -1
  29. package/dist/src/connect/components/drive-view/drive-view.d.ts +13 -9
  30. package/dist/src/connect/components/drive-view/drive-view.d.ts.map +1 -1
  31. package/dist/src/connect/components/drive-view/drive-view.js +3 -1
  32. package/dist/src/connect/components/drive-view/drive-view.js.map +1 -1
  33. package/dist/src/connect/components/index.d.ts +1 -0
  34. package/dist/src/connect/components/index.d.ts.map +1 -1
  35. package/dist/src/connect/components/index.js +1 -0
  36. package/dist/src/connect/components/index.js.map +1 -1
  37. package/dist/src/connect/components/tooltip/tooltip.d.ts +2 -0
  38. package/dist/src/connect/components/tooltip/tooltip.d.ts.map +1 -1
  39. package/dist/src/connect/components/tooltip/tooltip.js +2 -2
  40. package/dist/src/connect/components/tooltip/tooltip.js.map +1 -1
  41. package/dist/src/connect/components/tree-view/drop-indicator.d.ts +9 -6
  42. package/dist/src/connect/components/tree-view/drop-indicator.d.ts.map +1 -1
  43. package/dist/src/connect/components/tree-view/drop-indicator.js +4 -2
  44. package/dist/src/connect/components/tree-view/drop-indicator.js.map +1 -1
  45. package/dist/src/connect/components/tree-view/tree-view.d.ts +12 -8
  46. package/dist/src/connect/components/tree-view/tree-view.d.ts.map +1 -1
  47. package/dist/src/connect/components/tree-view/tree-view.js +4 -2
  48. package/dist/src/connect/components/tree-view/tree-view.js.map +1 -1
  49. package/dist/src/connect/hooks/drag-and-drop/use-drop.d.ts +5 -2
  50. package/dist/src/connect/hooks/drag-and-drop/use-drop.d.ts.map +1 -1
  51. package/dist/src/connect/hooks/drag-and-drop/use-drop.js.map +1 -1
  52. package/dist/src/connect/types/shared-props.d.ts +1 -7
  53. package/dist/src/connect/types/shared-props.d.ts.map +1 -1
  54. package/dist/src/powerhouse/components/icon-components/TimelineCaret.d.ts +3 -0
  55. package/dist/src/powerhouse/components/icon-components/TimelineCaret.d.ts.map +1 -0
  56. package/dist/src/powerhouse/components/icon-components/TimelineCaret.js +5 -0
  57. package/dist/src/powerhouse/components/icon-components/TimelineCaret.js.map +1 -0
  58. package/dist/src/powerhouse/components/icon-components/index.d.ts +1 -1
  59. package/dist/src/powerhouse/components/icon-components/index.d.ts.map +1 -1
  60. package/dist/src/powerhouse/components/icon-components/index.js +3 -0
  61. package/dist/src/powerhouse/components/icon-components/index.js.map +1 -1
  62. package/dist/src/scalars/EthereumAddress/EthereumAddress.js +1 -1
  63. package/dist/src/scalars/EthereumAddress/EthereumAddress.js.map +1 -1
  64. package/dist/src/scalars/components/fragments/id-autocomplete/id-autocomplete.js +1 -2
  65. package/dist/src/scalars/components/fragments/id-autocomplete/id-autocomplete.js.map +1 -1
  66. package/dist/src/scalars/components/fragments/id-autocomplete/use-id-autocomplete.d.ts.map +1 -1
  67. package/dist/src/scalars/components/fragments/id-autocomplete/use-id-autocomplete.js +0 -1
  68. package/dist/src/scalars/components/fragments/id-autocomplete/use-id-autocomplete.js.map +1 -1
  69. package/dist/src/scalars/components/fragments/select-field/content.d.ts.map +1 -1
  70. package/dist/src/scalars/components/fragments/select-field/content.js +1 -1
  71. package/dist/src/scalars/components/fragments/select-field/content.js.map +1 -1
  72. package/dist/src/scalars/components/fragments/select-field/subcomponents/CommandItemList.d.ts +1 -0
  73. package/dist/src/scalars/components/fragments/select-field/subcomponents/CommandItemList.d.ts.map +1 -1
  74. package/dist/src/scalars/components/fragments/select-field/subcomponents/CommandItemList.js +2 -2
  75. package/dist/src/scalars/components/fragments/select-field/subcomponents/CommandItemList.js.map +1 -1
  76. package/dist/src/scalars/components/fragments/text-field/text-field.d.ts +3 -3
  77. package/dist/src/scalars/components/fragments/text-field/text-field.d.ts.map +1 -1
  78. package/dist/src/scalars/components/fragments/text-field/text-field.js.map +1 -1
  79. package/dist/src/scalars/components/fragments/textarea-field/textarea-field.d.ts +4 -5
  80. package/dist/src/scalars/components/fragments/textarea-field/textarea-field.d.ts.map +1 -1
  81. package/dist/src/scalars/components/fragments/textarea-field/textarea-field.js.map +1 -1
  82. package/dist/src/scalars/components/fragments/toggle-field/toggle-field.d.ts +3 -1
  83. package/dist/src/scalars/components/fragments/toggle-field/toggle-field.d.ts.map +1 -1
  84. package/dist/src/scalars/components/fragments/toggle-field/toggle-field.js.map +1 -1
  85. package/dist/src/scalars/components/types.d.ts +7 -0
  86. package/dist/src/scalars/components/types.d.ts.map +1 -1
  87. package/dist/src/scalars/lib/storybook-arg-types.d.ts +43 -1
  88. package/dist/src/scalars/lib/storybook-arg-types.d.ts.map +1 -1
  89. package/dist/src/scalars/lib/storybook-arg-types.js +34 -0
  90. package/dist/src/scalars/lib/storybook-arg-types.js.map +1 -1
  91. package/dist/src/ui/components/data-entry/aid-input/aid-input.js +2 -2
  92. package/dist/src/ui/components/data-entry/aid-input/aid-input.js.map +1 -1
  93. package/dist/src/ui/components/data-entry/amount-input/utils.d.ts.map +1 -1
  94. package/dist/src/ui/components/data-entry/amount-input/utils.js +0 -1
  95. package/dist/src/ui/components/data-entry/amount-input/utils.js.map +1 -1
  96. package/dist/src/ui/components/data-entry/input/splitted-input-diff.d.ts +8 -0
  97. package/dist/src/ui/components/data-entry/input/splitted-input-diff.d.ts.map +1 -0
  98. package/dist/src/ui/components/data-entry/input/splitted-input-diff.js +35 -0
  99. package/dist/src/ui/components/data-entry/input/splitted-input-diff.js.map +1 -0
  100. package/dist/src/ui/components/data-entry/input/subcomponent/input-diff.d.ts +11 -0
  101. package/dist/src/ui/components/data-entry/input/subcomponent/input-diff.d.ts.map +1 -0
  102. package/dist/src/ui/components/data-entry/input/subcomponent/input-diff.js +8 -0
  103. package/dist/src/ui/components/data-entry/input/subcomponent/input-diff.js.map +1 -0
  104. package/dist/src/ui/components/data-entry/input/subcomponent/text-diff.d.ts +9 -0
  105. package/dist/src/ui/components/data-entry/input/subcomponent/text-diff.d.ts.map +1 -0
  106. package/dist/src/ui/components/data-entry/input/subcomponent/text-diff.js +27 -0
  107. package/dist/src/ui/components/data-entry/input/subcomponent/text-diff.js.map +1 -0
  108. package/dist/src/ui/components/data-entry/oid-input/oid-input.js +1 -1
  109. package/dist/src/ui/components/data-entry/oid-input/oid-input.js.map +1 -1
  110. package/dist/src/ui/components/data-entry/phid-input/phid-input-diff.d.ts +13 -0
  111. package/dist/src/ui/components/data-entry/phid-input/phid-input-diff.d.ts.map +1 -0
  112. package/dist/src/ui/components/data-entry/phid-input/phid-input-diff.js +52 -0
  113. package/dist/src/ui/components/data-entry/phid-input/phid-input-diff.js.map +1 -0
  114. package/dist/src/ui/components/data-entry/phid-input/phid-input.d.ts.map +1 -1
  115. package/dist/src/ui/components/data-entry/phid-input/phid-input.js +9 -4
  116. package/dist/src/ui/components/data-entry/phid-input/phid-input.js.map +1 -1
  117. package/dist/src/ui/components/data-entry/phid-input/types.d.ts +9 -1
  118. package/dist/src/ui/components/data-entry/phid-input/types.d.ts.map +1 -1
  119. package/dist/src/ui/components/data-entry/text-input/text-input-diff.d.ts +9 -0
  120. package/dist/src/ui/components/data-entry/text-input/text-input-diff.d.ts.map +1 -0
  121. package/dist/src/ui/components/data-entry/text-input/text-input-diff.js +8 -0
  122. package/dist/src/ui/components/data-entry/text-input/text-input-diff.js.map +1 -0
  123. package/dist/src/ui/components/data-entry/text-input/text-input.d.ts +3 -2
  124. package/dist/src/ui/components/data-entry/text-input/text-input.d.ts.map +1 -1
  125. package/dist/src/ui/components/data-entry/text-input/text-input.js +9 -2
  126. package/dist/src/ui/components/data-entry/text-input/text-input.js.map +1 -1
  127. package/dist/src/ui/components/data-entry/textarea/subcomponent/splitted-textarea-diff.d.ts +13 -0
  128. package/dist/src/ui/components/data-entry/textarea/subcomponent/splitted-textarea-diff.d.ts.map +1 -0
  129. package/dist/src/ui/components/data-entry/textarea/subcomponent/splitted-textarea-diff.js +9 -0
  130. package/dist/src/ui/components/data-entry/textarea/subcomponent/splitted-textarea-diff.js.map +1 -0
  131. package/dist/src/ui/components/data-entry/textarea/textarea.d.ts +3 -2
  132. package/dist/src/ui/components/data-entry/textarea/textarea.d.ts.map +1 -1
  133. package/dist/src/ui/components/data-entry/textarea/textarea.js +17 -13
  134. package/dist/src/ui/components/data-entry/textarea/textarea.js.map +1 -1
  135. package/dist/src/ui/components/data-entry/toggle/toggle.d.ts +4 -2
  136. package/dist/src/ui/components/data-entry/toggle/toggle.d.ts.map +1 -1
  137. package/dist/src/ui/components/data-entry/toggle/toggle.js +5 -2
  138. package/dist/src/ui/components/data-entry/toggle/toggle.js.map +1 -1
  139. package/dist/style.css +135 -1
  140. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  141. package/package.json +20 -18
@@ -0,0 +1,10 @@
1
+ export interface HDividerProps {
2
+ className?: string;
3
+ timestamp?: string;
4
+ title?: string;
5
+ subtitle?: string;
6
+ onClick?: () => void;
7
+ isSelected?: boolean;
8
+ }
9
+ export declare const HDivider: (props: HDividerProps) => import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=h-divider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"h-divider.d.ts","sourceRoot":"","sources":["../../../../../../src/connect/components/document-timeline/components/h-divider.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,QAAQ,GAAI,OAAO,aAAa,4CAuF5C,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Tooltip } from "#connect";
3
+ import { Icon } from "#powerhouse";
4
+ import { formatDistanceToNow } from "date-fns";
5
+ import { useEffect, useState } from "react";
6
+ import { twMerge } from "tailwind-merge";
7
+ export const HDivider = (props) => {
8
+ const { className, timestamp, title, subtitle, onClick, isSelected = false, } = props;
9
+ const [open, setOpen] = useState(false);
10
+ const hasContent = !!title || !!subtitle || !!timestamp;
11
+ // Force update tooltips when props change
12
+ useEffect(() => {
13
+ // Force close and re-open if already open to refresh content
14
+ if (open) {
15
+ setOpen(false);
16
+ setTimeout(() => hasContent && setOpen(true), 50);
17
+ }
18
+ }, [title, subtitle, timestamp, hasContent]);
19
+ const formatTimestamp = (isoString) => {
20
+ if (!isoString)
21
+ return "";
22
+ try {
23
+ return formatDistanceToNow(new Date(isoString), { addSuffix: true });
24
+ }
25
+ catch {
26
+ return isoString;
27
+ }
28
+ };
29
+ const tooltipContent = (_jsxs("div", { className: "flex flex-col text-xs", children: [!!title && _jsx("div", { children: title }), !!subtitle && _jsx("div", { className: "text-gray-300", children: subtitle }), !!timestamp && _jsx("div", { children: formatTimestamp(timestamp) })] }));
30
+ const handleMouseEnter = () => {
31
+ if (hasContent) {
32
+ setOpen(true);
33
+ }
34
+ };
35
+ const handleMouseLeave = () => {
36
+ setOpen(false);
37
+ };
38
+ return (_jsxs("div", { className: "relative", onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, children: [isSelected && (_jsx(Icon, { name: "TimelineCaret", color: "#4EA9FF", size: 10, className: "absolute top-[-11px] z-40" })), _jsx(Tooltip, { className: "rounded-md bg-gray-900 text-white", content: tooltipContent, open: open && hasContent, onOpenChange: setOpen, delayDuration: 0, side: "bottom", sideOffset: 5, children: _jsx("div", { className: twMerge("mx-0.5 flex h-[25px] w-1.5 cursor-pointer flex-col items-center justify-center rounded-[2px] hover:bg-blue-300", isSelected && "bg-blue-300", className), onClick: onClick, "data-title": title, "data-subtitle": subtitle, "data-timestamp": timestamp, children: _jsx("div", { className: "h-0.5 w-1 rounded-full bg-gray-500" }) }) })] }));
39
+ };
40
+ //# sourceMappingURL=h-divider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"h-divider.js","sourceRoot":"","sources":["../../../../../../src/connect/components/document-timeline/components/h-divider.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from "./h-divider.js";
2
+ export * from "./timeline-bar.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/connect/components/document-timeline/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./h-divider.js";
2
+ export * from "./timeline-bar.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/connect/components/document-timeline/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,12 @@
1
+ export interface TimelineBarProps {
2
+ readonly className?: string;
3
+ addSize?: 0 | 1 | 2 | 3 | 4;
4
+ delSize?: 0 | 1 | 2 | 3 | 4;
5
+ timestamp?: string;
6
+ additions?: number;
7
+ deletions?: number;
8
+ onClick?: () => void;
9
+ isSelected?: boolean;
10
+ }
11
+ export declare const TimelineBar: React.FC<TimelineBarProps>;
12
+ //# sourceMappingURL=timeline-bar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeline-bar.d.ts","sourceRoot":"","sources":["../../../../../../src/connect/components/document-timeline/components/timeline-bar.tsx"],"names":[],"mappings":"AAQA,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AA6BD,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAmGlD,CAAC"}
@@ -0,0 +1,52 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /* eslint-disable react/jsx-max-depth */
3
+ /* eslint-disable react/jsx-no-bind */
4
+ import { Tooltip } from "#connect";
5
+ import { Icon } from "#powerhouse";
6
+ import { format, parseISO } from "date-fns";
7
+ import { useState } from "react";
8
+ import { twMerge } from "tailwind-merge";
9
+ const getBarHeight = (size = 0) => {
10
+ switch (true) {
11
+ case size <= 0:
12
+ return "h-[1px]";
13
+ case size === 1:
14
+ return "h-[3px]";
15
+ case size === 2:
16
+ return "h-[6px]";
17
+ case size === 3:
18
+ return "h-[9px]";
19
+ case size >= 4:
20
+ return "h-[12px]";
21
+ default:
22
+ return "h-[1px]";
23
+ }
24
+ };
25
+ const formatTimestamp = (isoString) => {
26
+ if (!isoString)
27
+ return "";
28
+ try {
29
+ const date = parseISO(isoString);
30
+ return format(date, "HH:mm, dd, MMMM");
31
+ }
32
+ catch {
33
+ return isoString;
34
+ }
35
+ };
36
+ export const TimelineBar = ({ onClick, className, timestamp, additions, deletions, addSize = 0, delSize = 0, isSelected = false, }) => {
37
+ const [open, setOpen] = useState(false);
38
+ const noChanges = addSize === 0 && delSize === 0;
39
+ const addBarHeight = getBarHeight(addSize);
40
+ const delBarHeight = getBarHeight(delSize);
41
+ const tooltipContent = (_jsxs("div", { className: "flex flex-col text-xs", children: [_jsx("div", { children: formatTimestamp(timestamp) }), _jsx("div", { className: "text-green-900", children: `${additions} additions +` }), _jsx("div", { className: "text-red-700", children: `${deletions} deletions -` })] }));
42
+ const handleMouseEnter = () => {
43
+ if (!noChanges) {
44
+ setOpen(true);
45
+ }
46
+ };
47
+ const handleMouseLeave = () => {
48
+ setOpen(false);
49
+ };
50
+ return (_jsxs("div", { className: "relative", onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, children: [isSelected && (_jsx(Icon, { name: "TimelineCaret", color: "#4EA9FF", size: 10, className: "absolute left-[-2px] top-[-11px] z-40" })), noChanges ? (_jsx("div", { className: twMerge("flex h-[25px] w-1.5 cursor-pointer flex-col items-center justify-center rounded-[2px] hover:bg-blue-300", className), "data-timestamp": timestamp, onClick: onClick, children: _jsx("div", { className: "size-[3px] rounded-full bg-gray-500" }) })) : (_jsx(Tooltip, { className: "rounded-md bg-gray-900 text-white", content: tooltipContent, open: open, onOpenChange: setOpen, delayDuration: 0, side: "bottom", sideOffset: 5, children: _jsxs("div", { className: twMerge("flex h-[25px] w-1.5 cursor-pointer flex-col items-center justify-center rounded-[2px] hover:bg-blue-300", className, isSelected && "bg-blue-300"), "data-timestamp": timestamp, onClick: onClick, children: [_jsx("div", { className: "flex h-3 w-0.5 items-end", children: _jsx("div", { className: twMerge("h-3 w-0.5 rounded-t-full bg-green-600", addBarHeight) }) }), _jsx("div", { className: "flex h-3 w-0.5 items-start", children: _jsx("div", { className: twMerge("h-3 w-0.5 rounded-b-full bg-red-600", delBarHeight) }) })] }) }))] }));
51
+ };
52
+ //# sourceMappingURL=timeline-bar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeline-bar.js","sourceRoot":"","sources":["../../../../../../src/connect/components/document-timeline/components/timeline-bar.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { type TimelineBarProps } from "./components/index.js";
2
+ export type TimelineBarItem = Omit<TimelineBarProps, "className"> & {
3
+ id: string;
4
+ type: "bar";
5
+ revision?: number;
6
+ startDate?: Date;
7
+ endDate?: Date;
8
+ };
9
+ export type TimelineDividerItem = {
10
+ id: string;
11
+ type: "divider";
12
+ timestamp?: string;
13
+ title?: string;
14
+ subtitle?: string;
15
+ revision?: number;
16
+ startDate?: Date;
17
+ endDate?: Date;
18
+ };
19
+ export type TimelineItem = TimelineBarItem | TimelineDividerItem;
20
+ export interface DocumentTimelineProps {
21
+ onItemClick?: (item: TimelineItem | null) => void;
22
+ timeline?: Array<TimelineItem>;
23
+ }
24
+ export declare const DocumentTimeline: (props: DocumentTimelineProps) => import("react/jsx-runtime").JSX.Element;
25
+ //# sourceMappingURL=document-timeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-timeline.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/document-timeline/document-timeline.tsx"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,GAAG;IAClE,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,KAAK,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,mBAAmB,CAAC;AAEjE,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;CAChC;AASD,eAAO,MAAM,gBAAgB,GAAI,OAAO,qBAAqB,4CA+G5D,CAAC"}
@@ -0,0 +1,57 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /* eslint-disable react/jsx-max-depth */
3
+ /* eslint-disable react/jsx-no-bind */
4
+ import { TooltipProvider } from "#connect";
5
+ import { useCallback, useEffect, useMemo, useRef, useState } from "react";
6
+ import { HDivider, TimelineBar, } from "./components/index.js";
7
+ const defaultTimeLineItem = {
8
+ id: "default",
9
+ type: "bar",
10
+ addSize: 0,
11
+ delSize: 0,
12
+ };
13
+ export const DocumentTimeline = (props) => {
14
+ const { timeline = [], onItemClick } = props;
15
+ const [selectedItem, setSelectedItem] = useState(null);
16
+ const scrollContainerRef = useRef(null);
17
+ const handleClick = (item) => {
18
+ if (item.id === selectedItem || item.id === defaultTimeLineItem.id) {
19
+ onItemClick?.(null);
20
+ setSelectedItem(null);
21
+ }
22
+ else {
23
+ onItemClick?.(item);
24
+ setSelectedItem(item.id);
25
+ }
26
+ };
27
+ const mergedTimelineItems = [...timeline, defaultTimeLineItem];
28
+ const [unselectedItems, selectedItems] = useMemo(() => {
29
+ const indexSelected = mergedTimelineItems.findIndex((item) => item.id === selectedItem);
30
+ return indexSelected === -1
31
+ ? [mergedTimelineItems, []]
32
+ : [
33
+ mergedTimelineItems.slice(0, indexSelected),
34
+ mergedTimelineItems.slice(indexSelected),
35
+ ];
36
+ }, [mergedTimelineItems, selectedItem]);
37
+ const renderTimelineItems = useCallback((items) => {
38
+ return items.map((item) => {
39
+ if (item.type === "divider") {
40
+ const { timestamp, title, subtitle } = item;
41
+ return (_jsx(HDivider, { timestamp: timestamp, title: title, subtitle: subtitle, onClick: () => handleClick(item), isSelected: item.id === selectedItem }, item.id));
42
+ }
43
+ return (_jsx(TimelineBar, { timestamp: item.timestamp, addSize: item.addSize, delSize: item.delSize, additions: item.additions, deletions: item.deletions, isSelected: item.id === selectedItem, onClick: () => handleClick(item) }, item.id));
44
+ });
45
+ }, [handleClick, selectedItem]);
46
+ const unselectedContent = useMemo(() => renderTimelineItems(unselectedItems), [unselectedItems, renderTimelineItems]);
47
+ const selectedContent = useMemo(() => renderTimelineItems(selectedItems), [selectedItems, renderTimelineItems]);
48
+ // Scroll to the end by default
49
+ useEffect(() => {
50
+ if (scrollContainerRef.current) {
51
+ scrollContainerRef.current.scrollLeft =
52
+ scrollContainerRef.current.scrollWidth;
53
+ }
54
+ }, []);
55
+ return (_jsx(TooltipProvider, { delayDuration: 0, skipDelayDuration: 0, children: _jsxs("div", { className: "relative h-[36px] w-full", children: [_jsx("div", { className: "absolute left-[0px] z-[20] h-[17px] w-[6px] bg-white", children: _jsx("div", { className: "mt-[11px] h-[6px] w-[6px] rounded-tl-md bg-slate-50" }) }), _jsx("div", { className: "absolute right-[0px] top-[11px] z-[20] h-[6px] w-[6px] bg-white", children: _jsx("div", { className: "h-[6px] w-[6px] rounded-tr-md bg-slate-50" }) }), _jsx("div", { className: "absolute inset-x-0 bottom-0 h-[25px] rounded-md bg-slate-50" }), _jsx("div", { className: "absolute inset-x-0 bottom-0 h-[36px]", children: _jsx("div", { ref: scrollContainerRef, className: "h-full overflow-x-auto rounded-md", children: _jsxs("div", { className: "ml-auto flex h-[36px] w-max items-end px-2 pb-0", children: [_jsx("div", { className: "flex", children: unselectedContent }), _jsx("div", { className: "flex rounded-sm bg-blue-200", children: selectedContent })] }) }) }), _jsx("div", { className: "pointer-events-none absolute bottom-0 left-0 z-10 h-[25px] w-2 rounded-l-md bg-slate-50" }), _jsx("div", { className: "pointer-events-none absolute bottom-0 right-0 z-10 h-[25px] w-2 rounded-r-md bg-slate-50" })] }) }));
56
+ };
57
+ //# sourceMappingURL=document-timeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-timeline.js","sourceRoot":"","sources":["../../../../../src/connect/components/document-timeline/document-timeline.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from "./document-timeline.js";
2
+ export * from "./mock-utils.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/document-timeline/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./document-timeline.js";
2
+ export * from "./mock-utils.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/connect/components/document-timeline/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type TimelineBarItem, type TimelineDividerItem } from "./document-timeline.js";
2
+ export declare const generateLargeTimeline: (itemCount: number) => (TimelineBarItem | TimelineDividerItem)[];
3
+ //# sourceMappingURL=mock-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-utils.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/document-timeline/mock-utils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACzB,MAAM,wBAAwB,CAAC;AAchC,eAAO,MAAM,qBAAqB,GAAI,WAAW,MAAM,8CA+CtD,CAAC"}
@@ -0,0 +1,53 @@
1
+ import { addHours } from "date-fns";
2
+ // Generate timestamps with 1 hour difference starting from a base date
3
+ const generateTimestamps = (count) => {
4
+ // Use a date from the past instead of future (2025)
5
+ const baseDate = new Date();
6
+ baseDate.setMonth(baseDate.getMonth() - 3); // Start from 3 months ago
7
+ return Array.from({ length: count }, (_, i) => addHours(baseDate, i).toISOString());
8
+ };
9
+ // Helper function to generate a large number of timeline items
10
+ export const generateLargeTimeline = (itemCount) => {
11
+ const timestamps = generateTimestamps(itemCount);
12
+ const timeline = [];
13
+ for (let i = 0; i < itemCount; i++) {
14
+ // Add a divider every 5 items
15
+ if (i > 0 && i % 5 === 0) {
16
+ timeline.push({
17
+ id: `divider-${i}`,
18
+ type: "divider",
19
+ timestamp: timestamps[i],
20
+ title: i % 2 === 0 ? "Atlas Document" : "Ratified Atlas Document",
21
+ subtitle: "Created",
22
+ });
23
+ continue;
24
+ }
25
+ // Generate random sizes for additions and deletions (0-4)
26
+ let addSize = Math.floor(Math.random() * 5);
27
+ let delSize = Math.floor(Math.random() * 5);
28
+ // Ensure at least one of addSize or delSize is not zero
29
+ if (addSize === 0 && delSize === 0) {
30
+ // Randomly choose which one to make non-zero
31
+ if (Math.random() > 0.5) {
32
+ addSize = (Math.floor(Math.random() * 4) + 1);
33
+ }
34
+ else {
35
+ delSize = (Math.floor(Math.random() * 4) + 1);
36
+ }
37
+ }
38
+ // Generate random count of additions and deletions
39
+ const additions = addSize === 0 ? 0 : Math.floor(Math.random() * 100) + 1;
40
+ const deletions = delSize === 0 ? 0 : Math.floor(Math.random() * 100) + 1;
41
+ timeline.push({
42
+ id: `bar-${i}`,
43
+ type: "bar",
44
+ addSize,
45
+ delSize,
46
+ timestamp: timestamps[i],
47
+ additions,
48
+ deletions,
49
+ });
50
+ }
51
+ return timeline;
52
+ };
53
+ //# sourceMappingURL=mock-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-utils.js","sourceRoot":"","sources":["../../../../../src/connect/components/document-timeline/mock-utils.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type DocumentTimelineProps, type TimelineBarItem, type TimelineDividerItem } from "../document-timeline/document-timeline.js";
1
2
  export type DocumentToolbarProps = {
2
3
  title?: string;
3
4
  className?: string;
@@ -8,8 +9,11 @@ export type DocumentToolbarProps = {
8
9
  onExport?: () => void;
9
10
  onClose: () => void;
10
11
  onShowRevisionHistory?: () => void;
11
- onShowTimeline?: () => void;
12
+ timelineItems?: Array<TimelineBarItem | TimelineDividerItem>;
12
13
  onSwitchboardLinkClick?: () => void;
14
+ initialTimelineVisible?: boolean;
15
+ timelineButtonVisible?: boolean;
16
+ onTimelineItemClick?: DocumentTimelineProps["onItemClick"];
13
17
  };
14
18
  export declare const DocumentToolbar: React.FC<DocumentToolbarProps>;
15
19
  //# sourceMappingURL=document-toolbar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-toolbar.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/document-toolbar/document-toolbar.tsx"],"names":[],"mappings":"AAGA,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;CACrC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAuJ1D,CAAC"}
1
+ {"version":3,"file":"document-toolbar.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/document-toolbar/document-toolbar.tsx"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACzB,MAAM,2CAA2C,CAAC;AAEnD,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,aAAa,CAAC,EAAE,KAAK,CAAC,eAAe,GAAG,mBAAmB,CAAC,CAAC;IAC7D,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;IACpC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,CAAC,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;CAC5D,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAsL1D,CAAC"}
@@ -1,26 +1,42 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /* eslint-disable react/jsx-no-bind */
3
+ /* eslint-disable react/jsx-max-depth */
4
+ /* eslint-disable react/button-has-type */
2
5
  import { Icon } from "#powerhouse";
6
+ import { useEffect, useState } from "react";
3
7
  import { twMerge } from "tailwind-merge";
8
+ import { DocumentTimeline, } from "../document-timeline/document-timeline.js";
4
9
  export const DocumentToolbar = (props) => {
5
- const { undo, canUndo, redo, canRedo, title, onClose, onExport, className, onShowRevisionHistory, onSwitchboardLinkClick, onShowTimeline, } = props;
10
+ const { undo, canUndo, redo, canRedo, title, onClose, onExport, className, onShowRevisionHistory, onSwitchboardLinkClick, timelineItems = [], onTimelineItemClick, initialTimelineVisible = false, timelineButtonVisible = false, } = props;
11
+ const [showTimeline, setShowTimeline] = useState(initialTimelineVisible);
6
12
  const isUndoDisabled = !canUndo || !undo;
7
13
  const isRedoDisabled = !canRedo || !redo;
8
14
  const isExportDisabled = !onExport;
9
15
  const isSwitchboardLinkDisabled = !onSwitchboardLinkClick;
10
16
  const isRevisionHistoryDisabled = !onShowRevisionHistory;
11
- const isTimelineDisabled = !onShowTimeline;
12
- return (_jsxs("div", { className: twMerge("flex h-12 w-full items-center justify-between rounded-xl border border-gray-200 bg-slate-50 px-4", className), children: [_jsxs("div", { className: "flex items-center gap-x-2", children: [_jsx("button", { className: twMerge("grid size-8 place-items-center rounded-lg border border-gray-200 bg-white", isUndoDisabled
13
- ? "cursor-not-allowed"
14
- : "cursor-pointer active:opacity-70"), onClick: undo, disabled: isUndoDisabled, children: _jsx(Icon, { name: "ArrowCouterclockwise", size: 16, className: isUndoDisabled ? "text-gray-500" : "text-gray-900" }) }), _jsx("button", { className: twMerge("grid size-8 place-items-center rounded-lg border border-gray-200 bg-white", isRedoDisabled
15
- ? "cursor-not-allowed"
16
- : "cursor-pointer active:opacity-70"), onClick: redo, disabled: isRedoDisabled, children: _jsx("div", { className: "-scale-x-100", children: _jsx(Icon, { name: "ArrowCouterclockwise", size: 16, className: isRedoDisabled ? "text-gray-500" : "text-gray-900" }) }) }), _jsx("button", { className: twMerge("flex h-8 items-center rounded-lg border border-gray-200 bg-white px-3 text-sm", isExportDisabled
17
- ? "cursor-not-allowed"
18
- : "cursor-pointer active:opacity-70"), onClick: onExport, disabled: isExportDisabled, children: _jsx("span", { className: isExportDisabled ? "text-gray-500" : "text-gray-900", children: "Export" }) })] }), _jsx("div", { className: "flex items-center", children: _jsx("h1", { className: "text-sm font-medium text-gray-500", children: title }) }), _jsxs("div", { className: "flex items-center gap-x-2", children: [_jsx("button", { className: twMerge("grid size-8 place-items-center rounded-lg border border-gray-200 bg-white", isSwitchboardLinkDisabled
19
- ? "cursor-not-allowed"
20
- : "cursor-pointer active:opacity-70"), onClick: onSwitchboardLinkClick, disabled: isSwitchboardLinkDisabled, children: _jsx(Icon, { name: "Drive", size: 16, className: isSwitchboardLinkDisabled ? "text-gray-500" : "text-gray-900" }) }), _jsx("button", { className: twMerge("grid size-8 place-items-center rounded-lg border border-gray-200 bg-white", isRevisionHistoryDisabled
21
- ? "cursor-not-allowed"
22
- : "cursor-pointer active:opacity-70"), onClick: onShowRevisionHistory, disabled: isRevisionHistoryDisabled, children: _jsx(Icon, { name: "History", size: 16, className: isRevisionHistoryDisabled ? "text-gray-500" : "text-gray-900" }) }), _jsx("button", { className: twMerge("grid size-8 place-items-center rounded-lg border border-gray-200 bg-white", isTimelineDisabled
23
- ? "cursor-not-allowed"
24
- : "cursor-pointer active:opacity-70"), onClick: onShowTimeline, disabled: isTimelineDisabled, children: _jsx(Icon, { name: "Timeline", size: 16, className: twMerge("text-gray-900", isTimelineDisabled && "opacity-50") }) }), _jsx("button", { className: "grid size-8 cursor-pointer place-items-center rounded-lg border border-gray-200 bg-white active:opacity-70", onClick: onClose, children: _jsx(Icon, { name: "XmarkLight", size: 16, className: "text-gray-900" }) })] })] }));
17
+ const isTimelineDisabled = timelineItems.length === 0;
18
+ useEffect(() => {
19
+ if (initialTimelineVisible) {
20
+ setShowTimeline(true);
21
+ }
22
+ }, [initialTimelineVisible]);
23
+ const handleTimelineToggle = () => {
24
+ if (isTimelineDisabled)
25
+ return;
26
+ setShowTimeline(!showTimeline);
27
+ };
28
+ return (_jsxs("div", { className: "flex w-full flex-col", children: [_jsxs("div", { className: twMerge("flex h-12 w-full items-center justify-between rounded-xl border border-gray-200 bg-slate-50 px-4", className), children: [_jsxs("div", { className: "flex items-center gap-x-2", children: [_jsx("button", { className: twMerge("grid size-8 place-items-center rounded-lg border border-gray-200 bg-white", isUndoDisabled
29
+ ? "cursor-not-allowed"
30
+ : "cursor-pointer active:opacity-70"), onClick: undo, disabled: isUndoDisabled, children: _jsx(Icon, { name: "ArrowCouterclockwise", size: 16, className: isUndoDisabled ? "text-gray-500" : "text-gray-900" }) }), _jsx("button", { className: twMerge("grid size-8 place-items-center rounded-lg border border-gray-200 bg-white", isRedoDisabled
31
+ ? "cursor-not-allowed"
32
+ : "cursor-pointer active:opacity-70"), onClick: redo, disabled: isRedoDisabled, children: _jsx("div", { className: "-scale-x-100", children: _jsx(Icon, { name: "ArrowCouterclockwise", size: 16, className: isRedoDisabled ? "text-gray-500" : "text-gray-900" }) }) }), _jsx("button", { className: twMerge("flex h-8 items-center rounded-lg border border-gray-200 bg-white px-3 text-sm", isExportDisabled
33
+ ? "cursor-not-allowed"
34
+ : "cursor-pointer active:opacity-70"), onClick: onExport, disabled: isExportDisabled, children: _jsx("span", { className: isExportDisabled ? "text-gray-500" : "text-gray-900", children: "Export" }) })] }), _jsx("div", { className: "flex items-center", children: _jsx("h1", { className: "text-sm font-medium text-gray-500", children: title }) }), _jsxs("div", { className: "flex items-center gap-x-2", children: [_jsx("button", { className: twMerge("grid size-8 place-items-center rounded-lg border border-gray-200 bg-white", isSwitchboardLinkDisabled
35
+ ? "cursor-not-allowed"
36
+ : "cursor-pointer active:opacity-70"), onClick: onSwitchboardLinkClick, disabled: isSwitchboardLinkDisabled, children: _jsx(Icon, { name: "Drive", size: 16, className: isSwitchboardLinkDisabled ? "text-gray-500" : "text-gray-900" }) }), _jsx("button", { className: twMerge("grid size-8 place-items-center rounded-lg border border-gray-200 bg-white", isRevisionHistoryDisabled
37
+ ? "cursor-not-allowed"
38
+ : "cursor-pointer active:opacity-70"), onClick: onShowRevisionHistory, disabled: isRevisionHistoryDisabled, children: _jsx(Icon, { name: "History", size: 16, className: isRevisionHistoryDisabled ? "text-gray-500" : "text-gray-900" }) }), timelineButtonVisible && (_jsx("button", { className: twMerge("grid size-8 place-items-center rounded-lg border border-gray-200 bg-white", isTimelineDisabled
39
+ ? "cursor-not-allowed"
40
+ : "cursor-pointer active:opacity-70"), onClick: handleTimelineToggle, disabled: isTimelineDisabled, "aria-pressed": showTimeline, children: _jsx(Icon, { name: "Timeline", size: 16, className: twMerge("text-gray-900", isTimelineDisabled && "opacity-50", showTimeline && "text-blue-600") }) })), _jsx("button", { className: "grid size-8 cursor-pointer place-items-center rounded-lg border border-gray-200 bg-white active:opacity-70", onClick: onClose, children: _jsx(Icon, { name: "XmarkLight", size: 16, className: "text-gray-900" }) })] })] }), showTimeline && (_jsx("div", { className: "mt-2 w-full", children: _jsx(DocumentTimeline, { timeline: timelineItems, onItemClick: onTimelineItemClick }) }))] }));
25
41
  };
26
42
  //# sourceMappingURL=document-toolbar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-toolbar.js","sourceRoot":"","sources":["../../../../../src/connect/components/document-toolbar/document-toolbar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-toolbar.js","sourceRoot":"","sources":["../../../../../src/connect/components/document-toolbar/document-toolbar.tsx"],"names":[],"mappings":"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"}
@@ -1,13 +1,17 @@
1
- import { type NodeProps, type SharingType, type UiDriveNode } from "#connect";
2
- import type { TUiNodesContext } from "@powerhousedao/reactor-browser";
1
+ import { type NodeProps, type SharingType, type TNodeOptions, type UiDriveNode } from "#connect";
3
2
  import { type ReactNode } from "react";
4
- export type DriveViewProps = TUiNodesContext & NodeProps & {
5
- readonly label: ReactNode;
6
- readonly className?: string;
7
- readonly groupSharingType: SharingType;
8
- readonly disableAddDrives: boolean;
9
- readonly showAddDriveModal: (groupSharingType: SharingType) => void;
10
- readonly showDriveSettingsModal: (uiDriveNode: UiDriveNode) => void;
3
+ export type DriveViewProps = NodeProps & {
4
+ label: ReactNode;
5
+ groupSharingType: SharingType;
6
+ disableAddDrives: boolean;
7
+ isAllowedToCreateDocuments: boolean;
8
+ nodeOptions: TNodeOptions;
9
+ className?: string;
10
+ onAddTrigger: (uiNodeDriveId: string) => Promise<void>;
11
+ onRemoveTrigger: (uiNodeDriveId: string) => Promise<void>;
12
+ onAddInvalidTrigger: (uiNodeDriveId: string) => Promise<void>;
13
+ showAddDriveModal: (groupSharingType: SharingType) => void;
14
+ showDriveSettingsModal: (uiDriveNode: UiDriveNode) => void;
11
15
  };
12
16
  export declare function DriveView(props: DriveViewProps): import("react/jsx-runtime").JSX.Element;
13
17
  //# sourceMappingURL=drive-view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"drive-view.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/drive-view/drive-view.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,WAAW,EACjB,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,MAAM,MAAM,cAAc,GAAG,eAAe,GAC1C,SAAS,GAAG;IACV,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,WAAW,CAAC;IACvC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IAEnC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,gBAAgB,EAAE,WAAW,KAAK,IAAI,CAAC;IACpE,QAAQ,CAAC,sBAAsB,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;CACrE,CAAC;AAEJ,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CA6C9C"}
1
+ {"version":3,"file":"drive-view.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/drive-view/drive-view.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,WAAW,EACjB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG;IACvC,KAAK,EAAE,SAAS,CAAC;IACjB,gBAAgB,EAAE,WAAW,CAAC;IAC9B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,0BAA0B,EAAE,OAAO,CAAC;IACpC,WAAW,EAAE,YAAY,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,eAAe,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,mBAAmB,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,iBAAiB,EAAE,CAAC,gBAAgB,EAAE,WAAW,KAAK,IAAI,CAAC;IAC3D,sBAAsB,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;CAC5D,CAAC;AAEF,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CA4C9C"}
@@ -2,9 +2,11 @@ import { createElement as _createElement } from "react";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { ConnectTreeView, } from "#connect";
4
4
  import { Icon } from "#powerhouse";
5
+ import { useUiNodesContext } from "@powerhousedao/reactor-browser";
5
6
  import { twJoin, twMerge } from "tailwind-merge";
6
7
  export function DriveView(props) {
7
- const { driveNodes, selectedDriveNode, groupSharingType, disableAddDrives, label, className, isAllowedToCreateDocuments, showAddDriveModal, } = props;
8
+ const { groupSharingType, disableAddDrives, label, className, isAllowedToCreateDocuments, showAddDriveModal, } = props;
9
+ const { driveNodes } = useUiNodesContext();
8
10
  const hasDriveNodes = driveNodes.length > 0;
9
11
  const isContainerHighlighted = true;
10
12
  function onShowAddDriveModal() {
@@ -1 +1 @@
1
- {"version":3,"file":"drive-view.js","sourceRoot":"","sources":["../../../../../src/connect/components/drive-view/drive-view.tsx"],"names":[],"mappings":";;AAAA,OAAO,EACL,eAAe,GAIhB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGnC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAajD,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC7C,MAAM,EACJ,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,EACL,SAAS,EACT,0BAA0B,EAC1B,iBAAiB,GAClB,GAAG,KAAK,CAAC;IACV,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5C,MAAM,sBAAsB,GAAG,IAAI,CAAC;IAEpC,SAAS,mBAAmB;QAC1B,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,CACL,eACE,SAAS,EAAE,OAAO,CAChB,qFAAqF,EACrF,aAAa,IAAI,MAAM,EACvB,sBAAsB,IAAI,aAAa,EACvC,SAAS,CACV,aAED,eAAK,SAAS,EAAE,MAAM,CAAC,+CAA+C,CAAC,aACrE,YAAG,SAAS,EAAC,6CAA6C,YAAE,KAAK,GAAK,EACtE,cAAK,SAAS,EAAC,sBAAsB,YAClC,CAAC,gBAAgB,IAAI,0BAA0B,CAAC,CAAC,CAAC,CACjD,iBACE,SAAS,EAAE,OAAO,CAAC,qCAAqC,CAAC,EACzD,OAAO,EAAE,mBAAmB,YAE5B,KAAC,IAAI,IAAC,IAAI,EAAC,YAAY,EAAC,IAAI,EAAE,EAAE,GAAI,GAC7B,CACV,CAAC,CAAC,CAAC,IAAI,GACJ,IACF,EACL,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAC7B,eAAC,eAAe,OAAK,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,GAAI,CACrE,CAAC,IACE,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"drive-view.js","sourceRoot":"","sources":["../../../../../src/connect/components/drive-view/drive-view.tsx"],"names":[],"mappings":";;AAAA,OAAO,EACL,eAAe,GAKhB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAgBjD,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC7C,MAAM,EACJ,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,EACL,SAAS,EACT,0BAA0B,EAC1B,iBAAiB,GAClB,GAAG,KAAK,CAAC;IACV,MAAM,EAAE,UAAU,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAC3C,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5C,MAAM,sBAAsB,GAAG,IAAI,CAAC;IAEpC,SAAS,mBAAmB;QAC1B,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,CACL,eACE,SAAS,EAAE,OAAO,CAChB,qFAAqF,EACrF,aAAa,IAAI,MAAM,EACvB,sBAAsB,IAAI,aAAa,EACvC,SAAS,CACV,aAED,eAAK,SAAS,EAAE,MAAM,CAAC,+CAA+C,CAAC,aACrE,YAAG,SAAS,EAAC,6CAA6C,YAAE,KAAK,GAAK,EACtE,cAAK,SAAS,EAAC,sBAAsB,YAClC,CAAC,gBAAgB,IAAI,0BAA0B,CAAC,CAAC,CAAC,CACjD,iBACE,SAAS,EAAE,OAAO,CAAC,qCAAqC,CAAC,EACzD,OAAO,EAAE,mBAAmB,YAE5B,KAAC,IAAI,IAAC,IAAI,EAAC,YAAY,EAAC,IAAI,EAAE,EAAE,GAAI,GAC7B,CACV,CAAC,CAAC,CAAC,IAAI,GACJ,IACF,EACL,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAC7B,eAAC,eAAe,OAAK,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,GAAI,CACrE,CAAC,IACE,CACP,CAAC;AACJ,CAAC"}
@@ -6,6 +6,7 @@ export * from "./cookie-banner/index.js";
6
6
  export * from "./default-editor-loader/index.js";
7
7
  export * from "./disclosure/index.js";
8
8
  export * from "./divider/index.js";
9
+ export * from "./document-timeline/index.js";
9
10
  export * from "./document-toolbar/index.js";
10
11
  export * from "./drive-view/index.js";
11
12
  export * from "./dropdown-menu/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/connect/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/connect/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
@@ -6,6 +6,7 @@ export * from "./cookie-banner/index.js";
6
6
  export * from "./default-editor-loader/index.js";
7
7
  export * from "./disclosure/index.js";
8
8
  export * from "./divider/index.js";
9
+ export * from "./document-timeline/index.js";
9
10
  export * from "./document-toolbar/index.js";
10
11
  export * from "./drive-view/index.js";
11
12
  export * from "./dropdown-menu/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/connect/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/connect/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
@@ -3,6 +3,8 @@ import { type ReactNode } from "react";
3
3
  type Props = TooltipProps & {
4
4
  readonly className?: string;
5
5
  readonly content: ReactNode;
6
+ readonly side?: "top" | "right" | "bottom" | "left";
7
+ readonly sideOffset?: number;
6
8
  };
7
9
  export declare function Tooltip(props: Props): import("react/jsx-runtime").JSX.Element;
8
10
  export declare const TooltipProvider: import("react").FC<import("@radix-ui/react-tooltip").TooltipProviderProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/tooltip/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,YAAY,EAElB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,KAAK,KAAK,GAAG,YAAY,GAAG;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;CAC7B,CAAC;AAEF,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,2CAgCnC;AAED,eAAO,MAAM,eAAe,4EAAW,CAAC"}
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/tooltip/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,YAAY,EAElB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,KAAK,KAAK,GAAG,YAAY,GAAG;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IACpD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,2CAoCnC;AAED,eAAO,MAAM,eAAe,4EAAW,CAAC"}
@@ -2,8 +2,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Content, Portal, Provider, Root, Trigger, } from "@radix-ui/react-tooltip";
3
3
  import { twMerge } from "tailwind-merge";
4
4
  export function Tooltip(props) {
5
- const { children, content, open, defaultOpen, onOpenChange, className, ...rest } = props;
6
- return (_jsxs(Root, { defaultOpen: defaultOpen, delayDuration: 0, onOpenChange: onOpenChange, open: open, children: [_jsx(Trigger, { asChild: true, children: children }), _jsx(Portal, { children: _jsx(Content, { ...rest, className: twMerge("shadow-tooltip rounded-lg border border-gray-200 bg-white p-2 text-xs", className), children: content }) })] }));
5
+ const { children, content, open, defaultOpen, onOpenChange, className, side = "top", sideOffset = 5, ...rest } = props;
6
+ return (_jsxs(Root, { defaultOpen: defaultOpen, delayDuration: 0, onOpenChange: onOpenChange, open: open, children: [_jsx(Trigger, { asChild: true, children: children }), _jsx(Portal, { children: _jsx(Content, { ...rest, side: side, sideOffset: sideOffset, className: twMerge("shadow-tooltip rounded-lg border border-gray-200 bg-white p-2 text-xs", className), children: content }) })] }));
7
7
  }
8
8
  export const TooltipProvider = Provider;
9
9
  //# sourceMappingURL=tooltip.js.map