@assure-one/design-system 1.7.0 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -411,6 +411,51 @@ function SparkleIcon({ size = 24, ...props }) {
411
411
  }
412
412
  ) });
413
413
  }
414
+ function ExtractIcon({ size = 16, className, ...props }) {
415
+ const uid = useId();
416
+ const gradId = `extract-grad-${uid}`;
417
+ const clipId = `extract-clip-${uid}`;
418
+ return /* @__PURE__ */ jsxs(
419
+ "svg",
420
+ {
421
+ width: size,
422
+ height: size * 12 / 16,
423
+ viewBox: "0 0 16 12",
424
+ fill: "none",
425
+ xmlns: "http://www.w3.org/2000/svg",
426
+ className: cn("shrink-0", className),
427
+ "aria-hidden": "true",
428
+ ...props,
429
+ children: [
430
+ /* @__PURE__ */ jsx("g", { clipPath: `url(#${clipId})`, children: /* @__PURE__ */ jsx(
431
+ "path",
432
+ {
433
+ d: "M6.24553 5.34293C5.91553 5.23294 5.91553 4.76699 6.24553 4.657L8.18254 4.01207C8.60834 3.87011 8.99522 3.63094 9.31252 3.3135C9.62982 2.99607 9.8688 2.6091 10.0105 2.18327L10.6555 0.247473C10.7655 -0.0824911 11.2315 -0.0824912 11.3415 0.247473L11.9866 2.18427C12.1285 2.61002 12.3677 2.99686 12.6852 3.31412C13.0027 3.63139 13.3897 3.87035 13.8156 4.01207L15.7516 4.657C15.8238 4.68071 15.8868 4.72664 15.9314 4.78823C15.976 4.84982 16 4.92392 16 4.99996C16 5.07601 15.976 5.15011 15.9314 5.2117C15.8868 5.27329 15.8238 5.31921 15.7516 5.34293L13.8146 5.98786C13.3889 6.12971 13.0021 6.36874 12.6848 6.68599C12.3675 7.00324 12.1284 7.39001 11.9866 7.81566L11.3415 9.75245C11.3178 9.82471 11.2719 9.88763 11.2103 9.93223C11.1487 9.97684 11.0746 10.0009 10.9985 10.0009C10.9225 10.0009 10.8484 9.97684 10.7868 9.93223C10.7252 9.88763 10.6793 9.82471 10.6555 9.75245L10.0105 7.81566C9.86867 7.39001 9.62962 7.00324 9.31233 6.68599C8.99505 6.36874 8.60823 6.12971 8.18254 5.98786L6.24553 5.34293ZM1.14651 9.20551C1.1032 9.19117 1.06552 9.16355 1.03881 9.12658C1.0121 9.0896 0.99772 9.04515 0.99772 8.99954C0.99772 8.95392 1.0121 8.90947 1.03881 8.87249C1.06552 8.83552 1.1032 8.8079 1.14651 8.79356L2.30851 8.4066C2.82651 8.23362 3.23252 7.82766 3.40552 7.30972L3.79252 6.14784C3.80686 6.10454 3.83448 6.06686 3.87146 6.04015C3.90844 6.01345 3.9529 5.99907 3.99852 5.99907C4.04414 5.99907 4.0886 6.01345 4.12558 6.04015C4.16256 6.06686 4.19018 6.10454 4.20452 6.14784L4.59152 7.30972C4.67664 7.56516 4.82009 7.79728 5.0105 7.98767C5.20091 8.17806 5.43305 8.32149 5.68853 8.4066L6.85053 8.79356C6.89384 8.8079 6.93152 8.83551 6.95823 8.87249C6.98494 8.90947 6.99932 8.95392 6.99932 8.99954C6.99932 9.04515 6.98494 9.0896 6.95823 9.12658C6.93152 9.16355 6.89384 9.19117 6.85053 9.20551L5.68853 9.59247C5.43305 9.67758 5.20091 9.82101 5.0105 10.0114C4.82009 10.2018 4.67664 10.4339 4.59152 10.6894L4.20452 11.8512C4.19018 11.8945 4.16256 11.9322 4.12558 11.9589C4.0886 11.9856 4.04414 12 3.99852 12C3.9529 12 3.90844 11.9856 3.87146 11.9589C3.83448 11.9322 3.80686 11.8945 3.79252 11.8512L3.40552 10.6894C3.3204 10.4339 3.17695 10.2018 2.98654 10.0114C2.79613 9.82101 2.56399 9.67758 2.30851 9.59247L1.14651 9.20551ZM0.097503 2.13727C0.0690292 2.1274 0.0443387 2.1089 0.0268643 2.08435C0.00938996 2.0598 1.317e-09 2.03042 0 2.00029C-1.318e-09 1.97015 0.00938995 1.94077 0.0268643 1.91622C0.0443387 1.89167 0.0690292 1.87317 0.097503 1.8633L0.871506 1.60533C1.21751 1.49034 1.48851 1.21937 1.60351 0.873408L1.86151 0.0994903C1.87138 0.0710193 1.88988 0.0463306 1.91443 0.0288584C1.93899 0.0113861 1.96837 0.00199815 1.99851 0.00199814C2.02865 0.00199814 2.05803 0.0113861 2.08259 0.0288583C2.10714 0.0463306 2.12564 0.0710193 2.13551 0.0994903L2.39351 0.873408C2.45024 1.0439 2.54593 1.19882 2.673 1.32588C2.80006 1.45293 2.955 1.54861 3.12552 1.60533L3.89952 1.8633C3.92799 1.87317 3.95268 1.89167 3.97016 1.91622C3.98763 1.94077 3.99702 1.97015 3.99702 2.00029C3.99702 2.03042 3.98763 2.0598 3.97016 2.08435C3.95268 2.1089 3.92799 2.1274 3.89952 2.13727L3.12552 2.39524C2.955 2.45196 2.80006 2.54764 2.673 2.6747C2.54593 2.80175 2.45024 2.95667 2.39351 3.12717L2.13551 3.90008C2.12564 3.92855 2.10714 3.95324 2.08259 3.97071C2.05804 3.98819 2.02865 3.99757 1.99851 3.99757C1.96837 3.99757 1.93899 3.98819 1.91443 3.97071C1.88988 3.95324 1.87138 3.92855 1.86151 3.90008L1.60351 3.12617C1.48851 2.7802 1.21751 2.50923 0.871506 2.39424L0.097503 2.13727Z",
434
+ fill: `url(#${gradId})`
435
+ }
436
+ ) }),
437
+ /* @__PURE__ */ jsxs("defs", { children: [
438
+ /* @__PURE__ */ jsxs(
439
+ "linearGradient",
440
+ {
441
+ id: gradId,
442
+ x1: "0.265576",
443
+ y1: "0.856805",
444
+ x2: "13.5",
445
+ y2: "12",
446
+ gradientUnits: "userSpaceOnUse",
447
+ children: [
448
+ /* @__PURE__ */ jsx("stop", { stopColor: "#9E32FF" }),
449
+ /* @__PURE__ */ jsx("stop", { offset: "1", stopColor: "#1BB6FF" })
450
+ ]
451
+ }
452
+ ),
453
+ /* @__PURE__ */ jsx("clipPath", { id: clipId, children: /* @__PURE__ */ jsx("rect", { width: "16", height: "12", fill: "white" }) })
454
+ ] })
455
+ ]
456
+ }
457
+ );
458
+ }
414
459
  function ChatBubbleIcon({ size = 24, ...props }) {
415
460
  return /* @__PURE__ */ jsx(Icon, { size, ...props, children: /* @__PURE__ */ jsx(
416
461
  "path",
@@ -2972,7 +3017,7 @@ function getInitials(name) {
2972
3017
  }
2973
3018
  var Avatar = React38.forwardRef(
2974
3019
  function Avatar2({ src, alt, name, size = "md", variant = "initials", status, className, ...props }, ref) {
2975
- const initials = name ? getInitials(name) : "?";
3020
+ const initials2 = name ? getInitials(name) : "?";
2976
3021
  const resolvedSize = size ?? "md";
2977
3022
  return /* @__PURE__ */ jsxs("span", { className: "relative inline-flex", children: [
2978
3023
  /* @__PURE__ */ jsxs(
@@ -2996,7 +3041,7 @@ var Avatar = React38.forwardRef(
2996
3041
  delayMs: src ? 200 : 0,
2997
3042
  className: "flex size-full items-center justify-center",
2998
3043
  "aria-label": name || "Unknown user",
2999
- children: initials
3044
+ children: initials2
3000
3045
  }
3001
3046
  )
3002
3047
  ]
@@ -12752,6 +12797,573 @@ var DetailMain = forwardRef(function DetailMain2({ className, ...props }, ref) {
12752
12797
  return /* @__PURE__ */ jsx("section", { ref, className: cn("min-w-0 flex-1 space-y-6", className), ...props });
12753
12798
  });
12754
12799
  DetailMain.displayName = "DetailMain";
12800
+ var DocumentDetailPanel = forwardRef(
12801
+ function DocumentDetailPanel2({ className, ...props }, ref) {
12802
+ return /* @__PURE__ */ jsx(
12803
+ "aside",
12804
+ {
12805
+ ref,
12806
+ className: cn(
12807
+ "bg-surface text-fg border-rule flex h-full min-h-0 flex-col border-l",
12808
+ className
12809
+ ),
12810
+ ...props
12811
+ }
12812
+ );
12813
+ }
12814
+ );
12815
+ DocumentDetailPanel.displayName = "DocumentDetailPanel";
12816
+ var DocumentDetailHeader = forwardRef(
12817
+ function DocumentDetailHeader2({ tags, status, onClose, className, children, ...props }, ref) {
12818
+ const showBar = tags || status || onClose;
12819
+ return /* @__PURE__ */ jsxs(
12820
+ "div",
12821
+ {
12822
+ ref,
12823
+ className: cn("border-rule shrink-0 space-y-3 border-b px-5 py-4", className),
12824
+ ...props,
12825
+ children: [
12826
+ showBar && /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-3", children: [
12827
+ /* @__PURE__ */ jsx("div", { className: "flex min-w-0 flex-wrap items-center gap-1.5", children: tags }),
12828
+ /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [
12829
+ status,
12830
+ onClose && /* @__PURE__ */ jsx(
12831
+ "button",
12832
+ {
12833
+ type: "button",
12834
+ onClick: onClose,
12835
+ "aria-label": "Close",
12836
+ className: cn(
12837
+ "inline-flex size-7 shrink-0 items-center justify-center",
12838
+ "rounded-icon text-fg-4 transition-colors duration-[var(--duration-fast)] ease-[var(--ease-out-quart)] motion-reduce:transition-none",
12839
+ "hover:bg-overlay-hover hover:text-fg",
12840
+ "focus-visible:[box-shadow:var(--shadow-focus-ring)] focus-visible:outline-none"
12841
+ ),
12842
+ children: /* @__PURE__ */ jsx(XIcon, { className: "size-4", "aria-hidden": "true" })
12843
+ }
12844
+ )
12845
+ ] })
12846
+ ] }),
12847
+ children
12848
+ ]
12849
+ }
12850
+ );
12851
+ }
12852
+ );
12853
+ DocumentDetailHeader.displayName = "DocumentDetailHeader";
12854
+ var DocumentDetailTitle = forwardRef(
12855
+ function DocumentDetailTitle2({ className, children, ...props }, ref) {
12856
+ return /* @__PURE__ */ jsx(
12857
+ "h2",
12858
+ {
12859
+ ref,
12860
+ className: cn(
12861
+ "font-display text-fg text-lg leading-snug font-semibold tracking-tight",
12862
+ className
12863
+ ),
12864
+ ...props,
12865
+ children
12866
+ }
12867
+ );
12868
+ }
12869
+ );
12870
+ DocumentDetailTitle.displayName = "DocumentDetailTitle";
12871
+ var DocumentDetailRequester = forwardRef(
12872
+ function DocumentDetailRequester2({ avatar, org, requestedBy, time, className, ...props }, ref) {
12873
+ const isImageSrc = /^(https?:|data:|\/)/i.test(avatar);
12874
+ return /* @__PURE__ */ jsxs("div", { ref, className: cn("flex items-center gap-2.5", className), ...props, children: [
12875
+ /* @__PURE__ */ jsx(Avatar, { size: "sm", src: isImageSrc ? avatar : void 0, name: isImageSrc ? org : avatar }),
12876
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
12877
+ /* @__PURE__ */ jsx("div", { className: "text-fg line-clamp-1 text-sm font-medium", children: org }),
12878
+ /* @__PURE__ */ jsxs("div", { className: "text-fg-4 text-xs", children: [
12879
+ "Requested by ",
12880
+ requestedBy,
12881
+ " \xB7 ",
12882
+ time
12883
+ ] })
12884
+ ] })
12885
+ ] });
12886
+ }
12887
+ );
12888
+ DocumentDetailRequester.displayName = "DocumentDetailRequester";
12889
+ var DocumentDetailMetaRow = forwardRef(
12890
+ function DocumentDetailMetaRow2({ className, ...props }, ref) {
12891
+ return /* @__PURE__ */ jsx(
12892
+ "div",
12893
+ {
12894
+ ref,
12895
+ className: cn("flex items-center justify-between gap-3", className),
12896
+ ...props
12897
+ }
12898
+ );
12899
+ }
12900
+ );
12901
+ DocumentDetailMetaRow.displayName = "DocumentDetailMetaRow";
12902
+ var DocumentDetailActions = forwardRef(
12903
+ function DocumentDetailActions2({ className, ...props }, ref) {
12904
+ return /* @__PURE__ */ jsx(
12905
+ "div",
12906
+ {
12907
+ ref,
12908
+ className: cn("flex flex-wrap items-center gap-2 [&>*]:flex-1", className),
12909
+ ...props
12910
+ }
12911
+ );
12912
+ }
12913
+ );
12914
+ DocumentDetailActions.displayName = "DocumentDetailActions";
12915
+ var DocumentDetailBody = forwardRef(
12916
+ function DocumentDetailBody2({ className, ...props }, ref) {
12917
+ return /* @__PURE__ */ jsx(
12918
+ "div",
12919
+ {
12920
+ ref,
12921
+ className: cn("scrollbar-thin min-h-0 flex-1 overflow-y-auto px-5 py-4", className),
12922
+ ...props
12923
+ }
12924
+ );
12925
+ }
12926
+ );
12927
+ DocumentDetailBody.displayName = "DocumentDetailBody";
12928
+ var DocumentList = forwardRef(function DocumentList2({ className, ...props }, ref) {
12929
+ return /* @__PURE__ */ jsx("div", { ref, className: cn("space-y-5", className), ...props });
12930
+ });
12931
+ DocumentList.displayName = "DocumentList";
12932
+ var DocumentListSection = forwardRef(
12933
+ function DocumentListSection2({ label, count, action, className, children, ...props }, ref) {
12934
+ return /* @__PURE__ */ jsxs("section", { ref, className: cn("space-y-1", className), ...props, children: [
12935
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-2 px-2.5 py-1", children: [
12936
+ /* @__PURE__ */ jsxs("div", { className: "text-fg-3 flex items-center gap-1.5 text-xs font-medium", children: [
12937
+ /* @__PURE__ */ jsx("span", { children: label }),
12938
+ count != null && /* @__PURE__ */ jsx("span", { className: "text-fg-4 tabular-nums", children: count })
12939
+ ] }),
12940
+ action
12941
+ ] }),
12942
+ /* @__PURE__ */ jsx("div", { className: "space-y-0.5", children })
12943
+ ] });
12944
+ }
12945
+ );
12946
+ DocumentListSection.displayName = "DocumentListSection";
12947
+ var DocumentRow = forwardRef(function DocumentRow2({ fileName, meta, icon, actions, className, ...props }, ref) {
12948
+ return /* @__PURE__ */ jsxs(
12949
+ "div",
12950
+ {
12951
+ ref,
12952
+ className: cn(
12953
+ "group/row rounded-card flex items-center gap-3 px-2.5 py-2",
12954
+ "transition-colors duration-[var(--duration-fast)] ease-[var(--ease-out-quart)] motion-reduce:transition-none",
12955
+ "hover:bg-overlay-hover",
12956
+ className
12957
+ ),
12958
+ ...props,
12959
+ children: [
12960
+ /* @__PURE__ */ jsx(
12961
+ "span",
12962
+ {
12963
+ "aria-hidden": "true",
12964
+ className: "rounded-icon bg-bg-2 text-fg-3 inline-flex size-9 shrink-0 items-center justify-center",
12965
+ children: icon ?? /* @__PURE__ */ jsx(FileTextIcon, { className: "size-4.5" })
12966
+ }
12967
+ ),
12968
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
12969
+ /* @__PURE__ */ jsx("div", { className: "text-fg line-clamp-1 text-sm font-medium", children: fileName }),
12970
+ meta && /* @__PURE__ */ jsx("div", { className: "text-fg-4 line-clamp-1 text-xs", children: meta })
12971
+ ] }),
12972
+ actions && /* @__PURE__ */ jsx("div", { className: "flex shrink-0 items-center gap-0.5", children: actions })
12973
+ ]
12974
+ }
12975
+ );
12976
+ });
12977
+ DocumentRow.displayName = "DocumentRow";
12978
+ var TONE_TEXT = {
12979
+ warning: "text-warning-fg",
12980
+ success: "text-success-fg",
12981
+ danger: "text-danger-fg",
12982
+ muted: "text-fg-4"
12983
+ };
12984
+ var TONE_PILL = {
12985
+ warning: "bg-warning-bg text-warning-fg",
12986
+ success: "bg-success-bg text-success-fg",
12987
+ danger: "bg-danger-bg text-danger-fg",
12988
+ muted: "bg-surface-2 text-fg-3"
12989
+ };
12990
+ function initials(name) {
12991
+ return name.split(/\s+/).slice(0, 2).map((p) => p[0]?.toUpperCase() ?? "").join("");
12992
+ }
12993
+ var DocumentRequestCard = forwardRef(
12994
+ function DocumentRequestCard2({ title, category, highPriority, due, comment, fulfilledCount, totalCount, items, assignees = [], onOpen, className, ...props }, ref) {
12995
+ const docWord = totalCount === 1 ? "document" : "documents";
12996
+ return /* @__PURE__ */ jsxs(
12997
+ "div",
12998
+ {
12999
+ ref,
13000
+ role: "button",
13001
+ tabIndex: 0,
13002
+ onClick: onOpen,
13003
+ onKeyDown: (e) => {
13004
+ if (e.key === "Enter" || e.key === " ") {
13005
+ e.preventDefault();
13006
+ onOpen();
13007
+ }
13008
+ },
13009
+ className: cn(
13010
+ "rounded-card border-rule bg-surface cursor-pointer overflow-hidden border shadow-sm",
13011
+ "transition-shadow duration-[var(--duration-fast)] ease-[var(--ease-out-quart)] motion-reduce:transition-none",
13012
+ "hover:shadow-md focus-visible:outline-none focus-visible:[box-shadow:var(--shadow-focus-ring)]",
13013
+ className
13014
+ ),
13015
+ ...props,
13016
+ children: [
13017
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2.5 px-5 py-3.5", children: [
13018
+ /* @__PURE__ */ jsxs("span", { className: "bg-surface-2 text-fg-3 inline-flex shrink-0 items-center rounded-md px-2 py-0.5 text-xs font-semibold tabular-nums", children: [
13019
+ fulfilledCount,
13020
+ "/",
13021
+ totalCount
13022
+ ] }),
13023
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
13024
+ /* @__PURE__ */ jsx("span", { className: "text-fg min-w-0 truncate text-sm font-semibold", children: title }),
13025
+ category && /* @__PURE__ */ jsx("span", { className: "bg-surface-2 text-fg-3 inline-flex shrink-0 items-center rounded-md px-2 py-0.5 text-xs font-medium", children: category }),
13026
+ highPriority && /* @__PURE__ */ jsx(AlertTriangleIcon, { size: 14, className: "text-warning-fg shrink-0", "aria-label": "Urgent request" }),
13027
+ due && /* @__PURE__ */ jsx(
13028
+ "span",
13029
+ {
13030
+ className: cn(
13031
+ "inline-flex shrink-0 items-center rounded-md px-2 py-0.5 text-xs font-semibold",
13032
+ TONE_PILL[due.tone]
13033
+ ),
13034
+ children: due.text
13035
+ }
13036
+ )
13037
+ ] }),
13038
+ /* @__PURE__ */ jsxs(
13039
+ "span",
13040
+ {
13041
+ "aria-hidden": true,
13042
+ className: "bg-pro-bg text-pro-fg ml-auto inline-flex shrink-0 items-center gap-1 rounded-lg px-2.5 py-1.5 text-[13px] font-semibold",
13043
+ children: [
13044
+ "Open",
13045
+ /* @__PURE__ */ jsx(ArrowRightIcon, { size: 13 })
13046
+ ]
13047
+ }
13048
+ )
13049
+ ] }),
13050
+ comment && /* @__PURE__ */ jsxs("p", { className: "text-fg-2 px-5 pb-1 text-[13.5px] leading-snug", children: [
13051
+ "\u201C",
13052
+ comment,
13053
+ "\u201D"
13054
+ ] }),
13055
+ /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-2 px-5 pb-4 pt-3", children: items.map((item) => /* @__PURE__ */ jsxs("div", { className: "bg-surface-2 flex items-center gap-3 rounded-xl px-4 py-3.5", children: [
13056
+ /* @__PURE__ */ jsx(FileTextIcon, { size: 16, className: "text-fg-3 shrink-0" }),
13057
+ /* @__PURE__ */ jsx("span", { className: "text-fg min-w-0 flex-1 truncate text-sm font-semibold", children: item.label }),
13058
+ item.docType && /* @__PURE__ */ jsx("span", { className: "border-rule bg-surface text-fg-3 inline-flex shrink-0 items-center rounded-md border px-2 py-0.5 text-[10.5px] font-semibold uppercase tracking-wide", children: item.docType }),
13059
+ /* @__PURE__ */ jsx("span", { className: cn("shrink-0 text-[13px] font-semibold", TONE_TEXT[item.statusTone]), children: item.statusLabel })
13060
+ ] }, item.id)) }),
13061
+ /* @__PURE__ */ jsxs("div", { className: "border-rule flex items-center gap-2 border-t px-5 py-2.5", children: [
13062
+ /* @__PURE__ */ jsx(FolderClosedIcon, { size: 14, className: "text-fg-4 shrink-0" }),
13063
+ /* @__PURE__ */ jsxs("span", { className: "text-fg-3 text-[12.5px] tabular-nums", children: [
13064
+ totalCount,
13065
+ " ",
13066
+ docWord
13067
+ ] }),
13068
+ assignees.length > 0 && /* @__PURE__ */ jsxs("span", { className: "text-fg-3 ml-auto flex items-center gap-2 text-[12.5px]", children: [
13069
+ /* @__PURE__ */ jsx("span", { className: "flex items-center -space-x-1.5", children: assignees.map((name) => /* @__PURE__ */ jsx(
13070
+ "span",
13071
+ {
13072
+ title: name,
13073
+ className: "border-surface bg-surface-2 text-fg-3 ring-surface grid size-6 place-items-center rounded-full border text-[10px] font-semibold ring-1",
13074
+ children: initials(name)
13075
+ },
13076
+ name
13077
+ )) }),
13078
+ "Assigned"
13079
+ ] })
13080
+ ] })
13081
+ ]
13082
+ }
13083
+ );
13084
+ }
13085
+ );
13086
+ DocumentRequestCard.displayName = "DocumentRequestCard";
13087
+ var ACTIVITY_ICON = {
13088
+ assigned: UsersIcon,
13089
+ unassigned: UsersIcon,
13090
+ added: PaperclipIcon,
13091
+ uploaded: DownloadIcon,
13092
+ priority: AlertTriangleIcon,
13093
+ created: SendIcon,
13094
+ reminded: BellIcon,
13095
+ updated: PencilIcon,
13096
+ commented: MessageCircleIcon,
13097
+ cancelled: XCircleSolidIcon,
13098
+ received: DownloadIcon,
13099
+ approved: CheckCircleSolidIcon,
13100
+ needs_revision: AlertTriangleIcon
13101
+ };
13102
+ var DocumentRequestDetail = forwardRef(
13103
+ function DocumentRequestDetail2(props, ref) {
13104
+ const {
13105
+ title,
13106
+ category,
13107
+ highPriority,
13108
+ statusLabel,
13109
+ statusVariant = "secondary",
13110
+ requester,
13111
+ due,
13112
+ assignees,
13113
+ onToggleAssignee,
13114
+ canEdit,
13115
+ onEdit,
13116
+ onDelete,
13117
+ onClose,
13118
+ tab,
13119
+ defaultTab = "documents",
13120
+ onTabChange,
13121
+ clientUploads,
13122
+ firmDocuments,
13123
+ onUploadFirmDocument,
13124
+ comments,
13125
+ commentDraft,
13126
+ onCommentDraftChange,
13127
+ onSubmitComment,
13128
+ commentDisabled,
13129
+ commentPending,
13130
+ activity,
13131
+ className
13132
+ } = props;
13133
+ const docCount = clientUploads.length + firmDocuments.length;
13134
+ const selectedAssignees = assignees.filter((a) => a.selected);
13135
+ return /* @__PURE__ */ jsxs(DocumentDetailPanel, { ref, className, children: [
13136
+ /* @__PURE__ */ jsxs(
13137
+ DocumentDetailHeader,
13138
+ {
13139
+ onClose,
13140
+ tags: /* @__PURE__ */ jsxs(Fragment, { children: [
13141
+ category && /* @__PURE__ */ jsxs(Badge, { variant: "outline", className: "gap-1", children: [
13142
+ /* @__PURE__ */ jsx(FolderClosedIcon, { className: "size-3" }),
13143
+ category
13144
+ ] }),
13145
+ highPriority && /* @__PURE__ */ jsx(Badge, { variant: "warning", children: "High priority" })
13146
+ ] }),
13147
+ status: statusLabel ? /* @__PURE__ */ jsx(Badge, { variant: statusVariant, children: statusLabel }) : void 0,
13148
+ children: [
13149
+ /* @__PURE__ */ jsx(DocumentDetailTitle, { children: title }),
13150
+ /* @__PURE__ */ jsx(
13151
+ DocumentDetailRequester,
13152
+ {
13153
+ avatar: requester.avatar ?? requester.org,
13154
+ org: requester.org,
13155
+ requestedBy: requester.requestedBy,
13156
+ time: requester.time
13157
+ }
13158
+ ),
13159
+ /* @__PURE__ */ jsxs(DocumentDetailMetaRow, { children: [
13160
+ due ? /* @__PURE__ */ jsxs("span", { className: "rounded-pill border-rule text-fg-3 inline-flex items-center gap-1.5 border px-2.5 py-1 text-xs", children: [
13161
+ /* @__PURE__ */ jsx(CalendarIcon, { className: "size-3.5" }),
13162
+ due.text,
13163
+ due.dateLabel ? ` \xB7 ${due.dateLabel}` : ""
13164
+ ] }) : /* @__PURE__ */ jsx("span", {}),
13165
+ (selectedAssignees.length > 0 || onToggleAssignee) && /* @__PURE__ */ jsx(AssigneePicker, { assignees, onToggle: onToggleAssignee })
13166
+ ] }),
13167
+ canEdit && /* @__PURE__ */ jsxs(DocumentDetailActions, { className: "border-rule border-t pt-3", children: [
13168
+ /* @__PURE__ */ jsxs(Button, { variant: "secondary", size: "sm", onClick: onEdit, children: [
13169
+ /* @__PURE__ */ jsx(PencilIcon, {}),
13170
+ "Edit"
13171
+ ] }),
13172
+ /* @__PURE__ */ jsxs(Button, { variant: "secondary", size: "sm", className: "text-danger-fg", onClick: onDelete, children: [
13173
+ /* @__PURE__ */ jsx(TrashIcon, {}),
13174
+ "Delete"
13175
+ ] })
13176
+ ] })
13177
+ ]
13178
+ }
13179
+ ),
13180
+ /* @__PURE__ */ jsxs(
13181
+ Tabs,
13182
+ {
13183
+ value: tab,
13184
+ defaultValue: tab ? void 0 : defaultTab,
13185
+ onValueChange: (v) => onTabChange?.(v),
13186
+ className: "flex min-h-0 flex-1 flex-col",
13187
+ children: [
13188
+ /* @__PURE__ */ jsxs(TabsList, { className: "w-full shrink-0 px-5", children: [
13189
+ /* @__PURE__ */ jsxs(TabsTrigger, { value: "documents", children: [
13190
+ "Documents ",
13191
+ docCount
13192
+ ] }),
13193
+ /* @__PURE__ */ jsxs(TabsTrigger, { value: "comments", children: [
13194
+ "Comments ",
13195
+ comments.length
13196
+ ] }),
13197
+ /* @__PURE__ */ jsxs(TabsTrigger, { value: "activity", children: [
13198
+ "Activity ",
13199
+ activity.length
13200
+ ] })
13201
+ ] }),
13202
+ /* @__PURE__ */ jsx(TabsContent, { value: "documents", className: "min-h-0 flex-1 overflow-y-auto px-5 py-4", children: /* @__PURE__ */ jsxs(DocumentList, { children: [
13203
+ /* @__PURE__ */ jsx(DocumentListSection, { label: "Client uploads", count: clientUploads.length, children: clientUploads.length > 0 ? clientUploads.map((d) => /* @__PURE__ */ jsx(
13204
+ DocumentRow,
13205
+ {
13206
+ fileName: d.fileName,
13207
+ meta: d.meta,
13208
+ className: d.active ? "bg-overlay-hover" : void 0,
13209
+ actions: /* @__PURE__ */ jsx(FileRowActions, { doc: d })
13210
+ },
13211
+ d.id
13212
+ )) : /* @__PURE__ */ jsx("p", { className: "text-fg-4 px-2.5 py-2 text-sm", children: "No client uploads yet." }) }),
13213
+ /* @__PURE__ */ jsx(
13214
+ DocumentListSection,
13215
+ {
13216
+ label: "Firm documents",
13217
+ count: firmDocuments.length,
13218
+ action: onUploadFirmDocument ? /* @__PURE__ */ jsxs(Button, { variant: "ghost", size: "sm", onClick: onUploadFirmDocument, children: [
13219
+ /* @__PURE__ */ jsx(UploadIcon, {}),
13220
+ "Upload"
13221
+ ] }) : void 0,
13222
+ children: firmDocuments.length > 0 ? firmDocuments.map((d) => /* @__PURE__ */ jsx(
13223
+ DocumentRow,
13224
+ {
13225
+ fileName: d.fileName,
13226
+ meta: d.meta,
13227
+ className: d.active ? "bg-overlay-hover" : void 0,
13228
+ actions: /* @__PURE__ */ jsx(FileRowActions, { doc: d })
13229
+ },
13230
+ d.id
13231
+ )) : /* @__PURE__ */ jsx("p", { className: "text-fg-4 px-2.5 py-2 text-sm", children: "No firm documents attached." })
13232
+ }
13233
+ )
13234
+ ] }) }),
13235
+ /* @__PURE__ */ jsxs(TabsContent, { value: "comments", className: "flex min-h-0 flex-1 flex-col", children: [
13236
+ /* @__PURE__ */ jsx("div", { className: "min-h-0 flex-1 overflow-y-auto px-5 py-4", children: comments.length > 0 ? /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-4", children: comments.map((c) => /* @__PURE__ */ jsx(CommentRow, { comment: c }, c.id)) }) : /* @__PURE__ */ jsx("p", { className: "text-fg-4 text-sm", children: "No comments yet. Start the conversation below." }) }),
13237
+ /* @__PURE__ */ jsxs("div", { className: "border-rule shrink-0 border-t px-5 py-3", children: [
13238
+ /* @__PURE__ */ jsx(
13239
+ Textarea,
13240
+ {
13241
+ value: commentDraft,
13242
+ onChange: (e) => onCommentDraftChange(e.target.value),
13243
+ onKeyDown: (e) => {
13244
+ if ((e.metaKey || e.ctrlKey) && e.key === "Enter") {
13245
+ e.preventDefault();
13246
+ onSubmitComment();
13247
+ }
13248
+ },
13249
+ placeholder: "Add a comment for the client or your team\u2026",
13250
+ rows: 2,
13251
+ disabled: commentDisabled,
13252
+ className: "resize-none"
13253
+ }
13254
+ ),
13255
+ /* @__PURE__ */ jsxs("div", { className: "mt-2 flex items-center justify-between", children: [
13256
+ /* @__PURE__ */ jsx("span", { className: "text-fg-4 text-[11px]", children: "\u2318\u21B5 to send" }),
13257
+ /* @__PURE__ */ jsxs(
13258
+ Button,
13259
+ {
13260
+ size: "sm",
13261
+ onClick: onSubmitComment,
13262
+ disabled: commentDisabled || commentPending || !commentDraft.trim(),
13263
+ children: [
13264
+ /* @__PURE__ */ jsx(SendIcon, { size: 14 }),
13265
+ "Comment"
13266
+ ]
13267
+ }
13268
+ )
13269
+ ] })
13270
+ ] })
13271
+ ] }),
13272
+ /* @__PURE__ */ jsx(TabsContent, { value: "activity", className: "min-h-0 flex-1 overflow-y-auto px-5 py-4", children: activity.length > 0 ? /* @__PURE__ */ jsx("ul", { className: "flex flex-col gap-1.5", children: activity.map((event) => {
13273
+ const Icon3 = ACTIVITY_ICON[event.kind] ?? SendIcon;
13274
+ return /* @__PURE__ */ jsxs("li", { className: "flex items-start gap-3 py-1", children: [
13275
+ /* @__PURE__ */ jsx("span", { className: "bg-pro-bg text-pro-fg grid size-9 shrink-0 place-items-center rounded-[10px]", children: /* @__PURE__ */ jsx(Icon3, { size: 16 }) }),
13276
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1 pt-1", children: [
13277
+ /* @__PURE__ */ jsx("p", { className: "text-fg-2 text-[13px] leading-snug", children: event.text }),
13278
+ /* @__PURE__ */ jsx("p", { className: "text-fg-4 mt-0.5 text-[12px]", children: event.time })
13279
+ ] })
13280
+ ] }, event.id);
13281
+ }) }) : /* @__PURE__ */ jsx("p", { className: "text-fg-4 text-sm", children: "No activity yet." }) })
13282
+ ]
13283
+ }
13284
+ )
13285
+ ] });
13286
+ }
13287
+ );
13288
+ DocumentRequestDetail.displayName = "DocumentRequestDetail";
13289
+ function AssigneePicker({
13290
+ assignees,
13291
+ onToggle
13292
+ }) {
13293
+ const selected = assignees.filter((a) => a.selected);
13294
+ const stack = /* @__PURE__ */ jsx("span", { className: "flex -space-x-2", children: selected.map((a) => /* @__PURE__ */ jsx(Avatar, { size: "sm", name: a.name, variant: "branded" }, a.id)) });
13295
+ if (!onToggle) {
13296
+ return /* @__PURE__ */ jsxs("span", { className: "rounded-pill border-rule inline-flex items-center gap-2 border py-1 pl-1.5 pr-2.5", children: [
13297
+ stack,
13298
+ /* @__PURE__ */ jsx("span", { className: "text-fg-2 text-sm font-semibold tabular-nums", children: selected.length })
13299
+ ] });
13300
+ }
13301
+ return /* @__PURE__ */ jsxs(DropdownMenu, { children: [
13302
+ /* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
13303
+ "button",
13304
+ {
13305
+ type: "button",
13306
+ "aria-label": "Edit assignees",
13307
+ className: "rounded-pill border-rule hover:bg-overlay-hover inline-flex items-center gap-2 border py-1 pl-1.5 pr-2.5 transition-colors focus-visible:outline-none focus-visible:[box-shadow:var(--shadow-focus-ring)]",
13308
+ children: [
13309
+ stack,
13310
+ /* @__PURE__ */ jsx("span", { className: "text-fg-2 text-sm font-semibold tabular-nums", children: selected.length }),
13311
+ /* @__PURE__ */ jsx(ChevronDownIcon, { className: "text-fg-4 size-4" })
13312
+ ]
13313
+ }
13314
+ ) }),
13315
+ /* @__PURE__ */ jsxs(DropdownMenuContent, { align: "end", className: "w-56", children: [
13316
+ /* @__PURE__ */ jsx(DropdownMenuLabel, { children: "Assign to" }),
13317
+ assignees.map((a) => /* @__PURE__ */ jsxs(
13318
+ DropdownMenuCheckboxItem,
13319
+ {
13320
+ checked: a.selected,
13321
+ onCheckedChange: () => onToggle(a.id),
13322
+ onSelect: (e) => e.preventDefault(),
13323
+ className: "gap-2",
13324
+ children: [
13325
+ /* @__PURE__ */ jsx(Avatar, { size: "xs", name: a.name, variant: "branded" }),
13326
+ a.name
13327
+ ]
13328
+ },
13329
+ a.id
13330
+ ))
13331
+ ] })
13332
+ ] });
13333
+ }
13334
+ function CommentRow({ comment }) {
13335
+ return /* @__PURE__ */ jsxs("div", { className: "flex gap-2.5", children: [
13336
+ /* @__PURE__ */ jsx(Avatar, { size: "sm", name: comment.author, variant: "branded" }),
13337
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
13338
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
13339
+ /* @__PURE__ */ jsxs("span", { className: "text-fg truncate text-[13px] font-semibold", children: [
13340
+ comment.author,
13341
+ comment.you && " (You)"
13342
+ ] }),
13343
+ /* @__PURE__ */ jsx(Badge, { variant: comment.isFirm ? "secondary" : "info", size: "sm", children: comment.isFirm ? "Firm" : "Client" }),
13344
+ /* @__PURE__ */ jsx("span", { className: "text-fg-4 ml-auto shrink-0 text-[11.5px]", children: comment.time })
13345
+ ] }),
13346
+ /* @__PURE__ */ jsx("p", { className: "text-fg-2 mt-0.5 text-[13px] leading-snug", children: comment.body })
13347
+ ] })
13348
+ ] });
13349
+ }
13350
+ function FileRowActions({ doc }) {
13351
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
13352
+ doc.onPreview && /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "icon-sm", "aria-label": "Preview", onClick: doc.onPreview, children: /* @__PURE__ */ jsx(EyeIcon, {}) }),
13353
+ doc.onDownload && /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "icon-sm", "aria-label": "Download", onClick: doc.onDownload, children: /* @__PURE__ */ jsx(DownloadIcon, {}) }),
13354
+ doc.onDelete && /* @__PURE__ */ jsx(
13355
+ Button,
13356
+ {
13357
+ variant: "ghost",
13358
+ size: "icon-sm",
13359
+ "aria-label": "Delete",
13360
+ className: "hover:text-danger-fg",
13361
+ onClick: doc.onDelete,
13362
+ children: /* @__PURE__ */ jsx(TrashIcon, {})
13363
+ }
13364
+ )
13365
+ ] });
13366
+ }
12755
13367
  var ActivityList = forwardRef(function ActivityList2({ className, children, ...props }, ref) {
12756
13368
  return /* @__PURE__ */ jsx("ul", { ref, className: cn("flex flex-col", className), ...props, children });
12757
13369
  });
@@ -14388,6 +15000,6 @@ function SignatureEditor({
14388
15000
  }
14389
15001
  SignatureEditor.displayName = "SignatureEditor";
14390
15002
 
14391
- export { AIReceiptPanel, Accordion, AccordionContent, AccordionItem, AccordionTrigger, ActivityEventItem, ActivityItem, ActivityList, AiDraftCard, Alert, AlertCircleIcon, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlertTriangleIcon, AlertTriangleSolidIcon, AppHeader, AppHeaderActions, AppHeaderBreadcrumb, AppHeaderSearch, AppHeaderTitle, AreaChart, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowRightSmallIcon, ArrowUpIcon, AspectRatio, Assignee, AssureAuditBrandIcon, AssureBooksBrandIcon, AssureProBrandIcon, AssureTaxBrandIcon, AtSignIcon, AttachmentChip, AttentionItem, Avatar, Badge, BarChartIcon, BellIcon, Blockquote, BoldIcon, BottomNav, Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, BriefcaseIcon, Building2Icon, BuildingIcon, BulkActionBar, BulkActionBarAction, BulkActionBarSeparator, Button, COUNTRY_CODES, Calendar, CalendarIcon, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CategoryDivider, CategoryTag, ChannelTabs, ChatBubbleIcon, CheckCircle2Icon, CheckCircleSolidIcon, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleDotIcon, CircleIcon, ClientRailGroupHeader, ClientRailItem, ClientSelect, ClipboardCheckIcon, ClockIcon, CloseIcon, Collapsible, CollapsibleContent, CollapsibleTrigger, ComingSoon, CommandIcon, CommandPalette, ConfirmActionButton, Content16 as Content, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, CopyButton, CopyIcon, CornerDownLeftIcon, CountryFlag, CountrySelect, CreditCardIcon, DATE_DISPLAY_PLACEHOLDER, DangerAction, Dash, DashGrid, DataItem, DataTable, DataTableBody, DataTableCell, DataTableCellDue, DataTableCellId, DataTableCellMono, DataTableCellName, DataTableCheckbox, DataTableHead, DataTableHeader, DataTablePagination, DataTableResultsCount, DataTableRow, DataTableSearch, DataTableSpacer, DataTableToolbar, DataTableView, DatePicker, DateRangePicker, DetailGrid, DetailMain, DetailSpine, DetailSpineHeader, DetailSpineSection, DetailSpineStats, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DismissibleChip, DocumentFileCard, DocumentFileRow, DocumentIcon, DocumentRequestField, DocumentsWorkspaceLayout, DollarSignIcon, DonutChart, DownloadIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmailMessageCard, EmptyState, EngagementCard, EngagementTimeline, EngagementTimelineStep, EyeIcon, EyeOffIcon, Eyebrow, FileChip, FileIcon, FileReturnIcon, FileTextIcon, FileTypeBadge, FileUpload, FilterChip, FilterIcon, FlagIcon, FolderClosedIcon, FolderOpenIcon, FolderPlusIcon, FolderTree, FolderUpIcon, FormError, FormSection, FormSuccess, GlobeIcon, GoogleBrandIcon, HelpCircleIcon, HistoryIcon, HomeIcon, HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger, IconAction, IconTile, InboxIcon, InfoCircleSolidIcon, InfoIcon, Input, IntentBadge, ItalicIcon, Kanban, KanbanCard, KanbanColumn, KanbanIcon, KbdHint, KeyIcon, KeyboardShortcutsDialog, KpiCard, Label4 as Label, LandmarkIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutListIcon, LightningIcon, Link2Icon, LinkAction, LinkButton, LinkIcon, ListChecksIcon, ListIcon, ListOrderedIcon, LoaderIcon, LoadingRows, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, Logo, MailIcon, Main, MapPinIcon, MasterDetailLayout, MenuIcon, MessageBubble, MessageBubbleAction, MessageBubbleTombstone, MessageCircleIcon, MessageCircleWarningIcon, MessageComposer, MetadataGrid, MicrosoftBrandIcon, MinusIcon, MissingDocumentsPanel, MoneyCell, MonitorIcon, MoonIcon, MoreHorizontalIcon, MoveIcon, MultiFilterPill, MultiSelectField, MutedSpec, NewMenu, NotificationFilter, NotificationItem, NotificationList, NotificationPanel, NotificationPanelFooter, NotificationPanelHeader, Numeric, OTPInput, PageHeader, PageHeaderSep, PageHeaderSpec, Pagination, PaletteIcon, PanelLeftCloseIcon, PanelLeftIcon, PaperclipIcon, PauseIcon, PdfPreview, PenSignIcon, PenToolIcon, PencilIcon, PhoneCountryInput, PhoneIcon, PhoneInput, PlayIcon, PlusIcon, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, PrimaryAction, PriorityIcon, ProgressBar, ProgressRing, RadioGroup3 as RadioGroup, RadioGroupItem, RankedBars, ReceiptIcon, ReplyIcon, ResponsiveDialog, RotateCcwIcon, RouteTransition, SERVICE_TONES, SaveIcon, ScrollArea, ScrollBar, SearchIcon, SearchInput, SearchSelect, SecondaryAction, Section, SectionHead, SectionHeader, SegmentedProgress, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SelectableKpiCard, SendIcon, Separator4 as Separator, SettingsIcon, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Shell, ShieldIcon, SideDrawer, Sidebar, SidebarBrand, SidebarBrandSwitcher, SidebarBrandSwitcherTile, SidebarBrandText, SidebarFooter, SidebarLink, SidebarLinkAction, SidebarLinkBadge, SidebarLinkGroup, SidebarLinkLabel, SidebarPinButton, SidebarProvider, SidebarSection, SidebarTrigger, SidebarUser, SignatureEditor, Skeleton, SkeletonCircle, SkeletonText, SlashIcon, Slider, SmartphoneIcon, SparkleIcon, SparklesIcon, Spinner, SpreadsheetPreview, StackedBarChart, StagePill, StarIcon, StarRating, Stat, StatusDot, StatusIcon, StatusPill, Stepper, StickyActionBar, StopIcon, StrikethroughIcon, SubmitButton, SuggestionPills, SuiteProgress, SunIcon, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableIcon, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TagIcon, TagsCell, TeamIcon, TeamMemberSelect, Textarea, TimeLogger, TimeLoggerActions, TimeLoggerBillable, TimeLoggerContextRow, TimeLoggerEntry, TimeLoggerEntryList, TimeLoggerField, TimeLoggerFooter, TimeLoggerHeader, TimeLoggerNotes, TimeLoggerTimer, ToastProvider, ToggleGroup, ToggleGroupItem, Toolbar, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, Trash2Icon, TrashIcon, TrendingDownIcon, TrendingUpIcon, UnderlineIcon, UploadIcon, UserCircleIcon, UserIcon, UsersIcon, VisuallyHidden, WorkflowIcon, XCircleSolidIcon, XIcon, YEAR_DISPLAY_PLACEHOLDER, ZoomInIcon, ZoomOutIcon, alertVariants, applyMask, applyYearMask, attachmentChipVariants, badgeVariants, buttonVariants, cardVariants, cn, colors, dateToIso, displayToIso, fileTypeBadgeVariants, fileTypeFromName, filterChipVariants, formatClock, formatCurrency, formatDuration, getFlagEmoji, iconTileVariants, inputVariants, isoToDate, isoToDisplay, isoToYear, labelVariants, parseDuration, parsePhoneForEditing, progressBarVariants, progressRingVariants, radii, reference, searchInputVariants, serviceToneLabel, serviceToneStyle, shadows, sidebarLinkBadgeVariants, spacing, spinnerVariants, starRatingVariants, statusDotVariants, suiteProgressFillVariants, surfaces, systemTokens, textareaVariants, typography, useSidebarPeekLock, useSidebarState, useStopwatch, useToast, yearToIso };
15003
+ export { AIReceiptPanel, Accordion, AccordionContent, AccordionItem, AccordionTrigger, ActivityEventItem, ActivityItem, ActivityList, AiDraftCard, Alert, AlertCircleIcon, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlertTriangleIcon, AlertTriangleSolidIcon, AppHeader, AppHeaderActions, AppHeaderBreadcrumb, AppHeaderSearch, AppHeaderTitle, AreaChart, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowRightSmallIcon, ArrowUpIcon, AspectRatio, Assignee, AssureAuditBrandIcon, AssureBooksBrandIcon, AssureProBrandIcon, AssureTaxBrandIcon, AtSignIcon, AttachmentChip, AttentionItem, Avatar, Badge, BarChartIcon, BellIcon, Blockquote, BoldIcon, BottomNav, Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, BriefcaseIcon, Building2Icon, BuildingIcon, BulkActionBar, BulkActionBarAction, BulkActionBarSeparator, Button, COUNTRY_CODES, Calendar, CalendarIcon, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CategoryDivider, CategoryTag, ChannelTabs, ChatBubbleIcon, CheckCircle2Icon, CheckCircleSolidIcon, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleDotIcon, CircleIcon, ClientRailGroupHeader, ClientRailItem, ClientSelect, ClipboardCheckIcon, ClockIcon, CloseIcon, Collapsible, CollapsibleContent, CollapsibleTrigger, ComingSoon, CommandIcon, CommandPalette, ConfirmActionButton, Content16 as Content, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, CopyButton, CopyIcon, CornerDownLeftIcon, CountryFlag, CountrySelect, CreditCardIcon, DATE_DISPLAY_PLACEHOLDER, DangerAction, Dash, DashGrid, DataItem, DataTable, DataTableBody, DataTableCell, DataTableCellDue, DataTableCellId, DataTableCellMono, DataTableCellName, DataTableCheckbox, DataTableHead, DataTableHeader, DataTablePagination, DataTableResultsCount, DataTableRow, DataTableSearch, DataTableSpacer, DataTableToolbar, DataTableView, DatePicker, DateRangePicker, DetailGrid, DetailMain, DetailSpine, DetailSpineHeader, DetailSpineSection, DetailSpineStats, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DismissibleChip, DocumentDetailActions, DocumentDetailBody, DocumentDetailHeader, DocumentDetailMetaRow, DocumentDetailPanel, DocumentDetailRequester, DocumentDetailTitle, DocumentFileCard, DocumentFileRow, DocumentIcon, DocumentList, DocumentListSection, DocumentRequestCard, DocumentRequestDetail, DocumentRequestField, DocumentRow, DocumentsWorkspaceLayout, DollarSignIcon, DonutChart, DownloadIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmailMessageCard, EmptyState, EngagementCard, EngagementTimeline, EngagementTimelineStep, ExtractIcon, EyeIcon, EyeOffIcon, Eyebrow, FileChip, FileIcon, FileReturnIcon, FileTextIcon, FileTypeBadge, FileUpload, FilterChip, FilterIcon, FlagIcon, FolderClosedIcon, FolderOpenIcon, FolderPlusIcon, FolderTree, FolderUpIcon, FormError, FormSection, FormSuccess, GlobeIcon, GoogleBrandIcon, HelpCircleIcon, HistoryIcon, HomeIcon, HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger, IconAction, IconTile, InboxIcon, InfoCircleSolidIcon, InfoIcon, Input, IntentBadge, ItalicIcon, Kanban, KanbanCard, KanbanColumn, KanbanIcon, KbdHint, KeyIcon, KeyboardShortcutsDialog, KpiCard, Label4 as Label, LandmarkIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutListIcon, LightningIcon, Link2Icon, LinkAction, LinkButton, LinkIcon, ListChecksIcon, ListIcon, ListOrderedIcon, LoaderIcon, LoadingRows, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, Logo, MailIcon, Main, MapPinIcon, MasterDetailLayout, MenuIcon, MessageBubble, MessageBubbleAction, MessageBubbleTombstone, MessageCircleIcon, MessageCircleWarningIcon, MessageComposer, MetadataGrid, MicrosoftBrandIcon, MinusIcon, MissingDocumentsPanel, MoneyCell, MonitorIcon, MoonIcon, MoreHorizontalIcon, MoveIcon, MultiFilterPill, MultiSelectField, MutedSpec, NewMenu, NotificationFilter, NotificationItem, NotificationList, NotificationPanel, NotificationPanelFooter, NotificationPanelHeader, Numeric, OTPInput, PageHeader, PageHeaderSep, PageHeaderSpec, Pagination, PaletteIcon, PanelLeftCloseIcon, PanelLeftIcon, PaperclipIcon, PauseIcon, PdfPreview, PenSignIcon, PenToolIcon, PencilIcon, PhoneCountryInput, PhoneIcon, PhoneInput, PlayIcon, PlusIcon, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, PrimaryAction, PriorityIcon, ProgressBar, ProgressRing, RadioGroup3 as RadioGroup, RadioGroupItem, RankedBars, ReceiptIcon, ReplyIcon, ResponsiveDialog, RotateCcwIcon, RouteTransition, SERVICE_TONES, SaveIcon, ScrollArea, ScrollBar, SearchIcon, SearchInput, SearchSelect, SecondaryAction, Section, SectionHead, SectionHeader, SegmentedProgress, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SelectableKpiCard, SendIcon, Separator4 as Separator, SettingsIcon, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Shell, ShieldIcon, SideDrawer, Sidebar, SidebarBrand, SidebarBrandSwitcher, SidebarBrandSwitcherTile, SidebarBrandText, SidebarFooter, SidebarLink, SidebarLinkAction, SidebarLinkBadge, SidebarLinkGroup, SidebarLinkLabel, SidebarPinButton, SidebarProvider, SidebarSection, SidebarTrigger, SidebarUser, SignatureEditor, Skeleton, SkeletonCircle, SkeletonText, SlashIcon, Slider, SmartphoneIcon, SparkleIcon, SparklesIcon, Spinner, SpreadsheetPreview, StackedBarChart, StagePill, StarIcon, StarRating, Stat, StatusDot, StatusIcon, StatusPill, Stepper, StickyActionBar, StopIcon, StrikethroughIcon, SubmitButton, SuggestionPills, SuiteProgress, SunIcon, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableIcon, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TagIcon, TagsCell, TeamIcon, TeamMemberSelect, Textarea, TimeLogger, TimeLoggerActions, TimeLoggerBillable, TimeLoggerContextRow, TimeLoggerEntry, TimeLoggerEntryList, TimeLoggerField, TimeLoggerFooter, TimeLoggerHeader, TimeLoggerNotes, TimeLoggerTimer, ToastProvider, ToggleGroup, ToggleGroupItem, Toolbar, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, Trash2Icon, TrashIcon, TrendingDownIcon, TrendingUpIcon, UnderlineIcon, UploadIcon, UserCircleIcon, UserIcon, UsersIcon, VisuallyHidden, WorkflowIcon, XCircleSolidIcon, XIcon, YEAR_DISPLAY_PLACEHOLDER, ZoomInIcon, ZoomOutIcon, alertVariants, applyMask, applyYearMask, attachmentChipVariants, badgeVariants, buttonVariants, cardVariants, cn, colors, dateToIso, displayToIso, fileTypeBadgeVariants, fileTypeFromName, filterChipVariants, formatClock, formatCurrency, formatDuration, getFlagEmoji, iconTileVariants, inputVariants, isoToDate, isoToDisplay, isoToYear, labelVariants, parseDuration, parsePhoneForEditing, progressBarVariants, progressRingVariants, radii, reference, searchInputVariants, serviceToneLabel, serviceToneStyle, shadows, sidebarLinkBadgeVariants, spacing, spinnerVariants, starRatingVariants, statusDotVariants, suiteProgressFillVariants, surfaces, systemTokens, textareaVariants, typography, useSidebarPeekLock, useSidebarState, useStopwatch, useToast, yearToIso };
14392
15004
  //# sourceMappingURL=index.js.map
14393
15005
  //# sourceMappingURL=index.js.map