@alfadocs/ui-kit-debug 1.18.0 → 1.20.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 (175) hide show
  1. package/dist/_chunks/{anamnesis-summary-rows-CRWO8x8g.js → anamnesis-summary-rows-BPSQhxnZ.js} +2 -2
  2. package/dist/_chunks/{anamnesis-summary-rows-CRWO8x8g.js.map → anamnesis-summary-rows-BPSQhxnZ.js.map} +1 -1
  3. package/dist/_chunks/{balance-badge-cell-DNjHODfP.js → balance-badge-cell-BlvFil5p.js} +2 -2
  4. package/dist/_chunks/{balance-badge-cell-DNjHODfP.js.map → balance-badge-cell-BlvFil5p.js.map} +1 -1
  5. package/dist/_chunks/{calendar-PFO-NlYw.js → calendar-BQPyUUPP.js} +43 -43
  6. package/dist/_chunks/calendar-BQPyUUPP.js.map +1 -0
  7. package/dist/_chunks/calendar-workspace-D6kipuvT.js +7474 -0
  8. package/dist/_chunks/calendar-workspace-D6kipuvT.js.map +1 -0
  9. package/dist/_chunks/{care-plan-card-D-FMfDKH.js → care-plan-card-CQVboTn1.js} +2 -2
  10. package/dist/_chunks/{care-plan-card-D-FMfDKH.js.map → care-plan-card-CQVboTn1.js.map} +1 -1
  11. package/dist/_chunks/{care-plan-entry-card-Bvw_9T-d.js → care-plan-entry-card-jxHkzez5.js} +2 -2
  12. package/dist/_chunks/{care-plan-entry-card-Bvw_9T-d.js.map → care-plan-entry-card-jxHkzez5.js.map} +1 -1
  13. package/dist/_chunks/{data-table-DC5rO3Ty.js → data-table-D7nA8OGL.js} +2 -2
  14. package/dist/_chunks/{data-table-DC5rO3Ty.js.map → data-table-D7nA8OGL.js.map} +1 -1
  15. package/dist/_chunks/{data-table-tabs-D24qj89A.js → data-table-tabs-DVIFkqx_.js} +2 -2
  16. package/dist/_chunks/{data-table-tabs-D24qj89A.js.map → data-table-tabs-DVIFkqx_.js.map} +1 -1
  17. package/dist/_chunks/{field-value-D-vkX9uL.js → field-value-BetdWMA2.js} +2 -2
  18. package/dist/_chunks/{field-value-D-vkX9uL.js.map → field-value-BetdWMA2.js.map} +1 -1
  19. package/dist/_chunks/{file-manager-spc3_khe.js → file-manager-Bsc8-MQQ.js} +2 -2
  20. package/dist/_chunks/{file-manager-spc3_khe.js.map → file-manager-Bsc8-MQQ.js.map} +1 -1
  21. package/dist/_chunks/{header-settings-J-ZCAfir.js → header-settings-DvjZNMhD.js} +2 -2
  22. package/dist/_chunks/{header-settings-J-ZCAfir.js.map → header-settings-DvjZNMhD.js.map} +1 -1
  23. package/dist/_chunks/{icon-picker-ChzpCnZ-.js → icon-picker-DOa89vn3.js} +2 -2
  24. package/dist/_chunks/{icon-picker-ChzpCnZ-.js.map → icon-picker-DOa89vn3.js.map} +1 -1
  25. package/dist/_chunks/{info-tip-C119cwQl.js → info-tip-CADik6WN.js} +2 -2
  26. package/dist/_chunks/{info-tip-C119cwQl.js.map → info-tip-CADik6WN.js.map} +1 -1
  27. package/dist/_chunks/{locale-picker-BvbVjDQ-.js → locale-picker-CwFtqSkt.js} +2 -2
  28. package/dist/_chunks/{locale-picker-BvbVjDQ-.js.map → locale-picker-CwFtqSkt.js.map} +1 -1
  29. package/dist/_chunks/{marketplace-app-shell-DDQXQ8hX.js → marketplace-app-shell-C4AjQmvz.js} +2 -2
  30. package/dist/_chunks/{marketplace-app-shell-DDQXQ8hX.js.map → marketplace-app-shell-C4AjQmvz.js.map} +1 -1
  31. package/dist/_chunks/{notes-panel-DYAtlq_i.js → notes-panel-CTNpsByN.js} +2 -2
  32. package/dist/_chunks/{notes-panel-DYAtlq_i.js.map → notes-panel-CTNpsByN.js.map} +1 -1
  33. package/dist/_chunks/{patient-details-BfzvFnxQ.js → patient-details-1QDA-XOO.js} +2 -2
  34. package/dist/_chunks/{patient-details-BfzvFnxQ.js.map → patient-details-1QDA-XOO.js.map} +1 -1
  35. package/dist/_chunks/{patient-summary-card-D5Vfa321.js → patient-summary-card-C9WBwct-.js} +2 -2
  36. package/dist/_chunks/{patient-summary-card-D5Vfa321.js.map → patient-summary-card-C9WBwct-.js.map} +1 -1
  37. package/dist/_chunks/{popover-Cqcjx-Ny.js → popover-DP6WCVwm.js} +2 -2
  38. package/dist/_chunks/{popover-Cqcjx-Ny.js.map → popover-DP6WCVwm.js.map} +1 -1
  39. package/dist/_chunks/{rich-text-editor-DtbcA6s1.js → rich-text-editor-lSCiE0Zz.js} +2 -2
  40. package/dist/_chunks/{rich-text-editor-DtbcA6s1.js.map → rich-text-editor-lSCiE0Zz.js.map} +1 -1
  41. package/dist/_chunks/{signature-request-CUe903hj.js → signature-request-CwlAmVLw.js} +2 -2
  42. package/dist/_chunks/{signature-request-CUe903hj.js.map → signature-request-CwlAmVLw.js.map} +1 -1
  43. package/dist/_chunks/{tooth-scheme-2IsmbE6w.js → tooth-scheme-C9jssOmy.js} +2 -2
  44. package/dist/_chunks/{tooth-scheme-2IsmbE6w.js.map → tooth-scheme-C9jssOmy.js.map} +1 -1
  45. package/dist/agent-catalog.json +1 -1
  46. package/dist/components/calendar/calendar.d.ts +6 -1
  47. package/dist/components/calendar/calendar.d.ts.map +1 -1
  48. package/dist/components/calendar/index.js +1 -1
  49. package/dist/components/care-plan-card/index.js +1 -1
  50. package/dist/components/care-plan-entry-card/index.js +1 -1
  51. package/dist/components/data-table/index.js +1 -1
  52. package/dist/components/data-table-tabs/index.js +1 -1
  53. package/dist/components/file-manager/index.js +1 -1
  54. package/dist/components/header-settings/index.js +1 -1
  55. package/dist/components/icon-picker/index.js +1 -1
  56. package/dist/components/info-tip/index.js +1 -1
  57. package/dist/components/locale-picker/index.js +1 -1
  58. package/dist/components/notes-panel/index.js +1 -1
  59. package/dist/components/patient-details/index.js +1 -1
  60. package/dist/components/patient-summary-card/index.js +1 -1
  61. package/dist/components/patient-table/index.js +1 -1
  62. package/dist/components/popover/index.js +1 -1
  63. package/dist/components/popover/popover.d.ts +1 -1
  64. package/dist/components/popover/popover.d.ts.map +1 -1
  65. package/dist/components/rich-text-editor/index.js +1 -1
  66. package/dist/components/tooth-scheme/index.js +1 -1
  67. package/dist/i18n/locales/ar.d.ts +3 -0
  68. package/dist/i18n/locales/ar.d.ts.map +1 -1
  69. package/dist/i18n/locales/ar.js +4 -1
  70. package/dist/i18n/locales/ar.js.map +1 -1
  71. package/dist/i18n/locales/de.d.ts +3 -0
  72. package/dist/i18n/locales/de.d.ts.map +1 -1
  73. package/dist/i18n/locales/de.js +4 -1
  74. package/dist/i18n/locales/de.js.map +1 -1
  75. package/dist/i18n/locales/el.d.ts +3 -0
  76. package/dist/i18n/locales/el.d.ts.map +1 -1
  77. package/dist/i18n/locales/el.js +4 -1
  78. package/dist/i18n/locales/el.js.map +1 -1
  79. package/dist/i18n/locales/en.d.ts +3 -0
  80. package/dist/i18n/locales/en.d.ts.map +1 -1
  81. package/dist/i18n/locales/en.js +4 -1
  82. package/dist/i18n/locales/en.js.map +1 -1
  83. package/dist/i18n/locales/es.d.ts +3 -0
  84. package/dist/i18n/locales/es.d.ts.map +1 -1
  85. package/dist/i18n/locales/es.js +4 -1
  86. package/dist/i18n/locales/es.js.map +1 -1
  87. package/dist/i18n/locales/fr.d.ts +3 -0
  88. package/dist/i18n/locales/fr.d.ts.map +1 -1
  89. package/dist/i18n/locales/fr.js +4 -1
  90. package/dist/i18n/locales/fr.js.map +1 -1
  91. package/dist/i18n/locales/hi.d.ts +3 -0
  92. package/dist/i18n/locales/hi.d.ts.map +1 -1
  93. package/dist/i18n/locales/hi.js +4 -1
  94. package/dist/i18n/locales/hi.js.map +1 -1
  95. package/dist/i18n/locales/it.d.ts +3 -0
  96. package/dist/i18n/locales/it.d.ts.map +1 -1
  97. package/dist/i18n/locales/it.js +4 -1
  98. package/dist/i18n/locales/it.js.map +1 -1
  99. package/dist/i18n/locales/ja.d.ts +3 -0
  100. package/dist/i18n/locales/ja.d.ts.map +1 -1
  101. package/dist/i18n/locales/ja.js +4 -1
  102. package/dist/i18n/locales/ja.js.map +1 -1
  103. package/dist/i18n/locales/nl.d.ts +3 -0
  104. package/dist/i18n/locales/nl.d.ts.map +1 -1
  105. package/dist/i18n/locales/nl.js +4 -1
  106. package/dist/i18n/locales/nl.js.map +1 -1
  107. package/dist/i18n/locales/pl.d.ts +3 -0
  108. package/dist/i18n/locales/pl.d.ts.map +1 -1
  109. package/dist/i18n/locales/pl.js +4 -1
  110. package/dist/i18n/locales/pl.js.map +1 -1
  111. package/dist/i18n/locales/pt.d.ts +3 -0
  112. package/dist/i18n/locales/pt.d.ts.map +1 -1
  113. package/dist/i18n/locales/pt.js +4 -1
  114. package/dist/i18n/locales/pt.js.map +1 -1
  115. package/dist/i18n/locales/ro.d.ts +3 -0
  116. package/dist/i18n/locales/ro.d.ts.map +1 -1
  117. package/dist/i18n/locales/ro.js +4 -1
  118. package/dist/i18n/locales/ro.js.map +1 -1
  119. package/dist/i18n/locales/ru.d.ts +3 -0
  120. package/dist/i18n/locales/ru.d.ts.map +1 -1
  121. package/dist/i18n/locales/ru.js +4 -1
  122. package/dist/i18n/locales/ru.js.map +1 -1
  123. package/dist/i18n/locales/sq.d.ts +3 -0
  124. package/dist/i18n/locales/sq.d.ts.map +1 -1
  125. package/dist/i18n/locales/sq.js +4 -1
  126. package/dist/i18n/locales/sq.js.map +1 -1
  127. package/dist/i18n/locales/sv.d.ts +3 -0
  128. package/dist/i18n/locales/sv.d.ts.map +1 -1
  129. package/dist/i18n/locales/sv.js +4 -1
  130. package/dist/i18n/locales/sv.js.map +1 -1
  131. package/dist/i18n/locales/tr.d.ts +3 -0
  132. package/dist/i18n/locales/tr.d.ts.map +1 -1
  133. package/dist/i18n/locales/tr.js +4 -1
  134. package/dist/i18n/locales/tr.js.map +1 -1
  135. package/dist/i18n/locales/zh.d.ts +3 -0
  136. package/dist/i18n/locales/zh.d.ts.map +1 -1
  137. package/dist/i18n/locales/zh.js +4 -1
  138. package/dist/i18n/locales/zh.js.map +1 -1
  139. package/dist/index.js +19 -19
  140. package/dist/locales/ar.json +4 -1
  141. package/dist/locales/de.json +4 -1
  142. package/dist/locales/el.json +4 -1
  143. package/dist/locales/en.json +4 -1
  144. package/dist/locales/es.json +4 -1
  145. package/dist/locales/fr.json +4 -1
  146. package/dist/locales/hi.json +4 -1
  147. package/dist/locales/it.json +4 -1
  148. package/dist/locales/ja.json +4 -1
  149. package/dist/locales/nl.json +4 -1
  150. package/dist/locales/pl.json +4 -1
  151. package/dist/locales/pt.json +4 -1
  152. package/dist/locales/ro.json +4 -1
  153. package/dist/locales/ru.json +4 -1
  154. package/dist/locales/sq.json +4 -1
  155. package/dist/locales/sv.json +4 -1
  156. package/dist/locales/tr.json +4 -1
  157. package/dist/locales/zh.json +4 -1
  158. package/dist/patterns/anamnesis/index.js +1 -1
  159. package/dist/patterns/calendar/calendar-workspace.d.ts.map +1 -1
  160. package/dist/patterns/calendar/calendar.data.d.ts +15 -5
  161. package/dist/patterns/calendar/calendar.data.d.ts.map +1 -1
  162. package/dist/patterns/calendar/calendar.model.d.ts +12 -3
  163. package/dist/patterns/calendar/calendar.model.d.ts.map +1 -1
  164. package/dist/patterns/calendar/calendar.sheets.d.ts +11 -2
  165. package/dist/patterns/calendar/calendar.sheets.d.ts.map +1 -1
  166. package/dist/patterns/calendar/calendar.surface.d.ts.map +1 -1
  167. package/dist/patterns/calendar/calendar.types.d.ts +16 -0
  168. package/dist/patterns/calendar/calendar.types.d.ts.map +1 -1
  169. package/dist/patterns/calendar/index.js +1 -1
  170. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  171. package/dist/patterns/signature-request/index.js +1 -1
  172. package/package.json +1 -1
  173. package/dist/_chunks/calendar-PFO-NlYw.js.map +0 -1
  174. package/dist/_chunks/calendar-workspace-Ca0n_r1v.js +0 -7341
  175. package/dist/_chunks/calendar-workspace-Ca0n_r1v.js.map +0 -1
@@ -274,7 +274,7 @@ E.displayName = "Popover.Heading";
274
274
  const O = f(({ className: e, ...o }, r) => {
275
275
  const i = D(), { setDescriptionId: t } = u(y);
276
276
  return h(() => (t(i), () => t(void 0)), [i, t]), /* @__PURE__ */ s(
277
- "p",
277
+ "div",
278
278
  {
279
279
  ref: r,
280
280
  id: i,
@@ -302,4 +302,4 @@ export {
302
302
  ae as P,
303
303
  Y as p
304
304
  };
305
- //# sourceMappingURL=popover-Cqcjx-Ny.js.map
305
+ //# sourceMappingURL=popover-DP6WCVwm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"popover-Cqcjx-Ny.js","sources":["../../src/components/popover/popover.agent.ts","../../src/components/popover/popover.tsx"],"sourcesContent":["import type { AgentAdapter } from '../../agent/types';\nimport type { PopoverHandle } from './popover';\n\nexport const popoverAgent: AgentAdapter<PopoverHandle> = {\n id: 'popover',\n capabilities: ['open', 'close'],\n state: {\n isOpen: {\n type: 'boolean',\n descriptionKey: 'ui.agent.popover.state.isOpen',\n description: 'True when the popover is currently open.',\n read: (handle) => handle.getIsOpen(),\n },\n },\n actions: {\n open: {\n safety: 'read',\n idempotent: true,\n descriptionKey: 'ui.agent.popover.actions.open',\n description: 'Open the popover.',\n invoke: (handle) => {\n handle.open();\n },\n },\n close: {\n safety: 'read',\n idempotent: true,\n descriptionKey: 'ui.agent.popover.actions.close',\n description: 'Close the popover.',\n invoke: (handle) => {\n handle.close();\n },\n },\n },\n domHooks: {\n root: { attr: 'data-component', value: 'popover' },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop on Popover.Root.',\n },\n },\n};\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n type ComponentPropsWithoutRef,\n type HTMLAttributes,\n type ReactNode,\n} from 'react';\nimport * as RadixPopover from '@radix-ui/react-popover';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { X } from 'lucide-react';\nimport { IconButton } from '../button/icon-button';\nimport { useAgentRegistration } from '../../agent';\nimport { popoverAgent } from './popover.agent';\n\ninterface PopoverA11yContext {\n headingId: string | undefined;\n setHeadingId: (id: string | undefined) => void;\n descriptionId: string | undefined;\n setDescriptionId: (id: string | undefined) => void;\n}\n\nconst A11yContext = createContext<PopoverA11yContext>({\n headingId: undefined,\n setHeadingId: () => {},\n descriptionId: undefined,\n setDescriptionId: () => {},\n});\n\ninterface PopoverHoverContext {\n isHoverMode: boolean;\n clearHoverTimer: () => void;\n closeWithDelay: () => void;\n}\n\nconst HoverContext = createContext<PopoverHoverContext>({\n isHoverMode: false,\n clearHoverTimer: () => {},\n closeWithDelay: () => {},\n});\n\nfunction resolvePhysicalSide(\n logicalSide: 'start' | 'top' | 'end' | 'bottom',\n): 'left' | 'top' | 'right' | 'bottom' {\n if (logicalSide === 'top' || logicalSide === 'bottom') return logicalSide;\n const isRtl =\n typeof document !== 'undefined' && document.documentElement.dir === 'rtl';\n if (logicalSide === 'start') return isRtl ? 'right' : 'left';\n /* logicalSide === 'end' */\n return isRtl ? 'left' : 'right';\n}\n\nconst contentVariants = cva(\n [\n // `--card-border` 32% alpha provides a subtle edge that survives dark\n // without becoming a heavy outline. The previous transparent border\n // relied on the drop-shadow alone, which reads as a faint halo against\n // dark surfaces and lets the popover float as an unbounded blob; the\n // earlier heavy `--border` (grey-800 since WCAG 1.4.11 bump in 67fef8c)\n // overcorrected the other way and made the popover read as a charcoal\n // box. The forced-colors override below upgrades the border to\n // `CanvasText` so HCM still repaints a fully visible edge.\n 'ds:relative ds:bg-[var(--popover)] ds:border ds:border-[color:var(--card-border)] ds:rounded-[var(--radius-md)]',\n 'ds:p-[var(--spacing-md)]',\n 'ds:shadow-[var(--shadow-lg)]',\n 'ds:z-[var(--z-popover)]',\n 'ds:text-[var(--popover-foreground)] ds:text-[length:var(--font-size-sm)]',\n 'ds:break-words',\n 'ds:data-[state=open]:animate-in ds:data-[state=closed]:animate-out',\n 'ds:data-[state=closed]:fade-out-0 ds:data-[state=open]:fade-in-0',\n 'ds:data-[state=closed]:zoom-out-95 ds:data-[state=open]:zoom-in-95',\n 'ds:data-[side=bottom]:slide-in-from-top-2 ds:data-[side=left]:slide-in-from-right-2',\n 'ds:data-[side=right]:slide-in-from-left-2 ds:data-[side=top]:slide-in-from-bottom-2',\n 'ds:motion-reduce:transition-none ds:motion-reduce:animate-none',\n 'ds:forced-colors:border-[CanvasText]',\n 'ds:focus-visible:outline-none',\n ].join(' '),\n {\n variants: {\n size: {\n sm: 'ds:max-w-[var(--popover-size-sm)]',\n md: 'ds:max-w-[var(--popover-size-md)]',\n lg: 'ds:max-w-[var(--popover-size-lg)]',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n);\n\n// Curated agent-readiness handle — see popover.agent.ts.\nexport interface PopoverHandle {\n getIsOpen: () => boolean;\n open: () => void;\n close: () => void;\n}\n\nexport interface PopoverRootProps extends ComponentPropsWithoutRef<\n typeof RadixPopover.Root\n> {\n openOn?: 'click' | 'hover' | 'hover-or-click';\n /** Opaque instance id — forwarded to Popover.Content as `data-component-id`. */\n id?: string;\n children: ReactNode;\n}\n\nconst PopoverIdContext = createContext<string | undefined>(undefined);\n\nfunction PopoverRoot({\n openOn = 'click',\n children,\n id,\n open: controlledOpen,\n onOpenChange,\n defaultOpen,\n modal,\n}: PopoverRootProps) {\n const [internalOpen, setInternalOpen] = useState(defaultOpen ?? false);\n const isControlled = controlledOpen !== undefined;\n const isOpen = isControlled ? controlledOpen : internalOpen;\n\n const handleOpenChange = useCallback(\n (nextOpen: boolean) => {\n if (!isControlled) setInternalOpen(nextOpen);\n onOpenChange?.(nextOpen);\n },\n [isControlled, onOpenChange],\n );\n\n const hoverTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const isHoverMode = openOn === 'hover' || openOn === 'hover-or-click';\n\n const clearHoverTimer = useCallback(() => {\n if (hoverTimerRef.current) {\n clearTimeout(hoverTimerRef.current);\n hoverTimerRef.current = null;\n }\n }, []);\n\n const openWithDelay = useCallback(() => {\n clearHoverTimer();\n hoverTimerRef.current = setTimeout(() => {\n handleOpenChange(true);\n }, 300);\n }, [clearHoverTimer, handleOpenChange]);\n\n const closeWithDelay = useCallback(() => {\n clearHoverTimer();\n hoverTimerRef.current = setTimeout(() => {\n handleOpenChange(false);\n }, 300);\n }, [clearHoverTimer, handleOpenChange]);\n\n useEffect(() => {\n return () => clearHoverTimer();\n }, [clearHoverTimer]);\n\n // Agent handle.\n const openRef = useRef(isOpen);\n useEffect(() => {\n openRef.current = isOpen;\n }, [isOpen]);\n\n const agentHandle = useMemo<PopoverHandle>(\n () => ({\n getIsOpen: () => openRef.current,\n open: () => handleOpenChange(true),\n close: () => handleOpenChange(false),\n }),\n [handleOpenChange],\n );\n useAgentRegistration(popoverAgent, agentHandle, id);\n\n /* a11y context state */\n const [headingId, setHeadingId] = useState<string | undefined>(undefined);\n const [descriptionId, setDescriptionId] = useState<string | undefined>(\n undefined,\n );\n\n const hoverHandlers = isHoverMode\n ? {\n onMouseEnter: openWithDelay,\n onMouseLeave: closeWithDelay,\n onFocus: () => {\n clearHoverTimer();\n handleOpenChange(true);\n },\n onBlur: closeWithDelay,\n }\n : {};\n\n return (\n <PopoverIdContext.Provider value={id}>\n <A11yContext.Provider\n value={{ headingId, setHeadingId, descriptionId, setDescriptionId }}\n >\n <HoverContext.Provider\n value={{ isHoverMode, clearHoverTimer, closeWithDelay }}\n >\n <RadixPopover.Root\n open={isOpen}\n onOpenChange={handleOpenChange}\n modal={modal}\n >\n {isHoverMode ? (\n <span className=\"ds:inline-flex\" {...hoverHandlers}>\n {children}\n </span>\n ) : (\n children\n )}\n </RadixPopover.Root>\n </HoverContext.Provider>\n </A11yContext.Provider>\n </PopoverIdContext.Provider>\n );\n}\nPopoverRoot.displayName = 'Popover.Root';\n\nconst PopoverTrigger = forwardRef<\n HTMLButtonElement,\n ComponentPropsWithoutRef<typeof RadixPopover.Trigger>\n>(({ children, ...props }, ref) => (\n <RadixPopover.Trigger ref={ref} {...props}>\n {children}\n </RadixPopover.Trigger>\n));\nPopoverTrigger.displayName = 'Popover.Trigger';\n\nexport interface PopoverContentProps\n extends\n Omit<\n ComponentPropsWithoutRef<typeof RadixPopover.Content>,\n 'side' | 'align'\n >,\n VariantProps<typeof contentVariants> {\n side?: 'start' | 'top' | 'end' | 'bottom';\n align?: 'start' | 'center' | 'end';\n size?: 'sm' | 'md' | 'lg';\n showArrow?: boolean;\n className?: string;\n children: ReactNode;\n}\n\nconst PopoverContent = forwardRef<HTMLDivElement, PopoverContentProps>(\n (\n {\n side = 'bottom',\n align = 'center',\n size = 'md',\n showArrow = true,\n className,\n children,\n ...props\n },\n ref,\n ) => {\n const { headingId, descriptionId } = useContext(A11yContext);\n const instanceId = useContext(PopoverIdContext);\n const {\n isHoverMode: isHover,\n clearHoverTimer: cancelTimer,\n closeWithDelay: delayClose,\n } = useContext(HoverContext);\n const physicalSide = resolvePhysicalSide(side);\n\n const contentHoverHandlers = isHover\n ? {\n onMouseEnter: cancelTimer,\n onMouseLeave: delayClose,\n onFocus: cancelTimer,\n onBlur: delayClose,\n }\n : {};\n\n return (\n <RadixPopover.Portal>\n <RadixPopover.Content\n ref={ref}\n side={physicalSide}\n align={align}\n sideOffset={8}\n collisionPadding={8}\n aria-labelledby={headingId}\n aria-describedby={descriptionId}\n className={contentVariants({ size, className })}\n data-component=\"popover\"\n data-component-id={instanceId}\n {...contentHoverHandlers}\n {...props}\n >\n {children}\n {showArrow && (\n <RadixPopover.Arrow\n width={12}\n height={6}\n className=\"ds:fill-[var(--popover)]\"\n />\n )}\n </RadixPopover.Content>\n </RadixPopover.Portal>\n );\n },\n);\nPopoverContent.displayName = 'Popover.Content';\n\nconst PopoverClose = forwardRef<HTMLButtonElement, { className?: string }>(\n ({ className }, ref) => {\n const { t } = useTranslation();\n\n return (\n <div\n className={[\n 'ds:absolute ds:top-[var(--spacing-sm)] ds:end-[var(--spacing-sm)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <RadixPopover.Close asChild>\n <IconButton\n ref={ref}\n icon={<X />}\n intent=\"ghost\"\n size=\"sm\"\n aria-label={t('common.close', 'Close')}\n />\n </RadixPopover.Close>\n </div>\n );\n },\n);\nPopoverClose.displayName = 'Popover.Close';\n\ninterface PopoverHeadingProps extends HTMLAttributes<HTMLHeadingElement> {\n as?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n}\n\nconst PopoverHeading = forwardRef<HTMLHeadingElement, PopoverHeadingProps>(\n ({ as: Tag = 'h3', className, ...props }, ref) => {\n const generatedId = useId();\n const { setHeadingId } = useContext(A11yContext);\n\n useEffect(() => {\n setHeadingId(generatedId);\n return () => setHeadingId(undefined);\n }, [generatedId, setHeadingId]);\n\n return (\n <Tag\n ref={ref}\n id={generatedId}\n className={[\n 'type-title-item ds:leading-snug ds:break-words',\n 'ds:pe-[var(--spacing-xl)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n />\n );\n },\n);\nPopoverHeading.displayName = 'Popover.Heading';\n\nconst PopoverDescription = forwardRef<\n HTMLParagraphElement,\n HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => {\n const generatedId = useId();\n const { setDescriptionId } = useContext(A11yContext);\n\n useEffect(() => {\n setDescriptionId(generatedId);\n return () => setDescriptionId(undefined);\n }, [generatedId, setDescriptionId]);\n\n return (\n <p\n ref={ref}\n id={generatedId}\n className={[\n 'ds:text-[var(--muted-foreground)] type-body-sm ds:mt-[var(--spacing-xs)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n />\n );\n});\nPopoverDescription.displayName = 'Popover.Description';\n\nexport const Popover = Object.assign(PopoverRoot, {\n Root: PopoverRoot,\n Trigger: PopoverTrigger,\n // Radix pass-through: position Content against an arbitrary element when a\n // Trigger button is unsuitable (e.g. anchoring an editor to a role=tab).\n Anchor: RadixPopover.Anchor,\n Content: PopoverContent,\n Close: PopoverClose,\n Heading: PopoverHeading,\n Description: PopoverDescription,\n});\n\nexport type { PopoverRootProps as PopoverProps, PopoverHeadingProps };\n"],"names":["popoverAgent","handle","A11yContext","createContext","HoverContext","resolvePhysicalSide","logicalSide","isRtl","contentVariants","cva","PopoverIdContext","PopoverRoot","openOn","children","id","controlledOpen","onOpenChange","defaultOpen","modal","internalOpen","setInternalOpen","useState","isControlled","isOpen","handleOpenChange","useCallback","nextOpen","hoverTimerRef","useRef","isHoverMode","clearHoverTimer","openWithDelay","closeWithDelay","useEffect","openRef","agentHandle","useMemo","useAgentRegistration","headingId","setHeadingId","descriptionId","setDescriptionId","hoverHandlers","jsx","RadixPopover","PopoverTrigger","forwardRef","props","ref","PopoverContent","side","align","size","showArrow","className","useContext","instanceId","isHover","cancelTimer","delayClose","physicalSide","contentHoverHandlers","jsxs","PopoverClose","t","useTranslation","IconButton","X","PopoverHeading","Tag","generatedId","useId","PopoverDescription","Popover"],"mappings":"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"}
1
+ {"version":3,"file":"popover-DP6WCVwm.js","sources":["../../src/components/popover/popover.agent.ts","../../src/components/popover/popover.tsx"],"sourcesContent":["import type { AgentAdapter } from '../../agent/types';\nimport type { PopoverHandle } from './popover';\n\nexport const popoverAgent: AgentAdapter<PopoverHandle> = {\n id: 'popover',\n capabilities: ['open', 'close'],\n state: {\n isOpen: {\n type: 'boolean',\n descriptionKey: 'ui.agent.popover.state.isOpen',\n description: 'True when the popover is currently open.',\n read: (handle) => handle.getIsOpen(),\n },\n },\n actions: {\n open: {\n safety: 'read',\n idempotent: true,\n descriptionKey: 'ui.agent.popover.actions.open',\n description: 'Open the popover.',\n invoke: (handle) => {\n handle.open();\n },\n },\n close: {\n safety: 'read',\n idempotent: true,\n descriptionKey: 'ui.agent.popover.actions.close',\n description: 'Close the popover.',\n invoke: (handle) => {\n handle.close();\n },\n },\n },\n domHooks: {\n root: { attr: 'data-component', value: 'popover' },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop on Popover.Root.',\n },\n },\n};\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n type ComponentPropsWithoutRef,\n type HTMLAttributes,\n type ReactNode,\n} from 'react';\nimport * as RadixPopover from '@radix-ui/react-popover';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { X } from 'lucide-react';\nimport { IconButton } from '../button/icon-button';\nimport { useAgentRegistration } from '../../agent';\nimport { popoverAgent } from './popover.agent';\n\ninterface PopoverA11yContext {\n headingId: string | undefined;\n setHeadingId: (id: string | undefined) => void;\n descriptionId: string | undefined;\n setDescriptionId: (id: string | undefined) => void;\n}\n\nconst A11yContext = createContext<PopoverA11yContext>({\n headingId: undefined,\n setHeadingId: () => {},\n descriptionId: undefined,\n setDescriptionId: () => {},\n});\n\ninterface PopoverHoverContext {\n isHoverMode: boolean;\n clearHoverTimer: () => void;\n closeWithDelay: () => void;\n}\n\nconst HoverContext = createContext<PopoverHoverContext>({\n isHoverMode: false,\n clearHoverTimer: () => {},\n closeWithDelay: () => {},\n});\n\nfunction resolvePhysicalSide(\n logicalSide: 'start' | 'top' | 'end' | 'bottom',\n): 'left' | 'top' | 'right' | 'bottom' {\n if (logicalSide === 'top' || logicalSide === 'bottom') return logicalSide;\n const isRtl =\n typeof document !== 'undefined' && document.documentElement.dir === 'rtl';\n if (logicalSide === 'start') return isRtl ? 'right' : 'left';\n /* logicalSide === 'end' */\n return isRtl ? 'left' : 'right';\n}\n\nconst contentVariants = cva(\n [\n // `--card-border` 32% alpha provides a subtle edge that survives dark\n // without becoming a heavy outline. The previous transparent border\n // relied on the drop-shadow alone, which reads as a faint halo against\n // dark surfaces and lets the popover float as an unbounded blob; the\n // earlier heavy `--border` (grey-800 since WCAG 1.4.11 bump in 67fef8c)\n // overcorrected the other way and made the popover read as a charcoal\n // box. The forced-colors override below upgrades the border to\n // `CanvasText` so HCM still repaints a fully visible edge.\n 'ds:relative ds:bg-[var(--popover)] ds:border ds:border-[color:var(--card-border)] ds:rounded-[var(--radius-md)]',\n 'ds:p-[var(--spacing-md)]',\n 'ds:shadow-[var(--shadow-lg)]',\n 'ds:z-[var(--z-popover)]',\n 'ds:text-[var(--popover-foreground)] ds:text-[length:var(--font-size-sm)]',\n 'ds:break-words',\n 'ds:data-[state=open]:animate-in ds:data-[state=closed]:animate-out',\n 'ds:data-[state=closed]:fade-out-0 ds:data-[state=open]:fade-in-0',\n 'ds:data-[state=closed]:zoom-out-95 ds:data-[state=open]:zoom-in-95',\n 'ds:data-[side=bottom]:slide-in-from-top-2 ds:data-[side=left]:slide-in-from-right-2',\n 'ds:data-[side=right]:slide-in-from-left-2 ds:data-[side=top]:slide-in-from-bottom-2',\n 'ds:motion-reduce:transition-none ds:motion-reduce:animate-none',\n 'ds:forced-colors:border-[CanvasText]',\n 'ds:focus-visible:outline-none',\n ].join(' '),\n {\n variants: {\n size: {\n sm: 'ds:max-w-[var(--popover-size-sm)]',\n md: 'ds:max-w-[var(--popover-size-md)]',\n lg: 'ds:max-w-[var(--popover-size-lg)]',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n);\n\n// Curated agent-readiness handle — see popover.agent.ts.\nexport interface PopoverHandle {\n getIsOpen: () => boolean;\n open: () => void;\n close: () => void;\n}\n\nexport interface PopoverRootProps extends ComponentPropsWithoutRef<\n typeof RadixPopover.Root\n> {\n openOn?: 'click' | 'hover' | 'hover-or-click';\n /** Opaque instance id — forwarded to Popover.Content as `data-component-id`. */\n id?: string;\n children: ReactNode;\n}\n\nconst PopoverIdContext = createContext<string | undefined>(undefined);\n\nfunction PopoverRoot({\n openOn = 'click',\n children,\n id,\n open: controlledOpen,\n onOpenChange,\n defaultOpen,\n modal,\n}: PopoverRootProps) {\n const [internalOpen, setInternalOpen] = useState(defaultOpen ?? false);\n const isControlled = controlledOpen !== undefined;\n const isOpen = isControlled ? controlledOpen : internalOpen;\n\n const handleOpenChange = useCallback(\n (nextOpen: boolean) => {\n if (!isControlled) setInternalOpen(nextOpen);\n onOpenChange?.(nextOpen);\n },\n [isControlled, onOpenChange],\n );\n\n const hoverTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const isHoverMode = openOn === 'hover' || openOn === 'hover-or-click';\n\n const clearHoverTimer = useCallback(() => {\n if (hoverTimerRef.current) {\n clearTimeout(hoverTimerRef.current);\n hoverTimerRef.current = null;\n }\n }, []);\n\n const openWithDelay = useCallback(() => {\n clearHoverTimer();\n hoverTimerRef.current = setTimeout(() => {\n handleOpenChange(true);\n }, 300);\n }, [clearHoverTimer, handleOpenChange]);\n\n const closeWithDelay = useCallback(() => {\n clearHoverTimer();\n hoverTimerRef.current = setTimeout(() => {\n handleOpenChange(false);\n }, 300);\n }, [clearHoverTimer, handleOpenChange]);\n\n useEffect(() => {\n return () => clearHoverTimer();\n }, [clearHoverTimer]);\n\n // Agent handle.\n const openRef = useRef(isOpen);\n useEffect(() => {\n openRef.current = isOpen;\n }, [isOpen]);\n\n const agentHandle = useMemo<PopoverHandle>(\n () => ({\n getIsOpen: () => openRef.current,\n open: () => handleOpenChange(true),\n close: () => handleOpenChange(false),\n }),\n [handleOpenChange],\n );\n useAgentRegistration(popoverAgent, agentHandle, id);\n\n /* a11y context state */\n const [headingId, setHeadingId] = useState<string | undefined>(undefined);\n const [descriptionId, setDescriptionId] = useState<string | undefined>(\n undefined,\n );\n\n const hoverHandlers = isHoverMode\n ? {\n onMouseEnter: openWithDelay,\n onMouseLeave: closeWithDelay,\n onFocus: () => {\n clearHoverTimer();\n handleOpenChange(true);\n },\n onBlur: closeWithDelay,\n }\n : {};\n\n return (\n <PopoverIdContext.Provider value={id}>\n <A11yContext.Provider\n value={{ headingId, setHeadingId, descriptionId, setDescriptionId }}\n >\n <HoverContext.Provider\n value={{ isHoverMode, clearHoverTimer, closeWithDelay }}\n >\n <RadixPopover.Root\n open={isOpen}\n onOpenChange={handleOpenChange}\n modal={modal}\n >\n {isHoverMode ? (\n <span className=\"ds:inline-flex\" {...hoverHandlers}>\n {children}\n </span>\n ) : (\n children\n )}\n </RadixPopover.Root>\n </HoverContext.Provider>\n </A11yContext.Provider>\n </PopoverIdContext.Provider>\n );\n}\nPopoverRoot.displayName = 'Popover.Root';\n\nconst PopoverTrigger = forwardRef<\n HTMLButtonElement,\n ComponentPropsWithoutRef<typeof RadixPopover.Trigger>\n>(({ children, ...props }, ref) => (\n <RadixPopover.Trigger ref={ref} {...props}>\n {children}\n </RadixPopover.Trigger>\n));\nPopoverTrigger.displayName = 'Popover.Trigger';\n\nexport interface PopoverContentProps\n extends\n Omit<\n ComponentPropsWithoutRef<typeof RadixPopover.Content>,\n 'side' | 'align'\n >,\n VariantProps<typeof contentVariants> {\n side?: 'start' | 'top' | 'end' | 'bottom';\n align?: 'start' | 'center' | 'end';\n size?: 'sm' | 'md' | 'lg';\n showArrow?: boolean;\n className?: string;\n children: ReactNode;\n}\n\nconst PopoverContent = forwardRef<HTMLDivElement, PopoverContentProps>(\n (\n {\n side = 'bottom',\n align = 'center',\n size = 'md',\n showArrow = true,\n className,\n children,\n ...props\n },\n ref,\n ) => {\n const { headingId, descriptionId } = useContext(A11yContext);\n const instanceId = useContext(PopoverIdContext);\n const {\n isHoverMode: isHover,\n clearHoverTimer: cancelTimer,\n closeWithDelay: delayClose,\n } = useContext(HoverContext);\n const physicalSide = resolvePhysicalSide(side);\n\n const contentHoverHandlers = isHover\n ? {\n onMouseEnter: cancelTimer,\n onMouseLeave: delayClose,\n onFocus: cancelTimer,\n onBlur: delayClose,\n }\n : {};\n\n return (\n <RadixPopover.Portal>\n <RadixPopover.Content\n ref={ref}\n side={physicalSide}\n align={align}\n sideOffset={8}\n collisionPadding={8}\n aria-labelledby={headingId}\n aria-describedby={descriptionId}\n className={contentVariants({ size, className })}\n data-component=\"popover\"\n data-component-id={instanceId}\n {...contentHoverHandlers}\n {...props}\n >\n {children}\n {showArrow && (\n <RadixPopover.Arrow\n width={12}\n height={6}\n className=\"ds:fill-[var(--popover)]\"\n />\n )}\n </RadixPopover.Content>\n </RadixPopover.Portal>\n );\n },\n);\nPopoverContent.displayName = 'Popover.Content';\n\nconst PopoverClose = forwardRef<HTMLButtonElement, { className?: string }>(\n ({ className }, ref) => {\n const { t } = useTranslation();\n\n return (\n <div\n className={[\n 'ds:absolute ds:top-[var(--spacing-sm)] ds:end-[var(--spacing-sm)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <RadixPopover.Close asChild>\n <IconButton\n ref={ref}\n icon={<X />}\n intent=\"ghost\"\n size=\"sm\"\n aria-label={t('common.close', 'Close')}\n />\n </RadixPopover.Close>\n </div>\n );\n },\n);\nPopoverClose.displayName = 'Popover.Close';\n\ninterface PopoverHeadingProps extends HTMLAttributes<HTMLHeadingElement> {\n as?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n}\n\nconst PopoverHeading = forwardRef<HTMLHeadingElement, PopoverHeadingProps>(\n ({ as: Tag = 'h3', className, ...props }, ref) => {\n const generatedId = useId();\n const { setHeadingId } = useContext(A11yContext);\n\n useEffect(() => {\n setHeadingId(generatedId);\n return () => setHeadingId(undefined);\n }, [generatedId, setHeadingId]);\n\n return (\n <Tag\n ref={ref}\n id={generatedId}\n className={[\n 'type-title-item ds:leading-snug ds:break-words',\n 'ds:pe-[var(--spacing-xl)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n />\n );\n },\n);\nPopoverHeading.displayName = 'Popover.Heading';\n\n/**\n * The popover's description region.\n *\n * A `div`, not a `p`. A popover body routinely holds structured content —\n * the calendar's hover peek puts `KeyValuePair`s in here — and a `p` may\n * only contain phrasing content, so the browser silently closed the\n * paragraph and re-parented the rest. That breaks the DOM the\n * `aria-describedby` region points at, so the description a screen reader\n * announces was not the description on screen. React said so on every\n * open: \"validateDOMNesting: <div> cannot appear as a descendant of <p>\".\n *\n * The accessible wiring is by id, not by tag, so nothing about the\n * announcement depends on the element being a paragraph.\n */\nconst PopoverDescription = forwardRef<\n HTMLDivElement,\n HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => {\n const generatedId = useId();\n const { setDescriptionId } = useContext(A11yContext);\n\n useEffect(() => {\n setDescriptionId(generatedId);\n return () => setDescriptionId(undefined);\n }, [generatedId, setDescriptionId]);\n\n return (\n <div\n ref={ref}\n id={generatedId}\n className={[\n 'ds:text-[var(--muted-foreground)] type-body-sm ds:mt-[var(--spacing-xs)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n />\n );\n});\nPopoverDescription.displayName = 'Popover.Description';\n\nexport const Popover = Object.assign(PopoverRoot, {\n Root: PopoverRoot,\n Trigger: PopoverTrigger,\n // Radix pass-through: position Content against an arbitrary element when a\n // Trigger button is unsuitable (e.g. anchoring an editor to a role=tab).\n Anchor: RadixPopover.Anchor,\n Content: PopoverContent,\n Close: PopoverClose,\n Heading: PopoverHeading,\n Description: PopoverDescription,\n});\n\nexport type { PopoverRootProps as PopoverProps, PopoverHeadingProps };\n"],"names":["popoverAgent","handle","A11yContext","createContext","HoverContext","resolvePhysicalSide","logicalSide","isRtl","contentVariants","cva","PopoverIdContext","PopoverRoot","openOn","children","id","controlledOpen","onOpenChange","defaultOpen","modal","internalOpen","setInternalOpen","useState","isControlled","isOpen","handleOpenChange","useCallback","nextOpen","hoverTimerRef","useRef","isHoverMode","clearHoverTimer","openWithDelay","closeWithDelay","useEffect","openRef","agentHandle","useMemo","useAgentRegistration","headingId","setHeadingId","descriptionId","setDescriptionId","hoverHandlers","jsx","RadixPopover","PopoverTrigger","forwardRef","props","ref","PopoverContent","side","align","size","showArrow","className","useContext","instanceId","isHover","cancelTimer","delayClose","physicalSide","contentHoverHandlers","jsxs","PopoverClose","t","useTranslation","IconButton","X","PopoverHeading","Tag","generatedId","useId","PopoverDescription","Popover"],"mappings":"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"}
@@ -16,7 +16,7 @@ import { M as ft } from "./mic-CUklMZGF.js";
16
16
  import { S as Wt } from "./send-C5kDJ-Mz.js";
17
17
  import { B as ie } from "./button-nJaPh_HC.js";
18
18
  import { a as pt } from "./tooltip-DvmfrNvB.js";
19
- import { P as q } from "./popover-Cqcjx-Ny.js";
19
+ import { P as q } from "./popover-DP6WCVwm.js";
20
20
  import { D as Ae } from "./dropdown-menu-DU-Hrf33.js";
21
21
  import { D as B } from "./dialog-UbKJCi1X.js";
22
22
  import { C as We } from "./color-picker-CU303VjY.js";
@@ -2626,4 +2626,4 @@ export {
2626
2626
  hn as r,
2627
2627
  Qn as w
2628
2628
  };
2629
- //# sourceMappingURL=rich-text-editor-DtbcA6s1.js.map
2629
+ //# sourceMappingURL=rich-text-editor-lSCiE0Zz.js.map