@accelint/design-toolkit 9.11.0 → 9.11.1

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 (253) hide show
  1. package/catalog-info.yaml +1 -1
  2. package/dist/components/accordion/context.d.ts +2 -2
  3. package/dist/components/accordion/group.d.ts +2 -2
  4. package/dist/components/accordion/header.d.ts +2 -2
  5. package/dist/components/accordion/index.d.ts +2 -2
  6. package/dist/components/accordion/panel.d.ts +2 -2
  7. package/dist/components/accordion/trigger.d.ts +2 -2
  8. package/dist/components/action-bar/index.d.ts +2 -2
  9. package/dist/components/avatar/context.d.ts +2 -2
  10. package/dist/components/avatar/index.d.ts +2 -2
  11. package/dist/components/badge/context.d.ts +4 -4
  12. package/dist/components/badge/index.d.ts +2 -2
  13. package/dist/components/breadcrumbs/index.d.ts +2 -2
  14. package/dist/components/breadcrumbs/item.d.ts +2 -2
  15. package/dist/components/button/context.d.ts +8 -8
  16. package/dist/components/button/index.d.ts +2 -2
  17. package/dist/components/button/link.d.ts +2 -2
  18. package/dist/components/button/toggle.d.ts +2 -2
  19. package/dist/components/carousel/context.d.ts +2 -2
  20. package/dist/components/carousel/gallery.d.ts +2 -2
  21. package/dist/components/carousel/index.d.ts +2 -2
  22. package/dist/components/carousel/navigation.d.ts +3 -3
  23. package/dist/components/carousel/viewer.d.ts +2 -2
  24. package/dist/components/checkbox/context.d.ts +3 -3
  25. package/dist/components/checkbox/group.d.ts +2 -2
  26. package/dist/components/checkbox/index.d.ts +2 -2
  27. package/dist/components/chip/context.d.ts +4 -4
  28. package/dist/components/chip/deletable.d.ts +2 -2
  29. package/dist/components/chip/index.d.ts +2 -2
  30. package/dist/components/chip/list.d.ts +4 -4
  31. package/dist/components/chip/selectable.d.ts +2 -2
  32. package/dist/components/classification-badge/context.d.ts +4 -4
  33. package/dist/components/classification-badge/index.d.ts +2 -2
  34. package/dist/components/classification-banner/context.d.ts +4 -4
  35. package/dist/components/classification-banner/index.d.ts +2 -2
  36. package/dist/components/clock/index.d.ts +2 -2
  37. package/dist/components/color-picker/index.d.ts +2 -2
  38. package/dist/components/combobox-field/context.d.ts +4 -4
  39. package/dist/components/combobox-field/index.d.ts +2 -2
  40. package/dist/components/combobox-field/styles.module.css +11 -2
  41. package/dist/components/coordinate-field/context.d.ts +6 -6
  42. package/dist/components/coordinate-field/coordinate-utils.js +2 -0
  43. package/dist/components/coordinate-field/coordinate-utils.js.map +1 -1
  44. package/dist/components/coordinate-field/index.d.ts +2 -2
  45. package/dist/components/coordinate-field/index.js +1 -0
  46. package/dist/components/coordinate-field/index.js.map +1 -1
  47. package/dist/components/coordinate-field/segment.d.ts +2 -2
  48. package/dist/components/date-field/index.d.ts +2 -2
  49. package/dist/components/deferred-collection/index.d.ts +2 -2
  50. package/dist/components/details-list/context.d.ts +4 -4
  51. package/dist/components/details-list/index.d.ts +2 -2
  52. package/dist/components/details-list/label.d.ts +2 -2
  53. package/dist/components/details-list/value.d.ts +2 -2
  54. package/dist/components/dialog/content.d.ts +2 -2
  55. package/dist/components/dialog/context.d.ts +2 -2
  56. package/dist/components/dialog/footer.d.ts +2 -2
  57. package/dist/components/dialog/index.d.ts +2 -2
  58. package/dist/components/dialog/title.d.ts +2 -2
  59. package/dist/components/divider/context.d.ts +4 -4
  60. package/dist/components/divider/index.d.ts +2 -2
  61. package/dist/components/drawer/back.d.ts +2 -2
  62. package/dist/components/drawer/close.d.ts +2 -2
  63. package/dist/components/drawer/content.d.ts +2 -2
  64. package/dist/components/drawer/context.d.ts +2 -2
  65. package/dist/components/drawer/footer.d.ts +2 -2
  66. package/dist/components/drawer/header-title.d.ts +2 -2
  67. package/dist/components/drawer/header.d.ts +2 -2
  68. package/dist/components/drawer/index.d.ts +2 -2
  69. package/dist/components/drawer/layout-main.d.ts +2 -2
  70. package/dist/components/drawer/layout.d.ts +2 -2
  71. package/dist/components/drawer/menu-item.d.ts +2 -2
  72. package/dist/components/drawer/menu.d.ts +2 -2
  73. package/dist/components/drawer/panel.d.ts +2 -2
  74. package/dist/components/drawer/styles.module.css +60 -113
  75. package/dist/components/drawer/trigger.d.ts +2 -2
  76. package/dist/components/drawer/view.d.ts +2 -2
  77. package/dist/components/flashcard/index.d.ts +9 -9
  78. package/dist/components/floating-card/context.d.ts +2 -2
  79. package/dist/components/floating-card/index.d.ts +2 -2
  80. package/dist/components/floating-card/provider.d.ts +2 -2
  81. package/dist/components/gantt/components/base-elements/point.d.ts +2 -2
  82. package/dist/components/gantt/components/base-elements/range.d.ts +2 -2
  83. package/dist/components/gantt/components/containers/external/gantt-content-container/index.d.ts +2 -2
  84. package/dist/components/gantt/components/containers/external/gantt-panel-container/index.d.ts +2 -2
  85. package/dist/components/gantt/components/containers/internal/index.d.ts +2 -2
  86. package/dist/components/gantt/components/containers/internal/layout-container/index.d.ts +2 -2
  87. package/dist/components/gantt/components/containers/internal/virtualized-content-height-container/index.d.ts +2 -2
  88. package/dist/components/gantt/components/content-row/block.d.ts +2 -2
  89. package/dist/components/gantt/components/content-row/bracket.d.ts +3 -3
  90. package/dist/components/gantt/components/content-row/icon-marker.d.ts +2 -2
  91. package/dist/components/gantt/components/content-row/index.d.ts +2 -2
  92. package/dist/components/gantt/components/content-row/marker.d.ts +2 -2
  93. package/dist/components/gantt/components/content-row/spacer.d.ts +2 -2
  94. package/dist/components/gantt/components/current-time/index.d.ts +2 -2
  95. package/dist/components/gantt/components/header/index.d.ts +3 -3
  96. package/dist/components/gantt/components/panel-row/index.d.ts +2 -2
  97. package/dist/components/gantt/components/rows-virtualizer/index.d.ts +3 -3
  98. package/dist/components/gantt/components/timeline/index.d.ts +2 -2
  99. package/dist/components/gantt/components/timeline-chunk/index.d.ts +3 -3
  100. package/dist/components/gantt/context/index.d.ts +4 -4
  101. package/dist/components/gantt/context/store/index.d.ts +4 -4
  102. package/dist/components/gantt/context/temporal-data/index.d.ts +2 -2
  103. package/dist/components/hero/context.d.ts +2 -2
  104. package/dist/components/hero/index.d.ts +2 -2
  105. package/dist/components/hero/subtitle.d.ts +3 -3
  106. package/dist/components/hero/title.d.ts +3 -3
  107. package/dist/components/hotkey/context.d.ts +4 -4
  108. package/dist/components/hotkey/index.d.ts +2 -2
  109. package/dist/components/hotkey/set.d.ts +2 -2
  110. package/dist/components/icon/context.d.ts +4 -4
  111. package/dist/components/icon/index.d.ts +2 -2
  112. package/dist/components/input/context.d.ts +2 -2
  113. package/dist/components/input/index.d.ts +2 -2
  114. package/dist/components/kanban/card-body.d.ts +2 -2
  115. package/dist/components/kanban/card-header-actions.d.ts +2 -2
  116. package/dist/components/kanban/card-header-title.d.ts +2 -2
  117. package/dist/components/kanban/card-header.d.ts +2 -2
  118. package/dist/components/kanban/card.d.ts +2 -2
  119. package/dist/components/kanban/column-actions.d.ts +2 -2
  120. package/dist/components/kanban/column-container.d.ts +2 -2
  121. package/dist/components/kanban/column-content.d.ts +2 -2
  122. package/dist/components/kanban/column-header-actions.d.ts +2 -2
  123. package/dist/components/kanban/column-header-drag-handle.d.ts +2 -2
  124. package/dist/components/kanban/column-header-title.d.ts +2 -2
  125. package/dist/components/kanban/column-header.d.ts +2 -2
  126. package/dist/components/kanban/column.d.ts +2 -2
  127. package/dist/components/kanban/context.d.ts +2 -2
  128. package/dist/components/kanban/header-actions.d.ts +2 -2
  129. package/dist/components/kanban/header-search.d.ts +2 -2
  130. package/dist/components/kanban/header-title.d.ts +2 -2
  131. package/dist/components/kanban/header.d.ts +2 -2
  132. package/dist/components/kanban/kanban.d.ts +4 -4
  133. package/dist/components/label/context.d.ts +4 -4
  134. package/dist/components/label/index.d.ts +2 -2
  135. package/dist/components/lines/index.d.ts +2 -2
  136. package/dist/components/link/context.d.ts +2 -2
  137. package/dist/components/link/index.d.ts +2 -2
  138. package/dist/components/list/context.d.ts +2 -2
  139. package/dist/components/list/index.d.ts +2 -2
  140. package/dist/components/list/item-content.d.ts +2 -2
  141. package/dist/components/list/item-description.d.ts +2 -2
  142. package/dist/components/list/item-title.d.ts +2 -2
  143. package/dist/components/list/item.d.ts +2 -2
  144. package/dist/components/media-controls/context.d.ts +4 -4
  145. package/dist/components/media-controls/fullscreen-button.d.ts +2 -2
  146. package/dist/components/media-controls/index.d.ts +2 -2
  147. package/dist/components/media-controls/mute-button.d.ts +2 -2
  148. package/dist/components/media-controls/play-button.d.ts +2 -2
  149. package/dist/components/media-controls/playback-rate.d.ts +2 -2
  150. package/dist/components/media-controls/seek-button.d.ts +2 -2
  151. package/dist/components/media-controls/time-display.d.ts +2 -2
  152. package/dist/components/media-controls/time-range.d.ts +2 -2
  153. package/dist/components/media-controls/volume-slider.d.ts +2 -2
  154. package/dist/components/menu/context.d.ts +2 -2
  155. package/dist/components/menu/index.d.ts +2 -2
  156. package/dist/components/menu/item-description.d.ts +2 -2
  157. package/dist/components/menu/item-label.d.ts +2 -2
  158. package/dist/components/menu/item.d.ts +2 -2
  159. package/dist/components/menu/section.d.ts +2 -2
  160. package/dist/components/menu/separator.d.ts +2 -2
  161. package/dist/components/menu/submenu.d.ts +2 -2
  162. package/dist/components/notice/index.d.ts +2 -2
  163. package/dist/components/notice/list.d.ts +2 -2
  164. package/dist/components/notice/notice-icon.d.ts +2 -2
  165. package/dist/components/options/context.d.ts +2 -2
  166. package/dist/components/options/index.d.ts +2 -2
  167. package/dist/components/options/item-content.d.ts +2 -2
  168. package/dist/components/options/item-description.d.ts +2 -2
  169. package/dist/components/options/item-label.d.ts +2 -2
  170. package/dist/components/options/item.d.ts +2 -2
  171. package/dist/components/options/section.d.ts +2 -2
  172. package/dist/components/pagination/context.d.ts +2 -2
  173. package/dist/components/pagination/index.d.ts +2 -2
  174. package/dist/components/pagination/next.d.ts +2 -2
  175. package/dist/components/pagination/pages.d.ts +2 -2
  176. package/dist/components/pagination/prev.d.ts +2 -2
  177. package/dist/components/popover/content.d.ts +2 -2
  178. package/dist/components/popover/footer.d.ts +2 -2
  179. package/dist/components/popover/index.d.ts +2 -2
  180. package/dist/components/popover/title.d.ts +2 -2
  181. package/dist/components/popover/trigger.d.ts +2 -2
  182. package/dist/components/query-builder/action-element.d.ts +2 -2
  183. package/dist/components/query-builder/actions.d.ts +4 -4
  184. package/dist/components/query-builder/combinator-selector.d.ts +2 -2
  185. package/dist/components/query-builder/index.d.ts +2 -2
  186. package/dist/components/query-builder/rule-group.d.ts +4 -4
  187. package/dist/components/query-builder/rule.d.ts +2 -2
  188. package/dist/components/query-builder/value-editor.d.ts +2 -2
  189. package/dist/components/query-builder/value-selector.d.ts +2 -2
  190. package/dist/components/radio/context.d.ts +3 -3
  191. package/dist/components/radio/group.d.ts +2 -2
  192. package/dist/components/radio/index.d.ts +2 -2
  193. package/dist/components/search-field/context.d.ts +4 -4
  194. package/dist/components/search-field/index.d.ts +2 -2
  195. package/dist/components/select-field/context.d.ts +4 -4
  196. package/dist/components/select-field/index.d.ts +2 -2
  197. package/dist/components/sidenav/avatar.d.ts +2 -2
  198. package/dist/components/sidenav/content.d.ts +2 -2
  199. package/dist/components/sidenav/context.d.ts +2 -2
  200. package/dist/components/sidenav/footer.d.ts +2 -2
  201. package/dist/components/sidenav/header.d.ts +2 -2
  202. package/dist/components/sidenav/index.d.ts +2 -2
  203. package/dist/components/sidenav/item.d.ts +2 -2
  204. package/dist/components/sidenav/link.d.ts +2 -2
  205. package/dist/components/sidenav/menu-item.d.ts +2 -2
  206. package/dist/components/sidenav/menu.d.ts +2 -2
  207. package/dist/components/sidenav/trigger.d.ts +2 -2
  208. package/dist/components/skeleton/index.d.ts +2 -2
  209. package/dist/components/slider/index.d.ts +2 -2
  210. package/dist/components/status-indicator/index.d.ts +2 -2
  211. package/dist/components/switch/context.d.ts +4 -4
  212. package/dist/components/switch/index.d.ts +2 -2
  213. package/dist/components/table/body.d.ts +2 -2
  214. package/dist/components/table/cell.d.ts +2 -2
  215. package/dist/components/table/context.d.ts +2 -2
  216. package/dist/components/table/header-cell.d.ts +2 -2
  217. package/dist/components/table/header.d.ts +2 -2
  218. package/dist/components/table/index.d.ts +2 -2
  219. package/dist/components/table/row.d.ts +2 -2
  220. package/dist/components/tabs/context.d.ts +6 -6
  221. package/dist/components/tabs/index.d.ts +2 -2
  222. package/dist/components/tabs/list.d.ts +2 -2
  223. package/dist/components/tabs/panel.d.ts +2 -2
  224. package/dist/components/tabs/tab.d.ts +2 -2
  225. package/dist/components/text-area-field/context.d.ts +4 -4
  226. package/dist/components/text-area-field/index.d.ts +2 -2
  227. package/dist/components/text-field/context.d.ts +4 -4
  228. package/dist/components/text-field/index.d.ts +2 -2
  229. package/dist/components/time-field/index.d.ts +2 -2
  230. package/dist/components/tooltip/context.d.ts +2 -2
  231. package/dist/components/tooltip/index.d.ts +2 -2
  232. package/dist/components/tooltip/trigger.d.ts +2 -2
  233. package/dist/components/tree/context.d.ts +3 -3
  234. package/dist/components/tree/index.d.ts +2 -2
  235. package/dist/components/tree/item-actions.d.ts +2 -2
  236. package/dist/components/tree/item-content.d.ts +2 -2
  237. package/dist/components/tree/item-description.d.ts +2 -2
  238. package/dist/components/tree/item-label.d.ts +2 -2
  239. package/dist/components/tree/item-prefix-icon.d.ts +2 -2
  240. package/dist/components/tree/item.d.ts +2 -2
  241. package/dist/components/tree/lines.d.ts +2 -2
  242. package/dist/components/video/index.d.ts +2 -2
  243. package/dist/components/view-stack/index.d.ts +2 -2
  244. package/dist/components/view-stack/trigger.d.ts +2 -2
  245. package/dist/components/view-stack/view.d.ts +2 -2
  246. package/dist/hooks/coordinate-field/use-coordinate-field-state.d.ts +2 -0
  247. package/dist/hooks/coordinate-field/use-coordinate-field-state.js +15 -2
  248. package/dist/hooks/coordinate-field/use-coordinate-field-state.js.map +1 -1
  249. package/dist/hooks/coordinate-field/use-coordinate-paste.js +27 -4
  250. package/dist/hooks/coordinate-field/use-coordinate-paste.js.map +1 -1
  251. package/dist/providers/portal.d.ts +2 -2
  252. package/dist/providers/theme-provider.d.ts +2 -2
  253. package/package.json +8 -8
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Label","AriaText"],"sources":["../../../src/components/coordinate-field/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n'use client';\n\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport Check from '@accelint/icons/check';\nimport CopyToClipboard from '@accelint/icons/copy-to-clipboard';\nimport GlobalShare from '@accelint/icons/global-share';\nimport { filterDOMProps } from 'react-aria/filterDOMProps';\nimport 'client-only';\nimport {\n type CSSProperties,\n type ReactNode,\n useCallback,\n useMemo,\n useState,\n} from 'react';\nimport { Text as AriaText, TextContext } from 'react-aria-components/Text';\nimport { composeRenderProps } from 'react-aria-components/composeRenderProps';\nimport { Provider, useContextProps } from 'react-aria-components/slots';\nimport {\n FieldError,\n FieldErrorContext,\n} from 'react-aria-components/FieldError';\nimport { LabelContext } from 'react-aria-components/Label';\nimport { GroupContext } from 'react-aria-components/Group';\n\nimport { useCoordinateField } from '../../hooks/coordinate-field';\nimport { Button } from '../button';\nimport { Dialog } from '../dialog';\nimport { DialogContent } from '../dialog/content';\nimport { DialogFooter } from '../dialog/footer';\nimport { DialogTitle } from '../dialog/title';\nimport { DialogTrigger } from '../dialog/trigger';\nimport { Icon } from '../icon';\nimport { Label } from '../label';\nimport { Popover } from '../popover';\nimport { PopoverContent } from '../popover/content';\nimport { PopoverTitle } from '../popover/title';\nimport { Radio } from '../radio';\nimport { RadioGroup } from '../radio/group';\nimport { Tooltip } from '../tooltip';\nimport { TooltipTrigger } from '../tooltip/trigger';\nimport { CoordinateFieldContext, CoordinateFieldStateContext } from './context';\nimport {\n type CoordinateFormatResult,\n getAllCoordinateFormats,\n} from './coordinate-utils';\nimport { CoordinateSegment } from './segment';\nimport { GROUP_SEPARATOR, getSegmentLabel } from './segment-configs';\nimport styles from './styles.module.css';\nimport {\n COORDINATE_FORMAT_LABELS,\n COORDINATE_FORMAT_NAMES,\n COORDINATE_SYSTEMS,\n type CoordinateSystem,\n} from './types';\nimport { calculateMinControlWidth } from './width-utils';\nimport type { CoordinateFieldProps } from './types';\n\n/**\n * CoordinateField - A comprehensive coordinate input component with multiple format support\n *\n * Provides accessible coordinate input functionality with support for multiple coordinate\n * systems (DD, DDM, DMS, MGRS, UTM). All values are normalized to Decimal Degrees internally\n * for consistency.\n *\n * @param props - The coordinate field props.\n * @param props.ref - Reference to the coordinate field element.\n * @param props.classNames - Custom class names for sub-elements.\n * @param props.description - Description text displayed below the field.\n * @param props.label - Label text for the coordinate field.\n * @param props.format - Coordinate format to use (dd, ddm, dms, mgrs, utm).\n * @param props.size - Size variant of the field.\n * @param props.variant - Layout variant (inline or stacked).\n * @param props.showFormatButton - Whether to show the format conversion button.\n * @param props.isDisabled - Whether the field is disabled.\n * @param props.isInvalid - Whether the field is in an invalid state.\n * @param props.isRequired - Whether the field is required.\n * @param props.isReadOnly - Whether the field is read-only.\n * @returns The coordinate field component.\n *\n * @example\n * ```tsx\n * // Basic coordinate field\n * <CoordinateField label=\"Location\" />\n * ```\n *\n * @example\n * ```tsx\n * // Coordinate field with validation\n * <CoordinateField\n * label=\"Target Coordinates\"\n * isRequired\n * isInvalid={hasError}\n * errorMessage=\"Please enter a valid coordinate\"\n * />\n * ```\n *\n * @example\n * ```tsx\n * // Coordinate field with specific format\n * <CoordinateField\n * label=\"Position\"\n * format=\"dms\"\n * description=\"Enter coordinates in Degrees Minutes Seconds format\"\n * />\n * ```\n *\n * @example\n * ```tsx\n * // Compact coordinate field\n * <CoordinateField\n * label=\"Coordinates\"\n * size=\"small\"\n * format=\"dd\"\n * />\n * ```\n *\n * @example\n * ```tsx\n * // Controlled coordinate field\n * <CoordinateField\n * label=\"Selected Location\"\n * value={coordinates}\n * onChange={setCoordinates}\n * />\n * ```\n *\n * @example\n * ```tsx\n * // Coordinate field with error handling\n * <CoordinateField\n * label=\"Target Coordinates\"\n * onError={(message, context) => {\n * // message will be \"Invalid coordinate value\" for validation errors\n * // or \"Invalid coordinate format\" for paste errors\n * setErrorMessage(message);\n * console.error(message, context);\n * }}\n * isInvalid={!!errorMessage}\n * errorMessage={errorMessage}\n * />\n * ```\n */\nexport function CoordinateField({ ref, ...props }: CoordinateFieldProps) {\n [props, ref] = useContextProps(props, ref, CoordinateFieldContext);\n\n const {\n classNames,\n description: descriptionProp,\n label: labelProp,\n format = 'dd',\n size = 'medium',\n variant = 'inline',\n showFormatButton = true,\n formatButtonTooltip = 'View/copy other formats',\n isDisabled = false,\n isInvalid: isInvalidProp = false,\n isRequired = false,\n isReadOnly = false,\n ...rest\n } = props;\n\n const isSmall = size === 'small';\n\n const DOMProps = filterDOMProps(rest, { global: true });\n\n // When size is small and label is hidden, use aria-label instead of aria-labelledby\n // to ensure screen readers have an accessible name\n const ariaLabelForSmallSize =\n isSmall && labelProp ? labelProp : rest['aria-label'];\n\n const {\n state,\n focus,\n paste,\n copy,\n registerTimeout,\n fieldProps,\n labelProps,\n descriptionProps,\n errorProps,\n validation,\n effectiveErrorMessage,\n isInvalid,\n } = useCoordinateField(\n props,\n ariaLabelForSmallSize,\n rest['aria-describedby'],\n rest['aria-details'],\n );\n\n const componentState = {\n segmentValues: state.segmentValues,\n format,\n currentValue: state.currentValue,\n validationErrors: state.validationErrors,\n isDisabled,\n isInvalid,\n isRequired,\n size,\n variant,\n registerTimeout,\n };\n\n // Store all coordinate formats, calculated only when popover opens\n const [allCoordinateFormats, setAllCoordinateFormats] = useState<Record<\n CoordinateSystem,\n CoordinateFormatResult\n > | null>(null);\n\n // Track popover open state so tooltip hides when popover is open\n const [isPopoverOpen, setIsPopoverOpen] = useState(false);\n\n const handlePopoverOpenChange = useCallback(\n (isOpen: boolean) => {\n setIsPopoverOpen(isOpen);\n if (isOpen) {\n setAllCoordinateFormats(getAllCoordinateFormats(state.currentValue));\n }\n },\n [state.currentValue],\n );\n\n // Calculate the minimum width needed for the control container\n // This keeps the outlined container at a fixed width while segments animate\n const minControlWidth = useMemo(\n () =>\n calculateMinControlWidth(\n state.editableSegmentConfigs,\n state.segmentConfigs,\n showFormatButton,\n ),\n [state.editableSegmentConfigs, state.segmentConfigs, showFormatButton],\n );\n\n return (\n <Provider\n values={[\n [CoordinateFieldContext, props],\n [CoordinateFieldStateContext, componentState],\n [GroupContext, fieldProps],\n [LabelContext, labelProps],\n [\n TextContext,\n {\n slots: {\n description: descriptionProps,\n errorMessage: errorProps,\n },\n },\n ],\n [FieldErrorContext, validation],\n ]}\n >\n <div\n {...DOMProps}\n {...fieldProps}\n ref={ref}\n className={clsx(\n 'group/coordinate-field',\n styles.field,\n classNames?.field,\n )}\n data-size={size}\n data-disabled={isDisabled || null}\n data-invalid={isInvalid || null}\n >\n {!isSmall && labelProp && (\n <Label\n className={classNames?.label}\n isDisabled={isDisabled}\n isRequired={isRequired}\n >\n {labelProp}\n </Label>\n )}\n\n <div\n style={\n {\n '--min-width': variant === 'stacked' ? 'unset' : minControlWidth,\n } as CSSProperties\n }\n className={clsx(styles.control, classNames?.control)}\n data-readonly={isReadOnly || null}\n >\n <div\n className={clsx(styles.input, styles[variant], classNames?.input)}\n onPasteCapture={paste.handleInputPaste}\n data-input-container\n >\n {state.segmentConfigs\n .reduce<ReactNode[][]>(\n (acc, config, configIndex) => {\n const currentGroupIndex = acc.length - 1;\n\n if (\n config.value === GROUP_SEPARATOR &&\n variant === 'stacked'\n ) {\n acc.push([]);\n\n return acc;\n }\n\n if (config.type === 'literal') {\n acc[currentGroupIndex]?.push(\n <span\n key={`${format}-literal-${configIndex}-${config.value}`}\n className={styles.literal}\n >\n {config.value}\n </span>,\n );\n\n return acc;\n }\n\n const editableIndex = state.segmentConfigs\n .slice(0, configIndex)\n .filter((c) => c.type !== 'literal').length;\n\n acc[currentGroupIndex]?.push(\n <CoordinateSegment\n key={`${format}-segment-${editableIndex}`}\n value={state.segmentValues[editableIndex] || ''}\n onChange={(newValue) =>\n state.handleSegmentChange(editableIndex, newValue)\n }\n onFocus={() =>\n focus.setFocusedSegmentIndex(editableIndex)\n }\n onBlur={() => {\n focus.setFocusedSegmentIndex(-1);\n state.flushPendingValidation();\n }}\n onKeyDown={(e) =>\n focus.handleSegmentKeyDown(editableIndex, e)\n }\n onAutoAdvance={() =>\n focus.focusNextSegment(editableIndex)\n }\n onAutoRetreat={() =>\n focus.focusPreviousSegment(editableIndex)\n }\n placeholder={config.placeholder}\n maxLength={config.maxLength}\n pad={config.pad}\n className={clsx(styles.segment, classNames?.segment)}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n allowedChars={config.allowedChars}\n segmentRef={focus.segmentRefs[editableIndex]}\n segmentIndex={editableIndex}\n totalSegments={state.editableSegmentConfigs.length}\n ariaLabel={getSegmentLabel(format, editableIndex)}\n />,\n );\n\n return acc;\n },\n [[]],\n )\n .map((group, groupIndex) => (\n <div\n className={clsx(styles.segmentGroup, styles[variant])}\n key={`${format}-group-${\n // biome-ignore lint/suspicious/noArrayIndexKey: intentional\n groupIndex\n }`}\n >\n {group}\n </div>\n ))}\n </div>\n\n {showFormatButton && (\n <TooltipTrigger isDisabled={isPopoverOpen}>\n <DialogTrigger onOpenChange={handlePopoverOpenChange}>\n <Button\n variant='icon'\n size='small'\n color='mono-bold'\n className={clsx(\n styles.formatButton,\n classNames?.formatButton,\n )}\n aria-label='View coordinate in all formats'\n isDisabled={!copy.isFormatButtonEnabled}\n >\n <Icon>\n <GlobalShare />\n </Icon>\n </Button>\n <Popover classNames={{ popover: styles.popover }}>\n <PopoverTitle className={styles.popoverTitle}>\n Copy Coordinates\n </PopoverTitle>\n <PopoverContent>\n {allCoordinateFormats &&\n COORDINATE_SYSTEMS.map((formatKey) => {\n const formatResult = allCoordinateFormats[formatKey];\n const isCopied = copy.copiedFormat === formatKey;\n\n return (\n <div key={formatKey} className={styles.formatRow}>\n <div className={styles.formatLabels}>\n <span className={styles.formatLabel}>\n {COORDINATE_FORMAT_LABELS[formatKey]}\n </span>\n <span\n className={styles.formatValue}\n title={formatResult.value}\n >\n {formatResult.value}\n </span>\n </div>\n <Button\n variant='icon'\n color='mono-bold'\n aria-label={`Copy ${COORDINATE_FORMAT_LABELS[formatKey]} format`}\n onPress={() => copy.handleCopyFormat(formatKey)}\n isDisabled={!formatResult.isValid}\n >\n <Icon>\n {isCopied ? <Check /> : <CopyToClipboard />}\n </Icon>\n </Button>\n </div>\n );\n })}\n </PopoverContent>\n </Popover>\n </DialogTrigger>\n <Tooltip>{formatButtonTooltip}</Tooltip>\n </TooltipTrigger>\n )}\n </div>\n\n {/* Description is hidden when field is invalid (unless disabled) to make room for error message */}\n {descriptionProp && !isSmall && (!isInvalid || isDisabled) && (\n <AriaText\n className={clsx(styles.description, classNames?.description)}\n slot='description'\n >\n {descriptionProp}\n </AriaText>\n )}\n\n <FieldError\n className={composeRenderProps(classNames?.error, (className) =>\n clsx(styles.error, className),\n )}\n >\n {effectiveErrorMessage}\n </FieldError>\n\n <DialogTrigger\n isOpen={paste.showDisambiguationModal}\n onOpenChange={paste.setShowDisambiguationModal}\n >\n <Button className={styles.hiddenTrigger}>Hidden Trigger</Button>\n <Dialog size='small'>\n <DialogTitle className={styles.modalTitle}>\n Select Coordinate Format\n </DialogTitle>\n <DialogContent>\n <p className={styles.modalDescription}>\n The pasted value matches multiple coordinate formats. Please\n select the correct interpretation:\n </p>\n\n <RadioGroup\n classNames={{ group: styles.formatOptions }}\n value={paste.selectedDisambiguationFormat}\n onChange={(value) =>\n paste.setSelectedDisambiguationFormat(\n value as CoordinateSystem,\n )\n }\n >\n {paste.disambiguationMatches.map((match) => (\n <Radio key={match.format} value={match.format}>\n <div className={styles.modalOptionContent}>\n <span className={styles.formatOptionLabel}>\n {COORDINATE_FORMAT_NAMES[match.format]}\n </span>\n <span className={styles.formatOptionValue}>\n {match.displayString}\n </span>\n </div>\n </Radio>\n ))}\n </RadioGroup>\n </DialogContent>\n <DialogFooter className={styles.modalActions}>\n <Button\n variant='flat'\n onPress={() => paste.setShowDisambiguationModal(false)}\n >\n Cancel\n </Button>\n <Button onPress={paste.handleDisambiguationSelect}>\n Apply Selected\n </Button>\n </DialogFooter>\n </Dialog>\n </DialogTrigger>\n </div>\n </Provider>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["Label","AriaText"],"sources":["../../../src/components/coordinate-field/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n'use client';\n\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport Check from '@accelint/icons/check';\nimport CopyToClipboard from '@accelint/icons/copy-to-clipboard';\nimport GlobalShare from '@accelint/icons/global-share';\nimport { filterDOMProps } from 'react-aria/filterDOMProps';\nimport 'client-only';\nimport {\n type CSSProperties,\n type ReactNode,\n useCallback,\n useMemo,\n useState,\n} from 'react';\nimport { Text as AriaText, TextContext } from 'react-aria-components/Text';\nimport { composeRenderProps } from 'react-aria-components/composeRenderProps';\nimport { Provider, useContextProps } from 'react-aria-components/slots';\nimport {\n FieldError,\n FieldErrorContext,\n} from 'react-aria-components/FieldError';\nimport { LabelContext } from 'react-aria-components/Label';\nimport { GroupContext } from 'react-aria-components/Group';\n\nimport { useCoordinateField } from '../../hooks/coordinate-field';\nimport { Button } from '../button';\nimport { Dialog } from '../dialog';\nimport { DialogContent } from '../dialog/content';\nimport { DialogFooter } from '../dialog/footer';\nimport { DialogTitle } from '../dialog/title';\nimport { DialogTrigger } from '../dialog/trigger';\nimport { Icon } from '../icon';\nimport { Label } from '../label';\nimport { Popover } from '../popover';\nimport { PopoverContent } from '../popover/content';\nimport { PopoverTitle } from '../popover/title';\nimport { Radio } from '../radio';\nimport { RadioGroup } from '../radio/group';\nimport { Tooltip } from '../tooltip';\nimport { TooltipTrigger } from '../tooltip/trigger';\nimport { CoordinateFieldContext, CoordinateFieldStateContext } from './context';\nimport {\n type CoordinateFormatResult,\n getAllCoordinateFormats,\n} from './coordinate-utils';\nimport { CoordinateSegment } from './segment';\nimport { GROUP_SEPARATOR, getSegmentLabel } from './segment-configs';\nimport styles from './styles.module.css';\nimport {\n COORDINATE_FORMAT_LABELS,\n COORDINATE_FORMAT_NAMES,\n COORDINATE_SYSTEMS,\n type CoordinateSystem,\n} from './types';\nimport { calculateMinControlWidth } from './width-utils';\nimport type { CoordinateFieldProps } from './types';\n\n/**\n * CoordinateField - A comprehensive coordinate input component with multiple format support\n *\n * Provides accessible coordinate input functionality with support for multiple coordinate\n * systems (DD, DDM, DMS, MGRS, UTM). All values are normalized to Decimal Degrees internally\n * for consistency.\n *\n * @param props - The coordinate field props.\n * @param props.ref - Reference to the coordinate field element.\n * @param props.classNames - Custom class names for sub-elements.\n * @param props.description - Description text displayed below the field.\n * @param props.label - Label text for the coordinate field.\n * @param props.format - Coordinate format to use (dd, ddm, dms, mgrs, utm).\n * @param props.size - Size variant of the field.\n * @param props.variant - Layout variant (inline or stacked).\n * @param props.showFormatButton - Whether to show the format conversion button.\n * @param props.isDisabled - Whether the field is disabled.\n * @param props.isInvalid - Whether the field is in an invalid state.\n * @param props.isRequired - Whether the field is required.\n * @param props.isReadOnly - Whether the field is read-only.\n * @returns The coordinate field component.\n *\n * @example\n * ```tsx\n * // Basic coordinate field\n * <CoordinateField label=\"Location\" />\n * ```\n *\n * @example\n * ```tsx\n * // Coordinate field with validation\n * <CoordinateField\n * label=\"Target Coordinates\"\n * isRequired\n * isInvalid={hasError}\n * errorMessage=\"Please enter a valid coordinate\"\n * />\n * ```\n *\n * @example\n * ```tsx\n * // Coordinate field with specific format\n * <CoordinateField\n * label=\"Position\"\n * format=\"dms\"\n * description=\"Enter coordinates in Degrees Minutes Seconds format\"\n * />\n * ```\n *\n * @example\n * ```tsx\n * // Compact coordinate field\n * <CoordinateField\n * label=\"Coordinates\"\n * size=\"small\"\n * format=\"dd\"\n * />\n * ```\n *\n * @example\n * ```tsx\n * // Controlled coordinate field\n * <CoordinateField\n * label=\"Selected Location\"\n * value={coordinates}\n * onChange={setCoordinates}\n * />\n * ```\n *\n * @example\n * ```tsx\n * // Coordinate field with error handling\n * <CoordinateField\n * label=\"Target Coordinates\"\n * onError={(message, context) => {\n * // message will be \"Invalid coordinate value\" for validation errors\n * // or \"Invalid coordinate format\" for paste errors\n * setErrorMessage(message);\n * console.error(message, context);\n * }}\n * isInvalid={!!errorMessage}\n * errorMessage={errorMessage}\n * />\n * ```\n */\nexport function CoordinateField({ ref, ...props }: CoordinateFieldProps) {\n [props, ref] = useContextProps(props, ref, CoordinateFieldContext);\n\n const {\n classNames,\n description: descriptionProp,\n label: labelProp,\n format = 'dd',\n size = 'medium',\n variant = 'inline',\n showFormatButton = true,\n formatButtonTooltip = 'View/copy other formats',\n isDisabled = false,\n isInvalid: isInvalidProp = false,\n isRequired = false,\n isReadOnly = false,\n ...rest\n } = props;\n\n const isSmall = size === 'small';\n\n const DOMProps = filterDOMProps(rest, { global: true });\n\n // When size is small and label is hidden, use aria-label instead of aria-labelledby\n // to ensure screen readers have an accessible name\n const ariaLabelForSmallSize =\n isSmall && labelProp ? labelProp : rest['aria-label'];\n\n const {\n state,\n focus,\n paste,\n copy,\n registerTimeout,\n fieldProps,\n labelProps,\n descriptionProps,\n errorProps,\n validation,\n effectiveErrorMessage,\n isInvalid,\n } = useCoordinateField(\n props,\n ariaLabelForSmallSize,\n rest['aria-describedby'],\n rest['aria-details'],\n );\n\n const componentState = {\n segmentValues: state.segmentValues,\n format,\n currentValue: state.currentValue,\n validationErrors: state.validationErrors,\n isDisabled,\n isInvalid,\n isRequired,\n size,\n variant,\n registerTimeout,\n };\n\n // Store all coordinate formats, calculated only when popover opens\n const [allCoordinateFormats, setAllCoordinateFormats] = useState<Record<\n CoordinateSystem,\n CoordinateFormatResult\n > | null>(null);\n\n // Track popover open state so tooltip hides when popover is open\n const [isPopoverOpen, setIsPopoverOpen] = useState(false);\n\n const handlePopoverOpenChange = useCallback(\n (isOpen: boolean) => {\n setIsPopoverOpen(isOpen);\n if (isOpen) {\n setAllCoordinateFormats(getAllCoordinateFormats(state.currentValue));\n }\n },\n [state.currentValue],\n );\n\n // Calculate the minimum width needed for the control container\n // This keeps the outlined container at a fixed width while segments animate\n const minControlWidth = useMemo(\n () =>\n calculateMinControlWidth(\n state.editableSegmentConfigs,\n state.segmentConfigs,\n showFormatButton,\n ),\n [state.editableSegmentConfigs, state.segmentConfigs, showFormatButton],\n );\n\n return (\n <Provider\n values={[\n [CoordinateFieldContext, props],\n [CoordinateFieldStateContext, componentState],\n [GroupContext, fieldProps],\n [LabelContext, labelProps],\n [\n TextContext,\n {\n slots: {\n description: descriptionProps,\n errorMessage: errorProps,\n },\n },\n ],\n [FieldErrorContext, validation],\n ]}\n >\n <div\n {...DOMProps}\n {...fieldProps}\n ref={ref}\n className={clsx(\n 'group/coordinate-field',\n styles.field,\n classNames?.field,\n )}\n data-size={size}\n data-disabled={isDisabled || null}\n data-invalid={isInvalid || null}\n >\n {!isSmall && labelProp && (\n <Label\n className={classNames?.label}\n isDisabled={isDisabled}\n isRequired={isRequired}\n >\n {labelProp}\n </Label>\n )}\n\n <div\n style={\n {\n '--min-width': variant === 'stacked' ? 'unset' : minControlWidth,\n } as CSSProperties\n }\n className={clsx(styles.control, classNames?.control)}\n data-readonly={isReadOnly || null}\n >\n <div\n className={clsx(styles.input, styles[variant], classNames?.input)}\n onPasteCapture={paste.handleInputPaste}\n data-input-container\n >\n {state.segmentConfigs\n .reduce<ReactNode[][]>(\n (acc, config, configIndex) => {\n const currentGroupIndex = acc.length - 1;\n\n if (\n config.value === GROUP_SEPARATOR &&\n variant === 'stacked'\n ) {\n acc.push([]);\n\n return acc;\n }\n\n if (config.type === 'literal') {\n acc[currentGroupIndex]?.push(\n <span\n key={`${format}-literal-${configIndex}-${config.value}`}\n className={styles.literal}\n >\n {config.value}\n </span>,\n );\n\n return acc;\n }\n\n const editableIndex = state.segmentConfigs\n .slice(0, configIndex)\n .filter((c) => c.type !== 'literal').length;\n\n acc[currentGroupIndex]?.push(\n <CoordinateSegment\n key={`${format}-segment-${editableIndex}`}\n value={state.segmentValues[editableIndex] || ''}\n onChange={(newValue) =>\n state.handleSegmentChange(editableIndex, newValue)\n }\n onFocus={() =>\n focus.setFocusedSegmentIndex(editableIndex)\n }\n onBlur={() => {\n focus.setFocusedSegmentIndex(-1);\n state.handleSegmentBlur?.(editableIndex);\n state.flushPendingValidation();\n }}\n onKeyDown={(e) =>\n focus.handleSegmentKeyDown(editableIndex, e)\n }\n onAutoAdvance={() =>\n focus.focusNextSegment(editableIndex)\n }\n onAutoRetreat={() =>\n focus.focusPreviousSegment(editableIndex)\n }\n placeholder={config.placeholder}\n maxLength={config.maxLength}\n pad={config.pad}\n className={clsx(styles.segment, classNames?.segment)}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n allowedChars={config.allowedChars}\n segmentRef={focus.segmentRefs[editableIndex]}\n segmentIndex={editableIndex}\n totalSegments={state.editableSegmentConfigs.length}\n ariaLabel={getSegmentLabel(format, editableIndex)}\n />,\n );\n\n return acc;\n },\n [[]],\n )\n .map((group, groupIndex) => (\n <div\n className={clsx(styles.segmentGroup, styles[variant])}\n key={`${format}-group-${\n // biome-ignore lint/suspicious/noArrayIndexKey: intentional\n groupIndex\n }`}\n >\n {group}\n </div>\n ))}\n </div>\n\n {showFormatButton && (\n <TooltipTrigger isDisabled={isPopoverOpen}>\n <DialogTrigger onOpenChange={handlePopoverOpenChange}>\n <Button\n variant='icon'\n size='small'\n color='mono-bold'\n className={clsx(\n styles.formatButton,\n classNames?.formatButton,\n )}\n aria-label='View coordinate in all formats'\n isDisabled={!copy.isFormatButtonEnabled}\n >\n <Icon>\n <GlobalShare />\n </Icon>\n </Button>\n <Popover classNames={{ popover: styles.popover }}>\n <PopoverTitle className={styles.popoverTitle}>\n Copy Coordinates\n </PopoverTitle>\n <PopoverContent>\n {allCoordinateFormats &&\n COORDINATE_SYSTEMS.map((formatKey) => {\n const formatResult = allCoordinateFormats[formatKey];\n const isCopied = copy.copiedFormat === formatKey;\n\n return (\n <div key={formatKey} className={styles.formatRow}>\n <div className={styles.formatLabels}>\n <span className={styles.formatLabel}>\n {COORDINATE_FORMAT_LABELS[formatKey]}\n </span>\n <span\n className={styles.formatValue}\n title={formatResult.value}\n >\n {formatResult.value}\n </span>\n </div>\n <Button\n variant='icon'\n color='mono-bold'\n aria-label={`Copy ${COORDINATE_FORMAT_LABELS[formatKey]} format`}\n onPress={() => copy.handleCopyFormat(formatKey)}\n isDisabled={!formatResult.isValid}\n >\n <Icon>\n {isCopied ? <Check /> : <CopyToClipboard />}\n </Icon>\n </Button>\n </div>\n );\n })}\n </PopoverContent>\n </Popover>\n </DialogTrigger>\n <Tooltip>{formatButtonTooltip}</Tooltip>\n </TooltipTrigger>\n )}\n </div>\n\n {/* Description is hidden when field is invalid (unless disabled) to make room for error message */}\n {descriptionProp && !isSmall && (!isInvalid || isDisabled) && (\n <AriaText\n className={clsx(styles.description, classNames?.description)}\n slot='description'\n >\n {descriptionProp}\n </AriaText>\n )}\n\n <FieldError\n className={composeRenderProps(classNames?.error, (className) =>\n clsx(styles.error, className),\n )}\n >\n {effectiveErrorMessage}\n </FieldError>\n\n <DialogTrigger\n isOpen={paste.showDisambiguationModal}\n onOpenChange={paste.setShowDisambiguationModal}\n >\n <Button className={styles.hiddenTrigger}>Hidden Trigger</Button>\n <Dialog size='small'>\n <DialogTitle className={styles.modalTitle}>\n Select Coordinate Format\n </DialogTitle>\n <DialogContent>\n <p className={styles.modalDescription}>\n The pasted value matches multiple coordinate formats. Please\n select the correct interpretation:\n </p>\n\n <RadioGroup\n classNames={{ group: styles.formatOptions }}\n value={paste.selectedDisambiguationFormat}\n onChange={(value) =>\n paste.setSelectedDisambiguationFormat(\n value as CoordinateSystem,\n )\n }\n >\n {paste.disambiguationMatches.map((match) => (\n <Radio key={match.format} value={match.format}>\n <div className={styles.modalOptionContent}>\n <span className={styles.formatOptionLabel}>\n {COORDINATE_FORMAT_NAMES[match.format]}\n </span>\n <span className={styles.formatOptionValue}>\n {match.displayString}\n </span>\n </div>\n </Radio>\n ))}\n </RadioGroup>\n </DialogContent>\n <DialogFooter className={styles.modalActions}>\n <Button\n variant='flat'\n onPress={() => paste.setShowDisambiguationModal(false)}\n >\n Cancel\n </Button>\n <Button onPress={paste.handleDisambiguationSelect}>\n Apply Selected\n </Button>\n </DialogFooter>\n </Dialog>\n </DialogTrigger>\n </div>\n </Provider>\n );\n}\n"],"mappings":"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"}
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { CoordinateSegmentProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime24 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime48 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/coordinate-field/segment.d.ts
18
18
 
@@ -91,7 +91,7 @@ declare function CoordinateSegment({
91
91
  onAutoRetreat,
92
92
  pad,
93
93
  ariaLabel
94
- }: CoordinateSegmentProps): react_jsx_runtime24.JSX.Element;
94
+ }: CoordinateSegmentProps): react_jsx_runtime48.JSX.Element;
95
95
  //#endregion
96
96
  export { CoordinateSegment };
97
97
  //# sourceMappingURL=segment.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DateFieldProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime21 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime41 from "react/jsx-runtime";
16
16
  import { DateValue } from "@internationalized/date";
17
17
 
18
18
  //#region src/components/date-field/index.d.ts
@@ -100,7 +100,7 @@ declare function DateField<T extends DateValue>({
100
100
  isRequired,
101
101
  isReadOnly,
102
102
  ...rest
103
- }: DateFieldProps<T>): react_jsx_runtime21.JSX.Element;
103
+ }: DateFieldProps<T>): react_jsx_runtime41.JSX.Element;
104
104
  //#endregion
105
105
  export { DateField };
106
106
  //# sourceMappingURL=index.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { DeferredCollectionProps } from "./types.js";
14
- import * as react_jsx_runtime38 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime42 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/deferred-collection/index.d.ts
17
17
 
@@ -45,7 +45,7 @@ declare function DeferredCollection({
45
45
  children,
46
46
  fallback,
47
47
  deferFrames
48
- }: DeferredCollectionProps): react_jsx_runtime38.JSX.Element;
48
+ }: DeferredCollectionProps): react_jsx_runtime42.JSX.Element;
49
49
  //#endregion
50
50
  export { DeferredCollection, type DeferredCollectionProps };
51
51
  //# sourceMappingURL=index.d.ts.map
@@ -13,15 +13,15 @@
13
13
  import { ProviderProps } from "../../lib/types.js";
14
14
  import { DetailsListProps } from "./types.js";
15
15
  import "client-only";
16
- import * as react28 from "react";
17
- import * as react_jsx_runtime100 from "react/jsx-runtime";
16
+ import * as react17 from "react";
17
+ import * as react_jsx_runtime53 from "react/jsx-runtime";
18
18
  import { ContextValue } from "react-aria-components/slots";
19
19
 
20
20
  //#region src/components/details-list/context.d.ts
21
21
  /**
22
22
  * Context for sharing DetailsList props across component tree.
23
23
  */
24
- declare const DetailsListContext: react28.Context<ContextValue<DetailsListProps, HTMLDListElement>>;
24
+ declare const DetailsListContext: react17.Context<ContextValue<DetailsListProps, HTMLDListElement>>;
25
25
  /**
26
26
  * DetailsListProvider - Context provider for setting default DetailsList props.
27
27
  *
@@ -43,7 +43,7 @@ declare const DetailsListContext: react28.Context<ContextValue<DetailsListProps,
43
43
  declare function DetailsListProvider({
44
44
  children,
45
45
  ...props
46
- }: ProviderProps<DetailsListProps>): react_jsx_runtime100.JSX.Element;
46
+ }: ProviderProps<DetailsListProps>): react_jsx_runtime53.JSX.Element;
47
47
  //#endregion
48
48
  export { DetailsListContext, DetailsListProvider };
49
49
  //# sourceMappingURL=context.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DetailsListProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime92 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime55 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/details-list/index.d.ts
18
18
 
@@ -55,7 +55,7 @@ import * as react_jsx_runtime92 from "react/jsx-runtime";
55
55
  declare function DetailsList({
56
56
  ref,
57
57
  ...props
58
- }: DetailsListProps): react_jsx_runtime92.JSX.Element;
58
+ }: DetailsListProps): react_jsx_runtime55.JSX.Element;
59
59
  //#endregion
60
60
  export { DetailsList };
61
61
  //# sourceMappingURL=index.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DetailsListLabelProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime93 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime56 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/details-list/label.d.ts
18
18
  /**
@@ -31,7 +31,7 @@ import * as react_jsx_runtime93 from "react/jsx-runtime";
31
31
  * </DetailsList>
32
32
  * ```
33
33
  */
34
- declare function DetailsListLabel(props: DetailsListLabelProps): react_jsx_runtime93.JSX.Element;
34
+ declare function DetailsListLabel(props: DetailsListLabelProps): react_jsx_runtime56.JSX.Element;
35
35
  //#endregion
36
36
  export { DetailsListLabel };
37
37
  //# sourceMappingURL=label.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DetailsListValueProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime91 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime57 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/details-list/value.d.ts
18
18
 
@@ -33,7 +33,7 @@ import * as react_jsx_runtime91 from "react/jsx-runtime";
33
33
  * </DetailsList>
34
34
  * ```
35
35
  */
36
- declare function DetailsListValue(props: DetailsListValueProps): react_jsx_runtime91.JSX.Element;
36
+ declare function DetailsListValue(props: DetailsListValueProps): react_jsx_runtime57.JSX.Element;
37
37
  //#endregion
38
38
  export { DetailsListValue };
39
39
  //# sourceMappingURL=value.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import "client-only";
14
14
  import { ComponentProps } from "react";
15
- import * as react_jsx_runtime94 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime40 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/dialog/content.d.ts
18
18
 
@@ -39,7 +39,7 @@ import * as react_jsx_runtime94 from "react/jsx-runtime";
39
39
  declare function DialogContent({
40
40
  children,
41
41
  className
42
- }: ComponentProps<'div'>): react_jsx_runtime94.JSX.Element;
42
+ }: ComponentProps<'div'>): react_jsx_runtime40.JSX.Element;
43
43
  //#endregion
44
44
  export { DialogContent };
45
45
  //# sourceMappingURL=content.d.ts.map
@@ -12,14 +12,14 @@
12
12
 
13
13
  import { DialogProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react26 from "react";
15
+ import * as react16 from "react";
16
16
  import { ContextValue } from "react-aria-components/slots";
17
17
 
18
18
  //#region src/components/dialog/context.d.ts
19
19
  /**
20
20
  * Context for sharing Dialog props across component tree.
21
21
  */
22
- declare const DialogContext: react26.Context<ContextValue<DialogProps, HTMLDivElement>>;
22
+ declare const DialogContext: react16.Context<ContextValue<DialogProps, HTMLDivElement>>;
23
23
  //#endregion
24
24
  export { DialogContext };
25
25
  //# sourceMappingURL=context.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import "client-only";
14
14
  import { ComponentProps } from "react";
15
- import * as react_jsx_runtime95 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime49 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/dialog/footer.d.ts
18
18
 
@@ -42,7 +42,7 @@ import * as react_jsx_runtime95 from "react/jsx-runtime";
42
42
  declare function DialogFooter({
43
43
  children,
44
44
  className
45
- }: ComponentProps<'footer'>): react_jsx_runtime95.JSX.Element;
45
+ }: ComponentProps<'footer'>): react_jsx_runtime49.JSX.Element;
46
46
  //#endregion
47
47
  export { DialogFooter };
48
48
  //# sourceMappingURL=footer.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DialogProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime96 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime51 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/dialog/index.d.ts
18
18
 
@@ -53,7 +53,7 @@ import * as react_jsx_runtime96 from "react/jsx-runtime";
53
53
  declare function Dialog({
54
54
  ref,
55
55
  ...props
56
- }: DialogProps): react_jsx_runtime96.JSX.Element;
56
+ }: DialogProps): react_jsx_runtime51.JSX.Element;
57
57
  //#endregion
58
58
  export { Dialog };
59
59
  //# sourceMappingURL=index.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import "client-only";
14
- import * as react_jsx_runtime97 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime52 from "react/jsx-runtime";
15
15
  import { HeadingProps } from "react-aria-components/Heading";
16
16
 
17
17
  //#region src/components/dialog/title.d.ts
@@ -37,7 +37,7 @@ import { HeadingProps } from "react-aria-components/Heading";
37
37
  declare function DialogTitle({
38
38
  children,
39
39
  className
40
- }: HeadingProps): react_jsx_runtime97.JSX.Element;
40
+ }: HeadingProps): react_jsx_runtime52.JSX.Element;
41
41
  //#endregion
42
42
  export { DialogTitle };
43
43
  //# sourceMappingURL=title.d.ts.map
@@ -13,15 +13,15 @@
13
13
  import { ProviderProps } from "../../lib/types.js";
14
14
  import { DividerProps } from "./types.js";
15
15
  import "client-only";
16
- import * as react27 from "react";
17
- import * as react_jsx_runtime99 from "react/jsx-runtime";
16
+ import * as react19 from "react";
17
+ import * as react_jsx_runtime58 from "react/jsx-runtime";
18
18
  import { ContextValue } from "react-aria-components/slots";
19
19
 
20
20
  //#region src/components/divider/context.d.ts
21
21
  /**
22
22
  * Context for sharing Divider props across component tree.
23
23
  */
24
- declare const DividerContext: react27.Context<ContextValue<DividerProps, HTMLHRElement>>;
24
+ declare const DividerContext: react19.Context<ContextValue<DividerProps, HTMLHRElement>>;
25
25
  /**
26
26
  * DividerProvider - Context provider for setting default Divider props.
27
27
  *
@@ -42,7 +42,7 @@ declare const DividerContext: react27.Context<ContextValue<DividerProps, HTMLHRE
42
42
  declare function DividerProvider({
43
43
  children,
44
44
  ...props
45
- }: ProviderProps<DividerProps>): react_jsx_runtime99.JSX.Element;
45
+ }: ProviderProps<DividerProps>): react_jsx_runtime58.JSX.Element;
46
46
  //#endregion
47
47
  export { DividerContext, DividerProvider };
48
48
  //# sourceMappingURL=context.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DividerProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime98 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime61 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/divider/index.d.ts
18
18
 
@@ -43,7 +43,7 @@ import * as react_jsx_runtime98 from "react/jsx-runtime";
43
43
  declare function Divider({
44
44
  ref,
45
45
  ...props
46
- }: DividerProps): react_jsx_runtime98.JSX.Element;
46
+ }: DividerProps): react_jsx_runtime61.JSX.Element;
47
47
  //#endregion
48
48
  export { Divider };
49
49
  //# sourceMappingURL=index.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import "client-only";
14
- import * as react_jsx_runtime101 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime62 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/back.d.ts
17
17
 
@@ -33,7 +33,7 @@ import * as react_jsx_runtime101 from "react/jsx-runtime";
33
33
  * </DrawerView>
34
34
  * ```
35
35
  */
36
- declare function DrawerBack(): react_jsx_runtime101.JSX.Element | null;
36
+ declare function DrawerBack(): react_jsx_runtime62.JSX.Element | null;
37
37
  //#endregion
38
38
  export { DrawerBack };
39
39
  //# sourceMappingURL=back.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DrawerCloseProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime102 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime63 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/drawer/close.d.ts
18
18
 
@@ -34,7 +34,7 @@ import * as react_jsx_runtime102 from "react/jsx-runtime";
34
34
  * </DrawerHeader>
35
35
  * ```
36
36
  */
37
- declare function DrawerClose(props: DrawerCloseProps): react_jsx_runtime102.JSX.Element;
37
+ declare function DrawerClose(props: DrawerCloseProps): react_jsx_runtime63.JSX.Element;
38
38
  declare namespace DrawerClose {
39
39
  var displayName: string;
40
40
  }
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { ComponentPropsWithRef } from "react";
14
- import * as react_jsx_runtime103 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime64 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/content.d.ts
17
17
 
@@ -37,7 +37,7 @@ import * as react_jsx_runtime103 from "react/jsx-runtime";
37
37
  declare function DrawerContent({
38
38
  className,
39
39
  ...rest
40
- }: ComponentPropsWithRef<'div'>): react_jsx_runtime103.JSX.Element;
40
+ }: ComponentPropsWithRef<'div'>): react_jsx_runtime64.JSX.Element;
41
41
  //#endregion
42
42
  export { DrawerContent };
43
43
  //# sourceMappingURL=content.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DrawerContextValue, DrawerEvent } from "./types.js";
14
14
  import "client-only";
15
- import * as react4 from "react";
15
+ import * as react20 from "react";
16
16
  import { UniqueId } from "@accelint/core";
17
17
  import { Broadcast } from "@accelint/bus";
18
18
 
@@ -25,7 +25,7 @@ import { Broadcast } from "@accelint/bus";
25
25
  * const { register, unregister, placement } = useContext(DrawerContext);
26
26
  * ```
27
27
  */
28
- declare const DrawerContext: react4.Context<DrawerContextValue>;
28
+ declare const DrawerContext: react20.Context<DrawerContextValue>;
29
29
  /**
30
30
  * Event bus instance for drawer-related events.
31
31
  *
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { ComponentPropsWithRef } from "react";
14
- import * as react_jsx_runtime26 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime65 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/footer.d.ts
17
17
 
@@ -39,7 +39,7 @@ import * as react_jsx_runtime26 from "react/jsx-runtime";
39
39
  declare function DrawerFooter({
40
40
  className,
41
41
  ...rest
42
- }: ComponentPropsWithRef<'footer'>): react_jsx_runtime26.JSX.Element;
42
+ }: ComponentPropsWithRef<'footer'>): react_jsx_runtime65.JSX.Element;
43
43
  //#endregion
44
44
  export { DrawerFooter };
45
45
  //# sourceMappingURL=footer.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { DrawerTitleProps } from "./types.js";
14
- import * as react_jsx_runtime76 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime66 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/header-title.d.ts
17
17
 
@@ -41,7 +41,7 @@ declare function DrawerHeaderTitle({
41
41
  className,
42
42
  level,
43
43
  ...rest
44
- }: DrawerTitleProps): react_jsx_runtime76.JSX.Element;
44
+ }: DrawerTitleProps): react_jsx_runtime66.JSX.Element;
45
45
  //#endregion
46
46
  export { DrawerHeaderTitle };
47
47
  //# sourceMappingURL=header-title.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import "client-only";
14
14
  import { ComponentPropsWithRef } from "react";
15
- import * as react_jsx_runtime79 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime67 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/drawer/header.d.ts
18
18
 
@@ -52,7 +52,7 @@ declare function DrawerHeader({
52
52
  title,
53
53
  children,
54
54
  ...rest
55
- }: ComponentPropsWithRef<'header'>): react_jsx_runtime79.JSX.Element;
55
+ }: ComponentPropsWithRef<'header'>): react_jsx_runtime67.JSX.Element;
56
56
  //#endregion
57
57
  export { DrawerHeader };
58
58
  //# sourceMappingURL=header.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DrawerProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime81 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime126 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/drawer/index.d.ts
18
18
 
@@ -63,7 +63,7 @@ declare function Drawer({
63
63
  size,
64
64
  onChange,
65
65
  ...rest
66
- }: DrawerProps): react_jsx_runtime81.JSX.Element;
66
+ }: DrawerProps): react_jsx_runtime126.JSX.Element;
67
67
  //#endregion
68
68
  export { Drawer };
69
69
  //# sourceMappingURL=index.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { ComponentPropsWithRef } from "react";
14
- import * as react_jsx_runtime82 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime127 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/layout-main.d.ts
17
17
 
@@ -38,7 +38,7 @@ import * as react_jsx_runtime82 from "react/jsx-runtime";
38
38
  declare function DrawerLayoutMain({
39
39
  className,
40
40
  ...rest
41
- }: ComponentPropsWithRef<'main'>): react_jsx_runtime82.JSX.Element;
41
+ }: ComponentPropsWithRef<'main'>): react_jsx_runtime127.JSX.Element;
42
42
  //#endregion
43
43
  export { DrawerLayoutMain };
44
44
  //# sourceMappingURL=layout-main.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { DrawerLayoutProps } from "./types.js";
14
- import * as react_jsx_runtime83 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime128 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/layout.d.ts
17
17
 
@@ -42,7 +42,7 @@ declare function DrawerLayout({
42
42
  extend,
43
43
  push,
44
44
  ...rest
45
- }: DrawerLayoutProps): react_jsx_runtime83.JSX.Element;
45
+ }: DrawerLayoutProps): react_jsx_runtime128.JSX.Element;
46
46
  //#endregion
47
47
  export { DrawerLayout };
48
48
  //# sourceMappingURL=layout.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DrawerMenuItemProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime84 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime130 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/drawer/menu-item.d.ts
18
18
 
@@ -45,7 +45,7 @@ declare function DrawerMenuItem({
45
45
  toggle,
46
46
  textValue,
47
47
  ...rest
48
- }: DrawerMenuItemProps): react_jsx_runtime84.JSX.Element | null;
48
+ }: DrawerMenuItemProps): react_jsx_runtime130.JSX.Element | null;
49
49
  //#endregion
50
50
  export { DrawerMenuItem };
51
51
  //# sourceMappingURL=menu-item.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { DrawerMenuProps } from "./types.js";
14
- import * as react_jsx_runtime87 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime131 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/menu.d.ts
17
17
 
@@ -39,7 +39,7 @@ declare function DrawerMenu({
39
39
  position,
40
40
  children,
41
41
  ...rest
42
- }: DrawerMenuProps): react_jsx_runtime87.JSX.Element;
42
+ }: DrawerMenuProps): react_jsx_runtime131.JSX.Element;
43
43
  //#endregion
44
44
  export { DrawerMenu };
45
45
  //# sourceMappingURL=menu.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { ComponentPropsWithRef } from "react";
14
- import * as react_jsx_runtime85 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime132 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/panel.d.ts
17
17
 
@@ -36,7 +36,7 @@ import * as react_jsx_runtime85 from "react/jsx-runtime";
36
36
  declare function DrawerPanel({
37
37
  className,
38
38
  ...rest
39
- }: ComponentPropsWithRef<'div'>): react_jsx_runtime85.JSX.Element;
39
+ }: ComponentPropsWithRef<'div'>): react_jsx_runtime132.JSX.Element;
40
40
  //#endregion
41
41
  export { DrawerPanel };
42
42
  //# sourceMappingURL=panel.d.ts.map