@daikin-oss/design-system-web-components 1.6.0-next.0 → 2.0.0-next.2

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 (353) hide show
  1. package/CHANGELOG.md +185 -0
  2. package/custom-elements.json +1814 -503
  3. package/dist/cjs/base/dds-element.cjs +1 -1
  4. package/dist/cjs/components/accordion-item/daikin-accordion-item.cjs +25 -8
  5. package/dist/cjs/components/accordion-item/daikin-accordion-item.d.cts +1 -0
  6. package/dist/cjs/components/breadcrumb/daikin-breadcrumb.d.cts +1 -1
  7. package/dist/cjs/components/breadcrumb-item/daikin-breadcrumb-item.cjs +9 -6
  8. package/dist/cjs/components/breadcrumb-item/daikin-breadcrumb-item.d.cts +1 -0
  9. package/dist/cjs/components/calendar/daikin-calendar.cjs +73 -26
  10. package/dist/cjs/components/calendar/daikin-calendar.d.cts +13 -0
  11. package/dist/cjs/components/checkbox/daikin-checkbox.cjs +190 -52
  12. package/dist/cjs/components/checkbox/daikin-checkbox.d.cts +18 -0
  13. package/dist/cjs/components/checkbox-group/daikin-checkbox-group.cjs +7 -1
  14. package/dist/cjs/components/checkbox-group/daikin-checkbox-group.d.cts +5 -0
  15. package/dist/cjs/components/chip/daikin-chip.cjs +195 -93
  16. package/dist/cjs/components/chip/daikin-chip.d.cts +20 -0
  17. package/dist/cjs/components/combobox/daikin-combobox.cjs +111 -33
  18. package/dist/cjs/components/combobox/daikin-combobox.d.cts +10 -0
  19. package/dist/cjs/components/date-picker/daikin-date-picker.cjs +243 -65
  20. package/dist/cjs/components/date-picker/daikin-date-picker.d.cts +37 -2
  21. package/dist/cjs/components/drawer/daikin-drawer.cjs +1 -1
  22. package/dist/cjs/components/dropdown/daikin-dropdown.cjs +164 -32
  23. package/dist/cjs/components/dropdown/daikin-dropdown.d.cts +13 -0
  24. package/dist/cjs/components/dropdown-item/daikin-dropdown-item.cjs +13 -6
  25. package/dist/cjs/components/icon-button/daikin-icon-button.cjs +2 -0
  26. package/dist/cjs/components/icon-button/daikin-icon-button.d.cts +2 -0
  27. package/dist/cjs/components/index.cjs +2 -2
  28. package/dist/cjs/components/input-group/daikin-input-group.cjs +88 -30
  29. package/dist/cjs/components/input-group/daikin-input-group.d.cts +10 -0
  30. package/dist/cjs/components/list-item/daikin-list-item.cjs +21 -10
  31. package/dist/cjs/components/list-item/daikin-list-item.d.cts +9 -0
  32. package/dist/cjs/components/logo/daikin-logo.cjs +1 -1
  33. package/dist/cjs/components/logo/daikin-logo.d.cts +2 -2
  34. package/dist/cjs/components/menu/daikin-menu.cjs +2 -2
  35. package/dist/cjs/components/modal-header/daikin-modal-header.cjs +10 -4
  36. package/dist/cjs/components/modal-header/daikin-modal-header.d.cts +1 -0
  37. package/dist/cjs/components/navigation/daikin-navigation.cjs +21 -0
  38. package/dist/cjs/components/navigation/daikin-navigation.d.cts +9 -0
  39. package/dist/cjs/components/navigation-item/daikin-navigation-item.cjs +18 -14
  40. package/dist/cjs/components/pagination/daikin-pagination.cjs +60 -19
  41. package/dist/cjs/components/pagination/daikin-pagination.d.cts +11 -0
  42. package/dist/cjs/components/progress-bar/daikin-progress-bar.cjs +27 -19
  43. package/dist/cjs/components/progress-bar/daikin-progress-bar.d.cts +1 -0
  44. package/dist/cjs/components/radio/daikin-radio.cjs +160 -35
  45. package/dist/cjs/components/radio/daikin-radio.d.cts +26 -0
  46. package/dist/cjs/components/radio-group/daikin-radio-group.cjs +10 -1
  47. package/dist/cjs/components/radio-group/daikin-radio-group.d.cts +4 -0
  48. package/dist/cjs/components/select/daikin-select.cjs +128 -21
  49. package/dist/cjs/components/select/daikin-select.d.cts +11 -0
  50. package/dist/cjs/components/slider/daikin-slider.cjs +61 -16
  51. package/dist/cjs/components/slider/daikin-slider.d.cts +4 -0
  52. package/dist/cjs/components/status-message/daikin-status-message.cjs +1 -0
  53. package/dist/cjs/components/status-message/daikin-status-message.d.cts +2 -0
  54. package/dist/cjs/components/table/daikin-table.cjs +108 -16
  55. package/dist/cjs/components/table/daikin-table.d.cts +58 -1
  56. package/dist/cjs/components/table-cell/daikin-table-cell.cjs +3 -4
  57. package/dist/cjs/components/table-header-cell/daikin-table-header-cell.cjs +21 -15
  58. package/dist/cjs/components/tag/daikin-tag.cjs +99 -20
  59. package/dist/cjs/components/tag/daikin-tag.d.cts +14 -0
  60. package/dist/cjs/components/text-area/daikin-text-area.cjs +22 -2
  61. package/dist/cjs/components/text-field/daikin-text-field.cjs +96 -50
  62. package/dist/cjs/components/text-field/daikin-text-field.d.cts +9 -0
  63. package/dist/cjs/components/text-field/number-utils.cjs +51 -19
  64. package/dist/cjs/components/text-field/number-utils.d.cts +7 -0
  65. package/dist/cjs/components/text-masked-field/daikin-text-masked-field.cjs +31 -7
  66. package/dist/cjs/components/time-picker/daikin-time-picker.cjs +325 -108
  67. package/dist/cjs/components/time-picker/daikin-time-picker.d.cts +57 -14
  68. package/dist/cjs/components/time-picker/index.cjs +2 -2
  69. package/dist/cjs/components/toast-notification-manager/daikin-toast-notification-manager.cjs +1 -1
  70. package/dist/cjs/components/toggle/daikin-toggle.cjs +110 -35
  71. package/dist/cjs/components/toggle/daikin-toggle.d.cts +5 -0
  72. package/dist/cjs/components/tooltip/daikin-tooltip.cjs +1 -1
  73. package/dist/cjs/components/tree-item/daikin-tree-item.cjs +24 -8
  74. package/dist/cjs/components/tree-item/daikin-tree-item.d.cts +1 -0
  75. package/dist/cjs/components/tree-section/daikin-tree-section.cjs +7 -1
  76. package/dist/cjs/components/tree-section/daikin-tree-section.d.cts +1 -0
  77. package/dist/cjs/components/vertical-navigation/daikin-vertical-navigation.cjs +1 -1
  78. package/dist/cjs/components/vertical-navigation-item/daikin-vertical-navigation-item.cjs +248 -38
  79. package/dist/cjs/components/vertical-navigation-item/daikin-vertical-navigation-item.d.cts +17 -7
  80. package/dist/cjs/components/vertical-navigation-menu-item/daikin-vertical-navigation-menu-item.cjs +103 -33
  81. package/dist/cjs/components/vertical-navigation-menu-item/daikin-vertical-navigation-menu-item.d.cts +6 -1
  82. package/dist/cjs/controllers/custom-readonly.cjs +59 -0
  83. package/dist/cjs/controllers/custom-readonly.d.cts +28 -0
  84. package/dist/cjs/index.cjs +2 -2
  85. package/dist/cjs/tailwind.css.cjs +1 -1
  86. package/dist/cjs/utils/calendar-common.cjs +6 -2
  87. package/dist/cjs/utils/calendar-common.d.cts +1 -1
  88. package/dist/cjs/utils/extract-half-width-digits.cjs +11 -0
  89. package/dist/cjs/utils/extract-half-width-digits.d.cts +15 -0
  90. package/dist/cjs-dev/base/dds-element.cjs +1 -1
  91. package/dist/cjs-dev/components/accordion-item/daikin-accordion-item.cjs +25 -8
  92. package/dist/cjs-dev/components/accordion-item/daikin-accordion-item.d.cts +1 -0
  93. package/dist/cjs-dev/components/breadcrumb/daikin-breadcrumb.d.cts +1 -1
  94. package/dist/cjs-dev/components/breadcrumb-item/daikin-breadcrumb-item.cjs +9 -6
  95. package/dist/cjs-dev/components/breadcrumb-item/daikin-breadcrumb-item.d.cts +1 -0
  96. package/dist/cjs-dev/components/calendar/daikin-calendar.cjs +73 -26
  97. package/dist/cjs-dev/components/calendar/daikin-calendar.d.cts +13 -0
  98. package/dist/cjs-dev/components/checkbox/daikin-checkbox.cjs +190 -52
  99. package/dist/cjs-dev/components/checkbox/daikin-checkbox.d.cts +18 -0
  100. package/dist/cjs-dev/components/checkbox-group/daikin-checkbox-group.cjs +7 -1
  101. package/dist/cjs-dev/components/checkbox-group/daikin-checkbox-group.d.cts +5 -0
  102. package/dist/cjs-dev/components/chip/daikin-chip.cjs +195 -93
  103. package/dist/cjs-dev/components/chip/daikin-chip.d.cts +20 -0
  104. package/dist/cjs-dev/components/combobox/daikin-combobox.cjs +111 -33
  105. package/dist/cjs-dev/components/combobox/daikin-combobox.d.cts +10 -0
  106. package/dist/cjs-dev/components/date-picker/daikin-date-picker.cjs +243 -65
  107. package/dist/cjs-dev/components/date-picker/daikin-date-picker.d.cts +37 -2
  108. package/dist/cjs-dev/components/drawer/daikin-drawer.cjs +1 -1
  109. package/dist/cjs-dev/components/dropdown/daikin-dropdown.cjs +164 -32
  110. package/dist/cjs-dev/components/dropdown/daikin-dropdown.d.cts +13 -0
  111. package/dist/cjs-dev/components/dropdown-item/daikin-dropdown-item.cjs +13 -6
  112. package/dist/cjs-dev/components/icon-button/daikin-icon-button.cjs +2 -0
  113. package/dist/cjs-dev/components/icon-button/daikin-icon-button.d.cts +2 -0
  114. package/dist/cjs-dev/components/index.cjs +2 -2
  115. package/dist/cjs-dev/components/input-group/daikin-input-group.cjs +88 -30
  116. package/dist/cjs-dev/components/input-group/daikin-input-group.d.cts +10 -0
  117. package/dist/cjs-dev/components/list-item/daikin-list-item.cjs +21 -10
  118. package/dist/cjs-dev/components/list-item/daikin-list-item.d.cts +9 -0
  119. package/dist/cjs-dev/components/logo/daikin-logo.cjs +1 -1
  120. package/dist/cjs-dev/components/logo/daikin-logo.d.cts +2 -2
  121. package/dist/cjs-dev/components/menu/daikin-menu.cjs +2 -2
  122. package/dist/cjs-dev/components/modal-header/daikin-modal-header.cjs +10 -4
  123. package/dist/cjs-dev/components/modal-header/daikin-modal-header.d.cts +1 -0
  124. package/dist/cjs-dev/components/navigation/daikin-navigation.cjs +21 -0
  125. package/dist/cjs-dev/components/navigation/daikin-navigation.d.cts +9 -0
  126. package/dist/cjs-dev/components/navigation-item/daikin-navigation-item.cjs +18 -14
  127. package/dist/cjs-dev/components/pagination/daikin-pagination.cjs +60 -19
  128. package/dist/cjs-dev/components/pagination/daikin-pagination.d.cts +11 -0
  129. package/dist/cjs-dev/components/progress-bar/daikin-progress-bar.cjs +27 -19
  130. package/dist/cjs-dev/components/progress-bar/daikin-progress-bar.d.cts +1 -0
  131. package/dist/cjs-dev/components/radio/daikin-radio.cjs +160 -35
  132. package/dist/cjs-dev/components/radio/daikin-radio.d.cts +26 -0
  133. package/dist/cjs-dev/components/radio-group/daikin-radio-group.cjs +10 -1
  134. package/dist/cjs-dev/components/radio-group/daikin-radio-group.d.cts +4 -0
  135. package/dist/cjs-dev/components/select/daikin-select.cjs +128 -21
  136. package/dist/cjs-dev/components/select/daikin-select.d.cts +11 -0
  137. package/dist/cjs-dev/components/slider/daikin-slider.cjs +61 -16
  138. package/dist/cjs-dev/components/slider/daikin-slider.d.cts +4 -0
  139. package/dist/cjs-dev/components/status-message/daikin-status-message.cjs +1 -0
  140. package/dist/cjs-dev/components/status-message/daikin-status-message.d.cts +2 -0
  141. package/dist/cjs-dev/components/table/daikin-table.cjs +108 -16
  142. package/dist/cjs-dev/components/table/daikin-table.d.cts +58 -1
  143. package/dist/cjs-dev/components/table-cell/daikin-table-cell.cjs +3 -4
  144. package/dist/cjs-dev/components/table-header-cell/daikin-table-header-cell.cjs +21 -15
  145. package/dist/cjs-dev/components/tag/daikin-tag.cjs +99 -20
  146. package/dist/cjs-dev/components/tag/daikin-tag.d.cts +14 -0
  147. package/dist/cjs-dev/components/text-area/daikin-text-area.cjs +22 -2
  148. package/dist/cjs-dev/components/text-field/daikin-text-field.cjs +96 -50
  149. package/dist/cjs-dev/components/text-field/daikin-text-field.d.cts +9 -0
  150. package/dist/cjs-dev/components/text-field/number-utils.cjs +51 -19
  151. package/dist/cjs-dev/components/text-field/number-utils.d.cts +7 -0
  152. package/dist/cjs-dev/components/text-masked-field/daikin-text-masked-field.cjs +31 -7
  153. package/dist/cjs-dev/components/time-picker/daikin-time-picker.cjs +325 -108
  154. package/dist/cjs-dev/components/time-picker/daikin-time-picker.d.cts +57 -14
  155. package/dist/cjs-dev/components/time-picker/index.cjs +2 -2
  156. package/dist/cjs-dev/components/toast-notification-manager/daikin-toast-notification-manager.cjs +1 -1
  157. package/dist/cjs-dev/components/toggle/daikin-toggle.cjs +110 -35
  158. package/dist/cjs-dev/components/toggle/daikin-toggle.d.cts +5 -0
  159. package/dist/cjs-dev/components/tooltip/daikin-tooltip.cjs +1 -1
  160. package/dist/cjs-dev/components/tree-item/daikin-tree-item.cjs +24 -8
  161. package/dist/cjs-dev/components/tree-item/daikin-tree-item.d.cts +1 -0
  162. package/dist/cjs-dev/components/tree-section/daikin-tree-section.cjs +7 -1
  163. package/dist/cjs-dev/components/tree-section/daikin-tree-section.d.cts +1 -0
  164. package/dist/cjs-dev/components/vertical-navigation/daikin-vertical-navigation.cjs +1 -1
  165. package/dist/cjs-dev/components/vertical-navigation-item/daikin-vertical-navigation-item.cjs +248 -38
  166. package/dist/cjs-dev/components/vertical-navigation-item/daikin-vertical-navigation-item.d.cts +17 -7
  167. package/dist/cjs-dev/components/vertical-navigation-menu-item/daikin-vertical-navigation-menu-item.cjs +103 -33
  168. package/dist/cjs-dev/components/vertical-navigation-menu-item/daikin-vertical-navigation-menu-item.d.cts +6 -1
  169. package/dist/cjs-dev/controllers/custom-readonly.cjs +59 -0
  170. package/dist/cjs-dev/controllers/custom-readonly.d.cts +28 -0
  171. package/dist/cjs-dev/index.cjs +2 -2
  172. package/dist/cjs-dev/tailwind.css.cjs +1 -1
  173. package/dist/cjs-dev/utils/calendar-common.cjs +6 -2
  174. package/dist/cjs-dev/utils/calendar-common.d.cts +1 -1
  175. package/dist/cjs-dev/utils/extract-half-width-digits.cjs +11 -0
  176. package/dist/cjs-dev/utils/extract-half-width-digits.d.cts +15 -0
  177. package/dist/es/base/dds-element.js +1 -1
  178. package/dist/es/components/accordion-item/daikin-accordion-item.d.ts +1 -0
  179. package/dist/es/components/accordion-item/daikin-accordion-item.js +25 -8
  180. package/dist/es/components/breadcrumb/daikin-breadcrumb.d.ts +1 -1
  181. package/dist/es/components/breadcrumb-item/daikin-breadcrumb-item.d.ts +1 -0
  182. package/dist/es/components/breadcrumb-item/daikin-breadcrumb-item.js +9 -6
  183. package/dist/es/components/calendar/daikin-calendar.d.ts +13 -0
  184. package/dist/es/components/calendar/daikin-calendar.js +73 -26
  185. package/dist/es/components/checkbox/daikin-checkbox.d.ts +18 -0
  186. package/dist/es/components/checkbox/daikin-checkbox.js +190 -52
  187. package/dist/es/components/checkbox-group/daikin-checkbox-group.d.ts +5 -0
  188. package/dist/es/components/checkbox-group/daikin-checkbox-group.js +7 -1
  189. package/dist/es/components/chip/daikin-chip.d.ts +20 -0
  190. package/dist/es/components/chip/daikin-chip.js +195 -93
  191. package/dist/es/components/combobox/daikin-combobox.d.ts +10 -0
  192. package/dist/es/components/combobox/daikin-combobox.js +111 -33
  193. package/dist/es/components/date-picker/daikin-date-picker.d.ts +37 -2
  194. package/dist/es/components/date-picker/daikin-date-picker.js +243 -65
  195. package/dist/es/components/drawer/daikin-drawer.js +1 -1
  196. package/dist/es/components/dropdown/daikin-dropdown.d.ts +13 -0
  197. package/dist/es/components/dropdown/daikin-dropdown.js +164 -32
  198. package/dist/es/components/dropdown-item/daikin-dropdown-item.js +13 -6
  199. package/dist/es/components/icon-button/daikin-icon-button.d.ts +2 -0
  200. package/dist/es/components/icon-button/daikin-icon-button.js +2 -0
  201. package/dist/es/components/index.js +4 -4
  202. package/dist/es/components/input-group/daikin-input-group.d.ts +10 -0
  203. package/dist/es/components/input-group/daikin-input-group.js +89 -31
  204. package/dist/es/components/list-item/daikin-list-item.d.ts +9 -0
  205. package/dist/es/components/list-item/daikin-list-item.js +21 -10
  206. package/dist/es/components/logo/daikin-logo.d.ts +2 -2
  207. package/dist/es/components/logo/daikin-logo.js +1 -1
  208. package/dist/es/components/menu/daikin-menu.js +2 -2
  209. package/dist/es/components/modal-header/daikin-modal-header.d.ts +1 -0
  210. package/dist/es/components/modal-header/daikin-modal-header.js +10 -4
  211. package/dist/es/components/navigation/daikin-navigation.d.ts +9 -0
  212. package/dist/es/components/navigation/daikin-navigation.js +22 -1
  213. package/dist/es/components/navigation-item/daikin-navigation-item.js +18 -14
  214. package/dist/es/components/pagination/daikin-pagination.d.ts +11 -0
  215. package/dist/es/components/pagination/daikin-pagination.js +61 -20
  216. package/dist/es/components/progress-bar/daikin-progress-bar.d.ts +1 -0
  217. package/dist/es/components/progress-bar/daikin-progress-bar.js +27 -19
  218. package/dist/es/components/radio/daikin-radio.d.ts +26 -0
  219. package/dist/es/components/radio/daikin-radio.js +160 -35
  220. package/dist/es/components/radio-group/daikin-radio-group.d.ts +4 -0
  221. package/dist/es/components/radio-group/daikin-radio-group.js +10 -1
  222. package/dist/es/components/select/daikin-select.d.ts +11 -0
  223. package/dist/es/components/select/daikin-select.js +128 -21
  224. package/dist/es/components/slider/daikin-slider.d.ts +4 -0
  225. package/dist/es/components/slider/daikin-slider.js +61 -16
  226. package/dist/es/components/status-message/daikin-status-message.d.ts +2 -0
  227. package/dist/es/components/status-message/daikin-status-message.js +1 -0
  228. package/dist/es/components/table/daikin-table.d.ts +58 -1
  229. package/dist/es/components/table/daikin-table.js +109 -17
  230. package/dist/es/components/table-cell/daikin-table-cell.js +3 -4
  231. package/dist/es/components/table-header-cell/daikin-table-header-cell.js +21 -15
  232. package/dist/es/components/tag/daikin-tag.d.ts +14 -0
  233. package/dist/es/components/tag/daikin-tag.js +100 -21
  234. package/dist/es/components/text-area/daikin-text-area.js +22 -2
  235. package/dist/es/components/text-field/daikin-text-field.d.ts +9 -0
  236. package/dist/es/components/text-field/daikin-text-field.js +97 -51
  237. package/dist/es/components/text-field/number-utils.d.ts +7 -0
  238. package/dist/es/components/text-field/number-utils.js +51 -19
  239. package/dist/es/components/text-masked-field/daikin-text-masked-field.js +31 -7
  240. package/dist/es/components/time-picker/daikin-time-picker.d.ts +57 -14
  241. package/dist/es/components/time-picker/daikin-time-picker.js +327 -110
  242. package/dist/es/components/time-picker/index.js +4 -4
  243. package/dist/es/components/toast-notification-manager/daikin-toast-notification-manager.js +1 -1
  244. package/dist/es/components/toggle/daikin-toggle.d.ts +5 -0
  245. package/dist/es/components/toggle/daikin-toggle.js +110 -35
  246. package/dist/es/components/tooltip/daikin-tooltip.js +1 -1
  247. package/dist/es/components/tree-item/daikin-tree-item.d.ts +1 -0
  248. package/dist/es/components/tree-item/daikin-tree-item.js +24 -8
  249. package/dist/es/components/tree-section/daikin-tree-section.d.ts +1 -0
  250. package/dist/es/components/tree-section/daikin-tree-section.js +7 -1
  251. package/dist/es/components/vertical-navigation/daikin-vertical-navigation.js +1 -1
  252. package/dist/es/components/vertical-navigation-item/daikin-vertical-navigation-item.d.ts +17 -7
  253. package/dist/es/components/vertical-navigation-item/daikin-vertical-navigation-item.js +248 -38
  254. package/dist/es/components/vertical-navigation-menu-item/daikin-vertical-navigation-menu-item.d.ts +6 -1
  255. package/dist/es/components/vertical-navigation-menu-item/daikin-vertical-navigation-menu-item.js +104 -34
  256. package/dist/es/controllers/custom-readonly.d.ts +28 -0
  257. package/dist/es/controllers/custom-readonly.js +59 -0
  258. package/dist/es/index.js +4 -4
  259. package/dist/es/tailwind.css.js +1 -1
  260. package/dist/es/utils/calendar-common.d.ts +1 -1
  261. package/dist/es/utils/calendar-common.js +6 -2
  262. package/dist/es/utils/extract-half-width-digits.d.ts +15 -0
  263. package/dist/es/utils/extract-half-width-digits.js +11 -0
  264. package/dist/es-dev/base/dds-element.js +1 -1
  265. package/dist/es-dev/components/accordion-item/daikin-accordion-item.d.ts +1 -0
  266. package/dist/es-dev/components/accordion-item/daikin-accordion-item.js +25 -8
  267. package/dist/es-dev/components/breadcrumb/daikin-breadcrumb.d.ts +1 -1
  268. package/dist/es-dev/components/breadcrumb-item/daikin-breadcrumb-item.d.ts +1 -0
  269. package/dist/es-dev/components/breadcrumb-item/daikin-breadcrumb-item.js +9 -6
  270. package/dist/es-dev/components/calendar/daikin-calendar.d.ts +13 -0
  271. package/dist/es-dev/components/calendar/daikin-calendar.js +73 -26
  272. package/dist/es-dev/components/checkbox/daikin-checkbox.d.ts +18 -0
  273. package/dist/es-dev/components/checkbox/daikin-checkbox.js +190 -52
  274. package/dist/es-dev/components/checkbox-group/daikin-checkbox-group.d.ts +5 -0
  275. package/dist/es-dev/components/checkbox-group/daikin-checkbox-group.js +7 -1
  276. package/dist/es-dev/components/chip/daikin-chip.d.ts +20 -0
  277. package/dist/es-dev/components/chip/daikin-chip.js +195 -93
  278. package/dist/es-dev/components/combobox/daikin-combobox.d.ts +10 -0
  279. package/dist/es-dev/components/combobox/daikin-combobox.js +111 -33
  280. package/dist/es-dev/components/date-picker/daikin-date-picker.d.ts +37 -2
  281. package/dist/es-dev/components/date-picker/daikin-date-picker.js +243 -65
  282. package/dist/es-dev/components/drawer/daikin-drawer.js +1 -1
  283. package/dist/es-dev/components/dropdown/daikin-dropdown.d.ts +13 -0
  284. package/dist/es-dev/components/dropdown/daikin-dropdown.js +164 -32
  285. package/dist/es-dev/components/dropdown-item/daikin-dropdown-item.js +13 -6
  286. package/dist/es-dev/components/icon-button/daikin-icon-button.d.ts +2 -0
  287. package/dist/es-dev/components/icon-button/daikin-icon-button.js +2 -0
  288. package/dist/es-dev/components/index.js +4 -4
  289. package/dist/es-dev/components/input-group/daikin-input-group.d.ts +10 -0
  290. package/dist/es-dev/components/input-group/daikin-input-group.js +89 -31
  291. package/dist/es-dev/components/list-item/daikin-list-item.d.ts +9 -0
  292. package/dist/es-dev/components/list-item/daikin-list-item.js +21 -10
  293. package/dist/es-dev/components/logo/daikin-logo.d.ts +2 -2
  294. package/dist/es-dev/components/logo/daikin-logo.js +1 -1
  295. package/dist/es-dev/components/menu/daikin-menu.js +2 -2
  296. package/dist/es-dev/components/modal-header/daikin-modal-header.d.ts +1 -0
  297. package/dist/es-dev/components/modal-header/daikin-modal-header.js +10 -4
  298. package/dist/es-dev/components/navigation/daikin-navigation.d.ts +9 -0
  299. package/dist/es-dev/components/navigation/daikin-navigation.js +22 -1
  300. package/dist/es-dev/components/navigation-item/daikin-navigation-item.js +18 -14
  301. package/dist/es-dev/components/pagination/daikin-pagination.d.ts +11 -0
  302. package/dist/es-dev/components/pagination/daikin-pagination.js +61 -20
  303. package/dist/es-dev/components/progress-bar/daikin-progress-bar.d.ts +1 -0
  304. package/dist/es-dev/components/progress-bar/daikin-progress-bar.js +27 -19
  305. package/dist/es-dev/components/radio/daikin-radio.d.ts +26 -0
  306. package/dist/es-dev/components/radio/daikin-radio.js +160 -35
  307. package/dist/es-dev/components/radio-group/daikin-radio-group.d.ts +4 -0
  308. package/dist/es-dev/components/radio-group/daikin-radio-group.js +10 -1
  309. package/dist/es-dev/components/select/daikin-select.d.ts +11 -0
  310. package/dist/es-dev/components/select/daikin-select.js +128 -21
  311. package/dist/es-dev/components/slider/daikin-slider.d.ts +4 -0
  312. package/dist/es-dev/components/slider/daikin-slider.js +61 -16
  313. package/dist/es-dev/components/status-message/daikin-status-message.d.ts +2 -0
  314. package/dist/es-dev/components/status-message/daikin-status-message.js +1 -0
  315. package/dist/es-dev/components/table/daikin-table.d.ts +58 -1
  316. package/dist/es-dev/components/table/daikin-table.js +109 -17
  317. package/dist/es-dev/components/table-cell/daikin-table-cell.js +3 -4
  318. package/dist/es-dev/components/table-header-cell/daikin-table-header-cell.js +21 -15
  319. package/dist/es-dev/components/tag/daikin-tag.d.ts +14 -0
  320. package/dist/es-dev/components/tag/daikin-tag.js +100 -21
  321. package/dist/es-dev/components/text-area/daikin-text-area.js +22 -2
  322. package/dist/es-dev/components/text-field/daikin-text-field.d.ts +9 -0
  323. package/dist/es-dev/components/text-field/daikin-text-field.js +97 -51
  324. package/dist/es-dev/components/text-field/number-utils.d.ts +7 -0
  325. package/dist/es-dev/components/text-field/number-utils.js +51 -19
  326. package/dist/es-dev/components/text-masked-field/daikin-text-masked-field.js +31 -7
  327. package/dist/es-dev/components/time-picker/daikin-time-picker.d.ts +57 -14
  328. package/dist/es-dev/components/time-picker/daikin-time-picker.js +327 -110
  329. package/dist/es-dev/components/time-picker/index.js +4 -4
  330. package/dist/es-dev/components/toast-notification-manager/daikin-toast-notification-manager.js +1 -1
  331. package/dist/es-dev/components/toggle/daikin-toggle.d.ts +5 -0
  332. package/dist/es-dev/components/toggle/daikin-toggle.js +110 -35
  333. package/dist/es-dev/components/tooltip/daikin-tooltip.js +1 -1
  334. package/dist/es-dev/components/tree-item/daikin-tree-item.d.ts +1 -0
  335. package/dist/es-dev/components/tree-item/daikin-tree-item.js +24 -8
  336. package/dist/es-dev/components/tree-section/daikin-tree-section.d.ts +1 -0
  337. package/dist/es-dev/components/tree-section/daikin-tree-section.js +7 -1
  338. package/dist/es-dev/components/vertical-navigation/daikin-vertical-navigation.js +1 -1
  339. package/dist/es-dev/components/vertical-navigation-item/daikin-vertical-navigation-item.d.ts +17 -7
  340. package/dist/es-dev/components/vertical-navigation-item/daikin-vertical-navigation-item.js +248 -38
  341. package/dist/es-dev/components/vertical-navigation-menu-item/daikin-vertical-navigation-menu-item.d.ts +6 -1
  342. package/dist/es-dev/components/vertical-navigation-menu-item/daikin-vertical-navigation-menu-item.js +104 -34
  343. package/dist/es-dev/controllers/custom-readonly.d.ts +28 -0
  344. package/dist/es-dev/controllers/custom-readonly.js +59 -0
  345. package/dist/es-dev/index.js +4 -4
  346. package/dist/es-dev/tailwind.css.js +1 -1
  347. package/dist/es-dev/utils/calendar-common.d.ts +1 -1
  348. package/dist/es-dev/utils/calendar-common.js +6 -2
  349. package/dist/es-dev/utils/extract-half-width-digits.d.ts +15 -0
  350. package/dist/es-dev/utils/extract-half-width-digits.js +11 -0
  351. package/icons/logo-negative.svg +16 -9
  352. package/icons/logo-positive.svg +16 -9
  353. package/package.json +6 -5
@@ -1171,30 +1171,6 @@
1171
1171
  }
1172
1172
  ]
1173
1173
  },
1174
- {
1175
- "kind": "javascript-module",
1176
- "path": "dist/es/constants/events.js",
1177
- "declarations": [
1178
- {
1179
- "kind": "variable",
1180
- "name": "EVENT_CLOSE",
1181
- "type": {
1182
- "text": "string"
1183
- },
1184
- "default": "\"close\""
1185
- }
1186
- ],
1187
- "exports": [
1188
- {
1189
- "kind": "js",
1190
- "name": "EVENT_CLOSE",
1191
- "declaration": {
1192
- "name": "EVENT_CLOSE",
1193
- "module": "src/constants/events.ts"
1194
- }
1195
- }
1196
- ]
1197
- },
1198
1174
  {
1199
1175
  "kind": "javascript-module",
1200
1176
  "path": "dist/es/components/index.js",
@@ -1762,6 +1738,30 @@
1762
1738
  }
1763
1739
  ]
1764
1740
  },
1741
+ {
1742
+ "kind": "javascript-module",
1743
+ "path": "dist/es/constants/events.js",
1744
+ "declarations": [
1745
+ {
1746
+ "kind": "variable",
1747
+ "name": "EVENT_CLOSE",
1748
+ "type": {
1749
+ "text": "string"
1750
+ },
1751
+ "default": "\"close\""
1752
+ }
1753
+ ],
1754
+ "exports": [
1755
+ {
1756
+ "kind": "js",
1757
+ "name": "EVENT_CLOSE",
1758
+ "declaration": {
1759
+ "name": "EVENT_CLOSE",
1760
+ "module": "src/constants/events.ts"
1761
+ }
1762
+ }
1763
+ ]
1764
+ },
1765
1765
  {
1766
1766
  "kind": "javascript-module",
1767
1767
  "path": "dist/es/controllers/block-scroll.js",
@@ -1846,6 +1846,132 @@
1846
1846
  }
1847
1847
  ]
1848
1848
  },
1849
+ {
1850
+ "kind": "javascript-module",
1851
+ "path": "dist/es/controllers/custom-readonly.js",
1852
+ "declarations": [
1853
+ {
1854
+ "kind": "class",
1855
+ "description": "Adds a readonly fallback for controls that do not support native readonly semantics.\n\nThis controller blocks interaction events (pointerdown, keydown, wheel)\nto prevent the user from changing the value.",
1856
+ "name": "CustomReadonlyController",
1857
+ "members": [
1858
+ {
1859
+ "kind": "field",
1860
+ "name": "_target",
1861
+ "type": {
1862
+ "text": "E | null"
1863
+ },
1864
+ "privacy": "private",
1865
+ "default": "null"
1866
+ },
1867
+ {
1868
+ "kind": "field",
1869
+ "name": "_blockedKeys",
1870
+ "type": {
1871
+ "text": "ReadonlySet<string>"
1872
+ },
1873
+ "privacy": "private",
1874
+ "readonly": true,
1875
+ "default": "new Set(_options.blockedKeys ?? [])"
1876
+ },
1877
+ {
1878
+ "kind": "method",
1879
+ "name": "_isReadonlyActive",
1880
+ "privacy": "private",
1881
+ "return": {
1882
+ "type": {
1883
+ "text": "boolean"
1884
+ }
1885
+ }
1886
+ },
1887
+ {
1888
+ "kind": "field",
1889
+ "name": "_preventInteraction",
1890
+ "privacy": "private",
1891
+ "readonly": true
1892
+ },
1893
+ {
1894
+ "kind": "field",
1895
+ "name": "_handleKeydown",
1896
+ "privacy": "private",
1897
+ "readonly": true
1898
+ },
1899
+ {
1900
+ "kind": "method",
1901
+ "name": "_detachFromTarget",
1902
+ "privacy": "private",
1903
+ "return": {
1904
+ "type": {
1905
+ "text": "void"
1906
+ }
1907
+ },
1908
+ "parameters": [
1909
+ {
1910
+ "name": "target",
1911
+ "type": {
1912
+ "text": "E"
1913
+ }
1914
+ }
1915
+ ]
1916
+ },
1917
+ {
1918
+ "kind": "method",
1919
+ "name": "_attachToTarget",
1920
+ "privacy": "private",
1921
+ "return": {
1922
+ "type": {
1923
+ "text": "void"
1924
+ }
1925
+ },
1926
+ "parameters": [
1927
+ {
1928
+ "name": "target",
1929
+ "type": {
1930
+ "text": "E"
1931
+ }
1932
+ }
1933
+ ]
1934
+ },
1935
+ {
1936
+ "kind": "method",
1937
+ "name": "setTarget",
1938
+ "return": {
1939
+ "type": {
1940
+ "text": "void"
1941
+ }
1942
+ },
1943
+ "parameters": [
1944
+ {
1945
+ "name": "target",
1946
+ "type": {
1947
+ "text": "E | null"
1948
+ }
1949
+ }
1950
+ ]
1951
+ },
1952
+ {
1953
+ "kind": "method",
1954
+ "name": "hostDisconnected",
1955
+ "return": {
1956
+ "type": {
1957
+ "text": "void"
1958
+ }
1959
+ }
1960
+ }
1961
+ ]
1962
+ }
1963
+ ],
1964
+ "exports": [
1965
+ {
1966
+ "kind": "js",
1967
+ "name": "CustomReadonlyController",
1968
+ "declaration": {
1969
+ "name": "CustomReadonlyController",
1970
+ "module": "src/controllers/custom-readonly.ts"
1971
+ }
1972
+ }
1973
+ ]
1974
+ },
1849
1975
  {
1850
1976
  "kind": "javascript-module",
1851
1977
  "path": "dist/es/controllers/floating-ui-auto-update.js",
@@ -2543,6 +2669,41 @@
2543
2669
  }
2544
2670
  ]
2545
2671
  },
2672
+ {
2673
+ "kind": "javascript-module",
2674
+ "path": "dist/es/utils/extract-half-width-digits.js",
2675
+ "declarations": [
2676
+ {
2677
+ "kind": "function",
2678
+ "name": "extractHalfWidthDigits",
2679
+ "return": {
2680
+ "type": {
2681
+ "text": ""
2682
+ }
2683
+ },
2684
+ "parameters": [
2685
+ {
2686
+ "name": "composedText",
2687
+ "type": {
2688
+ "text": "string"
2689
+ },
2690
+ "description": "The raw string from a `CompositionEvent.data`."
2691
+ }
2692
+ ],
2693
+ "description": "Converts a string of composed IME text to an array of half-width digit characters.\n\nFull-width digits (U+FF10–U+FF19, e.g. \"123\") are converted to their half-width\nequivalents (\"123\"), and all non-digit characters are discarded."
2694
+ }
2695
+ ],
2696
+ "exports": [
2697
+ {
2698
+ "kind": "js",
2699
+ "name": "extractHalfWidthDigits",
2700
+ "declaration": {
2701
+ "name": "extractHalfWidthDigits",
2702
+ "module": "src/utils/extract-half-width-digits.ts"
2703
+ }
2704
+ }
2705
+ ]
2706
+ },
2546
2707
  {
2547
2708
  "kind": "javascript-module",
2548
2709
  "path": "dist/es/utils/is-similar-to-click.js",
@@ -3137,6 +3298,10 @@
3137
3298
  {
3138
3299
  "description": "A slot for the accordion item summary content.",
3139
3300
  "name": "summary"
3301
+ },
3302
+ {
3303
+ "description": "A slot for an icon to be placed to the left of the summary text. Place `daikin-icon` or something similar.",
3304
+ "name": "left-icon"
3140
3305
  }
3141
3306
  ],
3142
3307
  "members": [
@@ -4221,6 +4386,10 @@
4221
4386
  {
4222
4387
  "description": "A slot for the breadcrumb item content.",
4223
4388
  "name": ""
4389
+ },
4390
+ {
4391
+ "description": "A slot for an icon to be placed to the left of the content. Place `daikin-icon` or something similar. This will only be displayed when `variant=\"normal\"` or `variant=\"current\"`.",
4392
+ "name": "left-icon"
4224
4393
  }
4225
4394
  ],
4226
4395
  "members": [
@@ -5090,6 +5259,17 @@
5090
5259
  "attribute": "default-value",
5091
5260
  "reflects": true
5092
5261
  },
5262
+ {
5263
+ "kind": "field",
5264
+ "name": "locale",
5265
+ "type": {
5266
+ "text": "\"en\" | \"ja\" | null"
5267
+ },
5268
+ "default": "null",
5269
+ "description": "The locale used for calendar formatting.\nIf not provided, the browser's default locale will be used.\nThe component automatically adapts the calendar text to the user's locale. Currently, only English and Japanese are supported.",
5270
+ "attribute": "locale",
5271
+ "reflects": true
5272
+ },
5093
5273
  {
5094
5274
  "kind": "field",
5095
5275
  "name": "view",
@@ -5120,6 +5300,16 @@
5120
5300
  "default": "null",
5121
5301
  "description": "The date to be focused.\nUsed to set focus on a date that is not in the current view (year and month)."
5122
5302
  },
5303
+ {
5304
+ "kind": "field",
5305
+ "name": "_locale",
5306
+ "type": {
5307
+ "text": "\"en\" | \"ja\""
5308
+ },
5309
+ "privacy": "private",
5310
+ "description": "The locale used for calendar text.\nIf not provided, the component uses the browser locale and falls back to English for unsupported locales.\nCurrently, only English (`en`) and Japanese (`ja`) are supported.",
5311
+ "readonly": true
5312
+ },
5123
5313
  {
5124
5314
  "kind": "field",
5125
5315
  "name": "_value",
@@ -5321,6 +5511,30 @@
5321
5511
  }
5322
5512
  ]
5323
5513
  },
5514
+ {
5515
+ "kind": "method",
5516
+ "name": "_createCalendarHeaderLabel",
5517
+ "privacy": "private",
5518
+ "return": {
5519
+ "type": {
5520
+ "text": "string"
5521
+ }
5522
+ },
5523
+ "parameters": [
5524
+ {
5525
+ "name": "month",
5526
+ "type": {
5527
+ "text": "number"
5528
+ }
5529
+ },
5530
+ {
5531
+ "name": "year",
5532
+ "type": {
5533
+ "text": "number"
5534
+ }
5535
+ }
5536
+ ]
5537
+ },
5324
5538
  {
5325
5539
  "kind": "method",
5326
5540
  "name": "_createYearAndMonthPickerContainer",
@@ -5551,6 +5765,15 @@
5551
5765
  "default": "null",
5552
5766
  "description": "The month that is initially displayed when the date picker is opened.\nIf there is a `value` attribute, this is ignored.",
5553
5767
  "fieldName": "defaultValue"
5768
+ },
5769
+ {
5770
+ "name": "locale",
5771
+ "type": {
5772
+ "text": "\"en\" | \"ja\" | null"
5773
+ },
5774
+ "default": "null",
5775
+ "description": "The locale used for calendar formatting.\nIf not provided, the browser's default locale will be used.\nThe component automatically adapts the calendar text to the user's locale. Currently, only English and Japanese are supported.",
5776
+ "fieldName": "locale"
5554
5777
  }
5555
5778
  ],
5556
5779
  "superclass": {
@@ -6591,6 +6814,17 @@
6591
6814
  "attribute": "disabled",
6592
6815
  "reflects": true
6593
6816
  },
6817
+ {
6818
+ "kind": "field",
6819
+ "name": "readonly",
6820
+ "type": {
6821
+ "text": "boolean"
6822
+ },
6823
+ "default": "false",
6824
+ "description": "Whether the checkbox is readonly.",
6825
+ "attribute": "readonly",
6826
+ "reflects": true
6827
+ },
6594
6828
  {
6595
6829
  "kind": "field",
6596
6830
  "name": "disabledByParent",
@@ -6601,6 +6835,16 @@
6601
6835
  "description": "Specify the checkbox disabled state controlled by the parent component.\nControlled by `daikin-checkbox-group`.",
6602
6836
  "privacy": "private"
6603
6837
  },
6838
+ {
6839
+ "kind": "field",
6840
+ "name": "readonlyByParent",
6841
+ "type": {
6842
+ "text": "boolean"
6843
+ },
6844
+ "default": "false",
6845
+ "description": "Specify the checkbox readonly state controlled by the parent component.\nControlled by `daikin-checkbox-group`.",
6846
+ "privacy": "private"
6847
+ },
6604
6848
  {
6605
6849
  "kind": "field",
6606
6850
  "name": "_disabled",
@@ -6613,17 +6857,27 @@
6613
6857
  },
6614
6858
  {
6615
6859
  "kind": "field",
6616
- "name": "_inputRef",
6860
+ "name": "_readonly",
6617
6861
  "type": {
6618
- "text": "Ref<HTMLInputElement>"
6862
+ "text": "boolean"
6619
6863
  },
6620
6864
  "privacy": "private",
6865
+ "description": "The effective readonly state of the checkbox.\nReturns `true` if either `readonly` or `readonlyByParent` is `true`.",
6621
6866
  "readonly": true
6622
6867
  },
6623
6868
  {
6624
- "kind": "method",
6625
- "name": "focus",
6626
- "return": {
6869
+ "kind": "field",
6870
+ "name": "_inputRef",
6871
+ "type": {
6872
+ "text": "Ref<HTMLInputElement>"
6873
+ },
6874
+ "privacy": "private",
6875
+ "readonly": true
6876
+ },
6877
+ {
6878
+ "kind": "method",
6879
+ "name": "focus",
6880
+ "return": {
6627
6881
  "type": {
6628
6882
  "text": "void"
6629
6883
  }
@@ -7007,6 +7261,15 @@
7007
7261
  "default": "false",
7008
7262
  "description": "Specify the checkbox disabled state.",
7009
7263
  "fieldName": "disabled"
7264
+ },
7265
+ {
7266
+ "name": "readonly",
7267
+ "type": {
7268
+ "text": "boolean"
7269
+ },
7270
+ "default": "false",
7271
+ "description": "Whether the checkbox is readonly.",
7272
+ "fieldName": "readonly"
7010
7273
  }
7011
7274
  ],
7012
7275
  "superclass": {
@@ -7099,6 +7362,17 @@
7099
7362
  "attribute": "disabled",
7100
7363
  "reflects": true
7101
7364
  },
7365
+ {
7366
+ "kind": "field",
7367
+ "name": "readonly",
7368
+ "type": {
7369
+ "text": "boolean"
7370
+ },
7371
+ "default": "false",
7372
+ "description": "Whether the checkbox group is readonly.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
7373
+ "attribute": "readonly",
7374
+ "reflects": true
7375
+ },
7102
7376
  {
7103
7377
  "kind": "field",
7104
7378
  "name": "_label",
@@ -7246,6 +7520,15 @@
7246
7520
  "default": "false",
7247
7521
  "description": "Whether the checkbox group is disabled.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
7248
7522
  "fieldName": "disabled"
7523
+ },
7524
+ {
7525
+ "name": "readonly",
7526
+ "type": {
7527
+ "text": "boolean"
7528
+ },
7529
+ "default": "false",
7530
+ "description": "Whether the checkbox group is readonly.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
7531
+ "fieldName": "readonly"
7249
7532
  }
7250
7533
  ],
7251
7534
  "superclass": {
@@ -7298,6 +7581,12 @@
7298
7581
  "kind": "class",
7299
7582
  "description": "A chip is a small UI component that represents a single piece of information, a filter, or a contact. Think of it as a compact tag or a small, clickable token.",
7300
7583
  "name": "DaikinChip",
7584
+ "cssParts": [
7585
+ {
7586
+ "description": "Targets the internal <span> element wrapping the chip. This is typically used to control the chip's styling and interactivity. For example, you can adjust spacing and customize the cursor appearance during dragging: daikin-chip::part(chip) { margin: -4px; padding: 4px; cursor: grab; } daikin-chip::part(chip):active { cursor: grabbing; }",
7587
+ "name": "chip"
7588
+ }
7589
+ ],
7301
7590
  "slots": [
7302
7591
  {
7303
7592
  "description": "A slot for the chip content.",
@@ -7331,6 +7620,39 @@
7331
7620
  "attribute": "variant",
7332
7621
  "reflects": true
7333
7622
  },
7623
+ {
7624
+ "kind": "field",
7625
+ "name": "color",
7626
+ "type": {
7627
+ "text": "\"gray\" | \"red\" | \"blue\" | \"yellow\" | \"green\" | \"orange\" | \"purple\""
7628
+ },
7629
+ "description": "Specify the color of the chip when type is \"input\".",
7630
+ "default": "\"gray\"",
7631
+ "attribute": "color",
7632
+ "reflects": true
7633
+ },
7634
+ {
7635
+ "kind": "field",
7636
+ "name": "elevated",
7637
+ "type": {
7638
+ "text": "boolean"
7639
+ },
7640
+ "default": "false",
7641
+ "description": "Whether the chip has a shadow to indicate elevation.",
7642
+ "attribute": "elevated",
7643
+ "reflects": true
7644
+ },
7645
+ {
7646
+ "kind": "field",
7647
+ "name": "hideRemoveButton",
7648
+ "type": {
7649
+ "text": "boolean"
7650
+ },
7651
+ "default": "false",
7652
+ "description": "When `true`, hides the remove button and makes the chip non-removable when type is \"input\".",
7653
+ "attribute": "hide-remove-button",
7654
+ "reflects": true
7655
+ },
7334
7656
  {
7335
7657
  "kind": "field",
7336
7658
  "name": "checked",
@@ -7574,6 +7896,33 @@
7574
7896
  "default": "\"outline\"",
7575
7897
  "fieldName": "variant"
7576
7898
  },
7899
+ {
7900
+ "name": "color",
7901
+ "type": {
7902
+ "text": "\"gray\" | \"red\" | \"blue\" | \"yellow\" | \"green\" | \"orange\" | \"purple\""
7903
+ },
7904
+ "description": "Specify the color of the chip when type is \"input\".",
7905
+ "default": "\"gray\"",
7906
+ "fieldName": "color"
7907
+ },
7908
+ {
7909
+ "name": "elevated",
7910
+ "type": {
7911
+ "text": "boolean"
7912
+ },
7913
+ "default": "false",
7914
+ "description": "Whether the chip has a shadow to indicate elevation.",
7915
+ "fieldName": "elevated"
7916
+ },
7917
+ {
7918
+ "name": "hide-remove-button",
7919
+ "type": {
7920
+ "text": "boolean"
7921
+ },
7922
+ "default": "false",
7923
+ "description": "When `true`, hides the remove button and makes the chip non-removable when type is \"input\".",
7924
+ "fieldName": "hideRemoveButton"
7925
+ },
7577
7926
  {
7578
7927
  "name": "checked",
7579
7928
  "type": {
@@ -7684,6 +8033,12 @@
7684
8033
  "kind": "class",
7685
8034
  "description": "A combobox component.\nUnlike a dropdown component, a combobox primarily functions as a text field (using a native `<input>` tag) that can accept custom user input. The dropdown list serves as a helpful aid to expedite the user's input process.",
7686
8035
  "name": "DaikinCombobox",
8036
+ "slots": [
8037
+ {
8038
+ "description": "A slot for an icon to be placed to the left of the text. Place `daikin-icon` or something similar.",
8039
+ "name": "left-icon"
8040
+ }
8041
+ ],
7687
8042
  "members": [
7688
8043
  {
7689
8044
  "kind": "field",
@@ -7739,6 +8094,17 @@
7739
8094
  "attribute": "open",
7740
8095
  "reflects": true
7741
8096
  },
8097
+ {
8098
+ "kind": "field",
8099
+ "name": "readonly",
8100
+ "type": {
8101
+ "text": "boolean"
8102
+ },
8103
+ "default": "false",
8104
+ "description": "Whether the combobox is readonly.",
8105
+ "attribute": "readonly",
8106
+ "reflects": true
8107
+ },
7742
8108
  {
7743
8109
  "kind": "field",
7744
8110
  "name": "items",
@@ -7790,6 +8156,24 @@
7790
8156
  "default": "null",
7791
8157
  "description": "The label text used as the value of aria-label.\nSet automatically by `reflectInputGroup` method."
7792
8158
  },
8159
+ {
8160
+ "kind": "field",
8161
+ "name": "_hasLeftIcon",
8162
+ "type": {
8163
+ "text": "boolean"
8164
+ },
8165
+ "privacy": "private",
8166
+ "default": "false"
8167
+ },
8168
+ {
8169
+ "kind": "field",
8170
+ "name": "_isPopupOpen",
8171
+ "type": {
8172
+ "text": "boolean"
8173
+ },
8174
+ "privacy": "private",
8175
+ "readonly": true
8176
+ },
7793
8177
  {
7794
8178
  "kind": "field",
7795
8179
  "name": "_autoUpdateController",
@@ -7840,6 +8224,24 @@
7840
8224
  "name": "_closePopup",
7841
8225
  "privacy": "private"
7842
8226
  },
8227
+ {
8228
+ "kind": "method",
8229
+ "name": "_handleLeftIconSlotChange",
8230
+ "privacy": "private",
8231
+ "return": {
8232
+ "type": {
8233
+ "text": "void"
8234
+ }
8235
+ },
8236
+ "parameters": [
8237
+ {
8238
+ "name": "event",
8239
+ "type": {
8240
+ "text": "Event"
8241
+ }
8242
+ }
8243
+ ]
8244
+ },
7843
8245
  {
7844
8246
  "kind": "method",
7845
8247
  "name": "_handleFocusOut",
@@ -8384,6 +8786,15 @@
8384
8786
  "default": "false",
8385
8787
  "description": "Whether the combobox menu is opened.\nWhen controlling this property externally, listen to the `toggle` event and sync your state based on `event.newState` to keep it in sync.",
8386
8788
  "fieldName": "open"
8789
+ },
8790
+ {
8791
+ "name": "readonly",
8792
+ "type": {
8793
+ "text": "boolean"
8794
+ },
8795
+ "default": "false",
8796
+ "description": "Whether the combobox is readonly.",
8797
+ "fieldName": "readonly"
8387
8798
  }
8388
8799
  ],
8389
8800
  "superclass": {
@@ -8565,13 +8976,24 @@
8565
8976
  {
8566
8977
  "kind": "field",
8567
8978
  "name": "locale",
8979
+ "type": {
8980
+ "text": "\"en\" | \"ja\" | null"
8981
+ },
8982
+ "default": "null",
8983
+ "description": "The locale used for date picker.\nIf not provided, the browser's default locale will be used.\nCurrently, only English and Japanese are supported.\nThe locale determined by this property controls the language of the text inside the calendar popup.\n\n**Note**: The pre-filled input format (such as YYYY/MM/DD) is independent of this property and is dynamically configured according to the user's current device locale.",
8984
+ "attribute": "locale",
8985
+ "reflects": true
8986
+ },
8987
+ {
8988
+ "kind": "field",
8989
+ "name": "inputLocale",
8568
8990
  "type": {
8569
8991
  "text": "string | null"
8570
8992
  },
8571
8993
  "default": "null",
8572
8994
  "description": "The locale used for date formatting.\nIf not provided, the browser's default locale will be used. It is usually not necessary to specify it explicitly.",
8573
8995
  "privacy": "private",
8574
- "attribute": "locale",
8996
+ "attribute": "input-locale",
8575
8997
  "reflects": true
8576
8998
  },
8577
8999
  {
@@ -8593,6 +9015,51 @@
8593
9015
  "privacy": "private",
8594
9016
  "default": "\"month\""
8595
9017
  },
9018
+ {
9019
+ "kind": "field",
9020
+ "name": "_preCompositionValue",
9021
+ "type": {
9022
+ "text": "string"
9023
+ },
9024
+ "privacy": "private",
9025
+ "default": "\"\""
9026
+ },
9027
+ {
9028
+ "kind": "field",
9029
+ "name": "_inputValue",
9030
+ "type": {
9031
+ "text": "string"
9032
+ },
9033
+ "privacy": "private",
9034
+ "default": "\"\""
9035
+ },
9036
+ {
9037
+ "kind": "field",
9038
+ "name": "_monthDigitIndex",
9039
+ "type": {
9040
+ "text": "number"
9041
+ },
9042
+ "privacy": "private",
9043
+ "default": "0"
9044
+ },
9045
+ {
9046
+ "kind": "field",
9047
+ "name": "_dayDigitIndex",
9048
+ "type": {
9049
+ "text": "number"
9050
+ },
9051
+ "privacy": "private",
9052
+ "default": "0"
9053
+ },
9054
+ {
9055
+ "kind": "field",
9056
+ "name": "_yearDigitIndex",
9057
+ "type": {
9058
+ "text": "number"
9059
+ },
9060
+ "privacy": "private",
9061
+ "default": "0"
9062
+ },
8596
9063
  {
8597
9064
  "kind": "field",
8598
9065
  "name": "_autoUpdateController",
@@ -8656,13 +9123,23 @@
8656
9123
  },
8657
9124
  {
8658
9125
  "kind": "field",
8659
- "name": "_value",
9126
+ "name": "_dateValue",
8660
9127
  "type": {
8661
9128
  "text": "Date | null"
8662
9129
  },
8663
9130
  "privacy": "private",
8664
9131
  "readonly": true
8665
9132
  },
9133
+ {
9134
+ "kind": "field",
9135
+ "name": "_displayValue",
9136
+ "type": {
9137
+ "text": "string"
9138
+ },
9139
+ "privacy": "private",
9140
+ "description": "Returns the string to bind to the <input> element's .value property.\n\n- When this.value holds a valid date, show the locale-formatted date.\n- When _inputValue contains partial or invalid content (placeholders / impossible\n dates like 02/31), return it so the user's in-progress entry is preserved\n across Lit re-renders.\n- Otherwise (e.g. this.value was cleared externally while _inputValue still\n holds a now-stale complete valid date string) return \"\" so the CSS placeholder\n text is visible instead.",
9141
+ "readonly": true
9142
+ },
8666
9143
  {
8667
9144
  "kind": "field",
8668
9145
  "name": "_min",
@@ -8779,82 +9256,113 @@
8779
9256
  },
8780
9257
  {
8781
9258
  "kind": "method",
8782
- "name": "_handleKeyDown",
9259
+ "name": "_handleCompositionStart",
8783
9260
  "privacy": "private",
8784
9261
  "parameters": [
8785
9262
  {
8786
9263
  "name": "event",
8787
9264
  "type": {
8788
- "text": "KeyboardEvent"
9265
+ "text": "CompositionEvent"
8789
9266
  }
8790
9267
  }
8791
9268
  ]
8792
9269
  },
8793
9270
  {
8794
9271
  "kind": "method",
8795
- "name": "_handleBeforeInput",
9272
+ "name": "_handleCompositionEnd",
8796
9273
  "privacy": "private",
8797
9274
  "parameters": [
8798
9275
  {
8799
9276
  "name": "event",
8800
9277
  "type": {
8801
- "text": "InputEvent"
9278
+ "text": "CompositionEvent"
8802
9279
  }
8803
9280
  }
8804
9281
  ]
8805
9282
  },
8806
9283
  {
8807
9284
  "kind": "method",
8808
- "name": "_handleSelect",
9285
+ "name": "_applyDigitToPart",
8809
9286
  "privacy": "private",
9287
+ "return": {
9288
+ "type": {
9289
+ "text": "ReturnType<typeof handleDigitInput>"
9290
+ }
9291
+ },
8810
9292
  "parameters": [
8811
9293
  {
8812
- "name": "event",
9294
+ "name": "parts",
8813
9295
  "type": {
8814
- "text": "Event"
9296
+ "text": "Readonly<DateParts>"
9297
+ }
9298
+ },
9299
+ {
9300
+ "name": "item",
9301
+ "type": {
9302
+ "text": "DateItem"
9303
+ }
9304
+ },
9305
+ {
9306
+ "name": "digit",
9307
+ "type": {
9308
+ "text": "string"
8815
9309
  }
8816
9310
  }
8817
9311
  ]
8818
9312
  },
8819
9313
  {
8820
9314
  "kind": "method",
8821
- "name": "_handlePointerDown",
8822
- "privacy": "private"
8823
- },
8824
- {
8825
- "kind": "method",
8826
- "name": "_handlePointerUp",
8827
- "privacy": "private"
8828
- },
8829
- {
8830
- "kind": "method",
8831
- "name": "_handleCalendarKeyDown",
9315
+ "name": "_applyDigits",
8832
9316
  "privacy": "private",
9317
+ "return": {
9318
+ "type": {
9319
+ "text": "void"
9320
+ }
9321
+ },
8833
9322
  "parameters": [
8834
9323
  {
8835
- "name": "event",
9324
+ "name": "target",
8836
9325
  "type": {
8837
- "text": "KeyboardEvent"
9326
+ "text": "HTMLInputElement"
9327
+ }
9328
+ },
9329
+ {
9330
+ "name": "digits",
9331
+ "type": {
9332
+ "text": "string[]"
8838
9333
  }
8839
9334
  }
8840
9335
  ]
8841
9336
  },
8842
9337
  {
8843
9338
  "kind": "method",
8844
- "name": "_handleToggle",
9339
+ "name": "_handleKeyDown",
8845
9340
  "privacy": "private",
8846
9341
  "parameters": [
8847
9342
  {
8848
9343
  "name": "event",
8849
9344
  "type": {
8850
- "text": "ToggleEvent"
9345
+ "text": "KeyboardEvent"
8851
9346
  }
8852
9347
  }
8853
9348
  ]
8854
9349
  },
8855
9350
  {
8856
9351
  "kind": "method",
8857
- "name": "_updateValue",
9352
+ "name": "_handleBeforeInput",
9353
+ "privacy": "private",
9354
+ "parameters": [
9355
+ {
9356
+ "name": "event",
9357
+ "type": {
9358
+ "text": "InputEvent"
9359
+ }
9360
+ }
9361
+ ]
9362
+ },
9363
+ {
9364
+ "kind": "method",
9365
+ "name": "_handleSelect",
8858
9366
  "privacy": "private",
8859
9367
  "parameters": [
8860
9368
  {
@@ -8865,6 +9373,79 @@
8865
9373
  }
8866
9374
  ]
8867
9375
  },
9376
+ {
9377
+ "kind": "method",
9378
+ "name": "_handlePointerDown",
9379
+ "privacy": "private"
9380
+ },
9381
+ {
9382
+ "kind": "method",
9383
+ "name": "_handlePointerUp",
9384
+ "privacy": "private"
9385
+ },
9386
+ {
9387
+ "kind": "method",
9388
+ "name": "_handleCalendarKeyDown",
9389
+ "privacy": "private",
9390
+ "parameters": [
9391
+ {
9392
+ "name": "event",
9393
+ "type": {
9394
+ "text": "KeyboardEvent"
9395
+ }
9396
+ }
9397
+ ]
9398
+ },
9399
+ {
9400
+ "kind": "method",
9401
+ "name": "_handleToggle",
9402
+ "privacy": "private",
9403
+ "parameters": [
9404
+ {
9405
+ "name": "event",
9406
+ "type": {
9407
+ "text": "ToggleEvent"
9408
+ }
9409
+ }
9410
+ ]
9411
+ },
9412
+ {
9413
+ "kind": "method",
9414
+ "name": "_isInputComplete",
9415
+ "privacy": "private",
9416
+ "return": {
9417
+ "type": {
9418
+ "text": "boolean"
9419
+ }
9420
+ },
9421
+ "parameters": [
9422
+ {
9423
+ "name": "value",
9424
+ "type": {
9425
+ "text": "string"
9426
+ }
9427
+ }
9428
+ ],
9429
+ "description": "Returns true if all date parts (year/month/day) in the input are filled with\ndigits and no placeholder text (YYYY, MM, DD) remains."
9430
+ },
9431
+ {
9432
+ "kind": "method",
9433
+ "name": "_updateValue",
9434
+ "privacy": "private",
9435
+ "return": {
9436
+ "type": {
9437
+ "text": "void"
9438
+ }
9439
+ },
9440
+ "parameters": [
9441
+ {
9442
+ "name": "target",
9443
+ "type": {
9444
+ "text": "HTMLInputElement"
9445
+ }
9446
+ }
9447
+ ]
9448
+ },
8868
9449
  {
8869
9450
  "kind": "method",
8870
9451
  "name": "_updateInputSelection",
@@ -9309,12 +9890,21 @@
9309
9890
  },
9310
9891
  {
9311
9892
  "name": "locale",
9893
+ "type": {
9894
+ "text": "\"en\" | \"ja\" | null"
9895
+ },
9896
+ "default": "null",
9897
+ "description": "The locale used for date picker.\nIf not provided, the browser's default locale will be used.\nCurrently, only English and Japanese are supported.\nThe locale determined by this property controls the language of the text inside the calendar popup.\n\n**Note**: The pre-filled input format (such as YYYY/MM/DD) is independent of this property and is dynamically configured according to the user's current device locale.",
9898
+ "fieldName": "locale"
9899
+ },
9900
+ {
9901
+ "name": "input-locale",
9312
9902
  "type": {
9313
9903
  "text": "string | null"
9314
9904
  },
9315
9905
  "default": "null",
9316
9906
  "description": "The locale used for date formatting.\nIf not provided, the browser's default locale will be used. It is usually not necessary to specify it explicitly.",
9317
- "fieldName": "locale"
9907
+ "fieldName": "inputLocale"
9318
9908
  }
9319
9909
  ],
9320
9910
  "superclass": {
@@ -10096,9 +10686,20 @@
10096
10686
  {
10097
10687
  "description": "Dropdown item list slot. Place `daikin-dropdown-item` elements here.",
10098
10688
  "name": ""
10689
+ },
10690
+ {
10691
+ "description": "A slot for an icon to be placed to the left of the text. Place `daikin-icon` or something similar.",
10692
+ "name": "left-icon"
10099
10693
  }
10100
10694
  ],
10101
10695
  "members": [
10696
+ {
10697
+ "kind": "field",
10698
+ "name": "_activeOpenByRoot",
10699
+ "privacy": "private",
10700
+ "static": true,
10701
+ "default": "new WeakMap<Node, DaikinDropdown>()"
10702
+ },
10102
10703
  {
10103
10704
  "kind": "field",
10104
10705
  "name": "placeholder",
@@ -10120,6 +10721,17 @@
10120
10721
  "attribute": "disabled",
10121
10722
  "reflects": true
10122
10723
  },
10724
+ {
10725
+ "kind": "field",
10726
+ "name": "readonly",
10727
+ "type": {
10728
+ "text": "boolean"
10729
+ },
10730
+ "default": "false",
10731
+ "description": "Whether the dropdown is readonly.",
10732
+ "attribute": "readonly",
10733
+ "reflects": true
10734
+ },
10123
10735
  {
10124
10736
  "kind": "field",
10125
10737
  "name": "required",
@@ -10235,6 +10847,19 @@
10235
10847
  "privacy": "private",
10236
10848
  "default": "new FloatingUIAutoUpdateController(this)"
10237
10849
  },
10850
+ {
10851
+ "kind": "field",
10852
+ "name": "_readonlyController",
10853
+ "privacy": "private",
10854
+ "readonly": true,
10855
+ "default": "new CustomReadonlyController< this, HTMLButtonElement >(this, { isReadonly: () => this.readonly, isDisabled: () => this.disabled, blockedKeys: [ \"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\", \"Home\", \"End\", \"PageUp\", \"PageDown\", \"Enter\", \" \", ], })"
10856
+ },
10857
+ {
10858
+ "kind": "field",
10859
+ "name": "_clickOutsideController",
10860
+ "privacy": "private",
10861
+ "default": "new ClickOutsideController( this, this._onClickOutside )"
10862
+ },
10238
10863
  {
10239
10864
  "kind": "field",
10240
10865
  "name": "_willBeFocusedByPress",
@@ -10259,6 +10884,25 @@
10259
10884
  "name": "_dropdownRef",
10260
10885
  "privacy": "private"
10261
10886
  },
10887
+ {
10888
+ "kind": "field",
10889
+ "name": "_isMenuOpen",
10890
+ "type": {
10891
+ "text": "boolean"
10892
+ },
10893
+ "privacy": "private",
10894
+ "readonly": true
10895
+ },
10896
+ {
10897
+ "kind": "method",
10898
+ "name": "_syncSingleOpenState",
10899
+ "privacy": "private",
10900
+ "return": {
10901
+ "type": {
10902
+ "text": "void"
10903
+ }
10904
+ }
10905
+ },
10262
10906
  {
10263
10907
  "kind": "method",
10264
10908
  "name": "_searchItem",
@@ -10349,6 +10993,11 @@
10349
10993
  "kind": "method",
10350
10994
  "name": "_handleFocusOut",
10351
10995
  "privacy": "private",
10996
+ "return": {
10997
+ "type": {
10998
+ "text": "void"
10999
+ }
11000
+ },
10352
11001
  "parameters": [
10353
11002
  {
10354
11003
  "name": "event",
@@ -10358,6 +11007,26 @@
10358
11007
  }
10359
11008
  ]
10360
11009
  },
11010
+ {
11011
+ "kind": "method",
11012
+ "name": "_closeDropdownByBlur",
11013
+ "privacy": "private",
11014
+ "return": {
11015
+ "type": {
11016
+ "text": "void"
11017
+ }
11018
+ }
11019
+ },
11020
+ {
11021
+ "kind": "method",
11022
+ "name": "_onClickOutside",
11023
+ "privacy": "private",
11024
+ "return": {
11025
+ "type": {
11026
+ "text": "void"
11027
+ }
11028
+ }
11029
+ },
10361
11030
  {
10362
11031
  "kind": "method",
10363
11032
  "name": "_removeLastSelection",
@@ -10817,6 +11486,15 @@
10817
11486
  "description": "Whether the dropdown is disabled.",
10818
11487
  "fieldName": "disabled"
10819
11488
  },
11489
+ {
11490
+ "name": "readonly",
11491
+ "type": {
11492
+ "text": "boolean"
11493
+ },
11494
+ "default": "false",
11495
+ "description": "Whether the dropdown is readonly.",
11496
+ "fieldName": "readonly"
11497
+ },
10820
11498
  {
10821
11499
  "name": "required",
10822
11500
  "type": {
@@ -11383,288 +12061,83 @@
11383
12061
  },
11384
12062
  {
11385
12063
  "kind": "javascript-module",
11386
- "path": "dist/es/components/icon-button/daikin-icon-button.js",
12064
+ "path": "dist/es/components/icon/daikin-icon.js",
11387
12065
  "declarations": [
12066
+ {
12067
+ "kind": "variable",
12068
+ "name": "iconList"
12069
+ },
11388
12070
  {
11389
12071
  "kind": "class",
11390
- "description": "The icon button component is a versatile UI element that triggers actions or submits forms when clicked.\nIt functions similarly to the HTML `<button>` tag, allowing users to initiate various operations such as submitting data, opening dialogs, or navigating to different sections of an application.\n\nYou can insert any icon, including the daikin-icon, but please note the following regarding style:\n- About fill color - The icon should be able to accept the CSS `color` property.\n- About size - The recommended width of the icon is 24px * 24px. Please make sure that the size of the icon you insert conforms to this, or please set the `width` and `height` properties of the icon to 100%.",
11391
- "name": "DaikinIconButton",
11392
- "slots": [
12072
+ "description": "A versatile UI element that displays small graphical symbols or images representing actions, objects, or concepts within an application.\nThe component uses the predefined DDS icon set by default but also supports custom icons via the icon registry.\n\nPredefined DDS icons are automatically rendered using optimized CSS classes.\nCustom icons can be dynamically loaded from various sources using the icon registry.\n\nIf an icon cannot be loaded, a blank space is displayed.\nIn development builds, warnings are logged to the console for debugging.\n\n### Using Custom Icons\n\nCustom icons must be registered with the icon registry before use.\nThey can be registered individually or in bulk using pattern matching, with support for multiple rendering modes.\n\n#### Rendering Modes\n\nCustom icons support multiple rendering modes, each with different characteristics:\n\n- **mask** (default): Uses CSS `mask-image` to render the icon.\n - Secure rendering method (SVG is converted to data URL).\n - Supports color customization via the `color` property or CSS `color`.\n - Best choice for most use cases with custom icons.\n- **background**: Uses CSS `background-image` to render the icon.\n - Secure rendering method (SVG is converted to data URL).\n - Does NOT support color customization; the icon is rendered with its original colors.\n - Use this mode when you need to preserve the original colors of multi-color SVG icons.\n- **inline**: Traditional SVG rendering using `innerHTML`.\n - Renders the raw SVG markup directly in the DOM.\n - Supports color customization if the SVG uses `currentColor` or inheritable properties.\n - ⚠️ **Security Warning**: Only use this mode with SVG content from trusted sources. Untrusted SVG content may lead to XSS vulnerabilities.\n - Use `mask` or `background` modes for better security.\n\n#### Registration Examples\n\n```js\nimport { iconRegistry } from \"@daikin-oss/design-system-web-components/icon-registry.js\";\n\n// Register a single custom icon using mask mode for secure rendering and color customization\niconRegistry.register({\n name: \"my-custom-icon\",\n svg: {\n svg: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">...</svg>',\n mode: \"mask\",\n defaultColor: \"#0066cc\"\n },\n});\n\n// Register multiple custom icons dynamically using pattern matching\niconRegistry.register({\n match: /^dynamic-custom-/,\n async fetch: (name) => {\n const response = await fetch(`/path/to/custom/icons/${name}.svg`);\n if (!response.ok) {\n throw new Error(`Failed to load custom icon \"${name}\"`);\n }\n // You can return just the SVG content as a string (defaults to mask mode)\n // Or return an object with `svg`, `defaultColor` (optional), and `mode` (optional) for more control\n return response.text();\n },\n});\n```\n\nOnce registered, you can use your custom icons in components:\n\n```html\n<daikin-icon icon=\"my-custom-icon\" color=\"current\" size=\"m\"></daikin-icon>\n<daikin-icon icon=\"dynamic-custom-icon-123\" color=\"current\" size=\"m\"></daikin-icon>\n```\n\n### Changing Icon Color\n\nTo use a custom color, set the `color` property to `\"current\"` and apply the desired color using the CSS `color` property:\n\n```html\n<daikin-icon icon=\"information\" color=\"current\" style=\"color: red;\"></daikin-icon>\n<!-- or you can inherit the color from a parent element -->\n<div style=\"color: blue;\">\n <daikin-icon icon=\"information\" color=\"current\"></daikin-icon>\n</div>\n```\n\nThis behavior is supported natively for DDS icons and `mask` mode (the default for custom icons).\nIn `inline` mode, color inheritance works only if the SVG uses `currentColor` or inheritable properties.\nNote that `background` mode does not support custom colors.",
12073
+ "name": "DaikinIcon",
12074
+ "cssProperties": [
11393
12075
  {
11394
- "description": "A slot for an icon. Place a daikin-icon element or something similar.",
11395
- "name": ""
12076
+ "description": "The size of the icon. If you set a value other than \"current\" for the `size` property, this will be automatically overwritten.",
12077
+ "name": "--ddc-icon-size"
11396
12078
  }
11397
12079
  ],
11398
12080
  "members": [
11399
12081
  {
11400
12082
  "kind": "field",
11401
- "name": "variant",
12083
+ "name": "registry",
11402
12084
  "type": {
11403
- "text": "IconButtonVariantProps[\"variant\"]"
12085
+ "text": "IconRegistry"
11404
12086
  },
11405
- "description": "Variant of the button.",
11406
- "default": "\"fill\"",
11407
- "attribute": "variant",
11408
- "reflects": true
12087
+ "default": "iconRegistry",
12088
+ "description": "The icon registry instance to use.\nDefaults to the global icon registry."
11409
12089
  },
11410
12090
  {
11411
12091
  "kind": "field",
11412
- "name": "color",
12092
+ "name": "icon",
11413
12093
  "type": {
11414
- "text": "IconButtonVariantProps[\"color\"]"
12094
+ "text": "string"
11415
12095
  },
11416
- "description": "Color of the button.",
11417
- "default": "\"default\"",
11418
- "attribute": "color",
12096
+ "description": "The name of the icon to display.\nCan be a static DDS icon name or a custom icon name registered in the icon registry.",
12097
+ "attribute": "icon",
11419
12098
  "reflects": true
11420
12099
  },
11421
12100
  {
11422
12101
  "kind": "field",
11423
- "name": "disabled",
12102
+ "name": "color",
11424
12103
  "type": {
11425
- "text": "boolean"
12104
+ "text": "IconVariantProps[\"color\"]"
11426
12105
  },
11427
- "default": "false",
11428
- "description": "Whether the button is disabled.",
11429
- "attribute": "disabled",
12106
+ "description": "The color of the icon.\nUse `\"current\"` for most cases.\n\n**This property will be removed in a future release.**\nTo prepare for this change, start using `color=\"current\"` and set icon colors via the CSS `color` property instead of using predefined color values.",
12107
+ "default": "\"default\"",
12108
+ "attribute": "color",
11430
12109
  "reflects": true
11431
12110
  },
11432
12111
  {
11433
12112
  "kind": "field",
11434
- "name": "href",
12113
+ "name": "size",
11435
12114
  "type": {
11436
- "text": "string | null"
12115
+ "text": "\"s\" | \"m\" | \"l\" | \"xl\" | \"current\""
11437
12116
  },
11438
- "default": "null",
11439
- "description": "Link `href`.\nOnly used if the `type` is `\"link\"`.\nIf omitted with `type=\"link\"`, the link will be treated as [a placeholder link](https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-a-element:~:text=If%20the%20a%20element%20has%20no%20href%20attribute) and rendered as disabled state.",
11440
- "attribute": "href",
12117
+ "description": "The size of the icon.\nIf set to \"current\", the `--ddc-icon-size` CSS variable will be used. `--ddc-icon-size` may be set by a parent component such as `daikin-icon-button`.",
12118
+ "default": "\"current\"",
12119
+ "attribute": "size",
11441
12120
  "reflects": true
11442
12121
  },
11443
12122
  {
11444
12123
  "kind": "field",
11445
- "name": "type",
12124
+ "name": "_iconData",
11446
12125
  "type": {
11447
- "text": "\"button\" | \"submit\" | \"reset\" | \"link\""
12126
+ "text": "IconData | StaticIconData | null"
11448
12127
  },
11449
- "description": "Type of the button.\nIf `\"link\"` is specified, the button will be rendered as an `<a>` element.",
11450
- "default": "\"button\"",
11451
- "attribute": "type",
11452
- "reflects": true
12128
+ "privacy": "private",
12129
+ "default": "null"
11453
12130
  },
11454
12131
  {
11455
- "kind": "field",
11456
- "name": "buttonAriaLabel",
11457
- "type": {
11458
- "text": "string | null"
11459
- },
11460
- "default": "null",
11461
- "description": "The aria-label of the icon button.",
11462
- "attribute": "button-aria-label",
11463
- "reflects": true
12132
+ "kind": "method",
12133
+ "name": "loadIcon",
12134
+ "privacy": "private"
11464
12135
  },
11465
12136
  {
11466
12137
  "kind": "field",
11467
- "name": "buttonRole",
12138
+ "name": "version",
11468
12139
  "type": {
11469
- "text": "ARIARole | null"
11470
- },
11471
- "default": "null",
11472
- "description": "Optional ARIA role of the button.",
11473
- "attribute": "button-role",
11474
- "reflects": true
11475
- },
11476
- {
11477
- "kind": "field",
11478
- "name": "buttonAriaHaspopup",
11479
- "type": {
11480
- "text": "| \"false\"\n | \"true\"\n | \"menu\"\n | \"listbox\"\n | \"tree\"\n | \"grid\"\n | \"dialog\"\n | null"
11481
- },
11482
- "default": "null",
11483
- "description": "The aria-haspopup of the icon button when `type=\"button\"`.\nWhen used within a daikin-menu component, this property is automatically assigned the value `buttonAriaHaspopup=\"menu\"`.",
11484
- "attribute": "button-aria-haspopup",
11485
- "reflects": true
11486
- },
11487
- {
11488
- "kind": "field",
11489
- "name": "buttonAriaExpanded",
11490
- "type": {
11491
- "text": "\"true\" | \"false\" | \"undefined\" | null"
11492
- },
11493
- "default": "null",
11494
- "description": "The aria-expanded of icon button when `type=\"button\"`.\nWhen used within a daikin-menu component, this property will be controlled by daikin-menu, so you don't need to specify it explicitly.",
11495
- "attribute": "button-aria-expanded",
11496
- "reflects": true
11497
- },
11498
- {
11499
- "kind": "field",
11500
- "name": "buttonTabIndex",
11501
- "type": {
11502
- "text": "number"
11503
- },
11504
- "description": "The `tabindex` of the button.\nIf omitted or set to 0, the button follows the default tab flow.\nSetting it to -1 makes the button unreachable via the Tab key.\nThis is useful when the button is part of a composite widget and accessible via other keys.",
11505
- "attribute": "button-tabindex",
11506
- "reflects": true
11507
- },
11508
- {
11509
- "kind": "field",
11510
- "name": "size",
11511
- "type": {
11512
- "text": "\"s\" | \"m\""
11513
- },
11514
- "default": "\"s\"",
11515
- "description": "Size of the button.\n- `s`: 32px * 32px\n- `m`: 48px * 48px",
11516
- "attribute": "size",
11517
- "reflects": true
11518
- },
11519
- {
11520
- "kind": "field",
11521
- "name": "_button",
11522
- "type": {
11523
- "text": "HTMLButtonElement | null"
11524
- },
11525
- "privacy": "private",
11526
- "readonly": true
11527
- },
11528
- {
11529
- "kind": "method",
11530
- "name": "getDDSNavigationTarget",
11531
- "return": {
11532
- "type": {
11533
- "text": ""
11534
- }
11535
- },
11536
- "description": "_Internal use._\nReturns the navigation target information.\nUsed by navigation handling utilities.",
11537
- "privacy": "private"
11538
- },
11539
- {
11540
- "kind": "method",
11541
- "name": "focus",
11542
- "return": {
11543
- "type": {
11544
- "text": "void"
11545
- }
11546
- },
11547
- "parameters": [
11548
- {
11549
- "name": "options",
11550
- "optional": true,
11551
- "type": {
11552
- "text": "FocusOptions"
11553
- },
11554
- "description": "focus options"
11555
- }
11556
- ],
11557
- "description": "Focuses on the inner button."
11558
- },
11559
- {
11560
- "kind": "field",
11561
- "name": "formAttr",
11562
- "type": {
11563
- "text": "string"
11564
- },
11565
- "description": "The form the component belongs to.",
11566
- "attribute": "form",
11567
- "reflects": true,
11568
- "inheritedFrom": {
11569
- "name": "DDSFormSubmitElement",
11570
- "module": "dist/es/base/dds-form-element.js"
11571
- }
11572
- },
11573
- {
11574
- "kind": "field",
11575
- "name": "formAssociated",
11576
- "type": {
11577
- "text": "boolean"
11578
- },
11579
- "static": true,
11580
- "readonly": true,
11581
- "default": "true",
11582
- "inheritedFrom": {
11583
- "name": "DDSFormSubmitElement",
11584
- "module": "dist/es/base/dds-form-element.js"
11585
- }
11586
- },
11587
- {
11588
- "kind": "field",
11589
- "name": "internals",
11590
- "type": {
11591
- "text": "ElementInternals | null | undefined"
11592
- },
11593
- "privacy": "protected",
11594
- "inheritedFrom": {
11595
- "name": "DDSFormSubmitElement",
11596
- "module": "dist/es/base/dds-form-element.js"
11597
- }
11598
- },
11599
- {
11600
- "kind": "field",
11601
- "name": "form",
11602
- "type": {
11603
- "text": "HTMLFormElement | null"
11604
- },
11605
- "description": "Returns the form object associated with the element, or null if none exists.",
11606
- "privacy": "private",
11607
- "readonly": true,
11608
- "inheritedFrom": {
11609
- "name": "DDSFormSubmitElement",
11610
- "module": "dist/es/base/dds-form-element.js"
11611
- }
11612
- },
11613
- {
11614
- "kind": "method",
11615
- "name": "requestSubmit",
11616
- "description": "A function that maps to the form control's `reportValidity()` function.\nReference: https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/reportValidity",
11617
- "privacy": "private",
11618
- "inheritedFrom": {
11619
- "name": "DDSFormSubmitElement",
11620
- "module": "dist/es/base/dds-form-element.js"
11621
- }
11622
- },
11623
- {
11624
- "kind": "method",
11625
- "name": "reset",
11626
- "description": "A function that maps to the form control's `checkValidity()` function.\nReference: https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement/checkValidity",
11627
- "privacy": "private",
11628
- "inheritedFrom": {
11629
- "name": "DDSFormSubmitElement",
11630
- "module": "dist/es/base/dds-form-element.js"
11631
- }
11632
- },
11633
- {
11634
- "kind": "method",
11635
- "name": "hostConnected",
11636
- "description": "TODO Enhance these functions to bring our components closer to native form components.",
11637
- "privacy": "private",
11638
- "inheritedFrom": {
11639
- "name": "DDSFormSubmitElement",
11640
- "module": "dist/es/base/dds-form-element.js"
11641
- }
11642
- },
11643
- {
11644
- "kind": "method",
11645
- "name": "hostDisconnected",
11646
- "description": "TODO Enhance these functions to bring our components closer to native form components.",
11647
- "privacy": "private",
11648
- "inheritedFrom": {
11649
- "name": "DDSFormSubmitElement",
11650
- "module": "dist/es/base/dds-form-element.js"
11651
- }
11652
- },
11653
- {
11654
- "kind": "method",
11655
- "name": "hostUpdated",
11656
- "description": "TODO Enhance these functions to bring our components closer to native form components.",
11657
- "privacy": "private",
11658
- "inheritedFrom": {
11659
- "name": "DDSFormSubmitElement",
11660
- "module": "dist/es/base/dds-form-element.js"
11661
- }
11662
- },
11663
- {
11664
- "kind": "field",
11665
- "name": "version",
11666
- "type": {
11667
- "text": "string"
12140
+ "text": "string"
11668
12141
  },
11669
12142
  "static": true,
11670
12143
  "readonly": true,
@@ -11741,239 +12214,376 @@
11741
12214
  }
11742
12215
  }
11743
12216
  ],
11744
- "events": [
11745
- {
11746
- "description": "A retargeted event of a [click event](https://developer.mozilla.org/en-US/docs/Web/API/Element/click_event) emitted from the inner `<button>` element. Suppressed if `disabled` is true,",
11747
- "name": "click"
11748
- }
11749
- ],
11750
12217
  "attributes": [
11751
12218
  {
11752
- "name": "form",
12219
+ "name": "icon",
11753
12220
  "type": {
11754
12221
  "text": "string"
11755
12222
  },
11756
- "description": "The form the component belongs to.",
11757
- "fieldName": "formAttr",
11758
- "inheritedFrom": {
11759
- "name": "DDSFormSubmitElement",
11760
- "module": "dist/es/base/dds-form-element.js"
11761
- }
12223
+ "description": "The name of the icon to display.\nCan be a static DDS icon name or a custom icon name registered in the icon registry.",
12224
+ "fieldName": "icon"
11762
12225
  },
11763
12226
  {
12227
+ "name": "color",
12228
+ "type": {
12229
+ "text": "IconVariantProps[\"color\"]"
12230
+ },
12231
+ "description": "The color of the icon.\nUse `\"current\"` for most cases.\n\n**This property will be removed in a future release.**\nTo prepare for this change, start using `color=\"current\"` and set icon colors via the CSS `color` property instead of using predefined color values.",
12232
+ "default": "\"default\"",
12233
+ "fieldName": "color"
12234
+ },
12235
+ {
12236
+ "name": "size",
12237
+ "type": {
12238
+ "text": "\"s\" | \"m\" | \"l\" | \"xl\" | \"current\""
12239
+ },
12240
+ "description": "The size of the icon.\nIf set to \"current\", the `--ddc-icon-size` CSS variable will be used. `--ddc-icon-size` may be set by a parent component such as `daikin-icon-button`.",
12241
+ "default": "\"current\"",
12242
+ "fieldName": "size"
12243
+ }
12244
+ ],
12245
+ "superclass": {
12246
+ "name": "DDSElement",
12247
+ "module": "/src/base"
12248
+ },
12249
+ "tagName": "daikin-icon",
12250
+ "customElement": true
12251
+ }
12252
+ ],
12253
+ "exports": [
12254
+ {
12255
+ "kind": "js",
12256
+ "name": "iconList",
12257
+ "declaration": {
12258
+ "name": "iconList",
12259
+ "module": "src/components/icon/daikin-icon.ts"
12260
+ }
12261
+ },
12262
+ {
12263
+ "kind": "js",
12264
+ "name": "DaikinIcon",
12265
+ "declaration": {
12266
+ "name": "DaikinIcon",
12267
+ "module": "src/components/icon/daikin-icon.ts"
12268
+ }
12269
+ },
12270
+ {
12271
+ "kind": "custom-element-definition",
12272
+ "name": "daikin-icon",
12273
+ "declaration": {
12274
+ "name": "DaikinIcon",
12275
+ "module": "src/components/icon/daikin-icon.ts"
12276
+ }
12277
+ },
12278
+ {
12279
+ "kind": "js",
12280
+ "name": "default",
12281
+ "declaration": {
12282
+ "name": "DaikinIcon",
12283
+ "module": "src/components/icon/daikin-icon.ts"
12284
+ }
12285
+ }
12286
+ ]
12287
+ },
12288
+ {
12289
+ "kind": "javascript-module",
12290
+ "path": "dist/es/components/icon/index.js",
12291
+ "declarations": [],
12292
+ "exports": [
12293
+ {
12294
+ "kind": "js",
12295
+ "name": "*",
12296
+ "declaration": {
12297
+ "name": "*",
12298
+ "module": "src/components/icon/daikin-icon"
12299
+ }
12300
+ }
12301
+ ]
12302
+ },
12303
+ {
12304
+ "kind": "javascript-module",
12305
+ "path": "dist/es/components/icon-button/daikin-icon-button.js",
12306
+ "declarations": [
12307
+ {
12308
+ "kind": "class",
12309
+ "description": "The icon button component is a versatile UI element that triggers actions or submits forms when clicked.\nIt functions similarly to the HTML `<button>` tag, allowing users to initiate various operations such as submitting data, opening dialogs, or navigating to different sections of an application.\n\nYou can insert any icon, including the daikin-icon, but please note the following regarding style:\n- About fill color - The icon should be able to accept the CSS `color` property.\n- About size - The recommended width of the icon is 24px * 24px. Please make sure that the size of the icon you insert conforms to this, or please set the `width` and `height` properties of the icon to 100%.",
12310
+ "name": "DaikinIconButton",
12311
+ "cssParts": [
12312
+ {
12313
+ "description": "CSS styles applied to the `icon-button` part target the internal `<button>` element.",
12314
+ "name": "icon-button"
12315
+ }
12316
+ ],
12317
+ "slots": [
12318
+ {
12319
+ "description": "A slot for an icon. Place a daikin-icon element or something similar.",
12320
+ "name": ""
12321
+ }
12322
+ ],
12323
+ "members": [
12324
+ {
12325
+ "kind": "field",
11764
12326
  "name": "variant",
11765
12327
  "type": {
11766
12328
  "text": "IconButtonVariantProps[\"variant\"]"
11767
12329
  },
11768
12330
  "description": "Variant of the button.",
11769
12331
  "default": "\"fill\"",
11770
- "fieldName": "variant"
12332
+ "attribute": "variant",
12333
+ "reflects": true
11771
12334
  },
11772
12335
  {
12336
+ "kind": "field",
11773
12337
  "name": "color",
11774
12338
  "type": {
11775
12339
  "text": "IconButtonVariantProps[\"color\"]"
11776
12340
  },
11777
12341
  "description": "Color of the button.",
11778
12342
  "default": "\"default\"",
11779
- "fieldName": "color"
12343
+ "attribute": "color",
12344
+ "reflects": true
11780
12345
  },
11781
12346
  {
12347
+ "kind": "field",
11782
12348
  "name": "disabled",
11783
12349
  "type": {
11784
12350
  "text": "boolean"
11785
12351
  },
11786
12352
  "default": "false",
11787
12353
  "description": "Whether the button is disabled.",
11788
- "fieldName": "disabled"
12354
+ "attribute": "disabled",
12355
+ "reflects": true
11789
12356
  },
11790
12357
  {
12358
+ "kind": "field",
11791
12359
  "name": "href",
11792
12360
  "type": {
11793
12361
  "text": "string | null"
11794
12362
  },
11795
12363
  "default": "null",
11796
12364
  "description": "Link `href`.\nOnly used if the `type` is `\"link\"`.\nIf omitted with `type=\"link\"`, the link will be treated as [a placeholder link](https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-a-element:~:text=If%20the%20a%20element%20has%20no%20href%20attribute) and rendered as disabled state.",
11797
- "fieldName": "href"
12365
+ "attribute": "href",
12366
+ "reflects": true
11798
12367
  },
11799
12368
  {
12369
+ "kind": "field",
11800
12370
  "name": "type",
11801
12371
  "type": {
11802
12372
  "text": "\"button\" | \"submit\" | \"reset\" | \"link\""
11803
12373
  },
11804
12374
  "description": "Type of the button.\nIf `\"link\"` is specified, the button will be rendered as an `<a>` element.",
11805
12375
  "default": "\"button\"",
11806
- "fieldName": "type"
12376
+ "attribute": "type",
12377
+ "reflects": true
11807
12378
  },
11808
12379
  {
11809
- "name": "button-aria-label",
12380
+ "kind": "field",
12381
+ "name": "buttonAriaLabel",
11810
12382
  "type": {
11811
12383
  "text": "string | null"
11812
12384
  },
11813
12385
  "default": "null",
11814
12386
  "description": "The aria-label of the icon button.",
11815
- "fieldName": "buttonAriaLabel"
12387
+ "attribute": "button-aria-label",
12388
+ "reflects": true
11816
12389
  },
11817
12390
  {
11818
- "name": "button-role",
12391
+ "kind": "field",
12392
+ "name": "buttonRole",
11819
12393
  "type": {
11820
12394
  "text": "ARIARole | null"
11821
12395
  },
11822
12396
  "default": "null",
11823
12397
  "description": "Optional ARIA role of the button.",
11824
- "fieldName": "buttonRole"
12398
+ "attribute": "button-role",
12399
+ "reflects": true
11825
12400
  },
11826
12401
  {
11827
- "name": "button-aria-haspopup",
12402
+ "kind": "field",
12403
+ "name": "buttonAriaHaspopup",
11828
12404
  "type": {
11829
12405
  "text": "| \"false\"\n | \"true\"\n | \"menu\"\n | \"listbox\"\n | \"tree\"\n | \"grid\"\n | \"dialog\"\n | null"
11830
12406
  },
11831
12407
  "default": "null",
11832
12408
  "description": "The aria-haspopup of the icon button when `type=\"button\"`.\nWhen used within a daikin-menu component, this property is automatically assigned the value `buttonAriaHaspopup=\"menu\"`.",
11833
- "fieldName": "buttonAriaHaspopup"
12409
+ "attribute": "button-aria-haspopup",
12410
+ "reflects": true
11834
12411
  },
11835
12412
  {
11836
- "name": "button-aria-expanded",
12413
+ "kind": "field",
12414
+ "name": "buttonAriaExpanded",
11837
12415
  "type": {
11838
12416
  "text": "\"true\" | \"false\" | \"undefined\" | null"
11839
12417
  },
11840
12418
  "default": "null",
11841
12419
  "description": "The aria-expanded of icon button when `type=\"button\"`.\nWhen used within a daikin-menu component, this property will be controlled by daikin-menu, so you don't need to specify it explicitly.",
11842
- "fieldName": "buttonAriaExpanded"
12420
+ "attribute": "button-aria-expanded",
12421
+ "reflects": true
11843
12422
  },
11844
12423
  {
11845
- "name": "button-tabindex",
12424
+ "kind": "field",
12425
+ "name": "buttonTabIndex",
11846
12426
  "type": {
11847
12427
  "text": "number"
11848
12428
  },
11849
12429
  "description": "The `tabindex` of the button.\nIf omitted or set to 0, the button follows the default tab flow.\nSetting it to -1 makes the button unreachable via the Tab key.\nThis is useful when the button is part of a composite widget and accessible via other keys.",
11850
- "fieldName": "buttonTabIndex"
12430
+ "attribute": "button-tabindex",
12431
+ "reflects": true
11851
12432
  },
11852
12433
  {
12434
+ "kind": "field",
11853
12435
  "name": "size",
11854
12436
  "type": {
11855
12437
  "text": "\"s\" | \"m\""
11856
12438
  },
11857
12439
  "default": "\"s\"",
11858
12440
  "description": "Size of the button.\n- `s`: 32px * 32px\n- `m`: 48px * 48px",
11859
- "fieldName": "size"
11860
- }
11861
- ],
11862
- "superclass": {
11863
- "name": "DDSFormSubmitElement",
11864
- "module": "/src/base"
11865
- },
11866
- "tagName": "daikin-icon-button",
11867
- "customElement": true
11868
- }
11869
- ],
11870
- "exports": [
11871
- {
11872
- "kind": "js",
11873
- "name": "DaikinIconButton",
11874
- "declaration": {
11875
- "name": "DaikinIconButton",
11876
- "module": "src/components/icon-button/daikin-icon-button.ts"
11877
- }
11878
- },
11879
- {
11880
- "kind": "custom-element-definition",
11881
- "name": "daikin-icon-button",
11882
- "declaration": {
11883
- "name": "DaikinIconButton",
11884
- "module": "src/components/icon-button/daikin-icon-button.ts"
11885
- }
11886
- }
11887
- ]
11888
- },
11889
- {
11890
- "kind": "javascript-module",
11891
- "path": "dist/es/components/icon-button/index.js",
11892
- "declarations": [],
11893
- "exports": [
11894
- {
11895
- "kind": "js",
11896
- "name": "*",
11897
- "declaration": {
11898
- "name": "*",
11899
- "module": "src/components/icon-button/daikin-icon-button"
11900
- }
11901
- }
11902
- ]
11903
- },
11904
- {
11905
- "kind": "javascript-module",
11906
- "path": "dist/es/components/icon/daikin-icon.js",
11907
- "declarations": [
11908
- {
11909
- "kind": "variable",
11910
- "name": "iconList"
11911
- },
11912
- {
11913
- "kind": "class",
11914
- "description": "A versatile UI element that displays small graphical symbols or images representing actions, objects, or concepts within an application.\nThe component uses the predefined DDS icon set by default but also supports custom icons via the icon registry.\n\nPredefined DDS icons are automatically rendered using optimized CSS classes.\nCustom icons can be dynamically loaded from various sources using the icon registry.\n\nIf an icon cannot be loaded, a blank space is displayed.\nIn development builds, warnings are logged to the console for debugging.\n\n### Using Custom Icons\n\nCustom icons must be registered with the icon registry before use.\nThey can be registered individually or in bulk using pattern matching, with support for multiple rendering modes.\n\n#### Rendering Modes\n\nCustom icons support multiple rendering modes, each with different characteristics:\n\n- **mask** (default): Uses CSS `mask-image` to render the icon.\n - Secure rendering method (SVG is converted to data URL).\n - Supports color customization via the `color` property or CSS `color`.\n - Best choice for most use cases with custom icons.\n- **background**: Uses CSS `background-image` to render the icon.\n - Secure rendering method (SVG is converted to data URL).\n - Does NOT support color customization; the icon is rendered with its original colors.\n - Use this mode when you need to preserve the original colors of multi-color SVG icons.\n- **inline**: Traditional SVG rendering using `innerHTML`.\n - Renders the raw SVG markup directly in the DOM.\n - Supports color customization if the SVG uses `currentColor` or inheritable properties.\n - ⚠️ **Security Warning**: Only use this mode with SVG content from trusted sources. Untrusted SVG content may lead to XSS vulnerabilities.\n - Use `mask` or `background` modes for better security.\n\n#### Registration Examples\n\n```js\nimport { iconRegistry } from \"@daikin-oss/design-system-web-components/icon-registry.js\";\n\n// Register a single custom icon using mask mode for secure rendering and color customization\niconRegistry.register({\n name: \"my-custom-icon\",\n svg: {\n svg: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">...</svg>',\n mode: \"mask\",\n defaultColor: \"#0066cc\"\n },\n});\n\n// Register multiple custom icons dynamically using pattern matching\niconRegistry.register({\n match: /^dynamic-custom-/,\n async fetch: (name) => {\n const response = await fetch(`/path/to/custom/icons/${name}.svg`);\n if (!response.ok) {\n throw new Error(`Failed to load custom icon \"${name}\"`);\n }\n // You can return just the SVG content as a string (defaults to mask mode)\n // Or return an object with `svg`, `defaultColor` (optional), and `mode` (optional) for more control\n return response.text();\n },\n});\n```\n\nOnce registered, you can use your custom icons in components:\n\n```html\n<daikin-icon icon=\"my-custom-icon\" color=\"current\" size=\"m\"></daikin-icon>\n<daikin-icon icon=\"dynamic-custom-icon-123\" color=\"current\" size=\"m\"></daikin-icon>\n```\n\n### Changing Icon Color\n\nTo use a custom color, set the `color` property to `\"current\"` and apply the desired color using the CSS `color` property:\n\n```html\n<daikin-icon icon=\"information\" color=\"current\" style=\"color: red;\"></daikin-icon>\n<!-- or you can inherit the color from a parent element -->\n<div style=\"color: blue;\">\n <daikin-icon icon=\"information\" color=\"current\"></daikin-icon>\n</div>\n```\n\nThis behavior is supported natively for DDS icons and `mask` mode (the default for custom icons).\nIn `inline` mode, color inheritance works only if the SVG uses `currentColor` or inheritable properties.\nNote that `background` mode does not support custom colors.",
11915
- "name": "DaikinIcon",
11916
- "cssProperties": [
12441
+ "attribute": "size",
12442
+ "reflects": true
12443
+ },
11917
12444
  {
11918
- "description": "The size of the icon. If you set a value other than \"current\" for the `size` property, this will be automatically overwritten.",
11919
- "name": "--ddc-icon-size"
11920
- }
11921
- ],
11922
- "members": [
12445
+ "kind": "field",
12446
+ "name": "_button",
12447
+ "type": {
12448
+ "text": "HTMLButtonElement | null"
12449
+ },
12450
+ "privacy": "private",
12451
+ "readonly": true
12452
+ },
12453
+ {
12454
+ "kind": "method",
12455
+ "name": "getDDSNavigationTarget",
12456
+ "return": {
12457
+ "type": {
12458
+ "text": ""
12459
+ }
12460
+ },
12461
+ "description": "_Internal use._\nReturns the navigation target information.\nUsed by navigation handling utilities.",
12462
+ "privacy": "private"
12463
+ },
12464
+ {
12465
+ "kind": "method",
12466
+ "name": "focus",
12467
+ "return": {
12468
+ "type": {
12469
+ "text": "void"
12470
+ }
12471
+ },
12472
+ "parameters": [
12473
+ {
12474
+ "name": "options",
12475
+ "optional": true,
12476
+ "type": {
12477
+ "text": "FocusOptions"
12478
+ },
12479
+ "description": "focus options"
12480
+ }
12481
+ ],
12482
+ "description": "Focuses on the inner button."
12483
+ },
11923
12484
  {
11924
12485
  "kind": "field",
11925
- "name": "registry",
12486
+ "name": "formAttr",
11926
12487
  "type": {
11927
- "text": "IconRegistry"
12488
+ "text": "string"
11928
12489
  },
11929
- "default": "iconRegistry",
11930
- "description": "The icon registry instance to use.\nDefaults to the global icon registry."
12490
+ "description": "The form the component belongs to.",
12491
+ "attribute": "form",
12492
+ "reflects": true,
12493
+ "inheritedFrom": {
12494
+ "name": "DDSFormSubmitElement",
12495
+ "module": "dist/es/base/dds-form-element.js"
12496
+ }
11931
12497
  },
11932
12498
  {
11933
12499
  "kind": "field",
11934
- "name": "icon",
12500
+ "name": "formAssociated",
11935
12501
  "type": {
11936
- "text": "string"
12502
+ "text": "boolean"
11937
12503
  },
11938
- "description": "The name of the icon to display.\nCan be a static DDS icon name or a custom icon name registered in the icon registry.",
11939
- "attribute": "icon",
11940
- "reflects": true
12504
+ "static": true,
12505
+ "readonly": true,
12506
+ "default": "true",
12507
+ "inheritedFrom": {
12508
+ "name": "DDSFormSubmitElement",
12509
+ "module": "dist/es/base/dds-form-element.js"
12510
+ }
11941
12511
  },
11942
12512
  {
11943
12513
  "kind": "field",
11944
- "name": "color",
12514
+ "name": "internals",
11945
12515
  "type": {
11946
- "text": "IconVariantProps[\"color\"]"
12516
+ "text": "ElementInternals | null | undefined"
11947
12517
  },
11948
- "description": "The color of the icon.\nUse `\"current\"` for most cases.\n\n**This property will be removed in a future release.**\nTo prepare for this change, start using `color=\"current\"` and set icon colors via the CSS `color` property instead of using predefined color values.",
11949
- "default": "\"default\"",
11950
- "attribute": "color",
11951
- "reflects": true
12518
+ "privacy": "protected",
12519
+ "inheritedFrom": {
12520
+ "name": "DDSFormSubmitElement",
12521
+ "module": "dist/es/base/dds-form-element.js"
12522
+ }
11952
12523
  },
11953
12524
  {
11954
12525
  "kind": "field",
11955
- "name": "size",
12526
+ "name": "form",
11956
12527
  "type": {
11957
- "text": "\"s\" | \"m\" | \"l\" | \"xl\" | \"current\""
12528
+ "text": "HTMLFormElement | null"
11958
12529
  },
11959
- "description": "The size of the icon.\nIf set to \"current\", the `--ddc-icon-size` CSS variable will be used. `--ddc-icon-size` may be set by a parent component such as `daikin-icon-button`.",
11960
- "default": "\"current\"",
11961
- "attribute": "size",
11962
- "reflects": true
12530
+ "description": "Returns the form object associated with the element, or null if none exists.",
12531
+ "privacy": "private",
12532
+ "readonly": true,
12533
+ "inheritedFrom": {
12534
+ "name": "DDSFormSubmitElement",
12535
+ "module": "dist/es/base/dds-form-element.js"
12536
+ }
11963
12537
  },
11964
12538
  {
11965
- "kind": "field",
11966
- "name": "_iconData",
11967
- "type": {
11968
- "text": "IconData | StaticIconData | null"
11969
- },
12539
+ "kind": "method",
12540
+ "name": "requestSubmit",
12541
+ "description": "A function that maps to the form control's `reportValidity()` function.\nReference: https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/reportValidity",
11970
12542
  "privacy": "private",
11971
- "default": "null"
12543
+ "inheritedFrom": {
12544
+ "name": "DDSFormSubmitElement",
12545
+ "module": "dist/es/base/dds-form-element.js"
12546
+ }
11972
12547
  },
11973
12548
  {
11974
12549
  "kind": "method",
11975
- "name": "loadIcon",
11976
- "privacy": "private"
12550
+ "name": "reset",
12551
+ "description": "A function that maps to the form control's `checkValidity()` function.\nReference: https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement/checkValidity",
12552
+ "privacy": "private",
12553
+ "inheritedFrom": {
12554
+ "name": "DDSFormSubmitElement",
12555
+ "module": "dist/es/base/dds-form-element.js"
12556
+ }
12557
+ },
12558
+ {
12559
+ "kind": "method",
12560
+ "name": "hostConnected",
12561
+ "description": "TODO Enhance these functions to bring our components closer to native form components.",
12562
+ "privacy": "private",
12563
+ "inheritedFrom": {
12564
+ "name": "DDSFormSubmitElement",
12565
+ "module": "dist/es/base/dds-form-element.js"
12566
+ }
12567
+ },
12568
+ {
12569
+ "kind": "method",
12570
+ "name": "hostDisconnected",
12571
+ "description": "TODO Enhance these functions to bring our components closer to native form components.",
12572
+ "privacy": "private",
12573
+ "inheritedFrom": {
12574
+ "name": "DDSFormSubmitElement",
12575
+ "module": "dist/es/base/dds-form-element.js"
12576
+ }
12577
+ },
12578
+ {
12579
+ "kind": "method",
12580
+ "name": "hostUpdated",
12581
+ "description": "TODO Enhance these functions to bring our components closer to native form components.",
12582
+ "privacy": "private",
12583
+ "inheritedFrom": {
12584
+ "name": "DDSFormSubmitElement",
12585
+ "module": "dist/es/base/dds-form-element.js"
12586
+ }
11977
12587
  },
11978
12588
  {
11979
12589
  "kind": "field",
@@ -12056,80 +12666,154 @@
12056
12666
  }
12057
12667
  }
12058
12668
  ],
12669
+ "events": [
12670
+ {
12671
+ "description": "A retargeted event of a [click event](https://developer.mozilla.org/en-US/docs/Web/API/Element/click_event) emitted from the inner `<button>` element. Suppressed if `disabled` is true,",
12672
+ "name": "click"
12673
+ }
12674
+ ],
12059
12675
  "attributes": [
12060
12676
  {
12061
- "name": "icon",
12677
+ "name": "form",
12062
12678
  "type": {
12063
12679
  "text": "string"
12064
12680
  },
12065
- "description": "The name of the icon to display.\nCan be a static DDS icon name or a custom icon name registered in the icon registry.",
12066
- "fieldName": "icon"
12681
+ "description": "The form the component belongs to.",
12682
+ "fieldName": "formAttr",
12683
+ "inheritedFrom": {
12684
+ "name": "DDSFormSubmitElement",
12685
+ "module": "dist/es/base/dds-form-element.js"
12686
+ }
12687
+ },
12688
+ {
12689
+ "name": "variant",
12690
+ "type": {
12691
+ "text": "IconButtonVariantProps[\"variant\"]"
12692
+ },
12693
+ "description": "Variant of the button.",
12694
+ "default": "\"fill\"",
12695
+ "fieldName": "variant"
12067
12696
  },
12068
12697
  {
12069
12698
  "name": "color",
12070
12699
  "type": {
12071
- "text": "IconVariantProps[\"color\"]"
12700
+ "text": "IconButtonVariantProps[\"color\"]"
12072
12701
  },
12073
- "description": "The color of the icon.\nUse `\"current\"` for most cases.\n\n**This property will be removed in a future release.**\nTo prepare for this change, start using `color=\"current\"` and set icon colors via the CSS `color` property instead of using predefined color values.",
12702
+ "description": "Color of the button.",
12074
12703
  "default": "\"default\"",
12075
12704
  "fieldName": "color"
12076
12705
  },
12706
+ {
12707
+ "name": "disabled",
12708
+ "type": {
12709
+ "text": "boolean"
12710
+ },
12711
+ "default": "false",
12712
+ "description": "Whether the button is disabled.",
12713
+ "fieldName": "disabled"
12714
+ },
12715
+ {
12716
+ "name": "href",
12717
+ "type": {
12718
+ "text": "string | null"
12719
+ },
12720
+ "default": "null",
12721
+ "description": "Link `href`.\nOnly used if the `type` is `\"link\"`.\nIf omitted with `type=\"link\"`, the link will be treated as [a placeholder link](https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-a-element:~:text=If%20the%20a%20element%20has%20no%20href%20attribute) and rendered as disabled state.",
12722
+ "fieldName": "href"
12723
+ },
12724
+ {
12725
+ "name": "type",
12726
+ "type": {
12727
+ "text": "\"button\" | \"submit\" | \"reset\" | \"link\""
12728
+ },
12729
+ "description": "Type of the button.\nIf `\"link\"` is specified, the button will be rendered as an `<a>` element.",
12730
+ "default": "\"button\"",
12731
+ "fieldName": "type"
12732
+ },
12733
+ {
12734
+ "name": "button-aria-label",
12735
+ "type": {
12736
+ "text": "string | null"
12737
+ },
12738
+ "default": "null",
12739
+ "description": "The aria-label of the icon button.",
12740
+ "fieldName": "buttonAriaLabel"
12741
+ },
12742
+ {
12743
+ "name": "button-role",
12744
+ "type": {
12745
+ "text": "ARIARole | null"
12746
+ },
12747
+ "default": "null",
12748
+ "description": "Optional ARIA role of the button.",
12749
+ "fieldName": "buttonRole"
12750
+ },
12751
+ {
12752
+ "name": "button-aria-haspopup",
12753
+ "type": {
12754
+ "text": "| \"false\"\n | \"true\"\n | \"menu\"\n | \"listbox\"\n | \"tree\"\n | \"grid\"\n | \"dialog\"\n | null"
12755
+ },
12756
+ "default": "null",
12757
+ "description": "The aria-haspopup of the icon button when `type=\"button\"`.\nWhen used within a daikin-menu component, this property is automatically assigned the value `buttonAriaHaspopup=\"menu\"`.",
12758
+ "fieldName": "buttonAriaHaspopup"
12759
+ },
12760
+ {
12761
+ "name": "button-aria-expanded",
12762
+ "type": {
12763
+ "text": "\"true\" | \"false\" | \"undefined\" | null"
12764
+ },
12765
+ "default": "null",
12766
+ "description": "The aria-expanded of icon button when `type=\"button\"`.\nWhen used within a daikin-menu component, this property will be controlled by daikin-menu, so you don't need to specify it explicitly.",
12767
+ "fieldName": "buttonAriaExpanded"
12768
+ },
12769
+ {
12770
+ "name": "button-tabindex",
12771
+ "type": {
12772
+ "text": "number"
12773
+ },
12774
+ "description": "The `tabindex` of the button.\nIf omitted or set to 0, the button follows the default tab flow.\nSetting it to -1 makes the button unreachable via the Tab key.\nThis is useful when the button is part of a composite widget and accessible via other keys.",
12775
+ "fieldName": "buttonTabIndex"
12776
+ },
12077
12777
  {
12078
12778
  "name": "size",
12079
12779
  "type": {
12080
- "text": "\"s\" | \"m\" | \"l\" | \"xl\" | \"current\""
12780
+ "text": "\"s\" | \"m\""
12081
12781
  },
12082
- "description": "The size of the icon.\nIf set to \"current\", the `--ddc-icon-size` CSS variable will be used. `--ddc-icon-size` may be set by a parent component such as `daikin-icon-button`.",
12083
- "default": "\"current\"",
12782
+ "default": "\"s\"",
12783
+ "description": "Size of the button.\n- `s`: 32px * 32px\n- `m`: 48px * 48px",
12084
12784
  "fieldName": "size"
12085
12785
  }
12086
12786
  ],
12087
12787
  "superclass": {
12088
- "name": "DDSElement",
12788
+ "name": "DDSFormSubmitElement",
12089
12789
  "module": "/src/base"
12090
12790
  },
12091
- "tagName": "daikin-icon",
12791
+ "tagName": "daikin-icon-button",
12092
12792
  "customElement": true
12093
12793
  }
12094
12794
  ],
12095
12795
  "exports": [
12096
12796
  {
12097
12797
  "kind": "js",
12098
- "name": "iconList",
12099
- "declaration": {
12100
- "name": "iconList",
12101
- "module": "src/components/icon/daikin-icon.ts"
12102
- }
12103
- },
12104
- {
12105
- "kind": "js",
12106
- "name": "DaikinIcon",
12798
+ "name": "DaikinIconButton",
12107
12799
  "declaration": {
12108
- "name": "DaikinIcon",
12109
- "module": "src/components/icon/daikin-icon.ts"
12800
+ "name": "DaikinIconButton",
12801
+ "module": "src/components/icon-button/daikin-icon-button.ts"
12110
12802
  }
12111
12803
  },
12112
12804
  {
12113
12805
  "kind": "custom-element-definition",
12114
- "name": "daikin-icon",
12115
- "declaration": {
12116
- "name": "DaikinIcon",
12117
- "module": "src/components/icon/daikin-icon.ts"
12118
- }
12119
- },
12120
- {
12121
- "kind": "js",
12122
- "name": "default",
12806
+ "name": "daikin-icon-button",
12123
12807
  "declaration": {
12124
- "name": "DaikinIcon",
12125
- "module": "src/components/icon/daikin-icon.ts"
12808
+ "name": "DaikinIconButton",
12809
+ "module": "src/components/icon-button/daikin-icon-button.ts"
12126
12810
  }
12127
12811
  }
12128
12812
  ]
12129
12813
  },
12130
12814
  {
12131
12815
  "kind": "javascript-module",
12132
- "path": "dist/es/components/icon/index.js",
12816
+ "path": "dist/es/components/icon-button/index.js",
12133
12817
  "declarations": [],
12134
12818
  "exports": [
12135
12819
  {
@@ -12137,7 +12821,7 @@
12137
12821
  "name": "*",
12138
12822
  "declaration": {
12139
12823
  "name": "*",
12140
- "module": "src/components/icon/daikin-icon"
12824
+ "module": "src/components/icon-button/daikin-icon-button"
12141
12825
  }
12142
12826
  }
12143
12827
  ]
@@ -12385,6 +13069,16 @@
12385
13069
  }
12386
13070
  ],
12387
13071
  "members": [
13072
+ {
13073
+ "kind": "field",
13074
+ "name": "orientation",
13075
+ "type": {
13076
+ "text": "\"vertical\" | \"horizontal\""
13077
+ },
13078
+ "description": "Orientation of the input group.\nPossible values are `\"vertical\"` and `\"horizontal\"`.",
13079
+ "attribute": "orientation",
13080
+ "reflects": true
13081
+ },
12388
13082
  {
12389
13083
  "kind": "field",
12390
13084
  "name": "label",
@@ -12440,6 +13134,17 @@
12440
13134
  "attribute": "disabled",
12441
13135
  "reflects": true
12442
13136
  },
13137
+ {
13138
+ "kind": "field",
13139
+ "name": "readonly",
13140
+ "type": {
13141
+ "text": "boolean"
13142
+ },
13143
+ "default": "false",
13144
+ "description": "Whether the field is readonly.\nReflected in `readonly` attribute of the input control in the slot.",
13145
+ "attribute": "readonly",
13146
+ "reflects": true
13147
+ },
12443
13148
  {
12444
13149
  "kind": "field",
12445
13150
  "name": "textareaMaxCount",
@@ -12617,6 +13322,14 @@
12617
13322
  }
12618
13323
  ],
12619
13324
  "attributes": [
13325
+ {
13326
+ "name": "orientation",
13327
+ "type": {
13328
+ "text": "\"vertical\" | \"horizontal\""
13329
+ },
13330
+ "description": "Orientation of the input group.\nPossible values are `\"vertical\"` and `\"horizontal\"`.",
13331
+ "fieldName": "orientation"
13332
+ },
12620
13333
  {
12621
13334
  "name": "label",
12622
13335
  "type": {
@@ -12662,6 +13375,15 @@
12662
13375
  "description": "Whether the field is disabled.\nReflected in `disabled` attribute of the input control in the slot.",
12663
13376
  "fieldName": "disabled"
12664
13377
  },
13378
+ {
13379
+ "name": "readonly",
13380
+ "type": {
13381
+ "text": "boolean"
13382
+ },
13383
+ "default": "false",
13384
+ "description": "Whether the field is readonly.\nReflected in `readonly` attribute of the input control in the slot.",
13385
+ "fieldName": "readonly"
13386
+ },
12665
13387
  {
12666
13388
  "name": "textarea-max-count",
12667
13389
  "type": {
@@ -13791,7 +14513,7 @@
13791
14513
  "type": {
13792
14514
  "text": "\"positive\" | \"negative\""
13793
14515
  },
13794
- "description": "Specify the the logo mode.\nNotice: Allow the use of a negative logo only when the positive logo is too close to the background to be legible.",
14516
+ "description": "Specify the logo mode.\nNotice: \"negative\" mode can only be used in dark mode.",
13795
14517
  "default": "\"positive\"",
13796
14518
  "attribute": "mode",
13797
14519
  "reflects": true
@@ -13950,7 +14672,7 @@
13950
14672
  "type": {
13951
14673
  "text": "\"positive\" | \"negative\""
13952
14674
  },
13953
- "description": "Specify the the logo mode.\nNotice: Allow the use of a negative logo only when the positive logo is too close to the background to be legible.",
14675
+ "description": "Specify the logo mode.\nNotice: \"negative\" mode can only be used in dark mode.",
13954
14676
  "default": "\"positive\"",
13955
14677
  "fieldName": "mode"
13956
14678
  }
@@ -14879,6 +15601,10 @@
14879
15601
  "description": "An optional slot for description.",
14880
15602
  "name": "description"
14881
15603
  },
15604
+ {
15605
+ "description": "An optional slot for an icon to be placed to the left of the title. Place a `daikin-icon` element or something similar.",
15606
+ "name": "left-icon"
15607
+ },
14882
15608
  {
14883
15609
  "description": "A slot for modal title.",
14884
15610
  "name": ""
@@ -15082,6 +15808,17 @@
15082
15808
  }
15083
15809
  ],
15084
15810
  "members": [
15811
+ {
15812
+ "kind": "field",
15813
+ "name": "horizontalPadding",
15814
+ "type": {
15815
+ "text": "\"wide\" | \"narrow\" | \"medium\" | undefined"
15816
+ },
15817
+ "description": "The horizontal padding of all navigation items in the navigation.\n- `wide`: 2rem;\n- `narrow`: 1rem;\n- `medium`: 1.5rem;",
15818
+ "default": "\"wide\"",
15819
+ "attribute": "horizontal-padding",
15820
+ "reflects": true
15821
+ },
15085
15822
  {
15086
15823
  "kind": "field",
15087
15824
  "name": "navigationAriaLabel",
@@ -15175,6 +15912,15 @@
15175
15912
  }
15176
15913
  ],
15177
15914
  "attributes": [
15915
+ {
15916
+ "name": "horizontal-padding",
15917
+ "type": {
15918
+ "text": "\"wide\" | \"narrow\" | \"medium\" | undefined"
15919
+ },
15920
+ "description": "The horizontal padding of all navigation items in the navigation.\n- `wide`: 2rem;\n- `narrow`: 1rem;\n- `medium`: 1.5rem;",
15921
+ "default": "\"wide\"",
15922
+ "fieldName": "horizontalPadding"
15923
+ },
15178
15924
  {
15179
15925
  "name": "navigation-aria-label",
15180
15926
  "type": {
@@ -15594,6 +16340,17 @@
15594
16340
  "attribute": "window",
15595
16341
  "reflects": true
15596
16342
  },
16343
+ {
16344
+ "kind": "field",
16345
+ "name": "size",
16346
+ "type": {
16347
+ "text": "\"small\" | \"medium\""
16348
+ },
16349
+ "default": "\"medium\"",
16350
+ "description": "Size of the pagination.\n\n- `medium`: Default size. Page button min size is `48px`.\n- `small`: Compact size. Page button min size is `36px`.\n\nPage buttons grow horizontally when content gets wider while keeping horizontal padding.\n\nOn mobile viewport (`<= 767px`), pagination is always rendered in the small size.",
16351
+ "attribute": "size",
16352
+ "reflects": true
16353
+ },
15597
16354
  {
15598
16355
  "kind": "method",
15599
16356
  "name": "_goto",
@@ -15754,6 +16511,15 @@
15754
16511
  "default": "5",
15755
16512
  "description": "Number of elements to display in pagination, including ellipses.\nMust be greater than or equal to 5.\nIf a value less than 5 is specified, it will be treated as 5.",
15756
16513
  "fieldName": "window"
16514
+ },
16515
+ {
16516
+ "name": "size",
16517
+ "type": {
16518
+ "text": "\"small\" | \"medium\""
16519
+ },
16520
+ "default": "\"medium\"",
16521
+ "description": "Size of the pagination.\n\n- `medium`: Default size. Page button min size is `48px`.\n- `small`: Compact size. Page button min size is `36px`.\n\nPage buttons grow horizontally when content gets wider while keeping horizontal padding.\n\nOn mobile viewport (`<= 767px`), pagination is always rendered in the small size.",
16522
+ "fieldName": "size"
15757
16523
  }
15758
16524
  ],
15759
16525
  "superclass": {
@@ -15924,6 +16690,10 @@
15924
16690
  {
15925
16691
  "description": "A slot for label text displayed at the top of the progress bar.",
15926
16692
  "name": ""
16693
+ },
16694
+ {
16695
+ "description": "A slot for an icon to be placed to the left of the text. Place `daikin-icon` or something similar.",
16696
+ "name": "left-icon"
15927
16697
  }
15928
16698
  ],
15929
16699
  "members": [
@@ -16578,6 +17348,17 @@
16578
17348
  "attribute": "disabled",
16579
17349
  "reflects": true
16580
17350
  },
17351
+ {
17352
+ "kind": "field",
17353
+ "name": "readonly",
17354
+ "type": {
17355
+ "text": "boolean"
17356
+ },
17357
+ "default": "false",
17358
+ "description": "Specify the radio button readonly state.\nWhen readonly, the user cannot change the checked state.",
17359
+ "attribute": "readonly",
17360
+ "reflects": true
17361
+ },
16581
17362
  {
16582
17363
  "kind": "field",
16583
17364
  "name": "disabledByParent",
@@ -16588,6 +17369,36 @@
16588
17369
  "description": "Specify the radio disabled state controlled by the parent component.\nControlled by `daikin-radio-group`.",
16589
17370
  "privacy": "private"
16590
17371
  },
17372
+ {
17373
+ "kind": "field",
17374
+ "name": "readonlyByParent",
17375
+ "type": {
17376
+ "text": "boolean"
17377
+ },
17378
+ "default": "false",
17379
+ "description": "Specify the radio readonly state controlled by the parent component.\nControlled by `daikin-radio-group`.",
17380
+ "privacy": "private"
17381
+ },
17382
+ {
17383
+ "kind": "field",
17384
+ "name": "_disabled",
17385
+ "type": {
17386
+ "text": "boolean"
17387
+ },
17388
+ "privacy": "private",
17389
+ "description": "The effective disabled state of the radio button.\nReturns `true` if either `disabled` or `disabledByParent` is `true`.",
17390
+ "readonly": true
17391
+ },
17392
+ {
17393
+ "kind": "field",
17394
+ "name": "_readonly",
17395
+ "type": {
17396
+ "text": "boolean"
17397
+ },
17398
+ "privacy": "private",
17399
+ "description": "The effective readonly state of the radio button.\nReturns `true` if either `readonly` or `readonlyByParent` is `true`.",
17400
+ "readonly": true
17401
+ },
16591
17402
  {
16592
17403
  "kind": "field",
16593
17404
  "name": "skipTab",
@@ -16984,6 +17795,15 @@
16984
17795
  "default": "false",
16985
17796
  "description": "Specify the radio button disabled state.",
16986
17797
  "fieldName": "disabled"
17798
+ },
17799
+ {
17800
+ "name": "readonly",
17801
+ "type": {
17802
+ "text": "boolean"
17803
+ },
17804
+ "default": "false",
17805
+ "description": "Specify the radio button readonly state.\nWhen readonly, the user cannot change the checked state.",
17806
+ "fieldName": "readonly"
16987
17807
  }
16988
17808
  ],
16989
17809
  "superclass": {
@@ -17105,6 +17925,17 @@
17105
17925
  "attribute": "disabled",
17106
17926
  "reflects": true
17107
17927
  },
17928
+ {
17929
+ "kind": "field",
17930
+ "name": "readonly",
17931
+ "type": {
17932
+ "text": "boolean"
17933
+ },
17934
+ "default": "false",
17935
+ "description": "Whether the radio group is readonly.",
17936
+ "attribute": "readonly",
17937
+ "reflects": true
17938
+ },
17108
17939
  {
17109
17940
  "kind": "field",
17110
17941
  "name": "_label",
@@ -17318,6 +18149,15 @@
17318
18149
  "default": "false",
17319
18150
  "description": "Whether the radio group is disabled.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
17320
18151
  "fieldName": "disabled"
18152
+ },
18153
+ {
18154
+ "name": "readonly",
18155
+ "type": {
18156
+ "text": "boolean"
18157
+ },
18158
+ "default": "false",
18159
+ "description": "Whether the radio group is readonly.",
18160
+ "fieldName": "readonly"
17321
18161
  }
17322
18162
  ],
17323
18163
  "superclass": {
@@ -17374,6 +18214,10 @@
17374
18214
  {
17375
18215
  "description": "A slot for an HTML `<select>` element which may contain `<option>` and `<optgroup>`.",
17376
18216
  "name": ""
18217
+ },
18218
+ {
18219
+ "description": "A slot for an icon to be placed to the left of the summary text. Place `daikin-icon` or something similar.",
18220
+ "name": "left-icon"
17377
18221
  }
17378
18222
  ],
17379
18223
  "members": [
@@ -17399,6 +18243,17 @@
17399
18243
  "attribute": "required",
17400
18244
  "reflects": true
17401
18245
  },
18246
+ {
18247
+ "kind": "field",
18248
+ "name": "readonly",
18249
+ "type": {
18250
+ "text": "boolean"
18251
+ },
18252
+ "default": "false",
18253
+ "description": "Whether the select is readonly.",
18254
+ "attribute": "readonly",
18255
+ "reflects": true
18256
+ },
17402
18257
  {
17403
18258
  "kind": "field",
17404
18259
  "name": "disabled",
@@ -17419,6 +18274,15 @@
17419
18274
  "privacy": "private",
17420
18275
  "readonly": true
17421
18276
  },
18277
+ {
18278
+ "kind": "field",
18279
+ "name": "_hasLeftIcon",
18280
+ "type": {
18281
+ "text": "boolean"
18282
+ },
18283
+ "privacy": "private",
18284
+ "default": "false"
18285
+ },
17422
18286
  {
17423
18287
  "kind": "field",
17424
18288
  "name": "_label",
@@ -17429,6 +18293,24 @@
17429
18293
  "default": "null",
17430
18294
  "description": "The label text used as the value of aria-label.\nSet automatically by `reflectInputGroup` method."
17431
18295
  },
18296
+ {
18297
+ "kind": "method",
18298
+ "name": "_handleLeftIconSlotChange",
18299
+ "privacy": "private",
18300
+ "return": {
18301
+ "type": {
18302
+ "text": "void"
18303
+ }
18304
+ },
18305
+ "parameters": [
18306
+ {
18307
+ "name": "event",
18308
+ "type": {
18309
+ "text": "Event"
18310
+ }
18311
+ }
18312
+ ]
18313
+ },
17432
18314
  {
17433
18315
  "kind": "field",
17434
18316
  "name": "_select",
@@ -17438,6 +18320,14 @@
17438
18320
  "privacy": "private",
17439
18321
  "readonly": true
17440
18322
  },
18323
+ {
18324
+ "kind": "field",
18325
+ "name": "_readonlyController",
18326
+ "privacy": "private",
18327
+ "readonly": true,
18328
+ "default": "new CustomReadonlyController< this, HTMLSelectElement >(this, { isReadonly: () => this.readonly, isDisabled: () => this.disabled, blockedKeys: [ \"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\", \"Home\", \"End\", \"PageUp\", \"PageDown\", \"Enter\", \" \", ], })",
18329
+ "description": "Native <select> elements do not support the readonly attribute, so a custom controller is used to achieve a similar readonly behavior."
18330
+ },
17441
18331
  {
17442
18332
  "kind": "method",
17443
18333
  "name": "_updateSelect",
@@ -17597,6 +18487,15 @@
17597
18487
  "description": "Whether the select component is required.",
17598
18488
  "fieldName": "required"
17599
18489
  },
18490
+ {
18491
+ "name": "readonly",
18492
+ "type": {
18493
+ "text": "boolean"
18494
+ },
18495
+ "default": "false",
18496
+ "description": "Whether the select is readonly.",
18497
+ "fieldName": "readonly"
18498
+ },
17600
18499
  {
17601
18500
  "name": "disabled",
17602
18501
  "type": {
@@ -17702,6 +18601,17 @@
17702
18601
  "attribute": "disabled",
17703
18602
  "reflects": true
17704
18603
  },
18604
+ {
18605
+ "kind": "field",
18606
+ "name": "readonly",
18607
+ "type": {
18608
+ "text": "boolean"
18609
+ },
18610
+ "default": "false",
18611
+ "description": "Whether the slider is readonly.",
18612
+ "attribute": "readonly",
18613
+ "reflects": true
18614
+ },
17705
18615
  {
17706
18616
  "kind": "field",
17707
18617
  "name": "sliderAriaLabel",
@@ -18185,6 +19095,15 @@
18185
19095
  "description": "Specify the slider disabled state.",
18186
19096
  "fieldName": "disabled"
18187
19097
  },
19098
+ {
19099
+ "name": "readonly",
19100
+ "type": {
19101
+ "text": "boolean"
19102
+ },
19103
+ "default": "false",
19104
+ "description": "Whether the slider is readonly.",
19105
+ "fieldName": "readonly"
19106
+ },
18188
19107
  {
18189
19108
  "name": "slider-aria-label",
18190
19109
  "type": {
@@ -18385,6 +19304,12 @@
18385
19304
  "kind": "class",
18386
19305
  "description": "A status message is a concise UI component for displaying status feedback, notifications, or contextual information to users. It typically indicates success, warning, error, or other states, helping users quickly understand the current state or important updates in the interface.",
18387
19306
  "name": "DaikinStatusMessage",
19307
+ "cssParts": [
19308
+ {
19309
+ "description": "CSS styles applied to the `status-message` part target the internal content container.",
19310
+ "name": "status-message"
19311
+ }
19312
+ ],
18388
19313
  "members": [
18389
19314
  {
18390
19315
  "kind": "field",
@@ -19050,6 +19975,44 @@
19050
19975
  "kind": "class",
19051
19976
  "description": "The table component is a component that can display multiple data objects in a tabular format.\n\nIt is modeled on the HTML `<table>` element. However, unlike a normal `<table>` element, this component generates table structure automatically from data. You must provide the `headers` and `rows` properties to define the table structure and content. You can also customize table cell content by providing custom content in slots.\n\nBy specifying the `rows` property, you can only display plain text content. If you need to display richer content within the row cells, such as an icon or a button, provide custom content using the cell slot pattern: ``slot=${`cell:${rows[j].id}:${headers[i].key}`}``\n\nBy specifying the headers property, you can only display plain text, define text alignment and sorting buttons. If you need to display richer content within the header cells, such as an icon or a button, provide custom content using the cell slot pattern: ``slot=${`header:${headers[i].key}`}``\n\nThe table provides two functions: checkboxes and sorting, and you can select the functions you need.\n\nHierarchy:\n- `daikin-table` > `daikin-table-cell`\n- `daikin-table` > `daikin-table-header-cell`\n- `daikin-table` > `daikin-empty-state`",
19052
19977
  "name": "DaikinTable",
19978
+ "cssParts": [
19979
+ {
19980
+ "description": "Targets the table header region.",
19981
+ "name": "header"
19982
+ },
19983
+ {
19984
+ "description": "Targets the table body region.",
19985
+ "name": "body"
19986
+ },
19987
+ {
19988
+ "description": "Targets all table rows.",
19989
+ "name": "row"
19990
+ },
19991
+ {
19992
+ "description": "Targets all table cells.",
19993
+ "name": "cell"
19994
+ },
19995
+ {
19996
+ "description": "Targets the specified body row.",
19997
+ "name": "row-${row.id}"
19998
+ },
19999
+ {
20000
+ "description": "Added to selected body rows and their body cells.",
20001
+ "name": "selected"
20002
+ },
20003
+ {
20004
+ "description": "Added to body cells in odd-numbered rows (1st, 3rd, ...).",
20005
+ "name": "odd"
20006
+ },
20007
+ {
20008
+ "description": "Targets body cells in the selectable checkbox column.",
20009
+ "name": "checkbox-cell"
20010
+ },
20011
+ {
20012
+ "description": "Targets both header and body cells for the specified column key. This is typically used to control a specific column's width and text wrapping. For example, you can allow the column to fit content by default, while enforcing min and max width: `daikin-table::part(column-name) { min-width: 12rem; max-width: 20rem; }` and optional truncation: `white-space: nowrap; overflow: hidden; text-overflow: ellipsis;`. Background customization is also supported via CSS Parts. You can target an entire row (`row-${row.id} cell`), a specific column (`column-${header.key}`), or a row+column pair (`row-${row.id} column-${header.key}`), then apply design tokens for background colors. Example: `daikin-table::part(row-2 cell) { background-color: var(--dds-color-common-surface-danger-hover); }` `daikin-table::part(row-3 column-price) { background-color: var(--dds-color-common-warning); }` `daikin-table::part(row-2 cell):hover { background-color: var(--dds-color-common-surface-hover); }`",
20013
+ "name": "column-${header.key}"
20014
+ }
20015
+ ],
19053
20016
  "slots": [
19054
20017
  {
19055
20018
  "description": "A slot for the header cell of a table. Use this when you want to display something other than text, such as an icon. Use `daikin-table-header-cell` for the wrapper.",
@@ -19105,6 +20068,28 @@
19105
20068
  "attribute": "sortable",
19106
20069
  "reflects": true
19107
20070
  },
20071
+ {
20072
+ "kind": "field",
20073
+ "name": "border",
20074
+ "type": {
20075
+ "text": "\"none\" | \"underline\""
20076
+ },
20077
+ "default": "\"underline\"",
20078
+ "description": "The border style of the table row separators.\n- \"none\": Hide all table separator lines.\n- \"underline\": Show table separator lines.",
20079
+ "attribute": "border",
20080
+ "reflects": true
20081
+ },
20082
+ {
20083
+ "kind": "field",
20084
+ "name": "stickyHeader",
20085
+ "type": {
20086
+ "text": "boolean"
20087
+ },
20088
+ "default": "false",
20089
+ "description": "Whether to keep the header row fixed while the body scrolls.\n\nWhen `true`, header cells become sticky relative to this component's\nnearest scroll container. This works with page scrolling, and also works\nwith internal scrolling when the host has a constrained height and\n`overflow: auto`.",
20090
+ "attribute": "sticky-header",
20091
+ "reflects": true
20092
+ },
19108
20093
  {
19109
20094
  "kind": "field",
19110
20095
  "name": "selection",
@@ -19427,6 +20412,24 @@
19427
20412
  "description": "Whether to enable row sorting.\nWhen `true`, a sort button will be displayed to the right of each sortable header cell.",
19428
20413
  "fieldName": "sortable"
19429
20414
  },
20415
+ {
20416
+ "name": "border",
20417
+ "type": {
20418
+ "text": "\"none\" | \"underline\""
20419
+ },
20420
+ "default": "\"underline\"",
20421
+ "description": "The border style of the table row separators.\n- \"none\": Hide all table separator lines.\n- \"underline\": Show table separator lines.",
20422
+ "fieldName": "border"
20423
+ },
20424
+ {
20425
+ "name": "sticky-header",
20426
+ "type": {
20427
+ "text": "boolean"
20428
+ },
20429
+ "default": "false",
20430
+ "description": "Whether to keep the header row fixed while the body scrolls.\n\nWhen `true`, header cells become sticky relative to this component's\nnearest scroll container. This works with page scrolling, and also works\nwith internal scrolling when the host has a constrained height and\n`overflow: auto`.",
20431
+ "fieldName": "stickyHeader"
20432
+ },
19430
20433
  {
19431
20434
  "name": "sort",
19432
20435
  "type": {
@@ -20275,6 +21278,12 @@
20275
21278
  "kind": "class",
20276
21279
  "description": "The Tag is a flexible component. It is designed not only to display concise text information but also to support automatic line wrapping for longer content. Furthermore, its slots allow for the customization of multi-element content based on specific requirements.",
20277
21280
  "name": "DaikinTag",
21281
+ "cssParts": [
21282
+ {
21283
+ "description": "Targets the internal <span> element wrapping the tag. This is typically used to control the tag's styling and interactivity. For example, you can adjust spacing and customize the cursor appearance during dragging: daikin-tag::part(tag) { margin: -4px; padding: 4px; cursor: grab; } daikin-tag::part(tag):active { cursor: grabbing; }",
21284
+ "name": "tag"
21285
+ }
21286
+ ],
20278
21287
  "slots": [
20279
21288
  {
20280
21289
  "description": "A slot for the tag content.",
@@ -20284,24 +21293,46 @@
20284
21293
  "members": [
20285
21294
  {
20286
21295
  "kind": "field",
20287
- "name": "hideRemoveButton",
21296
+ "name": "hideRemoveButton",
21297
+ "type": {
21298
+ "text": "boolean"
21299
+ },
21300
+ "default": "false",
21301
+ "description": "Hides the remove button and makes the tag non-removable. The default value is `false`.",
21302
+ "attribute": "hide-remove-button",
21303
+ "reflects": true
21304
+ },
21305
+ {
21306
+ "kind": "field",
21307
+ "name": "tagAriaLabel",
21308
+ "type": {
21309
+ "text": "string | null"
21310
+ },
21311
+ "default": "null",
21312
+ "description": "Provides an accessible name of the tag.",
21313
+ "attribute": "tag-aria-label",
21314
+ "reflects": true
21315
+ },
21316
+ {
21317
+ "kind": "field",
21318
+ "name": "color",
20288
21319
  "type": {
20289
- "text": "boolean"
21320
+ "text": "\"gray\" | \"red\" | \"blue\" | \"yellow\" | \"green\" | \"orange\" | \"purple\""
20290
21321
  },
20291
- "default": "false",
20292
- "description": "Hides the remove button and makes the tag non-removable. The default value is `false`.",
20293
- "attribute": "hide-remove-button",
21322
+ "description": "Specify the color of the tag.",
21323
+ "default": "\"gray\"",
21324
+ "attribute": "color",
20294
21325
  "reflects": true
20295
21326
  },
20296
21327
  {
20297
21328
  "kind": "field",
20298
- "name": "tagAriaLabel",
21329
+ "name": "elevated",
20299
21330
  "type": {
20300
- "text": "string | null"
21331
+ "text": "boolean"
20301
21332
  },
20302
- "default": "null",
20303
- "description": "Provides an accessible name of the tag.",
20304
- "attribute": "tag-aria-label",
21333
+ "default": "false",
21334
+ "description": "Whether the tag has a shadow to indicate elevation.",
21335
+ "attribute": "elevated",
20305
21336
  "reflects": true
20306
21337
  },
20307
21338
  {
@@ -20470,6 +21501,24 @@
20470
21501
  "description": "Provides an accessible name of the tag.",
20471
21502
  "fieldName": "tagAriaLabel"
20472
21503
  },
21504
+ {
21505
+ "name": "color",
21506
+ "type": {
21507
+ "text": "\"gray\" | \"red\" | \"blue\" | \"yellow\" | \"green\" | \"orange\" | \"purple\""
21508
+ },
21509
+ "description": "Specify the color of the tag.",
21510
+ "default": "\"gray\"",
21511
+ "fieldName": "color"
21512
+ },
21513
+ {
21514
+ "name": "elevated",
21515
+ "type": {
21516
+ "text": "boolean"
21517
+ },
21518
+ "default": "false",
21519
+ "description": "Whether the tag has a shadow to indicate elevation.",
21520
+ "fieldName": "elevated"
21521
+ },
20473
21522
  {
20474
21523
  "name": "remove-button-aria-label",
20475
21524
  "type": {
@@ -21218,6 +22267,17 @@
21218
22267
  "attribute": "step",
21219
22268
  "reflects": true
21220
22269
  },
22270
+ {
22271
+ "kind": "field",
22272
+ "name": "stepMode",
22273
+ "type": {
22274
+ "text": "\"free\" | \"snap\""
22275
+ },
22276
+ "default": "\"free\"",
22277
+ "description": "When `type=\"number\"`, whether to allow free input or snap to step boundaries.\n- `\"free\"`: Do not snap to step boundaries; increment/decrement relative to the current value.\n- `\"snap\"`: If the current value is off a step boundary, snap to the next/previous step boundary in the given direction (and finish without applying an extra step).\nNote that step boundaries are aligned to the `min` value if specified; otherwise, they are aligned to `0`. For example, with `step=\"3\"`, boundaries are `..., -3, 0, 3, 6, ...`. If `min=\"-4\"` is also set, the boundaries become `-4, -1, 2, 5, ...`.",
22278
+ "attribute": "step-mode",
22279
+ "reflects": true
22280
+ },
21221
22281
  {
21222
22282
  "kind": "field",
21223
22283
  "name": "min",
@@ -21837,6 +22897,15 @@
21837
22897
  "description": "Interval between values. This is valid when `type=\"number\"`.",
21838
22898
  "fieldName": "step"
21839
22899
  },
22900
+ {
22901
+ "name": "step-mode",
22902
+ "type": {
22903
+ "text": "\"free\" | \"snap\""
22904
+ },
22905
+ "default": "\"free\"",
22906
+ "description": "When `type=\"number\"`, whether to allow free input or snap to step boundaries.\n- `\"free\"`: Do not snap to step boundaries; increment/decrement relative to the current value.\n- `\"snap\"`: If the current value is off a step boundary, snap to the next/previous step boundary in the given direction (and finish without applying an extra step).\nNote that step boundaries are aligned to the `min` value if specified; otherwise, they are aligned to `0`. For example, with `step=\"3\"`, boundaries are `..., -3, 0, 3, 6, ...`. If `min=\"-4\"` is also set, the boundaries become `-4, -1, 2, 5, ...`.",
22907
+ "fieldName": "stepMode"
22908
+ },
21840
22909
  {
21841
22910
  "name": "min",
21842
22911
  "type": {
@@ -22703,7 +23772,7 @@
22703
23772
  "declarations": [
22704
23773
  {
22705
23774
  "kind": "function",
22706
- "name": "to24HourFormat",
23775
+ "name": "uiToTimeValue",
22707
23776
  "return": {
22708
23777
  "type": {
22709
23778
  "text": "string"
@@ -22711,26 +23780,19 @@
22711
23780
  },
22712
23781
  "parameters": [
22713
23782
  {
22714
- "name": "time",
22715
- "type": {
22716
- "text": "string"
22717
- }
22718
- },
22719
- {
22720
- "name": "meridiem",
23783
+ "name": "object",
22721
23784
  "type": {
22722
- "text": "\"AM\" | \"PM\""
23785
+ "text": "UiTimeObject"
22723
23786
  }
22724
23787
  }
22725
- ],
22726
- "description": "Converts a 12-hour time string and AM/PM to 24-hour format (e.g. \"02:30\", \"PM\" => \"14:30\")."
23788
+ ]
22727
23789
  },
22728
23790
  {
22729
23791
  "kind": "function",
22730
- "name": "from24HourFormat",
23792
+ "name": "timeValueToUI",
22731
23793
  "return": {
22732
23794
  "type": {
22733
- "text": "{\n time: string;\n meridiem: \"AM\" | \"PM\";\n}"
23795
+ "text": "UiTimeObject"
22734
23796
  }
22735
23797
  },
22736
23798
  "parameters": [
@@ -22739,9 +23801,14 @@
22739
23801
  "type": {
22740
23802
  "text": "string"
22741
23803
  }
23804
+ },
23805
+ {
23806
+ "name": "hourCycle",
23807
+ "type": {
23808
+ "text": "HourCycle"
23809
+ }
22742
23810
  }
22743
- ],
22744
- "description": "Converts a 24-hour time string to 12-hour format and AM/PM (e.g. \"14:30\" => { time: \"02:30\", meridiem: \"PM\" })."
23811
+ ]
22745
23812
  },
22746
23813
  {
22747
23814
  "kind": "function",
@@ -22919,13 +23986,19 @@
22919
23986
  "type": {
22920
23987
  "text": "number"
22921
23988
  }
23989
+ },
23990
+ {
23991
+ "name": "hourCycle",
23992
+ "type": {
23993
+ "text": "HourCycle"
23994
+ }
22922
23995
  }
22923
23996
  ],
22924
23997
  "description": "Calculate digit key input, returns new time parts and whether input is complete."
22925
23998
  },
22926
23999
  {
22927
24000
  "kind": "class",
22928
- "description": "The time picker provides a time input field and a dropdown button for selecting AM/PM, allowing users to quickly enter a specific time in 12-hour format.\nPlease note that while the value displayed on the UI is in 12-hour format, the value you get from the component's value property will be automatically converted to 24-hour format.",
24001
+ "description": "The time picker provides a time input field and supports two hour cycles via `hourCycle`.\n- h12: input in 12-hour format with AM/PM dropdown.\n- h23: input in 24-hour format without AM/PM dropdown.\n\nPlease note that the component's `value` is always stored in 24-hour format.",
22929
24002
  "name": "DaikinTimePicker",
22930
24003
  "members": [
22931
24004
  {
@@ -22945,7 +24018,7 @@
22945
24018
  "type": {
22946
24019
  "text": "string"
22947
24020
  },
22948
- "description": "Minimum time (00:00 - 23:59). If the user's input value is less than this value, the component will display an error state.\nPlease note that while the UI displays time in a 12-hour format (AM/PM), the component's value is stored in a 24-hour format. The `min` property must also be provided in 24-hour format.",
24021
+ "description": "Minimum time (00:00 - 23:59). If the user's input value is less than this value, the component will display an error state.\nPlease note that regardless of the selected UI hour cycle, the component value is stored in 24-hour format.\nThe `min` property must be provided in 24-hour format.",
22949
24022
  "default": "\"00:00\"",
22950
24023
  "attribute": "min",
22951
24024
  "reflects": true
@@ -22956,7 +24029,7 @@
22956
24029
  "type": {
22957
24030
  "text": "string"
22958
24031
  },
22959
- "description": "Maximum time (00:00 - 23:59). If the user's input value is more than this value, the component will display an error state.\nPlease note that while the UI displays time in a 12-hour format (AM/PM), the component's value is stored in a 24-hour format. The `max` property must also be provided in 24-hour format.",
24032
+ "description": "Maximum time (00:00 - 23:59). If the user's input value is more than this value, the component will display an error state.\nPlease note that regardless of the selected UI hour cycle, the component value is stored in 24-hour format.\nThe `max` property must be provided in 24-hour format.",
22960
24033
  "default": "\"23:59\"",
22961
24034
  "attribute": "max",
22962
24035
  "reflects": true
@@ -22972,6 +24045,17 @@
22972
24045
  "attribute": "disabled",
22973
24046
  "reflects": true
22974
24047
  },
24048
+ {
24049
+ "kind": "field",
24050
+ "name": "readonly",
24051
+ "type": {
24052
+ "text": "boolean"
24053
+ },
24054
+ "default": "false",
24055
+ "description": "Whether the field is readonly.\nWhen readonly, the user cannot change the value.",
24056
+ "attribute": "readonly",
24057
+ "reflects": true
24058
+ },
22975
24059
  {
22976
24060
  "kind": "field",
22977
24061
  "name": "required",
@@ -22994,6 +24078,17 @@
22994
24078
  "attribute": "error",
22995
24079
  "reflects": true
22996
24080
  },
24081
+ {
24082
+ "kind": "field",
24083
+ "name": "hourCycle",
24084
+ "type": {
24085
+ "text": "HourCycle"
24086
+ },
24087
+ "default": "\"h12\"",
24088
+ "description": "Hour cycle for the UI.\n- h12: input uses 12-hour UI + AM/PM dropdown.\n- h23: input uses 24-hour UI and hides AM/PM dropdown.",
24089
+ "attribute": "hour-cycle",
24090
+ "reflects": true
24091
+ },
22997
24092
  {
22998
24093
  "kind": "field",
22999
24094
  "name": "minutesStep",
@@ -23005,6 +24100,17 @@
23005
24100
  "attribute": "minutes-step",
23006
24101
  "reflects": true
23007
24102
  },
24103
+ {
24104
+ "kind": "field",
24105
+ "name": "meridiemSingleOpen",
24106
+ "type": {
24107
+ "text": "boolean"
24108
+ },
24109
+ "default": "true",
24110
+ "description": "Whether AM/PM dropdown should be single-open across sibling time pickers in the same root.",
24111
+ "attribute": "meridiem-single-open",
24112
+ "reflects": true
24113
+ },
23008
24114
  {
23009
24115
  "kind": "field",
23010
24116
  "name": "_label",
@@ -23045,7 +24151,7 @@
23045
24151
  "kind": "field",
23046
24152
  "name": "_value",
23047
24153
  "privacy": "private",
23048
- "description": "Returns the value to be displayed in the input field.\n- If the main value is a valid 24-hour time, returns the 12-hour formatted string for UI display.\n- If the current input value is not valid or meridiem is empty, returns the raw input value.\n- Otherwise, returns null.",
24154
+ "description": "Returns the value to be displayed in the input field.\n- If the main value is a valid 24-hour time, returns a display string based on the selected hour cycle.\n- If the current input value is not valid or meridiem is empty, returns the raw input value.\n- Otherwise, returns null.",
23049
24155
  "readonly": true
23050
24156
  },
23051
24157
  {
@@ -23053,6 +24159,11 @@
23053
24159
  "name": "_timeInputElement",
23054
24160
  "privacy": "private"
23055
24161
  },
24162
+ {
24163
+ "kind": "field",
24164
+ "name": "_meridiemDropdown",
24165
+ "privacy": "private"
24166
+ },
23056
24167
  {
23057
24168
  "kind": "field",
23058
24169
  "name": "_hourDigitIndex",
@@ -23063,6 +24174,25 @@
23063
24174
  "default": "0",
23064
24175
  "description": "Tracks the current digit index for hour input (0: first digit, 1: second digit)."
23065
24176
  },
24177
+ {
24178
+ "kind": "field",
24179
+ "name": "_preCompositionValue",
24180
+ "type": {
24181
+ "text": "string"
24182
+ },
24183
+ "privacy": "private",
24184
+ "default": "\"\""
24185
+ },
24186
+ {
24187
+ "kind": "field",
24188
+ "name": "_minuteDigitIndex",
24189
+ "type": {
24190
+ "text": "number"
24191
+ },
24192
+ "privacy": "private",
24193
+ "default": "0",
24194
+ "description": "Tracks the current digit index for minute input (0: first digit, 1: second digit).\nWhen 0 (fresh entry), always starts with \"0X\" regardless of the existing value,\npreventing pre-existing values like \"04\" from being mistaken as a first-digit state."
24195
+ },
23066
24196
  {
23067
24197
  "kind": "field",
23068
24198
  "name": "_timeValue",
@@ -23182,6 +24312,62 @@
23182
24312
  "type": {
23183
24313
  "text": "number"
23184
24314
  }
24315
+ },
24316
+ {
24317
+ "name": "hourCycle",
24318
+ "type": {
24319
+ "text": "HourCycle"
24320
+ }
24321
+ }
24322
+ ]
24323
+ },
24324
+ {
24325
+ "kind": "method",
24326
+ "name": "_handleCompositionStart",
24327
+ "privacy": "private",
24328
+ "parameters": [
24329
+ {
24330
+ "name": "event",
24331
+ "type": {
24332
+ "text": "CompositionEvent"
24333
+ }
24334
+ }
24335
+ ]
24336
+ },
24337
+ {
24338
+ "kind": "method",
24339
+ "name": "_handleCompositionEnd",
24340
+ "privacy": "private",
24341
+ "parameters": [
24342
+ {
24343
+ "name": "event",
24344
+ "type": {
24345
+ "text": "CompositionEvent"
24346
+ }
24347
+ }
24348
+ ]
24349
+ },
24350
+ {
24351
+ "kind": "method",
24352
+ "name": "_applyDigits",
24353
+ "privacy": "private",
24354
+ "return": {
24355
+ "type": {
24356
+ "text": "void"
24357
+ }
24358
+ },
24359
+ "parameters": [
24360
+ {
24361
+ "name": "target",
24362
+ "type": {
24363
+ "text": "HTMLInputElement"
24364
+ }
24365
+ },
24366
+ {
24367
+ "name": "digits",
24368
+ "type": {
24369
+ "text": "string[]"
24370
+ }
23185
24371
  }
23186
24372
  ]
23187
24373
  },
@@ -23237,7 +24423,7 @@
23237
24423
  }
23238
24424
  }
23239
24425
  ],
23240
- "description": "Updates the value in 24-hour format if the input is valid, keeps UI in 12-hour format."
24426
+ "description": "Updates the value in 24-hour format if the input is valid, while preserving the selected UI hour cycle."
23241
24427
  },
23242
24428
  {
23243
24429
  "kind": "method",
@@ -23278,6 +24464,34 @@
23278
24464
  }
23279
24465
  ]
23280
24466
  },
24467
+ {
24468
+ "kind": "method",
24469
+ "name": "_closeMeridiemDropdown",
24470
+ "privacy": "private",
24471
+ "return": {
24472
+ "type": {
24473
+ "text": "void"
24474
+ }
24475
+ }
24476
+ },
24477
+ {
24478
+ "kind": "method",
24479
+ "name": "_handleMeridiemDropdownToggle",
24480
+ "privacy": "private",
24481
+ "return": {
24482
+ "type": {
24483
+ "text": "void"
24484
+ }
24485
+ },
24486
+ "parameters": [
24487
+ {
24488
+ "name": "event",
24489
+ "type": {
24490
+ "text": "Event"
24491
+ }
24492
+ }
24493
+ ]
24494
+ },
23281
24495
  {
23282
24496
  "kind": "method",
23283
24497
  "name": "focus",
@@ -23623,7 +24837,7 @@
23623
24837
  "type": {
23624
24838
  "text": "string"
23625
24839
  },
23626
- "description": "Minimum time (00:00 - 23:59). If the user's input value is less than this value, the component will display an error state.\nPlease note that while the UI displays time in a 12-hour format (AM/PM), the component's value is stored in a 24-hour format. The `min` property must also be provided in 24-hour format.",
24840
+ "description": "Minimum time (00:00 - 23:59). If the user's input value is less than this value, the component will display an error state.\nPlease note that regardless of the selected UI hour cycle, the component value is stored in 24-hour format.\nThe `min` property must be provided in 24-hour format.",
23627
24841
  "default": "\"00:00\"",
23628
24842
  "fieldName": "min"
23629
24843
  },
@@ -23632,7 +24846,7 @@
23632
24846
  "type": {
23633
24847
  "text": "string"
23634
24848
  },
23635
- "description": "Maximum time (00:00 - 23:59). If the user's input value is more than this value, the component will display an error state.\nPlease note that while the UI displays time in a 12-hour format (AM/PM), the component's value is stored in a 24-hour format. The `max` property must also be provided in 24-hour format.",
24849
+ "description": "Maximum time (00:00 - 23:59). If the user's input value is more than this value, the component will display an error state.\nPlease note that regardless of the selected UI hour cycle, the component value is stored in 24-hour format.\nThe `max` property must be provided in 24-hour format.",
23636
24850
  "default": "\"23:59\"",
23637
24851
  "fieldName": "max"
23638
24852
  },
@@ -23645,6 +24859,15 @@
23645
24859
  "description": "Whether the field is disabled. Controlled by daikin-input-group.",
23646
24860
  "fieldName": "disabled"
23647
24861
  },
24862
+ {
24863
+ "name": "readonly",
24864
+ "type": {
24865
+ "text": "boolean"
24866
+ },
24867
+ "default": "false",
24868
+ "description": "Whether the field is readonly.\nWhen readonly, the user cannot change the value.",
24869
+ "fieldName": "readonly"
24870
+ },
23648
24871
  {
23649
24872
  "name": "required",
23650
24873
  "type": {
@@ -23663,6 +24886,15 @@
23663
24886
  "description": "Whether to show error state. Controlled by daikin-input-group. Ignored if disabled.",
23664
24887
  "fieldName": "error"
23665
24888
  },
24889
+ {
24890
+ "name": "hour-cycle",
24891
+ "type": {
24892
+ "text": "HourCycle"
24893
+ },
24894
+ "default": "\"h12\"",
24895
+ "description": "Hour cycle for the UI.\n- h12: input uses 12-hour UI + AM/PM dropdown.\n- h23: input uses 24-hour UI and hides AM/PM dropdown.",
24896
+ "fieldName": "hourCycle"
24897
+ },
23666
24898
  {
23667
24899
  "name": "minutes-step",
23668
24900
  "type": {
@@ -23671,6 +24903,15 @@
23671
24903
  "description": "Minutes step. Specify the step size for the minutes when using the up and down arrow keys.",
23672
24904
  "default": "\"1\"",
23673
24905
  "fieldName": "minutesStep"
24906
+ },
24907
+ {
24908
+ "name": "meridiem-single-open",
24909
+ "type": {
24910
+ "text": "boolean"
24911
+ },
24912
+ "default": "true",
24913
+ "description": "Whether AM/PM dropdown should be single-open across sibling time pickers in the same root.",
24914
+ "fieldName": "meridiemSingleOpen"
23674
24915
  }
23675
24916
  ],
23676
24917
  "superclass": {
@@ -23684,17 +24925,17 @@
23684
24925
  "exports": [
23685
24926
  {
23686
24927
  "kind": "js",
23687
- "name": "to24HourFormat",
24928
+ "name": "uiToTimeValue",
23688
24929
  "declaration": {
23689
- "name": "to24HourFormat",
24930
+ "name": "uiToTimeValue",
23690
24931
  "module": "src/components/time-picker/daikin-time-picker.ts"
23691
24932
  }
23692
24933
  },
23693
24934
  {
23694
24935
  "kind": "js",
23695
- "name": "from24HourFormat",
24936
+ "name": "timeValueToUI",
23696
24937
  "declaration": {
23697
- "name": "from24HourFormat",
24938
+ "name": "timeValueToUI",
23698
24939
  "module": "src/components/time-picker/daikin-time-picker.ts"
23699
24940
  }
23700
24941
  },
@@ -24381,6 +25622,17 @@
24381
25622
  "attribute": "disabled",
24382
25623
  "reflects": true
24383
25624
  },
25625
+ {
25626
+ "kind": "field",
25627
+ "name": "readonly",
25628
+ "type": {
25629
+ "text": "boolean"
25630
+ },
25631
+ "default": "false",
25632
+ "description": "Whether the toggle switch is readonly.",
25633
+ "attribute": "readonly",
25634
+ "reflects": true
25635
+ },
24384
25636
  {
24385
25637
  "kind": "field",
24386
25638
  "name": "_inputRef",
@@ -24415,6 +25667,19 @@
24415
25667
  "name": "_updateFormValue",
24416
25668
  "privacy": "private"
24417
25669
  },
25670
+ {
25671
+ "kind": "method",
25672
+ "name": "_handleClick",
25673
+ "privacy": "private",
25674
+ "parameters": [
25675
+ {
25676
+ "name": "event",
25677
+ "type": {
25678
+ "text": "MouseEvent"
25679
+ }
25680
+ }
25681
+ ]
25682
+ },
24418
25683
  {
24419
25684
  "kind": "method",
24420
25685
  "name": "_handleChange",
@@ -24730,6 +25995,15 @@
24730
25995
  "default": "false",
24731
25996
  "description": "Specify the toggle switch disabled state.",
24732
25997
  "fieldName": "disabled"
25998
+ },
25999
+ {
26000
+ "name": "readonly",
26001
+ "type": {
26002
+ "text": "boolean"
26003
+ },
26004
+ "default": "false",
26005
+ "description": "Whether the toggle switch is readonly.",
26006
+ "fieldName": "readonly"
24733
26007
  }
24734
26008
  ],
24735
26009
  "superclass": {
@@ -25694,6 +26968,10 @@
25694
26968
  {
25695
26969
  "description": "A slot for the tree item content.",
25696
26970
  "name": ""
26971
+ },
26972
+ {
26973
+ "description": "A slot for an icon to be placed to the left of the content. Place `daikin-icon` or something similar.",
26974
+ "name": "left-icon"
25697
26975
  }
25698
26976
  ],
25699
26977
  "members": [
@@ -26032,6 +27310,10 @@
26032
27310
  {
26033
27311
  "description": "A slot for section header content. Place a `span` element here.",
26034
27312
  "name": "label"
27313
+ },
27314
+ {
27315
+ "description": "A slot for an icon to be placed to the right of the arrow and to the left of the label. Place `daikin-icon` or something similar.",
27316
+ "name": "left-icon"
26035
27317
  }
26036
27318
  ],
26037
27319
  "members": [
@@ -26699,11 +27981,11 @@
26699
27981
  "declarations": [
26700
27982
  {
26701
27983
  "kind": "class",
26702
- "description": "The vertical navigation item component is a child element within the `daikin-vertical-navigation` component.\nIt can be rendered as a direct link or a collapsible menu (Use `daikin-vertical-navigation-menu-item` components for sub-items).\n\nHierarchy:\n- `daikin-vertical-navigation` > `daikin-vertical-navigation-item`",
27984
+ "description": "The vertical navigation item component is a child element within the `daikin-vertical-navigation` component.\nIt can be rendered as a direct link, a collapsible menu, or an always-expanded section group\n(Use `daikin-vertical-navigation-menu-item` components for sub-items).\n\nHierarchy:\n- `daikin-vertical-navigation` > `daikin-vertical-navigation-item`",
26703
27985
  "name": "DaikinVerticalNavigationItem",
26704
27986
  "slots": [
26705
27987
  {
26706
- "description": "A slot for the sub-list content (e.g. `daikin-vertical-navigation-menu-item` elements). Only used when `type=\"menu\"`.",
27988
+ "description": "A slot for the sub-list content (e.g. `daikin-vertical-navigation-menu-item` elements). Used when `type=\"menu\"` or `type=\"section\"`.",
26707
27989
  "name": ""
26708
27990
  },
26709
27991
  {
@@ -26725,9 +28007,9 @@
26725
28007
  "kind": "field",
26726
28008
  "name": "type",
26727
28009
  "type": {
26728
- "text": "\"link\" | \"menu\""
28010
+ "text": "\"link\" | \"menu\" | \"section\""
26729
28011
  },
26730
- "description": "Type of the vertical navigation item.\n- `\"link\"` (default): Renders as an `<a>` element for direct navigation.\n- `\"menu\"`: Renders as a collapsible section with a toggle button and a default slot for sub-items.",
28012
+ "description": "Type of the vertical navigation item.\n- `\"link\"` (default): Renders as an `<a>` element for direct navigation.\n- `\"menu\"`: Renders as a collapsible section with a toggle button and a default slot for sub-items.\n- `\"section\"`: Renders as an always-expanded section without a chevron.\n If `href` is set, the parent is rendered as a link.\n If `href` is omitted, the parent is rendered as non-interactive title text.",
26731
28013
  "default": "\"link\"",
26732
28014
  "attribute": "type",
26733
28015
  "reflects": true
@@ -26739,7 +28021,7 @@
26739
28021
  "text": "string | null"
26740
28022
  },
26741
28023
  "default": "null",
26742
- "description": "The link `href`. Only used when `type=\"link\"`.",
28024
+ "description": "The link `href`.\nUsed when `type=\"link\"`.\nAlso used when `type=\"section\"` to make the parent interactive.",
26743
28025
  "attribute": "href",
26744
28026
  "reflects": true
26745
28027
  },
@@ -26768,10 +28050,10 @@
26768
28050
  "kind": "field",
26769
28051
  "name": "current",
26770
28052
  "type": {
26771
- "text": "boolean"
28053
+ "text": "boolean | \"descendant\""
26772
28054
  },
26773
28055
  "default": "false",
26774
- "description": "Whether this item is the currently active/selected item.\nWhen `true`, a blue vertical indicator bar is displayed on the left side.",
28056
+ "description": "Current state of this item.\n- `false`: default state\n- `true`: current state (blue indicator)\n- `\"descendant\"`: indicates a descendant is current (neutral indicator)",
26775
28057
  "attribute": "current",
26776
28058
  "reflects": true
26777
28059
  },
@@ -26842,6 +28124,15 @@
26842
28124
  }
26843
28125
  }
26844
28126
  },
28127
+ {
28128
+ "kind": "field",
28129
+ "name": "_effectiveCurrent",
28130
+ "type": {
28131
+ "text": "boolean | \"descendant\""
28132
+ },
28133
+ "privacy": "private",
28134
+ "readonly": true
28135
+ },
26845
28136
  {
26846
28137
  "kind": "method",
26847
28138
  "name": "_propagateDisabledToChildren",
@@ -26976,9 +28267,9 @@
26976
28267
  {
26977
28268
  "name": "type",
26978
28269
  "type": {
26979
- "text": "\"link\" | \"menu\""
28270
+ "text": "\"link\" | \"menu\" | \"section\""
26980
28271
  },
26981
- "description": "Type of the vertical navigation item.\n- `\"link\"` (default): Renders as an `<a>` element for direct navigation.\n- `\"menu\"`: Renders as a collapsible section with a toggle button and a default slot for sub-items.",
28272
+ "description": "Type of the vertical navigation item.\n- `\"link\"` (default): Renders as an `<a>` element for direct navigation.\n- `\"menu\"`: Renders as a collapsible section with a toggle button and a default slot for sub-items.\n- `\"section\"`: Renders as an always-expanded section without a chevron.\n If `href` is set, the parent is rendered as a link.\n If `href` is omitted, the parent is rendered as non-interactive title text.",
26982
28273
  "default": "\"link\"",
26983
28274
  "fieldName": "type"
26984
28275
  },
@@ -26988,7 +28279,7 @@
26988
28279
  "text": "string | null"
26989
28280
  },
26990
28281
  "default": "null",
26991
- "description": "The link `href`. Only used when `type=\"link\"`.",
28282
+ "description": "The link `href`.\nUsed when `type=\"link\"`.\nAlso used when `type=\"section\"` to make the parent interactive.",
26992
28283
  "fieldName": "href"
26993
28284
  },
26994
28285
  {
@@ -27011,10 +28302,10 @@
27011
28302
  {
27012
28303
  "name": "current",
27013
28304
  "type": {
27014
- "text": "boolean"
28305
+ "text": "boolean | \"descendant\""
27015
28306
  },
27016
28307
  "default": "false",
27017
- "description": "Whether this item is the currently active/selected item.\nWhen `true`, a blue vertical indicator bar is displayed on the left side.",
28308
+ "description": "Current state of this item.\n- `false`: default state\n- `true`: current state (blue indicator)\n- `\"descendant\"`: indicates a descendant is current (neutral indicator)",
27018
28309
  "fieldName": "current"
27019
28310
  },
27020
28311
  {
@@ -27121,7 +28412,7 @@
27121
28412
  "text": "string | null"
27122
28413
  },
27123
28414
  "default": "null",
27124
- "description": "The link `href`. When omitted, the item is rendered as a placeholder link in the disabled visual state.",
28415
+ "description": "The link `href`. When omitted, the item is rendered as an interactive item without navigation target.",
27125
28416
  "attribute": "href",
27126
28417
  "reflects": true
27127
28418
  },
@@ -27136,6 +28427,17 @@
27136
28427
  "attribute": "disabled",
27137
28428
  "reflects": true
27138
28429
  },
28430
+ {
28431
+ "kind": "field",
28432
+ "name": "current",
28433
+ "type": {
28434
+ "text": "boolean"
28435
+ },
28436
+ "default": "false",
28437
+ "description": "Whether this sub-menu item is the currently active/selected item.\nWhen `true`, a blue vertical indicator bar is displayed on the left side.",
28438
+ "attribute": "current",
28439
+ "reflects": true
28440
+ },
27139
28441
  {
27140
28442
  "kind": "field",
27141
28443
  "name": "badge",
@@ -27286,7 +28588,7 @@
27286
28588
  "text": "string | null"
27287
28589
  },
27288
28590
  "default": "null",
27289
- "description": "The link `href`. When omitted, the item is rendered as a placeholder link in the disabled visual state.",
28591
+ "description": "The link `href`. When omitted, the item is rendered as an interactive item without navigation target.",
27290
28592
  "fieldName": "href"
27291
28593
  },
27292
28594
  {
@@ -27298,6 +28600,15 @@
27298
28600
  "description": "Whether the menu item is disabled.\nA disabled item cannot be clicked or focused.",
27299
28601
  "fieldName": "disabled"
27300
28602
  },
28603
+ {
28604
+ "name": "current",
28605
+ "type": {
28606
+ "text": "boolean"
28607
+ },
28608
+ "default": "false",
28609
+ "description": "Whether this sub-menu item is the currently active/selected item.\nWhen `true`, a blue vertical indicator bar is displayed on the left side.",
28610
+ "fieldName": "current"
28611
+ },
27301
28612
  {
27302
28613
  "name": "badge",
27303
28614
  "type": {