@linyao.tw/ui 1.0.0 → 1.1.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/README.md +9 -1
  2. package/dist/components/date-time/calendar.js +7 -6
  3. package/dist/components/date-time/calendar.js.map +1 -1
  4. package/dist/components/date-time/date-field.js +9 -8
  5. package/dist/components/date-time/date-field.js.map +1 -1
  6. package/dist/components/date-time/date-picker.js +7 -6
  7. package/dist/components/date-time/date-picker.js.map +1 -1
  8. package/dist/components/date-time/date-range-picker.js +7 -6
  9. package/dist/components/date-time/date-range-picker.js.map +1 -1
  10. package/dist/components/date-time/index.js +0 -1
  11. package/dist/components/date-time/shared.d.ts +0 -1
  12. package/dist/components/date-time/shared.js +6 -9
  13. package/dist/components/date-time/shared.js.map +1 -1
  14. package/dist/components/date-time/time-field.js +7 -6
  15. package/dist/components/date-time/time-field.js.map +1 -1
  16. package/dist/components/feedback/alert.js +34 -34
  17. package/dist/components/feedback/alert.js.map +1 -1
  18. package/dist/components/feedback/banner.js +14 -14
  19. package/dist/components/feedback/banner.js.map +1 -1
  20. package/dist/components/feedback/empty-state.d.ts +2 -1
  21. package/dist/components/feedback/empty-state.js +30 -31
  22. package/dist/components/feedback/empty-state.js.map +1 -1
  23. package/dist/components/feedback/feedback.types.d.ts +0 -1
  24. package/dist/components/feedback/feedback.types.js +2 -5
  25. package/dist/components/feedback/feedback.types.js.map +1 -1
  26. package/dist/components/feedback/index.d.ts +8 -8
  27. package/dist/components/feedback/meter.js +20 -21
  28. package/dist/components/feedback/meter.js.map +1 -1
  29. package/dist/components/feedback/progress.js +20 -21
  30. package/dist/components/feedback/progress.js.map +1 -1
  31. package/dist/components/feedback/skeleton.js +10 -11
  32. package/dist/components/feedback/skeleton.js.map +1 -1
  33. package/dist/components/feedback/spinner.js +24 -25
  34. package/dist/components/feedback/spinner.js.map +1 -1
  35. package/dist/components/feedback/toast.js +22 -21
  36. package/dist/components/feedback/toast.js.map +1 -1
  37. package/dist/components/forms/{CodeField.d.ts → code-field.d.ts} +1 -1
  38. package/dist/components/forms/code-field.js +65 -0
  39. package/dist/components/forms/code-field.js.map +1 -0
  40. package/dist/components/forms/{FileUpload.d.ts → file-upload.d.ts} +1 -1
  41. package/dist/components/forms/{FileUpload.js → file-upload.js} +127 -111
  42. package/dist/components/forms/file-upload.js.map +1 -0
  43. package/dist/components/forms/index.d.ts +6 -6
  44. package/dist/components/forms/{Input.js → input.js} +3 -3
  45. package/dist/components/forms/input.js.map +1 -0
  46. package/dist/components/forms/internal.d.ts +0 -2
  47. package/dist/components/forms/internal.js +12 -17
  48. package/dist/components/forms/internal.js.map +1 -1
  49. package/dist/components/forms/number-field.js +73 -0
  50. package/dist/components/forms/number-field.js.map +1 -0
  51. package/dist/components/forms/otp-field.js +57 -0
  52. package/dist/components/forms/otp-field.js.map +1 -0
  53. package/dist/components/forms/{TextField.d.ts → text-field.d.ts} +5 -0
  54. package/dist/components/forms/text-field.js +200 -0
  55. package/dist/components/forms/text-field.js.map +1 -0
  56. package/dist/components/foundations/{Avatar.js → avatar.js} +3 -3
  57. package/dist/components/foundations/avatar.js.map +1 -0
  58. package/dist/components/foundations/{Badge.d.ts → badge.d.ts} +1 -1
  59. package/dist/components/foundations/{Badge.js → badge.js} +3 -3
  60. package/dist/components/foundations/badge.js.map +1 -0
  61. package/dist/components/foundations/{Button.js → button.js} +3 -3
  62. package/dist/components/foundations/button.js.map +1 -0
  63. package/dist/components/foundations/{Card.d.ts → card.d.ts} +9 -2
  64. package/dist/components/foundations/{Card.js → card.js} +5 -5
  65. package/dist/components/foundations/card.js.map +1 -0
  66. package/dist/components/foundations/{IconButton.d.ts → icon-button.d.ts} +2 -8
  67. package/dist/components/foundations/{IconButton.js → icon-button.js} +4 -4
  68. package/dist/components/foundations/icon-button.js.map +1 -0
  69. package/dist/components/foundations/index.d.ts +9 -9
  70. package/dist/components/foundations/{Link.d.ts → link.d.ts} +1 -1
  71. package/dist/components/foundations/link.js +46 -0
  72. package/dist/components/foundations/link.js.map +1 -0
  73. package/dist/components/foundations/{ListCell.d.ts → list-cell.d.ts} +1 -8
  74. package/dist/components/foundations/{ListCell.js → list-cell.js} +3 -3
  75. package/dist/components/foundations/list-cell.js.map +1 -0
  76. package/dist/components/foundations/{SectionHeading.d.ts → section-heading.d.ts} +5 -2
  77. package/dist/components/foundations/{SectionHeading.js → section-heading.js} +3 -3
  78. package/dist/components/foundations/section-heading.js.map +1 -0
  79. package/dist/components/foundations/{Separator.js → separator.js} +3 -3
  80. package/dist/components/foundations/separator.js.map +1 -0
  81. package/dist/components/navigation-data/breadcrumb-pagination.js +88 -81
  82. package/dist/components/navigation-data/breadcrumb-pagination.js.map +1 -1
  83. package/dist/components/navigation-data/command-palette.d.ts +26 -0
  84. package/dist/components/navigation-data/command-palette.js +100 -72
  85. package/dist/components/navigation-data/command-palette.js.map +1 -1
  86. package/dist/components/navigation-data/header-tab-bar.js +49 -46
  87. package/dist/components/navigation-data/header-tab-bar.js.map +1 -1
  88. package/dist/components/navigation-data/index.d.ts +7 -7
  89. package/dist/components/navigation-data/menubar-toolbar.js +1 -1
  90. package/dist/components/navigation-data/menubar-toolbar.js.map +1 -1
  91. package/dist/components/navigation-data/navigation-menu.js +1 -1
  92. package/dist/components/navigation-data/navigation-menu.js.map +1 -1
  93. package/dist/components/navigation-data/scroll-area.js +1 -1
  94. package/dist/components/navigation-data/scroll-area.js.map +1 -1
  95. package/dist/components/navigation-data/table-collection.d.ts +12 -3
  96. package/dist/components/navigation-data/table-collection.js +11 -9
  97. package/dist/components/navigation-data/table-collection.js.map +1 -1
  98. package/dist/components/overlays/dialog.d.ts +13 -2
  99. package/dist/components/overlays/dialog.js +136 -131
  100. package/dist/components/overlays/dialog.js.map +1 -1
  101. package/dist/components/overlays/disclosure.js +1 -1
  102. package/dist/components/overlays/disclosure.js.map +1 -1
  103. package/dist/components/overlays/drawer.d.ts +5 -1
  104. package/dist/components/overlays/drawer.js +156 -152
  105. package/dist/components/overlays/drawer.js.map +1 -1
  106. package/dist/components/overlays/floating.js +115 -113
  107. package/dist/components/overlays/floating.js.map +1 -1
  108. package/dist/components/overlays/index.d.ts +4 -4
  109. package/dist/components/selection/combobox.js +93 -93
  110. package/dist/components/selection/combobox.js.map +1 -1
  111. package/dist/components/selection/controls.d.ts +4 -1
  112. package/dist/components/selection/controls.js +140 -118
  113. package/dist/components/selection/controls.js.map +1 -1
  114. package/dist/components/selection/menu.js +120 -121
  115. package/dist/components/selection/menu.js.map +1 -1
  116. package/dist/components/selection/select.js +107 -107
  117. package/dist/components/selection/select.js.map +1 -1
  118. package/dist/fonts.css +13 -0
  119. package/dist/index.d.ts +1 -0
  120. package/dist/index.js +37 -33
  121. package/dist/internal/accessible-name.d.ts +12 -0
  122. package/dist/internal/class-names.d.ts +12 -0
  123. package/dist/{components/selection/classnames.js → internal/class-names.js} +3 -3
  124. package/dist/internal/class-names.js.map +1 -0
  125. package/dist/internal/index.d.ts +3 -0
  126. package/dist/{components/foundations/shared.d.ts → internal/render.d.ts} +2 -1
  127. package/dist/intl/index.d.ts +2 -0
  128. package/dist/intl/messages.d.ts +48 -0
  129. package/dist/intl/messages.js +80 -0
  130. package/dist/intl/messages.js.map +1 -0
  131. package/dist/intl/provider.d.ts +18 -0
  132. package/dist/intl/provider.js +22 -0
  133. package/dist/intl/provider.js.map +1 -0
  134. package/dist/styles.css +1 -1
  135. package/package.json +6 -4
  136. package/dist/components/feedback/feedback.module.js +0 -42
  137. package/dist/components/feedback/feedback.module.js.map +0 -1
  138. package/dist/components/forms/CodeField.js +0 -63
  139. package/dist/components/forms/CodeField.js.map +0 -1
  140. package/dist/components/forms/FileUpload.js.map +0 -1
  141. package/dist/components/forms/Input.js.map +0 -1
  142. package/dist/components/forms/NumberField.js +0 -71
  143. package/dist/components/forms/NumberField.js.map +0 -1
  144. package/dist/components/forms/OTPField.js +0 -54
  145. package/dist/components/forms/OTPField.js.map +0 -1
  146. package/dist/components/forms/TextField.js +0 -199
  147. package/dist/components/forms/TextField.js.map +0 -1
  148. package/dist/components/foundations/Avatar.js.map +0 -1
  149. package/dist/components/foundations/Badge.js.map +0 -1
  150. package/dist/components/foundations/Button.js.map +0 -1
  151. package/dist/components/foundations/Card.js.map +0 -1
  152. package/dist/components/foundations/IconButton.js.map +0 -1
  153. package/dist/components/foundations/Link.js +0 -40
  154. package/dist/components/foundations/Link.js.map +0 -1
  155. package/dist/components/foundations/ListCell.js.map +0 -1
  156. package/dist/components/foundations/SectionHeading.js.map +0 -1
  157. package/dist/components/foundations/Separator.js.map +0 -1
  158. package/dist/components/foundations/shared.js +0 -8
  159. package/dist/components/foundations/shared.js.map +0 -1
  160. package/dist/components/navigation-data/utils.d.ts +0 -2
  161. package/dist/components/navigation-data/utils.js +0 -11
  162. package/dist/components/navigation-data/utils.js.map +0 -1
  163. package/dist/components/overlays/class-names.d.ts +0 -6
  164. package/dist/components/overlays/class-names.js +0 -11
  165. package/dist/components/overlays/class-names.js.map +0 -1
  166. package/dist/components/selection/classnames.d.ts +0 -4
  167. package/dist/components/selection/classnames.js.map +0 -1
  168. package/dist/components/selection/selection.module.js +0 -51
  169. package/dist/components/selection/selection.module.js.map +0 -1
  170. /package/dist/components/forms/{Input.d.ts → input.d.ts} +0 -0
  171. /package/dist/components/forms/{NumberField.d.ts → number-field.d.ts} +0 -0
  172. /package/dist/components/forms/{OTPField.d.ts → otp-field.d.ts} +0 -0
  173. /package/dist/components/foundations/{Avatar.d.ts → avatar.d.ts} +0 -0
  174. /package/dist/components/foundations/{Button.d.ts → button.d.ts} +0 -0
  175. /package/dist/components/foundations/{Separator.d.ts → separator.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-menu.js","names":[],"sources":["../../../src/components/navigation-data/navigation-menu.tsx"],"sourcesContent":["import { NavigationMenu as BaseNavigationMenu } from \"@base-ui/react/navigation-menu\";\nimport { CaretDownIcon } from \"@phosphor-icons/react/dist/csr/CaretDown\";\nimport { forwardRef, type ComponentRef, type ForwardedRef, type ReactElement, type RefAttributes } from \"react\";\n\nimport { withBaseClass } from \"./utils.js\";\n\nfunction NavigationMenuInner<Value = string>(props: BaseNavigationMenu.Root.Props<Value>, ref: ForwardedRef<HTMLElement>) {\n\tconst { className, ...rootProps } = props;\n\treturn <BaseNavigationMenu.Root ref={ref} className={withBaseClass<BaseNavigationMenu.Root.State>(\"lyds-navigation-menu\", className)} {...rootProps} />;\n}\n\nexport const NavigationMenu = forwardRef(NavigationMenuInner) as <Value = string>(props: BaseNavigationMenu.Root.Props<Value> & RefAttributes<HTMLElement>) => ReactElement;\n\nexport const NavigationMenuList = forwardRef<ComponentRef<typeof BaseNavigationMenu.List>, BaseNavigationMenu.List.Props>(function NavigationMenuList(props, ref) {\n\tconst { className, ...listProps } = props;\n\treturn <BaseNavigationMenu.List ref={ref} className={withBaseClass<BaseNavigationMenu.List.State>(\"lyds-navigation-menu__list\", className)} {...listProps} />;\n});\n\nexport const NavigationMenuItem = BaseNavigationMenu.Item;\n\nexport const NavigationMenuTrigger = forwardRef<ComponentRef<typeof BaseNavigationMenu.Trigger>, BaseNavigationMenu.Trigger.Props>(function NavigationMenuTrigger(props, ref) {\n\tconst { className, ...triggerProps } = props;\n\treturn <BaseNavigationMenu.Trigger ref={ref} className={withBaseClass<BaseNavigationMenu.Trigger.State>(\"lyds-navigation-menu__trigger\", className)} {...triggerProps} />;\n});\n\nexport const NavigationMenuIcon = forwardRef<ComponentRef<typeof BaseNavigationMenu.Icon>, BaseNavigationMenu.Icon.Props>(function NavigationMenuIcon(props, ref) {\n\tconst { className, children, ...iconProps } = props;\n\treturn (\n\t\t<BaseNavigationMenu.Icon ref={ref} className={withBaseClass<BaseNavigationMenu.Icon.State>(\"lyds-navigation-menu__icon\", className)} {...iconProps}>\n\t\t\t{children ?? <CaretDownIcon aria-hidden=\"true\" weight=\"bold\" />}\n\t\t</BaseNavigationMenu.Icon>\n\t);\n});\n\nexport const NavigationMenuLink = forwardRef<ComponentRef<typeof BaseNavigationMenu.Link>, BaseNavigationMenu.Link.Props>(function NavigationMenuLink(props, ref) {\n\tconst { className, ...linkProps } = props;\n\treturn <BaseNavigationMenu.Link ref={ref} className={withBaseClass<BaseNavigationMenu.Link.State>(\"lyds-navigation-menu__link\", className)} {...linkProps} />;\n});\n\nexport const NavigationMenuContent = forwardRef<ComponentRef<typeof BaseNavigationMenu.Content>, BaseNavigationMenu.Content.Props>(function NavigationMenuContent(props, ref) {\n\tconst { className, ...contentProps } = props;\n\treturn <BaseNavigationMenu.Content ref={ref} className={withBaseClass<BaseNavigationMenu.Content.State>(\"lyds-navigation-menu__content\", className)} {...contentProps} />;\n});\n\nexport const NavigationMenuPortal = BaseNavigationMenu.Portal;\n\nexport const NavigationMenuPositioner = forwardRef<ComponentRef<typeof BaseNavigationMenu.Positioner>, BaseNavigationMenu.Positioner.Props>(function NavigationMenuPositioner(props, ref) {\n\tconst { className, sideOffset = 8, ...positionerProps } = props;\n\treturn (\n\t\t<BaseNavigationMenu.Positioner\n\t\t\tref={ref}\n\t\t\tclassName={withBaseClass<BaseNavigationMenu.Positioner.State>(\"lyds-navigation-menu__positioner\", className)}\n\t\t\tsideOffset={sideOffset}\n\t\t\t{...positionerProps}\n\t\t/>\n\t);\n});\n\nexport const NavigationMenuPopup = forwardRef<ComponentRef<typeof BaseNavigationMenu.Popup>, BaseNavigationMenu.Popup.Props>(function NavigationMenuPopup(props, ref) {\n\tconst { className, ...popupProps } = props;\n\treturn <BaseNavigationMenu.Popup ref={ref} className={withBaseClass<BaseNavigationMenu.Popup.State>(\"lyds-navigation-menu__popup\", className)} {...popupProps} />;\n});\n\nexport const NavigationMenuViewport = forwardRef<ComponentRef<typeof BaseNavigationMenu.Viewport>, BaseNavigationMenu.Viewport.Props>(function NavigationMenuViewport(props, ref) {\n\tconst { className, ...viewportProps } = props;\n\treturn <BaseNavigationMenu.Viewport ref={ref} className={withBaseClass<BaseNavigationMenu.Viewport.State>(\"lyds-navigation-menu__viewport\", className)} {...viewportProps} />;\n});\n\nexport const NavigationMenuArrow = forwardRef<ComponentRef<typeof BaseNavigationMenu.Arrow>, BaseNavigationMenu.Arrow.Props>(function NavigationMenuArrow(props, ref) {\n\tconst { className, ...arrowProps } = props;\n\treturn <BaseNavigationMenu.Arrow ref={ref} className={withBaseClass<BaseNavigationMenu.Arrow.State>(\"lyds-navigation-menu__arrow\", className)} {...arrowProps} />;\n});\n"],"mappings":";;;;;;AAMA,SAAS,EAAoC,GAA6C,GAAgC;CACzH,IAAM,EAAE,cAAW,GAAG,MAAc;CACpC,OAAO,kBAAC,EAAmB,MAApB;EAA8B;EAAK,WAAW,EAA6C,wBAAwB,CAAS;EAAG,GAAI;CAAY,CAAA;AACvJ;AAEA,IAAa,IAAiB,EAAW,CAAmB,GAE/C,IAAqB,EAAwF,SAA4B,GAAO,GAAK;CACjK,IAAM,EAAE,cAAW,GAAG,MAAc;CACpC,OAAO,kBAAC,EAAmB,MAApB;EAA8B;EAAK,WAAW,EAA6C,8BAA8B,CAAS;EAAG,GAAI;CAAY,CAAA;AAC7J,CAAC,GAEY,IAAqB,EAAmB,MAExC,IAAwB,EAA8F,SAA+B,GAAO,GAAK;CAC7K,IAAM,EAAE,cAAW,GAAG,MAAiB;CACvC,OAAO,kBAAC,EAAmB,SAApB;EAAiC;EAAK,WAAW,EAAgD,iCAAiC,CAAS;EAAG,GAAI;CAAe,CAAA;AACzK,CAAC,GAEY,IAAqB,EAAwF,SAA4B,GAAO,GAAK;CACjK,IAAM,EAAE,cAAW,aAAU,GAAG,MAAc;CAC9C,OACC,kBAAC,EAAmB,MAApB;EAA8B;EAAK,WAAW,EAA6C,8BAA8B,CAAS;EAAG,GAAI;EACvI,UAAA,KAAY,kBAAC,GAAD;GAAe,eAAY;GAAO,QAAO;EAAQ,CAAA;CACtC,CAAA;AAE3B,CAAC,GAEY,IAAqB,EAAwF,SAA4B,GAAO,GAAK;CACjK,IAAM,EAAE,cAAW,GAAG,MAAc;CACpC,OAAO,kBAAC,EAAmB,MAApB;EAA8B;EAAK,WAAW,EAA6C,8BAA8B,CAAS;EAAG,GAAI;CAAY,CAAA;AAC7J,CAAC,GAEY,IAAwB,EAA8F,SAA+B,GAAO,GAAK;CAC7K,IAAM,EAAE,cAAW,GAAG,MAAiB;CACvC,OAAO,kBAAC,EAAmB,SAApB;EAAiC;EAAK,WAAW,EAAgD,iCAAiC,CAAS;EAAG,GAAI;CAAe,CAAA;AACzK,CAAC,GAEY,IAAuB,EAAmB,QAE1C,IAA2B,EAAoG,SAAkC,GAAO,GAAK;CACzL,IAAM,EAAE,cAAW,gBAAa,GAAG,GAAG,MAAoB;CAC1D,OACC,kBAAC,EAAmB,YAApB;EACM;EACL,WAAW,EAAmD,oCAAoC,CAAS;EAC/F;EACZ,GAAI;CACJ,CAAA;AAEH,CAAC,GAEY,IAAsB,EAA0F,SAA6B,GAAO,GAAK;CACrK,IAAM,EAAE,cAAW,GAAG,MAAe;CACrC,OAAO,kBAAC,EAAmB,OAApB;EAA+B;EAAK,WAAW,EAA8C,+BAA+B,CAAS;EAAG,GAAI;CAAa,CAAA;AACjK,CAAC,GAEY,IAAyB,EAAgG,SAAgC,GAAO,GAAK;CACjL,IAAM,EAAE,cAAW,GAAG,MAAkB;CACxC,OAAO,kBAAC,EAAmB,UAApB;EAAkC;EAAK,WAAW,EAAiD,kCAAkC,CAAS;EAAG,GAAI;CAAgB,CAAA;AAC7K,CAAC,GAEY,IAAsB,EAA0F,SAA6B,GAAO,GAAK;CACrK,IAAM,EAAE,cAAW,GAAG,MAAe;CACrC,OAAO,kBAAC,EAAmB,OAApB;EAA+B;EAAK,WAAW,EAA8C,+BAA+B,CAAS;EAAG,GAAI;CAAa,CAAA;AACjK,CAAC"}
1
+ {"version":3,"file":"navigation-menu.js","names":[],"sources":["../../../src/components/navigation-data/navigation-menu.tsx"],"sourcesContent":["import { NavigationMenu as BaseNavigationMenu } from \"@base-ui/react/navigation-menu\";\nimport { CaretDownIcon } from \"@phosphor-icons/react/dist/csr/CaretDown\";\nimport { forwardRef, type ComponentRef, type ForwardedRef, type ReactElement, type RefAttributes } from \"react\";\n\nimport { withStateClassName } from \"@/internal\";\nfunction NavigationMenuInner<Value = string>(props: BaseNavigationMenu.Root.Props<Value>, ref: ForwardedRef<HTMLElement>) {\n\tconst { className, ...rootProps } = props;\n\treturn <BaseNavigationMenu.Root ref={ref} className={withStateClassName<BaseNavigationMenu.Root.State>(\"lyds-navigation-menu\", className)} {...rootProps} />;\n}\n\nexport const NavigationMenu = forwardRef(NavigationMenuInner) as <Value = string>(props: BaseNavigationMenu.Root.Props<Value> & RefAttributes<HTMLElement>) => ReactElement;\n\nexport const NavigationMenuList = forwardRef<ComponentRef<typeof BaseNavigationMenu.List>, BaseNavigationMenu.List.Props>(function NavigationMenuList(props, ref) {\n\tconst { className, ...listProps } = props;\n\treturn <BaseNavigationMenu.List ref={ref} className={withStateClassName<BaseNavigationMenu.List.State>(\"lyds-navigation-menu__list\", className)} {...listProps} />;\n});\n\nexport const NavigationMenuItem = BaseNavigationMenu.Item;\n\nexport const NavigationMenuTrigger = forwardRef<ComponentRef<typeof BaseNavigationMenu.Trigger>, BaseNavigationMenu.Trigger.Props>(function NavigationMenuTrigger(props, ref) {\n\tconst { className, ...triggerProps } = props;\n\treturn <BaseNavigationMenu.Trigger ref={ref} className={withStateClassName<BaseNavigationMenu.Trigger.State>(\"lyds-navigation-menu__trigger\", className)} {...triggerProps} />;\n});\n\nexport const NavigationMenuIcon = forwardRef<ComponentRef<typeof BaseNavigationMenu.Icon>, BaseNavigationMenu.Icon.Props>(function NavigationMenuIcon(props, ref) {\n\tconst { className, children, ...iconProps } = props;\n\treturn (\n\t\t<BaseNavigationMenu.Icon ref={ref} className={withStateClassName<BaseNavigationMenu.Icon.State>(\"lyds-navigation-menu__icon\", className)} {...iconProps}>\n\t\t\t{children ?? <CaretDownIcon aria-hidden=\"true\" weight=\"bold\" />}\n\t\t</BaseNavigationMenu.Icon>\n\t);\n});\n\nexport const NavigationMenuLink = forwardRef<ComponentRef<typeof BaseNavigationMenu.Link>, BaseNavigationMenu.Link.Props>(function NavigationMenuLink(props, ref) {\n\tconst { className, ...linkProps } = props;\n\treturn <BaseNavigationMenu.Link ref={ref} className={withStateClassName<BaseNavigationMenu.Link.State>(\"lyds-navigation-menu__link\", className)} {...linkProps} />;\n});\n\nexport const NavigationMenuContent = forwardRef<ComponentRef<typeof BaseNavigationMenu.Content>, BaseNavigationMenu.Content.Props>(function NavigationMenuContent(props, ref) {\n\tconst { className, ...contentProps } = props;\n\treturn <BaseNavigationMenu.Content ref={ref} className={withStateClassName<BaseNavigationMenu.Content.State>(\"lyds-navigation-menu__content\", className)} {...contentProps} />;\n});\n\nexport const NavigationMenuPortal = BaseNavigationMenu.Portal;\n\nexport const NavigationMenuPositioner = forwardRef<ComponentRef<typeof BaseNavigationMenu.Positioner>, BaseNavigationMenu.Positioner.Props>(function NavigationMenuPositioner(props, ref) {\n\tconst { className, sideOffset = 8, ...positionerProps } = props;\n\treturn (\n\t\t<BaseNavigationMenu.Positioner\n\t\t\tref={ref}\n\t\t\tclassName={withStateClassName<BaseNavigationMenu.Positioner.State>(\"lyds-navigation-menu__positioner\", className)}\n\t\t\tsideOffset={sideOffset}\n\t\t\t{...positionerProps}\n\t\t/>\n\t);\n});\n\nexport const NavigationMenuPopup = forwardRef<ComponentRef<typeof BaseNavigationMenu.Popup>, BaseNavigationMenu.Popup.Props>(function NavigationMenuPopup(props, ref) {\n\tconst { className, ...popupProps } = props;\n\treturn <BaseNavigationMenu.Popup ref={ref} className={withStateClassName<BaseNavigationMenu.Popup.State>(\"lyds-navigation-menu__popup\", className)} {...popupProps} />;\n});\n\nexport const NavigationMenuViewport = forwardRef<ComponentRef<typeof BaseNavigationMenu.Viewport>, BaseNavigationMenu.Viewport.Props>(function NavigationMenuViewport(props, ref) {\n\tconst { className, ...viewportProps } = props;\n\treturn <BaseNavigationMenu.Viewport ref={ref} className={withStateClassName<BaseNavigationMenu.Viewport.State>(\"lyds-navigation-menu__viewport\", className)} {...viewportProps} />;\n});\n\nexport const NavigationMenuArrow = forwardRef<ComponentRef<typeof BaseNavigationMenu.Arrow>, BaseNavigationMenu.Arrow.Props>(function NavigationMenuArrow(props, ref) {\n\tconst { className, ...arrowProps } = props;\n\treturn <BaseNavigationMenu.Arrow ref={ref} className={withStateClassName<BaseNavigationMenu.Arrow.State>(\"lyds-navigation-menu__arrow\", className)} {...arrowProps} />;\n});\n"],"mappings":";;;;;;AAKA,SAAS,EAAoC,GAA6C,GAAgC;CACzH,IAAM,EAAE,cAAW,GAAG,MAAc;CACpC,OAAO,kBAAC,EAAmB,MAApB;EAA8B;EAAK,WAAW,EAAkD,wBAAwB,CAAS;EAAG,GAAI;CAAY,CAAA;AAC5J;AAEA,IAAa,IAAiB,EAAW,CAAmB,GAE/C,IAAqB,EAAwF,SAA4B,GAAO,GAAK;CACjK,IAAM,EAAE,cAAW,GAAG,MAAc;CACpC,OAAO,kBAAC,EAAmB,MAApB;EAA8B;EAAK,WAAW,EAAkD,8BAA8B,CAAS;EAAG,GAAI;CAAY,CAAA;AAClK,CAAC,GAEY,IAAqB,EAAmB,MAExC,IAAwB,EAA8F,SAA+B,GAAO,GAAK;CAC7K,IAAM,EAAE,cAAW,GAAG,MAAiB;CACvC,OAAO,kBAAC,EAAmB,SAApB;EAAiC;EAAK,WAAW,EAAqD,iCAAiC,CAAS;EAAG,GAAI;CAAe,CAAA;AAC9K,CAAC,GAEY,IAAqB,EAAwF,SAA4B,GAAO,GAAK;CACjK,IAAM,EAAE,cAAW,aAAU,GAAG,MAAc;CAC9C,OACC,kBAAC,EAAmB,MAApB;EAA8B;EAAK,WAAW,EAAkD,8BAA8B,CAAS;EAAG,GAAI;EAC5I,UAAA,KAAY,kBAAC,GAAD;GAAe,eAAY;GAAO,QAAO;EAAQ,CAAA;CACtC,CAAA;AAE3B,CAAC,GAEY,IAAqB,EAAwF,SAA4B,GAAO,GAAK;CACjK,IAAM,EAAE,cAAW,GAAG,MAAc;CACpC,OAAO,kBAAC,EAAmB,MAApB;EAA8B;EAAK,WAAW,EAAkD,8BAA8B,CAAS;EAAG,GAAI;CAAY,CAAA;AAClK,CAAC,GAEY,IAAwB,EAA8F,SAA+B,GAAO,GAAK;CAC7K,IAAM,EAAE,cAAW,GAAG,MAAiB;CACvC,OAAO,kBAAC,EAAmB,SAApB;EAAiC;EAAK,WAAW,EAAqD,iCAAiC,CAAS;EAAG,GAAI;CAAe,CAAA;AAC9K,CAAC,GAEY,IAAuB,EAAmB,QAE1C,IAA2B,EAAoG,SAAkC,GAAO,GAAK;CACzL,IAAM,EAAE,cAAW,gBAAa,GAAG,GAAG,MAAoB;CAC1D,OACC,kBAAC,EAAmB,YAApB;EACM;EACL,WAAW,EAAwD,oCAAoC,CAAS;EACpG;EACZ,GAAI;CACJ,CAAA;AAEH,CAAC,GAEY,IAAsB,EAA0F,SAA6B,GAAO,GAAK;CACrK,IAAM,EAAE,cAAW,GAAG,MAAe;CACrC,OAAO,kBAAC,EAAmB,OAApB;EAA+B;EAAK,WAAW,EAAmD,+BAA+B,CAAS;EAAG,GAAI;CAAa,CAAA;AACtK,CAAC,GAEY,IAAyB,EAAgG,SAAgC,GAAO,GAAK;CACjL,IAAM,EAAE,cAAW,GAAG,MAAkB;CACxC,OAAO,kBAAC,EAAmB,UAApB;EAAkC;EAAK,WAAW,EAAsD,kCAAkC,CAAS;EAAG,GAAI;CAAgB,CAAA;AAClL,CAAC,GAEY,IAAsB,EAA0F,SAA6B,GAAO,GAAK;CACrK,IAAM,EAAE,cAAW,GAAG,MAAe;CACrC,OAAO,kBAAC,EAAmB,OAApB;EAA+B;EAAK,WAAW,EAAmD,+BAA+B,CAAS;EAAG,GAAI;CAAa,CAAA;AACtK,CAAC"}
@@ -1,4 +1,4 @@
1
- import { withBaseClass as e } from "./utils.js";
1
+ import { withStateClassName as e } from "../../internal/class-names.js";
2
2
  import { forwardRef as t } from "react";
3
3
  import { jsx as n } from "react/jsx-runtime";
4
4
  import { ScrollArea as r } from "@base-ui/react/scroll-area";
@@ -1 +1 @@
1
- {"version":3,"file":"scroll-area.js","names":[],"sources":["../../../src/components/navigation-data/scroll-area.tsx"],"sourcesContent":["import { ScrollArea as BaseScrollArea } from \"@base-ui/react/scroll-area\";\nimport { forwardRef, type ComponentRef } from \"react\";\n\nimport { withBaseClass } from \"./utils.js\";\n\nexport const ScrollArea = forwardRef<ComponentRef<typeof BaseScrollArea.Root>, BaseScrollArea.Root.Props>(function ScrollArea(props, ref) {\n\tconst { className, ...rootProps } = props;\n\treturn <BaseScrollArea.Root ref={ref} className={withBaseClass<BaseScrollArea.Root.State>(\"lyds-scroll-area\", className)} {...rootProps} />;\n});\n\nexport const ScrollAreaViewport = forwardRef<ComponentRef<typeof BaseScrollArea.Viewport>, BaseScrollArea.Viewport.Props>(function ScrollAreaViewport(props, ref) {\n\tconst { className, ...viewportProps } = props;\n\treturn <BaseScrollArea.Viewport ref={ref} className={withBaseClass<BaseScrollArea.Viewport.State>(\"lyds-scroll-area__viewport\", className)} {...viewportProps} />;\n});\n\nexport const ScrollAreaContent = forwardRef<ComponentRef<typeof BaseScrollArea.Content>, BaseScrollArea.Content.Props>(function ScrollAreaContent(props, ref) {\n\tconst { className, ...contentProps } = props;\n\treturn <BaseScrollArea.Content ref={ref} className={withBaseClass<BaseScrollArea.Content.State>(\"lyds-scroll-area__content\", className)} {...contentProps} />;\n});\n\nexport const ScrollAreaScrollbar = forwardRef<ComponentRef<typeof BaseScrollArea.Scrollbar>, BaseScrollArea.Scrollbar.Props>(function ScrollAreaScrollbar(props, ref) {\n\tconst { className, ...scrollbarProps } = props;\n\treturn <BaseScrollArea.Scrollbar ref={ref} className={withBaseClass<BaseScrollArea.Scrollbar.State>(\"lyds-scroll-area__scrollbar\", className)} {...scrollbarProps} />;\n});\n\nexport const ScrollAreaThumb = forwardRef<ComponentRef<typeof BaseScrollArea.Thumb>, BaseScrollArea.Thumb.Props>(function ScrollAreaThumb(props, ref) {\n\tconst { className, ...thumbProps } = props;\n\treturn <BaseScrollArea.Thumb ref={ref} className={withBaseClass<BaseScrollArea.Thumb.State>(\"lyds-scroll-area__thumb\", className)} {...thumbProps} />;\n});\n\nexport const ScrollAreaCorner = forwardRef<ComponentRef<typeof BaseScrollArea.Corner>, BaseScrollArea.Corner.Props>(function ScrollAreaCorner(props, ref) {\n\tconst { className, ...cornerProps } = props;\n\treturn <BaseScrollArea.Corner ref={ref} className={withBaseClass<BaseScrollArea.Corner.State>(\"lyds-scroll-area__corner\", className)} {...cornerProps} />;\n});\n"],"mappings":";;;;;AAKA,IAAa,IAAa,EAAgF,SAAoB,GAAO,GAAK;CACzI,IAAM,EAAE,cAAW,GAAG,MAAc;CACpC,OAAO,kBAAC,EAAe,MAAhB;EAA0B;EAAK,WAAW,EAAyC,oBAAoB,CAAS;EAAG,GAAI;CAAY,CAAA;AAC3I,CAAC,GAEY,IAAqB,EAAwF,SAA4B,GAAO,GAAK;CACjK,IAAM,EAAE,cAAW,GAAG,MAAkB;CACxC,OAAO,kBAAC,EAAe,UAAhB;EAA8B;EAAK,WAAW,EAA6C,8BAA8B,CAAS;EAAG,GAAI;CAAgB,CAAA;AACjK,CAAC,GAEY,IAAoB,EAAsF,SAA2B,GAAO,GAAK;CAC7J,IAAM,EAAE,cAAW,GAAG,MAAiB;CACvC,OAAO,kBAAC,EAAe,SAAhB;EAA6B;EAAK,WAAW,EAA4C,6BAA6B,CAAS;EAAG,GAAI;CAAe,CAAA;AAC7J,CAAC,GAEY,IAAsB,EAA0F,SAA6B,GAAO,GAAK;CACrK,IAAM,EAAE,cAAW,GAAG,MAAmB;CACzC,OAAO,kBAAC,EAAe,WAAhB;EAA+B;EAAK,WAAW,EAA8C,+BAA+B,CAAS;EAAG,GAAI;CAAiB,CAAA;AACrK,CAAC,GAEY,IAAkB,EAAkF,SAAyB,GAAO,GAAK;CACrJ,IAAM,EAAE,cAAW,GAAG,MAAe;CACrC,OAAO,kBAAC,EAAe,OAAhB;EAA2B;EAAK,WAAW,EAA0C,2BAA2B,CAAS;EAAG,GAAI;CAAa,CAAA;AACrJ,CAAC,GAEY,IAAmB,EAAoF,SAA0B,GAAO,GAAK;CACzJ,IAAM,EAAE,cAAW,GAAG,MAAgB;CACtC,OAAO,kBAAC,EAAe,QAAhB;EAA4B;EAAK,WAAW,EAA2C,4BAA4B,CAAS;EAAG,GAAI;CAAc,CAAA;AACzJ,CAAC"}
1
+ {"version":3,"file":"scroll-area.js","names":[],"sources":["../../../src/components/navigation-data/scroll-area.tsx"],"sourcesContent":["import { ScrollArea as BaseScrollArea } from \"@base-ui/react/scroll-area\";\nimport { forwardRef, type ComponentRef } from \"react\";\n\nimport { withStateClassName } from \"@/internal\";\nexport const ScrollArea = forwardRef<ComponentRef<typeof BaseScrollArea.Root>, BaseScrollArea.Root.Props>(function ScrollArea(props, ref) {\n\tconst { className, ...rootProps } = props;\n\treturn <BaseScrollArea.Root ref={ref} className={withStateClassName<BaseScrollArea.Root.State>(\"lyds-scroll-area\", className)} {...rootProps} />;\n});\n\nexport const ScrollAreaViewport = forwardRef<ComponentRef<typeof BaseScrollArea.Viewport>, BaseScrollArea.Viewport.Props>(function ScrollAreaViewport(props, ref) {\n\tconst { className, ...viewportProps } = props;\n\treturn <BaseScrollArea.Viewport ref={ref} className={withStateClassName<BaseScrollArea.Viewport.State>(\"lyds-scroll-area__viewport\", className)} {...viewportProps} />;\n});\n\nexport const ScrollAreaContent = forwardRef<ComponentRef<typeof BaseScrollArea.Content>, BaseScrollArea.Content.Props>(function ScrollAreaContent(props, ref) {\n\tconst { className, ...contentProps } = props;\n\treturn <BaseScrollArea.Content ref={ref} className={withStateClassName<BaseScrollArea.Content.State>(\"lyds-scroll-area__content\", className)} {...contentProps} />;\n});\n\nexport const ScrollAreaScrollbar = forwardRef<ComponentRef<typeof BaseScrollArea.Scrollbar>, BaseScrollArea.Scrollbar.Props>(function ScrollAreaScrollbar(props, ref) {\n\tconst { className, ...scrollbarProps } = props;\n\treturn <BaseScrollArea.Scrollbar ref={ref} className={withStateClassName<BaseScrollArea.Scrollbar.State>(\"lyds-scroll-area__scrollbar\", className)} {...scrollbarProps} />;\n});\n\nexport const ScrollAreaThumb = forwardRef<ComponentRef<typeof BaseScrollArea.Thumb>, BaseScrollArea.Thumb.Props>(function ScrollAreaThumb(props, ref) {\n\tconst { className, ...thumbProps } = props;\n\treturn <BaseScrollArea.Thumb ref={ref} className={withStateClassName<BaseScrollArea.Thumb.State>(\"lyds-scroll-area__thumb\", className)} {...thumbProps} />;\n});\n\nexport const ScrollAreaCorner = forwardRef<ComponentRef<typeof BaseScrollArea.Corner>, BaseScrollArea.Corner.Props>(function ScrollAreaCorner(props, ref) {\n\tconst { className, ...cornerProps } = props;\n\treturn <BaseScrollArea.Corner ref={ref} className={withStateClassName<BaseScrollArea.Corner.State>(\"lyds-scroll-area__corner\", className)} {...cornerProps} />;\n});\n"],"mappings":";;;;;AAIA,IAAa,IAAa,EAAgF,SAAoB,GAAO,GAAK;CACzI,IAAM,EAAE,cAAW,GAAG,MAAc;CACpC,OAAO,kBAAC,EAAe,MAAhB;EAA0B;EAAK,WAAW,EAA8C,oBAAoB,CAAS;EAAG,GAAI;CAAY,CAAA;AAChJ,CAAC,GAEY,IAAqB,EAAwF,SAA4B,GAAO,GAAK;CACjK,IAAM,EAAE,cAAW,GAAG,MAAkB;CACxC,OAAO,kBAAC,EAAe,UAAhB;EAA8B;EAAK,WAAW,EAAkD,8BAA8B,CAAS;EAAG,GAAI;CAAgB,CAAA;AACtK,CAAC,GAEY,IAAoB,EAAsF,SAA2B,GAAO,GAAK;CAC7J,IAAM,EAAE,cAAW,GAAG,MAAiB;CACvC,OAAO,kBAAC,EAAe,SAAhB;EAA6B;EAAK,WAAW,EAAiD,6BAA6B,CAAS;EAAG,GAAI;CAAe,CAAA;AAClK,CAAC,GAEY,IAAsB,EAA0F,SAA6B,GAAO,GAAK;CACrK,IAAM,EAAE,cAAW,GAAG,MAAmB;CACzC,OAAO,kBAAC,EAAe,WAAhB;EAA+B;EAAK,WAAW,EAAmD,+BAA+B,CAAS;EAAG,GAAI;CAAiB,CAAA;AAC1K,CAAC,GAEY,IAAkB,EAAkF,SAAyB,GAAO,GAAK;CACrJ,IAAM,EAAE,cAAW,GAAG,MAAe;CACrC,OAAO,kBAAC,EAAe,OAAhB;EAA2B;EAAK,WAAW,EAA+C,2BAA2B,CAAS;EAAG,GAAI;CAAa,CAAA;AAC1J,CAAC,GAEY,IAAmB,EAAoF,SAA0B,GAAO,GAAK;CACzJ,IAAM,EAAE,cAAW,GAAG,MAAgB;CACtC,OAAO,kBAAC,EAAe,QAAhB;EAA4B;EAAK,WAAW,EAAgD,4BAA4B,CAAS;EAAG,GAAI;CAAc,CAAA;AAC9J,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { AnchorHTMLAttributes, ButtonHTMLAttributes, HTMLAttributes, LiHTMLAttributes, OlHTMLAttributes, TableHTMLAttributes, TdHTMLAttributes, ThHTMLAttributes } from 'react';
2
+ import { HeadingLevel } from '../foundations/section-heading.js';
2
3
  export declare const TableFrame: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import('react').RefAttributes<HTMLDivElement>>;
3
4
  export declare const Table: import('react').ForwardRefExoticComponent<TableHTMLAttributes<HTMLTableElement> & import('react').RefAttributes<HTMLTableElement>>;
4
5
  export declare const TableCaption: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLTableCaptionElement> & import('react').RefAttributes<HTMLTableCaptionElement>>;
@@ -18,7 +19,11 @@ export declare const TableCell: import('react').ForwardRefExoticComponent<TableC
18
19
  /** 純呈現用結構。資料擷取、排序、篩選與分頁由使用端負責。 */
19
20
  export declare const DataTable: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLElement> & import('react').RefAttributes<HTMLElement>>;
20
21
  export declare const DataTableHeader: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import('react').RefAttributes<HTMLDivElement>>;
21
- export declare const DataTableTitle: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLHeadingElement> & import('react').RefAttributes<HTMLHeadingElement>>;
22
+ export interface DataTableTitleProps extends HTMLAttributes<HTMLHeadingElement> {
23
+ /** Heading level for the surrounding document outline. */
24
+ level?: HeadingLevel;
25
+ }
26
+ export declare const DataTableTitle: import('react').ForwardRefExoticComponent<DataTableTitleProps & import('react').RefAttributes<HTMLHeadingElement>>;
22
27
  export declare const DataTableDescription: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLParagraphElement> & import('react').RefAttributes<HTMLParagraphElement>>;
23
28
  export declare const DataTableControls: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import('react').RefAttributes<HTMLDivElement>>;
24
29
  export interface DataTableRegionProps extends HTMLAttributes<HTMLDivElement> {
@@ -37,7 +42,11 @@ export declare const OrderedCollection: import('react').ForwardRefExoticComponen
37
42
  export type CollectionItemProps = LiHTMLAttributes<HTMLLIElement>;
38
43
  export declare const CollectionItem: import('react').ForwardRefExoticComponent<CollectionItemProps & import('react').RefAttributes<HTMLLIElement>>;
39
44
  export declare const CollectionContent: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import('react').RefAttributes<HTMLDivElement>>;
40
- export declare const CollectionHeading: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLHeadingElement> & import('react').RefAttributes<HTMLHeadingElement>>;
45
+ export interface CollectionHeadingProps extends HTMLAttributes<HTMLHeadingElement> {
46
+ /** Heading level for the surrounding document outline. */
47
+ level?: HeadingLevel;
48
+ }
49
+ export declare const CollectionHeading: import('react').ForwardRefExoticComponent<CollectionHeadingProps & import('react').RefAttributes<HTMLHeadingElement>>;
41
50
  export declare const CollectionDescription: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLParagraphElement> & import('react').RefAttributes<HTMLParagraphElement>>;
42
51
  export declare const CollectionMeta: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import('react').RefAttributes<HTMLDivElement>>;
43
52
  export declare const CollectionActions: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import('react').RefAttributes<HTMLDivElement>>;
@@ -53,7 +62,7 @@ export declare const List: import('react').ForwardRefExoticComponent<CollectionP
53
62
  export declare const OrderedList: import('react').ForwardRefExoticComponent<OrderedCollectionProps & import('react').RefAttributes<HTMLOListElement>>;
54
63
  export declare const ListItem: import('react').ForwardRefExoticComponent<CollectionItemProps & import('react').RefAttributes<HTMLLIElement>>;
55
64
  export declare const ListContent: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import('react').RefAttributes<HTMLDivElement>>;
56
- export declare const ListHeading: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLHeadingElement> & import('react').RefAttributes<HTMLHeadingElement>>;
65
+ export declare const ListHeading: import('react').ForwardRefExoticComponent<CollectionHeadingProps & import('react').RefAttributes<HTMLHeadingElement>>;
57
66
  export declare const ListDescription: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLParagraphElement> & import('react').RefAttributes<HTMLParagraphElement>>;
58
67
  export declare const ListMeta: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import('react').RefAttributes<HTMLDivElement>>;
59
68
  export declare const ListActions: import('react').ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import('react').RefAttributes<HTMLDivElement>>;
@@ -1,4 +1,4 @@
1
- import { cx as e } from "./utils.js";
1
+ import { cx as e } from "../../internal/class-names.js";
2
2
  import { forwardRef as t } from "react";
3
3
  import { jsx as n } from "react/jsx-runtime";
4
4
  //#region src/components/navigation-data/table-collection.tsx
@@ -72,11 +72,12 @@ var r = t(function({ className: t, ...r }, i) {
72
72
  className: e("lyds-data-table__header", t),
73
73
  ...r
74
74
  });
75
- }), m = t(function({ children: t, className: r, ...i }, a) {
76
- return /* @__PURE__ */ n("h2", {
77
- ref: a,
75
+ }), m = t(function({ children: t, className: r, level: i = 2, ...a }, o) {
76
+ let s = `h${i}`;
77
+ return /* @__PURE__ */ n(s, {
78
+ ref: o,
78
79
  className: e("lyds-data-table__title", r),
79
- ...i,
80
+ ...a,
80
81
  children: t
81
82
  });
82
83
  }), h = t(function({ className: t, ...r }, i) {
@@ -131,11 +132,12 @@ var r = t(function({ className: t, ...r }, i) {
131
132
  className: e("lyds-collection__content", t),
132
133
  ...r
133
134
  });
134
- }), C = t(function({ children: t, className: r, ...i }, a) {
135
- return /* @__PURE__ */ n("h3", {
136
- ref: a,
135
+ }), C = t(function({ children: t, className: r, level: i = 3, ...a }, o) {
136
+ let s = `h${i}`;
137
+ return /* @__PURE__ */ n(s, {
138
+ ref: o,
137
139
  className: e("lyds-collection__heading", r),
138
- ...i,
140
+ ...a,
139
141
  children: t
140
142
  });
141
143
  }), w = t(function({ className: t, ...r }, i) {
@@ -1 +1 @@
1
- {"version":3,"file":"table-collection.js","names":[],"sources":["../../../src/components/navigation-data/table-collection.tsx"],"sourcesContent":["import {\n\tforwardRef,\n\ttype AnchorHTMLAttributes,\n\ttype ButtonHTMLAttributes,\n\ttype HTMLAttributes,\n\ttype LiHTMLAttributes,\n\ttype OlHTMLAttributes,\n\ttype TableHTMLAttributes,\n\ttype TdHTMLAttributes,\n\ttype ThHTMLAttributes\n} from \"react\";\n\nimport { cx } from \"./utils.js\";\n\nexport const TableFrame = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function TableFrame({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-table-frame\", className)} {...props} />;\n});\n\nexport const Table = forwardRef<HTMLTableElement, TableHTMLAttributes<HTMLTableElement>>(function Table({ className, ...props }, ref) {\n\treturn <table ref={ref} className={cx(\"lyds-table\", className)} {...props} />;\n});\n\nexport const TableCaption = forwardRef<HTMLTableCaptionElement, HTMLAttributes<HTMLTableCaptionElement>>(function TableCaption({ className, ...props }, ref) {\n\treturn <caption ref={ref} className={cx(\"lyds-table__caption\", className)} {...props} />;\n});\n\nexport const TableHeader = forwardRef<HTMLTableSectionElement, HTMLAttributes<HTMLTableSectionElement>>(function TableHeader({ className, ...props }, ref) {\n\treturn <thead ref={ref} className={cx(\"lyds-table__header\", className)} {...props} />;\n});\n\nexport const TableBody = forwardRef<HTMLTableSectionElement, HTMLAttributes<HTMLTableSectionElement>>(function TableBody({ className, ...props }, ref) {\n\treturn <tbody ref={ref} className={cx(\"lyds-table__body\", className)} {...props} />;\n});\n\nexport const TableFooter = forwardRef<HTMLTableSectionElement, HTMLAttributes<HTMLTableSectionElement>>(function TableFooter({ className, ...props }, ref) {\n\treturn <tfoot ref={ref} className={cx(\"lyds-table__footer\", className)} {...props} />;\n});\n\nexport const TableRow = forwardRef<HTMLTableRowElement, HTMLAttributes<HTMLTableRowElement>>(function TableRow({ className, ...props }, ref) {\n\treturn <tr ref={ref} className={cx(\"lyds-table__row\", className)} {...props} />;\n});\n\nexport interface TableHeadProps extends ThHTMLAttributes<HTMLTableCellElement> {\n\ttextAlign?: \"start\" | \"center\" | \"end\";\n}\n\nexport const TableHead = forwardRef<HTMLTableCellElement, TableHeadProps>(function TableHead({ className, scope = \"col\", textAlign = \"start\", ...props }, ref) {\n\treturn <th ref={ref} className={cx(\"lyds-table__head\", className)} data-align={textAlign} scope={scope} {...props} />;\n});\n\nexport interface TableCellProps extends TdHTMLAttributes<HTMLTableCellElement> {\n\ttextAlign?: \"start\" | \"center\" | \"end\";\n\tnumeric?: boolean;\n}\n\nexport const TableCell = forwardRef<HTMLTableCellElement, TableCellProps>(function TableCell({ className, textAlign = \"start\", numeric = false, ...props }, ref) {\n\treturn <td ref={ref} className={cx(\"lyds-table__cell\", className)} data-align={textAlign} data-numeric={numeric ? \"\" : undefined} {...props} />;\n});\n\n/** 純呈現用結構。資料擷取、排序、篩選與分頁由使用端負責。 */\nexport const DataTable = forwardRef<HTMLElement, HTMLAttributes<HTMLElement>>(function DataTable({ className, ...props }, ref) {\n\treturn <section ref={ref} className={cx(\"lyds-data-table\", className)} {...props} />;\n});\n\nexport const DataTableHeader = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function DataTableHeader({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-data-table__header\", className)} {...props} />;\n});\n\nexport const DataTableTitle = forwardRef<HTMLHeadingElement, HTMLAttributes<HTMLHeadingElement>>(function DataTableTitle({ children, className, ...props }, ref) {\n\treturn (\n\t\t<h2 ref={ref} className={cx(\"lyds-data-table__title\", className)} {...props}>\n\t\t\t{children}\n\t\t</h2>\n\t);\n});\n\nexport const DataTableDescription = forwardRef<HTMLParagraphElement, HTMLAttributes<HTMLParagraphElement>>(function DataTableDescription({ className, ...props }, ref) {\n\treturn <p ref={ref} className={cx(\"lyds-data-table__description\", className)} {...props} />;\n});\n\nexport const DataTableControls = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function DataTableControls({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-data-table__controls\", className)} {...props} />;\n});\n\nexport interface DataTableRegionProps extends HTMLAttributes<HTMLDivElement> {\n\tlabel?: string;\n}\n\nexport const DataTableRegion = forwardRef<HTMLDivElement, DataTableRegionProps>(function DataTableRegion({ className, label, ...props }, ref) {\n\treturn <div ref={ref} aria-label={label} className={cx(\"lyds-data-table__region\", className)} role={label ? \"region\" : undefined} {...props} />;\n});\n\nexport const DataTableStatus = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function DataTableStatus({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-data-table__status\", className)} {...props} />;\n});\n\nexport interface CollectionProps extends HTMLAttributes<HTMLUListElement> {\n\tdensity?: \"comfortable\" | \"compact\";\n}\n\nexport const Collection = forwardRef<HTMLUListElement, CollectionProps>(function Collection({ className, density = \"comfortable\", ...props }, ref) {\n\treturn <ul ref={ref} className={cx(\"lyds-collection\", className)} data-density={density} {...props} />;\n});\n\nexport interface OrderedCollectionProps extends OlHTMLAttributes<HTMLOListElement> {\n\tdensity?: \"comfortable\" | \"compact\";\n}\n\nexport const OrderedCollection = forwardRef<HTMLOListElement, OrderedCollectionProps>(function OrderedCollection({ className, density = \"comfortable\", ...props }, ref) {\n\treturn <ol ref={ref} className={cx(\"lyds-collection\", className)} data-density={density} {...props} />;\n});\n\nexport type CollectionItemProps = LiHTMLAttributes<HTMLLIElement>;\n\nexport const CollectionItem = forwardRef<HTMLLIElement, CollectionItemProps>(function CollectionItem({ className, ...props }, ref) {\n\treturn <li ref={ref} className={cx(\"lyds-collection__item\", className)} {...props} />;\n});\n\nexport const CollectionContent = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function CollectionContent({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-collection__content\", className)} {...props} />;\n});\n\nexport const CollectionHeading = forwardRef<HTMLHeadingElement, HTMLAttributes<HTMLHeadingElement>>(function CollectionHeading({ children, className, ...props }, ref) {\n\treturn (\n\t\t<h3 ref={ref} className={cx(\"lyds-collection__heading\", className)} {...props}>\n\t\t\t{children}\n\t\t</h3>\n\t);\n});\n\nexport const CollectionDescription = forwardRef<HTMLParagraphElement, HTMLAttributes<HTMLParagraphElement>>(function CollectionDescription({ className, ...props }, ref) {\n\treturn <p ref={ref} className={cx(\"lyds-collection__description\", className)} {...props} />;\n});\n\nexport const CollectionMeta = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function CollectionMeta({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-collection__meta\", className)} {...props} />;\n});\n\nexport const CollectionActions = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function CollectionActions({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-collection__actions\", className)} {...props} />;\n});\n\nexport interface CollectionLinkProps extends AnchorHTMLAttributes<HTMLAnchorElement> {\n\tselected?: boolean;\n}\n\nexport const CollectionLink = forwardRef<HTMLAnchorElement, CollectionLinkProps>(function CollectionLink({ children, className, selected = false, ...props }, ref) {\n\treturn (\n\t\t<a ref={ref} aria-current={selected ? \"page\" : undefined} className={cx(\"lyds-collection__interactive\", className)} data-selected={selected ? \"\" : undefined} {...props}>\n\t\t\t{children}\n\t\t</a>\n\t);\n});\n\nexport interface CollectionButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {\n\tselected?: boolean;\n}\n\nexport const CollectionButton = forwardRef<HTMLButtonElement, CollectionButtonProps>(function CollectionButton({ className, selected = false, type = \"button\", ...props }, ref) {\n\treturn <button ref={ref} aria-pressed={selected} className={cx(\"lyds-collection__interactive\", className)} data-selected={selected ? \"\" : undefined} type={type} {...props} />;\n});\n\nexport const List = Collection;\nexport const OrderedList = OrderedCollection;\nexport const ListItem = CollectionItem;\nexport const ListContent = CollectionContent;\nexport const ListHeading = CollectionHeading;\nexport const ListDescription = CollectionDescription;\nexport const ListMeta = CollectionMeta;\nexport const ListActions = CollectionActions;\nexport const ListLink = CollectionLink;\nexport const ListButton = CollectionButton;\n"],"mappings":"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"}
1
+ {"version":3,"file":"table-collection.js","names":[],"sources":["../../../src/components/navigation-data/table-collection.tsx"],"sourcesContent":["import {\n\tforwardRef,\n\ttype AnchorHTMLAttributes,\n\ttype ButtonHTMLAttributes,\n\ttype HTMLAttributes,\n\ttype LiHTMLAttributes,\n\ttype OlHTMLAttributes,\n\ttype TableHTMLAttributes,\n\ttype TdHTMLAttributes,\n\ttype ThHTMLAttributes\n} from \"react\";\n\nimport type { HeadingLevel } from \"@/components/foundations/section-heading\";\nimport { cx } from \"@/internal\";\nexport const TableFrame = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function TableFrame({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-table-frame\", className)} {...props} />;\n});\n\nexport const Table = forwardRef<HTMLTableElement, TableHTMLAttributes<HTMLTableElement>>(function Table({ className, ...props }, ref) {\n\treturn <table ref={ref} className={cx(\"lyds-table\", className)} {...props} />;\n});\n\nexport const TableCaption = forwardRef<HTMLTableCaptionElement, HTMLAttributes<HTMLTableCaptionElement>>(function TableCaption({ className, ...props }, ref) {\n\treturn <caption ref={ref} className={cx(\"lyds-table__caption\", className)} {...props} />;\n});\n\nexport const TableHeader = forwardRef<HTMLTableSectionElement, HTMLAttributes<HTMLTableSectionElement>>(function TableHeader({ className, ...props }, ref) {\n\treturn <thead ref={ref} className={cx(\"lyds-table__header\", className)} {...props} />;\n});\n\nexport const TableBody = forwardRef<HTMLTableSectionElement, HTMLAttributes<HTMLTableSectionElement>>(function TableBody({ className, ...props }, ref) {\n\treturn <tbody ref={ref} className={cx(\"lyds-table__body\", className)} {...props} />;\n});\n\nexport const TableFooter = forwardRef<HTMLTableSectionElement, HTMLAttributes<HTMLTableSectionElement>>(function TableFooter({ className, ...props }, ref) {\n\treturn <tfoot ref={ref} className={cx(\"lyds-table__footer\", className)} {...props} />;\n});\n\nexport const TableRow = forwardRef<HTMLTableRowElement, HTMLAttributes<HTMLTableRowElement>>(function TableRow({ className, ...props }, ref) {\n\treturn <tr ref={ref} className={cx(\"lyds-table__row\", className)} {...props} />;\n});\n\nexport interface TableHeadProps extends ThHTMLAttributes<HTMLTableCellElement> {\n\ttextAlign?: \"start\" | \"center\" | \"end\";\n}\n\nexport const TableHead = forwardRef<HTMLTableCellElement, TableHeadProps>(function TableHead({ className, scope = \"col\", textAlign = \"start\", ...props }, ref) {\n\treturn <th ref={ref} className={cx(\"lyds-table__head\", className)} data-align={textAlign} scope={scope} {...props} />;\n});\n\nexport interface TableCellProps extends TdHTMLAttributes<HTMLTableCellElement> {\n\ttextAlign?: \"start\" | \"center\" | \"end\";\n\tnumeric?: boolean;\n}\n\nexport const TableCell = forwardRef<HTMLTableCellElement, TableCellProps>(function TableCell({ className, textAlign = \"start\", numeric = false, ...props }, ref) {\n\treturn <td ref={ref} className={cx(\"lyds-table__cell\", className)} data-align={textAlign} data-numeric={numeric ? \"\" : undefined} {...props} />;\n});\n\n/** 純呈現用結構。資料擷取、排序、篩選與分頁由使用端負責。 */\nexport const DataTable = forwardRef<HTMLElement, HTMLAttributes<HTMLElement>>(function DataTable({ className, ...props }, ref) {\n\treturn <section ref={ref} className={cx(\"lyds-data-table\", className)} {...props} />;\n});\n\nexport const DataTableHeader = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function DataTableHeader({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-data-table__header\", className)} {...props} />;\n});\n\nexport interface DataTableTitleProps extends HTMLAttributes<HTMLHeadingElement> {\n\t/** Heading level for the surrounding document outline. */\n\tlevel?: HeadingLevel;\n}\n\nexport const DataTableTitle = forwardRef<HTMLHeadingElement, DataTableTitleProps>(function DataTableTitle({ children, className, level = 2, ...props }, ref) {\n\tconst Heading = `h${level}` as const;\n\treturn (\n\t\t<Heading ref={ref} className={cx(\"lyds-data-table__title\", className)} {...props}>\n\t\t\t{children}\n\t\t</Heading>\n\t);\n});\n\nexport const DataTableDescription = forwardRef<HTMLParagraphElement, HTMLAttributes<HTMLParagraphElement>>(function DataTableDescription({ className, ...props }, ref) {\n\treturn <p ref={ref} className={cx(\"lyds-data-table__description\", className)} {...props} />;\n});\n\nexport const DataTableControls = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function DataTableControls({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-data-table__controls\", className)} {...props} />;\n});\n\nexport interface DataTableRegionProps extends HTMLAttributes<HTMLDivElement> {\n\tlabel?: string;\n}\n\nexport const DataTableRegion = forwardRef<HTMLDivElement, DataTableRegionProps>(function DataTableRegion({ className, label, ...props }, ref) {\n\treturn <div ref={ref} aria-label={label} className={cx(\"lyds-data-table__region\", className)} role={label ? \"region\" : undefined} {...props} />;\n});\n\nexport const DataTableStatus = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function DataTableStatus({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-data-table__status\", className)} {...props} />;\n});\n\nexport interface CollectionProps extends HTMLAttributes<HTMLUListElement> {\n\tdensity?: \"comfortable\" | \"compact\";\n}\n\nexport const Collection = forwardRef<HTMLUListElement, CollectionProps>(function Collection({ className, density = \"comfortable\", ...props }, ref) {\n\treturn <ul ref={ref} className={cx(\"lyds-collection\", className)} data-density={density} {...props} />;\n});\n\nexport interface OrderedCollectionProps extends OlHTMLAttributes<HTMLOListElement> {\n\tdensity?: \"comfortable\" | \"compact\";\n}\n\nexport const OrderedCollection = forwardRef<HTMLOListElement, OrderedCollectionProps>(function OrderedCollection({ className, density = \"comfortable\", ...props }, ref) {\n\treturn <ol ref={ref} className={cx(\"lyds-collection\", className)} data-density={density} {...props} />;\n});\n\nexport type CollectionItemProps = LiHTMLAttributes<HTMLLIElement>;\n\nexport const CollectionItem = forwardRef<HTMLLIElement, CollectionItemProps>(function CollectionItem({ className, ...props }, ref) {\n\treturn <li ref={ref} className={cx(\"lyds-collection__item\", className)} {...props} />;\n});\n\nexport const CollectionContent = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function CollectionContent({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-collection__content\", className)} {...props} />;\n});\n\nexport interface CollectionHeadingProps extends HTMLAttributes<HTMLHeadingElement> {\n\t/** Heading level for the surrounding document outline. */\n\tlevel?: HeadingLevel;\n}\n\nexport const CollectionHeading = forwardRef<HTMLHeadingElement, CollectionHeadingProps>(function CollectionHeading({ children, className, level = 3, ...props }, ref) {\n\tconst Heading = `h${level}` as const;\n\treturn (\n\t\t<Heading ref={ref} className={cx(\"lyds-collection__heading\", className)} {...props}>\n\t\t\t{children}\n\t\t</Heading>\n\t);\n});\n\nexport const CollectionDescription = forwardRef<HTMLParagraphElement, HTMLAttributes<HTMLParagraphElement>>(function CollectionDescription({ className, ...props }, ref) {\n\treturn <p ref={ref} className={cx(\"lyds-collection__description\", className)} {...props} />;\n});\n\nexport const CollectionMeta = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function CollectionMeta({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-collection__meta\", className)} {...props} />;\n});\n\nexport const CollectionActions = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(function CollectionActions({ className, ...props }, ref) {\n\treturn <div ref={ref} className={cx(\"lyds-collection__actions\", className)} {...props} />;\n});\n\nexport interface CollectionLinkProps extends AnchorHTMLAttributes<HTMLAnchorElement> {\n\tselected?: boolean;\n}\n\nexport const CollectionLink = forwardRef<HTMLAnchorElement, CollectionLinkProps>(function CollectionLink({ children, className, selected = false, ...props }, ref) {\n\treturn (\n\t\t<a ref={ref} aria-current={selected ? \"page\" : undefined} className={cx(\"lyds-collection__interactive\", className)} data-selected={selected ? \"\" : undefined} {...props}>\n\t\t\t{children}\n\t\t</a>\n\t);\n});\n\nexport interface CollectionButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {\n\tselected?: boolean;\n}\n\nexport const CollectionButton = forwardRef<HTMLButtonElement, CollectionButtonProps>(function CollectionButton({ className, selected = false, type = \"button\", ...props }, ref) {\n\treturn <button ref={ref} aria-pressed={selected} className={cx(\"lyds-collection__interactive\", className)} data-selected={selected ? \"\" : undefined} type={type} {...props} />;\n});\n\nexport const List = Collection;\nexport const OrderedList = OrderedCollection;\nexport const ListItem = CollectionItem;\nexport const ListContent = CollectionContent;\nexport const ListHeading = CollectionHeading;\nexport const ListDescription = CollectionDescription;\nexport const ListMeta = CollectionMeta;\nexport const ListActions = CollectionActions;\nexport const ListLink = CollectionLink;\nexport const ListButton = CollectionButton;\n"],"mappings":"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"}
@@ -13,7 +13,11 @@ export interface DialogPopupProps extends BaseDialogPopupProps {
13
13
  closeLabel?: string;
14
14
  /** 傳給內建關閉控制項的屬性。 */
15
15
  closeProps?: Omit<DialogCloseProps, "children">;
16
- /** 僅在彈出內容另有可存取的 Dialog.Close 時設定。 */
16
+ /** Renders the built-in corner close control. */
17
+ closeButton?: boolean;
18
+ /**
19
+ * @deprecated Pass `closeButton={false}` instead. Kept so existing call sites keep working.
20
+ */
17
21
  hasCustomClose?: boolean;
18
22
  }
19
23
  export declare const DialogPopup: import('react').ForwardRefExoticComponent<Omit<DialogPopupProps, "ref"> & RefAttributes<HTMLDivElement>>;
@@ -70,7 +74,14 @@ export interface AlertDialogPopupProps extends BaseDialogPopupProps {
70
74
  closeLabel?: string;
71
75
  /** 傳給內建取消/關閉控制項的屬性。 */
72
76
  closeProps?: Omit<DialogCloseProps, "children">;
73
- /** 僅在彈出內容另有可存取的 AlertDialog.Close 時設定。 */
77
+ /**
78
+ * Renders the built-in corner close control. An alert dialog asks for a deliberate choice, so
79
+ * this defaults to `false` and the popup should carry its own confirm and cancel actions.
80
+ */
81
+ closeButton?: boolean;
82
+ /**
83
+ * @deprecated Pass `closeButton` instead. Kept so existing call sites keep working.
84
+ */
74
85
  hasCustomClose?: boolean;
75
86
  }
76
87
  export declare const AlertDialogPopup: import('react').ForwardRefExoticComponent<Omit<AlertDialogPopupProps, "ref"> & RefAttributes<HTMLDivElement>>;
@@ -1,158 +1,163 @@
1
- import { mergeClassName as e } from "./class-names.js";
2
- import { forwardRef as t } from "react";
3
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
4
- import { XIcon as i } from "@phosphor-icons/react/dist/csr/X";
5
- import { Dialog as a } from "@base-ui/react/dialog";
6
- import { AlertDialog as o } from "@base-ui/react/alert-dialog";
1
+ import { cx as e, withStateClassName as t } from "../../internal/class-names.js";
2
+ import { useMessages as n } from "../../intl/provider.js";
3
+ import { forwardRef as r } from "react";
4
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
+ import { XIcon as o } from "@phosphor-icons/react/dist/csr/X";
6
+ import { Dialog as s } from "@base-ui/react/dialog";
7
+ import { AlertDialog as c } from "@base-ui/react/alert-dialog";
7
8
  //#region src/components/overlays/dialog.tsx
8
- function s() {
9
- return /* @__PURE__ */ n(i, {
9
+ function l() {
10
+ return /* @__PURE__ */ i(o, {
10
11
  "aria-hidden": "true",
11
12
  className: "lyds-overlayClose__glyph",
12
13
  weight: "bold"
13
14
  });
14
15
  }
15
- function c(e) {
16
- return /* @__PURE__ */ n(a.Root, { ...e });
16
+ function u(e) {
17
+ return /* @__PURE__ */ i(s.Root, { ...e });
17
18
  }
18
- function l({ className: t, ...r }) {
19
- return /* @__PURE__ */ n(a.Trigger, {
20
- ...r,
21
- className: e("lyds-dialog__trigger", t)
19
+ function d({ className: e, ...n }) {
20
+ return /* @__PURE__ */ i(s.Trigger, {
21
+ ...n,
22
+ className: t("lyds-dialog__trigger", e)
22
23
  });
23
24
  }
24
- var u = t(function(e, t) {
25
- return /* @__PURE__ */ n(a.Portal, {
25
+ var f = r(function(e, t) {
26
+ return /* @__PURE__ */ i(s.Portal, {
26
27
  ...e,
27
28
  ref: t
28
29
  });
29
- }), d = t(function({ className: t, ...r }, i) {
30
- return /* @__PURE__ */ n(a.Backdrop, {
31
- ...r,
32
- ref: i,
33
- className: e("lyds-dialog__backdrop", t)
34
- });
35
- }), f = t(function({ className: t, ...r }, i) {
36
- return /* @__PURE__ */ n(a.Viewport, {
37
- ...r,
38
- ref: i,
39
- className: e("lyds-dialog__viewport", t)
40
- });
41
- }), p = t(function({ children: t, className: i, closeLabel: o = "關閉對話框", closeProps: s, hasCustomClose: c = !1, ...l }, u) {
42
- return /* @__PURE__ */ r(a.Popup, {
43
- ...l,
44
- ref: u,
45
- className: e("lyds-dialog__popup", i),
46
- children: [t, c ? null : /* @__PURE__ */ n(g, {
47
- ...s,
48
- "aria-label": o
49
- })]
50
- });
51
- }), m = t(function({ className: t, ...r }, i) {
52
- return /* @__PURE__ */ n(a.Title, {
53
- ...r,
54
- ref: i,
55
- className: e("lyds-dialog__title", t)
56
- });
57
- }), h = t(function({ className: t, ...r }, i) {
58
- return /* @__PURE__ */ n(a.Description, {
59
- ...r,
60
- ref: i,
61
- className: e("lyds-dialog__description", t)
62
- });
63
- }), g = t(function({ "aria-label": t, children: r, className: i, variant: o = r == null ? "icon" : "action", ...c }, l) {
64
- return /* @__PURE__ */ n(a.Close, {
30
+ }), p = r(function({ className: e, ...n }, r) {
31
+ return /* @__PURE__ */ i(s.Backdrop, {
32
+ ...n,
33
+ ref: r,
34
+ className: t("lyds-dialog__backdrop", e)
35
+ });
36
+ }), m = r(function({ className: e, ...n }, r) {
37
+ return /* @__PURE__ */ i(s.Viewport, {
38
+ ...n,
39
+ ref: r,
40
+ className: t("lyds-dialog__viewport", e)
41
+ });
42
+ }), h = r(function({ children: e, className: r, closeButton: o, closeLabel: c, closeProps: l, hasCustomClose: u = !1, ...d }, f) {
43
+ let p = n(), m = o ?? !u;
44
+ return /* @__PURE__ */ a(s.Popup, {
45
+ ...d,
46
+ ref: f,
47
+ className: t("lyds-dialog__popup", r),
48
+ children: [m ? /* @__PURE__ */ i(v, {
49
+ ...l,
50
+ "aria-label": c ?? p.dialogClose
51
+ }) : null, e]
52
+ });
53
+ }), g = r(function({ className: e, ...n }, r) {
54
+ return /* @__PURE__ */ i(s.Title, {
55
+ ...n,
56
+ ref: r,
57
+ className: t("lyds-dialog__title", e)
58
+ });
59
+ }), _ = r(function({ className: e, ...n }, r) {
60
+ return /* @__PURE__ */ i(s.Description, {
61
+ ...n,
62
+ ref: r,
63
+ className: t("lyds-dialog__description", e)
64
+ });
65
+ }), v = r(function({ "aria-label": e, children: r, className: a, variant: o = r == null ? "icon" : "action", ...c }, u) {
66
+ let d = n();
67
+ return /* @__PURE__ */ i(s.Close, {
65
68
  ...c,
66
- ref: l,
67
- "aria-label": t ?? (r == null ? "關閉對話框" : void 0),
68
- className: e(o === "icon" ? "lyds-overlayClose" : "lyds-overlayCloseAction", i),
69
- children: r ?? /* @__PURE__ */ n(s, {})
70
- });
71
- }), _ = t(function({ className: e, ...t }, r) {
72
- return /* @__PURE__ */ n("div", {
73
- ...t,
69
+ ref: u,
70
+ "aria-label": e ?? (r == null ? d.dialogClose : void 0),
71
+ className: t(o === "icon" ? "lyds-overlayClose" : "lyds-overlayCloseAction", a),
72
+ children: r ?? /* @__PURE__ */ i(l, {})
73
+ });
74
+ }), y = r(function({ className: t, ...n }, r) {
75
+ return /* @__PURE__ */ i("div", {
76
+ ...n,
74
77
  ref: r,
75
- className: e ? `lyds-dialog__header ${e}` : "lyds-dialog__header"
78
+ className: e("lyds-dialog__header", t)
76
79
  });
77
- }), v = t(function({ className: e, ...t }, r) {
78
- return /* @__PURE__ */ n("div", {
79
- ...t,
80
+ }), b = r(function({ className: t, ...n }, r) {
81
+ return /* @__PURE__ */ i("div", {
82
+ ...n,
80
83
  ref: r,
81
- className: e ? `lyds-dialog__body ${e}` : "lyds-dialog__body"
84
+ className: e("lyds-dialog__body", t)
82
85
  });
83
- }), y = t(function({ className: e, ...t }, r) {
84
- return /* @__PURE__ */ n("div", {
85
- ...t,
86
+ }), x = r(function({ className: t, ...n }, r) {
87
+ return /* @__PURE__ */ i("div", {
88
+ ...n,
86
89
  ref: r,
87
- className: e ? `lyds-dialog__footer ${e}` : "lyds-dialog__footer"
88
- });
89
- }), b = {
90
- Root: c,
91
- Trigger: l,
92
- Portal: u,
93
- Backdrop: d,
94
- Viewport: f,
95
- Popup: p,
96
- Header: _,
97
- Body: v,
98
- Footer: y,
99
- Title: m,
100
- Description: h,
101
- Close: g,
102
- createHandle: a.createHandle,
103
- Handle: a.Handle
104
- }, x = b;
105
- function S(e) {
106
- return /* @__PURE__ */ n(o.Root, { ...e });
90
+ className: e("lyds-dialog__footer", t)
91
+ });
92
+ }), S = {
93
+ Root: u,
94
+ Trigger: d,
95
+ Portal: f,
96
+ Backdrop: p,
97
+ Viewport: m,
98
+ Popup: h,
99
+ Header: y,
100
+ Body: b,
101
+ Footer: x,
102
+ Title: g,
103
+ Description: _,
104
+ Close: v,
105
+ createHandle: s.createHandle,
106
+ Handle: s.Handle
107
+ }, C = S;
108
+ function w(e) {
109
+ return /* @__PURE__ */ i(c.Root, { ...e });
107
110
  }
108
- function C({ className: t, ...r }) {
109
- return /* @__PURE__ */ n(o.Trigger, {
110
- ...r,
111
- className: e("lyds-alertDialog__trigger", t)
111
+ function T({ className: e, ...n }) {
112
+ return /* @__PURE__ */ i(c.Trigger, {
113
+ ...n,
114
+ className: t("lyds-alertDialog__trigger", e)
112
115
  });
113
116
  }
114
- var w = t(function({ children: t, className: i, closeLabel: a = "取消並關閉警示", closeProps: s, hasCustomClose: c = !1, ...l }, u) {
115
- return /* @__PURE__ */ r(o.Popup, {
116
- ...l,
117
+ var E = r(function({ children: e, className: r, closeButton: o, closeLabel: s, closeProps: l, hasCustomClose: u, ...d }, f) {
118
+ let p = n(), m = o ?? u === !1;
119
+ return /* @__PURE__ */ a(c.Popup, {
120
+ ...d,
121
+ ref: f,
122
+ className: t("lyds-dialog__popup lyds-alertDialog__popup", r),
123
+ children: [m ? /* @__PURE__ */ i(D, {
124
+ ...l,
125
+ "aria-label": s ?? p.alertDialogClose
126
+ }) : null, e]
127
+ });
128
+ }), D = r(function({ "aria-label": e, children: r, className: a, variant: o = r == null ? "icon" : "action", ...s }, u) {
129
+ let d = n();
130
+ return /* @__PURE__ */ i(c.Close, {
131
+ ...s,
117
132
  ref: u,
118
- className: e("lyds-dialog__popup lyds-alertDialog__popup", i),
119
- children: [t, c ? null : /* @__PURE__ */ n(T, {
120
- ...s,
121
- "aria-label": a
122
- })]
123
- });
124
- }), T = t(function({ "aria-label": t, children: r, className: i, variant: a = r == null ? "icon" : "action", ...c }, l) {
125
- return /* @__PURE__ */ n(o.Close, {
126
- ...c,
127
- ref: l,
128
- "aria-label": t ?? (r == null ? "取消並關閉警示" : void 0),
129
- className: e(a === "icon" ? "lyds-overlayClose" : "lyds-overlayCloseAction", i),
130
- children: r ?? /* @__PURE__ */ n(s, {})
131
- });
132
- }), E = t(function({ className: e, ...t }, r) {
133
- return /* @__PURE__ */ n("div", {
134
- ...t,
133
+ "aria-label": e ?? (r == null ? d.alertDialogClose : void 0),
134
+ className: t(o === "icon" ? "lyds-overlayClose" : "lyds-overlayCloseAction", a),
135
+ children: r ?? /* @__PURE__ */ i(l, {})
136
+ });
137
+ }), O = r(function({ className: t, ...n }, r) {
138
+ return /* @__PURE__ */ i("div", {
139
+ ...n,
135
140
  ref: r,
136
- className: e ? `lyds-dialog__footer lyds-alertDialog__actions ${e}` : "lyds-dialog__footer lyds-alertDialog__actions"
137
- });
138
- }), D = {
139
- Root: S,
140
- Trigger: C,
141
- Portal: u,
142
- Backdrop: d,
143
- Viewport: f,
144
- Popup: w,
145
- Header: _,
146
- Body: v,
147
- Footer: y,
148
- Actions: E,
149
- Title: m,
150
- Description: h,
151
- Close: T,
152
- createHandle: o.createHandle,
153
- Handle: o.Handle
141
+ className: e("lyds-dialog__footer lyds-alertDialog__actions", t)
142
+ });
143
+ }), k = {
144
+ Root: w,
145
+ Trigger: T,
146
+ Portal: f,
147
+ Backdrop: p,
148
+ Viewport: m,
149
+ Popup: E,
150
+ Header: y,
151
+ Body: b,
152
+ Footer: x,
153
+ Actions: O,
154
+ Title: g,
155
+ Description: _,
156
+ Close: D,
157
+ createHandle: c.createHandle,
158
+ Handle: c.Handle
154
159
  };
155
160
  //#endregion
156
- export { D as AlertDialog, E as AlertDialogActions, T as AlertDialogClose, w as AlertDialogPopup, S as AlertDialogRoot, C as AlertDialogTrigger, b as Dialog, d as DialogBackdrop, v as DialogBody, g as DialogClose, h as DialogDescription, y as DialogFooter, _ as DialogHeader, p as DialogPopup, u as DialogPortal, c as DialogRoot, m as DialogTitle, l as DialogTrigger, f as DialogViewport, x as Modal };
161
+ export { k as AlertDialog, O as AlertDialogActions, D as AlertDialogClose, E as AlertDialogPopup, w as AlertDialogRoot, T as AlertDialogTrigger, S as Dialog, p as DialogBackdrop, b as DialogBody, v as DialogClose, _ as DialogDescription, x as DialogFooter, y as DialogHeader, h as DialogPopup, f as DialogPortal, u as DialogRoot, g as DialogTitle, d as DialogTrigger, m as DialogViewport, C as Modal };
157
162
 
158
163
  //# sourceMappingURL=dialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.js","names":[],"sources":["../../../src/components/overlays/dialog.tsx"],"sourcesContent":["import { AlertDialog as BaseAlertDialog, type AlertDialogRootProps, type AlertDialogTriggerProps } from \"@base-ui/react/alert-dialog\";\nimport {\n\tDialog as BaseDialog,\n\ttype DialogCloseProps as BaseDialogCloseProps,\n\ttype DialogPopupProps as BaseDialogPopupProps,\n\ttype DialogBackdropProps,\n\ttype DialogDescriptionProps,\n\ttype DialogPortalProps,\n\ttype DialogRootProps,\n\ttype DialogTitleProps,\n\ttype DialogTriggerProps,\n\ttype DialogViewportProps\n} from \"@base-ui/react/dialog\";\nimport { XIcon } from \"@phosphor-icons/react/dist/csr/X\";\nimport { forwardRef, type HTMLAttributes, type JSX, type ReactNode, type RefAttributes } from \"react\";\n\nimport { mergeClassName } from \"./class-names\";\n\nexport type { AlertDialogRootChangeEventDetails } from \"@base-ui/react/alert-dialog\";\nexport type { DialogRootChangeEventDetails } from \"@base-ui/react/dialog\";\n\nfunction CloseGlyph(): JSX.Element {\n\treturn <XIcon aria-hidden=\"true\" className=\"lyds-overlayClose__glyph\" weight=\"bold\" />;\n}\n\nexport function DialogRoot<Payload = unknown>(props: DialogRootProps<Payload>): JSX.Element {\n\treturn <BaseDialog.Root {...props} />;\n}\n\nexport function DialogTrigger<Payload = unknown>({ className, ...props }: DialogTriggerProps<Payload> & RefAttributes<HTMLElement>): JSX.Element {\n\treturn <BaseDialog.Trigger {...props} className={mergeClassName(\"lyds-dialog__trigger\", className)} />;\n}\n\nexport const DialogPortal = forwardRef<HTMLDivElement, DialogPortalProps>(function DialogPortal(props, ref) {\n\treturn <BaseDialog.Portal {...props} ref={ref} />;\n});\n\nexport const DialogBackdrop = forwardRef<HTMLDivElement, DialogBackdropProps>(function DialogBackdrop({ className, ...props }, ref) {\n\treturn <BaseDialog.Backdrop {...props} ref={ref} className={mergeClassName(\"lyds-dialog__backdrop\", className)} />;\n});\n\nexport const DialogViewport = forwardRef<HTMLDivElement, DialogViewportProps>(function DialogViewport({ className, ...props }, ref) {\n\treturn <BaseDialog.Viewport {...props} ref={ref} className={mergeClassName(\"lyds-dialog__viewport\", className)} />;\n});\n\nexport interface DialogPopupProps extends BaseDialogPopupProps {\n\t/** 內建關閉控制項的無障礙標籤。 */\n\tcloseLabel?: string;\n\t/** 傳給內建關閉控制項的屬性。 */\n\tcloseProps?: Omit<DialogCloseProps, \"children\">;\n\t/** 僅在彈出內容另有可存取的 Dialog.Close 時設定。 */\n\thasCustomClose?: boolean;\n}\n\nexport const DialogPopup = forwardRef<HTMLDivElement, DialogPopupProps>(function DialogPopup({ children, className, closeLabel = \"關閉對話框\", closeProps, hasCustomClose = false, ...props }, ref) {\n\treturn (\n\t\t<BaseDialog.Popup {...props} ref={ref} className={mergeClassName(\"lyds-dialog__popup\", className)}>\n\t\t\t{children}\n\t\t\t{hasCustomClose ? null : <DialogClose {...closeProps} aria-label={closeLabel} />}\n\t\t</BaseDialog.Popup>\n\t);\n});\n\nexport const DialogTitle = forwardRef<HTMLHeadingElement, DialogTitleProps>(function DialogTitle({ className, ...props }, ref) {\n\treturn <BaseDialog.Title {...props} ref={ref} className={mergeClassName(\"lyds-dialog__title\", className)} />;\n});\n\nexport const DialogDescription = forwardRef<HTMLParagraphElement, DialogDescriptionProps>(function DialogDescription({ className, ...props }, ref) {\n\treturn <BaseDialog.Description {...props} ref={ref} className={mergeClassName(\"lyds-dialog__description\", className)} />;\n});\n\nexport interface DialogCloseProps extends BaseDialogCloseProps {\n\t/** 圖示控制項位於面板角落;動作控制項則參與內容排版。 */\n\tvariant?: \"icon\" | \"action\";\n}\n\nexport const DialogClose = forwardRef<HTMLButtonElement, DialogCloseProps>(function DialogClose(\n\t{ \"aria-label\": ariaLabel, children, className, variant = children == null ? \"icon\" : \"action\", ...props },\n\tref\n) {\n\treturn (\n\t\t<BaseDialog.Close\n\t\t\t{...props}\n\t\t\tref={ref}\n\t\t\taria-label={ariaLabel ?? (children == null ? \"關閉對話框\" : undefined)}\n\t\t\tclassName={mergeClassName(variant === \"icon\" ? \"lyds-overlayClose\" : \"lyds-overlayCloseAction\", className)}\n\t\t>\n\t\t\t{children ?? <CloseGlyph />}\n\t\t</BaseDialog.Close>\n\t);\n});\n\nexport type DialogHeaderProps = HTMLAttributes<HTMLDivElement>;\n\nexport const DialogHeader = forwardRef<HTMLDivElement, DialogHeaderProps>(function DialogHeader({ className, ...props }, ref) {\n\treturn <div {...props} ref={ref} className={className ? `lyds-dialog__header ${className}` : \"lyds-dialog__header\"} />;\n});\n\nexport type DialogBodyProps = HTMLAttributes<HTMLDivElement>;\n\nexport const DialogBody = forwardRef<HTMLDivElement, DialogBodyProps>(function DialogBody({ className, ...props }, ref) {\n\treturn <div {...props} ref={ref} className={className ? `lyds-dialog__body ${className}` : \"lyds-dialog__body\"} />;\n});\n\nexport type DialogFooterProps = HTMLAttributes<HTMLDivElement>;\n\nexport const DialogFooter = forwardRef<HTMLDivElement, DialogFooterProps>(function DialogFooter({ className, ...props }, ref) {\n\treturn <div {...props} ref={ref} className={className ? `lyds-dialog__footer ${className}` : \"lyds-dialog__footer\"} />;\n});\n\nexport const Dialog = {\n\tRoot: DialogRoot,\n\tTrigger: DialogTrigger,\n\tPortal: DialogPortal,\n\tBackdrop: DialogBackdrop,\n\tViewport: DialogViewport,\n\tPopup: DialogPopup,\n\tHeader: DialogHeader,\n\tBody: DialogBody,\n\tFooter: DialogFooter,\n\tTitle: DialogTitle,\n\tDescription: DialogDescription,\n\tClose: DialogClose,\n\tcreateHandle: BaseDialog.createHandle,\n\tHandle: BaseDialog.Handle\n} as const;\n\n/** Base UI 的 Dialog 預設為強制回應;Modal 是用途明確的別名。 */\nexport const Modal = Dialog;\n\nexport function AlertDialogRoot<Payload = unknown>(props: AlertDialogRootProps<Payload>): JSX.Element {\n\treturn <BaseAlertDialog.Root {...props} />;\n}\n\nexport function AlertDialogTrigger<Payload = unknown>({ className, ...props }: AlertDialogTriggerProps<Payload> & RefAttributes<HTMLElement>): JSX.Element {\n\treturn <BaseAlertDialog.Trigger {...props} className={mergeClassName(\"lyds-alertDialog__trigger\", className)} />;\n}\n\nexport interface AlertDialogPopupProps extends BaseDialogPopupProps {\n\t/** 內建取消/關閉控制項的無障礙標籤。 */\n\tcloseLabel?: string;\n\t/** 傳給內建取消/關閉控制項的屬性。 */\n\tcloseProps?: Omit<DialogCloseProps, \"children\">;\n\t/** 僅在彈出內容另有可存取的 AlertDialog.Close 時設定。 */\n\thasCustomClose?: boolean;\n}\n\nexport const AlertDialogPopup = forwardRef<HTMLDivElement, AlertDialogPopupProps>(function AlertDialogPopup(\n\t{ children, className, closeLabel = \"取消並關閉警示\", closeProps, hasCustomClose = false, ...props },\n\tref\n) {\n\treturn (\n\t\t<BaseAlertDialog.Popup {...props} ref={ref} className={mergeClassName(\"lyds-dialog__popup lyds-alertDialog__popup\", className)}>\n\t\t\t{children}\n\t\t\t{hasCustomClose ? null : <AlertDialogClose {...closeProps} aria-label={closeLabel} />}\n\t\t</BaseAlertDialog.Popup>\n\t);\n});\n\nexport const AlertDialogClose = forwardRef<HTMLButtonElement, DialogCloseProps>(function AlertDialogClose(\n\t{ \"aria-label\": ariaLabel, children, className, variant = children == null ? \"icon\" : \"action\", ...props },\n\tref\n) {\n\treturn (\n\t\t<BaseAlertDialog.Close\n\t\t\t{...props}\n\t\t\tref={ref}\n\t\t\taria-label={ariaLabel ?? (children == null ? \"取消並關閉警示\" : undefined)}\n\t\t\tclassName={mergeClassName(variant === \"icon\" ? \"lyds-overlayClose\" : \"lyds-overlayCloseAction\", className)}\n\t\t>\n\t\t\t{children ?? <CloseGlyph />}\n\t\t</BaseAlertDialog.Close>\n\t);\n});\n\nexport interface AlertDialogActionsProps extends HTMLAttributes<HTMLDivElement> {\n\tchildren?: ReactNode;\n}\n\nexport const AlertDialogActions = forwardRef<HTMLDivElement, AlertDialogActionsProps>(function AlertDialogActions({ className, ...props }, ref) {\n\treturn <div {...props} ref={ref} className={className ? `lyds-dialog__footer lyds-alertDialog__actions ${className}` : \"lyds-dialog__footer lyds-alertDialog__actions\"} />;\n});\n\nexport const AlertDialog = {\n\tRoot: AlertDialogRoot,\n\tTrigger: AlertDialogTrigger,\n\tPortal: DialogPortal,\n\tBackdrop: DialogBackdrop,\n\tViewport: DialogViewport,\n\tPopup: AlertDialogPopup,\n\tHeader: DialogHeader,\n\tBody: DialogBody,\n\tFooter: DialogFooter,\n\tActions: AlertDialogActions,\n\tTitle: DialogTitle,\n\tDescription: DialogDescription,\n\tClose: AlertDialogClose,\n\tcreateHandle: BaseAlertDialog.createHandle,\n\tHandle: BaseAlertDialog.Handle\n} as const;\n"],"mappings":"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"}
1
+ {"version":3,"file":"dialog.js","names":[],"sources":["../../../src/components/overlays/dialog.tsx"],"sourcesContent":["import { AlertDialog as BaseAlertDialog, type AlertDialogRootProps, type AlertDialogTriggerProps } from \"@base-ui/react/alert-dialog\";\nimport {\n\tDialog as BaseDialog,\n\ttype DialogCloseProps as BaseDialogCloseProps,\n\ttype DialogPopupProps as BaseDialogPopupProps,\n\ttype DialogBackdropProps,\n\ttype DialogDescriptionProps,\n\ttype DialogPortalProps,\n\ttype DialogRootProps,\n\ttype DialogTitleProps,\n\ttype DialogTriggerProps,\n\ttype DialogViewportProps\n} from \"@base-ui/react/dialog\";\nimport { XIcon } from \"@phosphor-icons/react/dist/csr/X\";\nimport { forwardRef, type HTMLAttributes, type JSX, type ReactNode, type RefAttributes } from \"react\";\n\nimport { cx, withStateClassName } from \"@/internal\";\nimport { useMessages } from \"@/intl\";\nexport type { AlertDialogRootChangeEventDetails } from \"@base-ui/react/alert-dialog\";\nexport type { DialogRootChangeEventDetails } from \"@base-ui/react/dialog\";\n\nfunction CloseGlyph(): JSX.Element {\n\treturn <XIcon aria-hidden=\"true\" className=\"lyds-overlayClose__glyph\" weight=\"bold\" />;\n}\n\nexport function DialogRoot<Payload = unknown>(props: DialogRootProps<Payload>): JSX.Element {\n\treturn <BaseDialog.Root {...props} />;\n}\n\nexport function DialogTrigger<Payload = unknown>({ className, ...props }: DialogTriggerProps<Payload> & RefAttributes<HTMLElement>): JSX.Element {\n\treturn <BaseDialog.Trigger {...props} className={withStateClassName(\"lyds-dialog__trigger\", className)} />;\n}\n\nexport const DialogPortal = forwardRef<HTMLDivElement, DialogPortalProps>(function DialogPortal(props, ref) {\n\treturn <BaseDialog.Portal {...props} ref={ref} />;\n});\n\nexport const DialogBackdrop = forwardRef<HTMLDivElement, DialogBackdropProps>(function DialogBackdrop({ className, ...props }, ref) {\n\treturn <BaseDialog.Backdrop {...props} ref={ref} className={withStateClassName(\"lyds-dialog__backdrop\", className)} />;\n});\n\nexport const DialogViewport = forwardRef<HTMLDivElement, DialogViewportProps>(function DialogViewport({ className, ...props }, ref) {\n\treturn <BaseDialog.Viewport {...props} ref={ref} className={withStateClassName(\"lyds-dialog__viewport\", className)} />;\n});\n\nexport interface DialogPopupProps extends BaseDialogPopupProps {\n\t/** 內建關閉控制項的無障礙標籤。 */\n\tcloseLabel?: string;\n\t/** 傳給內建關閉控制項的屬性。 */\n\tcloseProps?: Omit<DialogCloseProps, \"children\">;\n\t/** Renders the built-in corner close control. */\n\tcloseButton?: boolean;\n\t/**\n\t * @deprecated Pass `closeButton={false}` instead. Kept so existing call sites keep working.\n\t */\n\thasCustomClose?: boolean;\n}\n\nexport const DialogPopup = forwardRef<HTMLDivElement, DialogPopupProps>(function DialogPopup({ children, className, closeButton, closeLabel, closeProps, hasCustomClose = false, ...props }, ref) {\n\tconst messages = useMessages();\n\tconst showCloseButton = closeButton ?? !hasCustomClose;\n\n\treturn (\n\t\t<BaseDialog.Popup {...props} ref={ref} className={withStateClassName(\"lyds-dialog__popup\", className)}>\n\t\t\t{showCloseButton ? <DialogClose {...closeProps} aria-label={closeLabel ?? messages.dialogClose} /> : null}\n\t\t\t{children}\n\t\t</BaseDialog.Popup>\n\t);\n});\n\nexport const DialogTitle = forwardRef<HTMLHeadingElement, DialogTitleProps>(function DialogTitle({ className, ...props }, ref) {\n\treturn <BaseDialog.Title {...props} ref={ref} className={withStateClassName(\"lyds-dialog__title\", className)} />;\n});\n\nexport const DialogDescription = forwardRef<HTMLParagraphElement, DialogDescriptionProps>(function DialogDescription({ className, ...props }, ref) {\n\treturn <BaseDialog.Description {...props} ref={ref} className={withStateClassName(\"lyds-dialog__description\", className)} />;\n});\n\nexport interface DialogCloseProps extends BaseDialogCloseProps {\n\t/** 圖示控制項位於面板角落;動作控制項則參與內容排版。 */\n\tvariant?: \"icon\" | \"action\";\n}\n\nexport const DialogClose = forwardRef<HTMLButtonElement, DialogCloseProps>(function DialogClose(\n\t{ \"aria-label\": ariaLabel, children, className, variant = children == null ? \"icon\" : \"action\", ...props },\n\tref\n) {\n\tconst messages = useMessages();\n\n\treturn (\n\t\t<BaseDialog.Close\n\t\t\t{...props}\n\t\t\tref={ref}\n\t\t\taria-label={ariaLabel ?? (children == null ? messages.dialogClose : undefined)}\n\t\t\tclassName={withStateClassName(variant === \"icon\" ? \"lyds-overlayClose\" : \"lyds-overlayCloseAction\", className)}\n\t\t>\n\t\t\t{children ?? <CloseGlyph />}\n\t\t</BaseDialog.Close>\n\t);\n});\n\nexport type DialogHeaderProps = HTMLAttributes<HTMLDivElement>;\n\nexport const DialogHeader = forwardRef<HTMLDivElement, DialogHeaderProps>(function DialogHeader({ className, ...props }, ref) {\n\treturn <div {...props} ref={ref} className={cx(\"lyds-dialog__header\", className)} />;\n});\n\nexport type DialogBodyProps = HTMLAttributes<HTMLDivElement>;\n\nexport const DialogBody = forwardRef<HTMLDivElement, DialogBodyProps>(function DialogBody({ className, ...props }, ref) {\n\treturn <div {...props} ref={ref} className={cx(\"lyds-dialog__body\", className)} />;\n});\n\nexport type DialogFooterProps = HTMLAttributes<HTMLDivElement>;\n\nexport const DialogFooter = forwardRef<HTMLDivElement, DialogFooterProps>(function DialogFooter({ className, ...props }, ref) {\n\treturn <div {...props} ref={ref} className={cx(\"lyds-dialog__footer\", className)} />;\n});\n\nexport const Dialog = {\n\tRoot: DialogRoot,\n\tTrigger: DialogTrigger,\n\tPortal: DialogPortal,\n\tBackdrop: DialogBackdrop,\n\tViewport: DialogViewport,\n\tPopup: DialogPopup,\n\tHeader: DialogHeader,\n\tBody: DialogBody,\n\tFooter: DialogFooter,\n\tTitle: DialogTitle,\n\tDescription: DialogDescription,\n\tClose: DialogClose,\n\tcreateHandle: BaseDialog.createHandle,\n\tHandle: BaseDialog.Handle\n} as const;\n\n/** Base UI 的 Dialog 預設為強制回應;Modal 是用途明確的別名。 */\nexport const Modal = Dialog;\n\nexport function AlertDialogRoot<Payload = unknown>(props: AlertDialogRootProps<Payload>): JSX.Element {\n\treturn <BaseAlertDialog.Root {...props} />;\n}\n\nexport function AlertDialogTrigger<Payload = unknown>({ className, ...props }: AlertDialogTriggerProps<Payload> & RefAttributes<HTMLElement>): JSX.Element {\n\treturn <BaseAlertDialog.Trigger {...props} className={withStateClassName(\"lyds-alertDialog__trigger\", className)} />;\n}\n\nexport interface AlertDialogPopupProps extends BaseDialogPopupProps {\n\t/** 內建取消/關閉控制項的無障礙標籤。 */\n\tcloseLabel?: string;\n\t/** 傳給內建取消/關閉控制項的屬性。 */\n\tcloseProps?: Omit<DialogCloseProps, \"children\">;\n\t/**\n\t * Renders the built-in corner close control. An alert dialog asks for a deliberate choice, so\n\t * this defaults to `false` and the popup should carry its own confirm and cancel actions.\n\t */\n\tcloseButton?: boolean;\n\t/**\n\t * @deprecated Pass `closeButton` instead. Kept so existing call sites keep working.\n\t */\n\thasCustomClose?: boolean;\n}\n\nexport const AlertDialogPopup = forwardRef<HTMLDivElement, AlertDialogPopupProps>(function AlertDialogPopup(\n\t{ children, className, closeButton, closeLabel, closeProps, hasCustomClose, ...props },\n\tref\n) {\n\tconst messages = useMessages();\n\t// The historic default injected a dismiss control; only an explicit hasCustomClose={false} still asks for one.\n\tconst showCloseButton = closeButton ?? hasCustomClose === false;\n\n\treturn (\n\t\t<BaseAlertDialog.Popup {...props} ref={ref} className={withStateClassName(\"lyds-dialog__popup lyds-alertDialog__popup\", className)}>\n\t\t\t{showCloseButton ? <AlertDialogClose {...closeProps} aria-label={closeLabel ?? messages.alertDialogClose} /> : null}\n\t\t\t{children}\n\t\t</BaseAlertDialog.Popup>\n\t);\n});\n\nexport const AlertDialogClose = forwardRef<HTMLButtonElement, DialogCloseProps>(function AlertDialogClose(\n\t{ \"aria-label\": ariaLabel, children, className, variant = children == null ? \"icon\" : \"action\", ...props },\n\tref\n) {\n\tconst messages = useMessages();\n\n\treturn (\n\t\t<BaseAlertDialog.Close\n\t\t\t{...props}\n\t\t\tref={ref}\n\t\t\taria-label={ariaLabel ?? (children == null ? messages.alertDialogClose : undefined)}\n\t\t\tclassName={withStateClassName(variant === \"icon\" ? \"lyds-overlayClose\" : \"lyds-overlayCloseAction\", className)}\n\t\t>\n\t\t\t{children ?? <CloseGlyph />}\n\t\t</BaseAlertDialog.Close>\n\t);\n});\n\nexport interface AlertDialogActionsProps extends HTMLAttributes<HTMLDivElement> {\n\tchildren?: ReactNode;\n}\n\nexport const AlertDialogActions = forwardRef<HTMLDivElement, AlertDialogActionsProps>(function AlertDialogActions({ className, ...props }, ref) {\n\treturn <div {...props} ref={ref} className={cx(\"lyds-dialog__footer lyds-alertDialog__actions\", className)} />;\n});\n\nexport const AlertDialog = {\n\tRoot: AlertDialogRoot,\n\tTrigger: AlertDialogTrigger,\n\tPortal: DialogPortal,\n\tBackdrop: DialogBackdrop,\n\tViewport: DialogViewport,\n\tPopup: AlertDialogPopup,\n\tHeader: DialogHeader,\n\tBody: DialogBody,\n\tFooter: DialogFooter,\n\tActions: AlertDialogActions,\n\tTitle: DialogTitle,\n\tDescription: DialogDescription,\n\tClose: AlertDialogClose,\n\tcreateHandle: BaseAlertDialog.createHandle,\n\tHandle: BaseAlertDialog.Handle\n} as const;\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { mergeClassName as e } from "./class-names.js";
1
+ import { withStateClassName as e } from "../../internal/class-names.js";
2
2
  import { forwardRef as t } from "react";
3
3
  import { jsx as n, jsxs as r } from "react/jsx-runtime";
4
4
  import { CaretDownIcon as i } from "@phosphor-icons/react/dist/csr/CaretDown";