@daikin-oss/design-system-web-components 1.6.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (353) hide show
  1. package/CHANGELOG.md +184 -0
  2. package/custom-elements.json +2639 -1328
  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
@@ -130,29 +130,37 @@ exports.DaikinProgressBar = class DaikinProgressBar extends ddsElement.DDSElemen
130
130
  }
131
131
  render() {
132
132
  const progressRatio = Math.min(Math.max(this.value / this.max, 0), 1);
133
- return lit.html`<div class="flex flex-col gap-2 w-full">
134
- <div class=${cvaBarContainer({ variant: this.variant })}>
135
- <slot></slot>
136
- </div>
133
+ return lit.html`<div class="flex flex-row gap-(--dds-space-100) items-start">
134
+ <slot
135
+ name="left-icon"
136
+ class="slotted:shrink-0 slotted:icon-size-6 size-(--dds-icon)"
137
+ ></slot>
137
138
  <div
138
- class=${cvaBar({ variant: this.variant, size: this.size })}
139
- role="progressbar"
140
- aria-label=${this.textContent ?? ""}
141
- aria-valuenow=${this.value}
142
- aria-valuemin="0"
143
- aria-valuemax=${this.max}
144
- aria-busy=${progressRatio < 1 && this.variant === "inprogress" || this.variant === "indeterminate"}
145
- style=${`--bar-width:${progressRatio * 100}%`}
146
- ></div>
147
- <span
148
- class=${cvaHelper({
139
+ class="flex flex-col gap-(--dds-space-200) w-full pt-(--dds-space-050)"
140
+ >
141
+ <div class=${cvaBarContainer({ variant: this.variant })}>
142
+ <slot></slot>
143
+ </div>
144
+ <div
145
+ class=${cvaBar({ variant: this.variant, size: this.size })}
146
+ role="progressbar"
147
+ aria-label=${this.textContent ?? ""}
148
+ aria-valuenow=${this.value}
149
+ aria-valuemin="0"
150
+ aria-valuemax=${this.max}
151
+ aria-busy=${progressRatio < 1 && this.variant === "inprogress" || this.variant === "indeterminate"}
152
+ style=${`--bar-width:${progressRatio * 100}%`}
153
+ ></div>
154
+ <span
155
+ class=${cvaHelper({
149
156
  variant: this.variant,
150
157
  visible: !!this.helper.length
151
158
  })}
152
- aria-live="polite"
153
- >
154
- ${this.helper}
155
- </span>
159
+ aria-live="polite"
160
+ >
161
+ ${this.helper}
162
+ </span>
163
+ </div>
156
164
  </div>`;
157
165
  }
158
166
  updated(changedProperties) {
@@ -21,6 +21,7 @@ type ProgressBarVariantProps = MergeVariantProps<typeof cvaBar | typeof cvaHelpe
21
21
  * - `"error"`: In addition to `"inprogress"`, an error icon is added and the color becomes red. In this variant, the `value` is ignored and the bar always expands to the full width.
22
22
  *
23
23
  * @slot - A slot for label text displayed at the top of the progress bar.
24
+ * @slot left-icon - A slot for an icon to be placed to the left of the text. Place `daikin-icon` or something similar.
24
25
  *
25
26
  * @example
26
27
  *
@@ -25,37 +25,107 @@ const cvaWrapper = classVarianceAuthority.cva(
25
25
  {
26
26
  variants: {
27
27
  disabled: {
28
- false: ["cursor-pointer"],
28
+ false: [],
29
+ true: []
30
+ },
31
+ readonly: {
32
+ false: [],
29
33
  true: []
30
34
  }
31
- }
35
+ },
36
+ compoundVariants: [
37
+ {
38
+ disabled: false,
39
+ readonly: false,
40
+ class: ["cursor-pointer"]
41
+ }
42
+ ]
43
+ }
44
+ );
45
+ const RADIO_CLASS_NAME = classVarianceAuthority.cva(
46
+ [
47
+ "flex",
48
+ "justify-center",
49
+ "items-center",
50
+ "size-4",
51
+ "rounded-full",
52
+ "relative",
53
+ "appearance-none",
54
+ "focus-visible:outline-solid",
55
+ "focus-visible:outline-2",
56
+ "focus-visible:outline-offset-2",
57
+ "focus-visible:outline-ddt-color-common-border-focus",
58
+ "disabled:border-ddt-color-common-disabled"
59
+ ],
60
+ {
61
+ variants: {
62
+ disabled: {
63
+ false: [],
64
+ true: []
65
+ },
66
+ readonly: {
67
+ false: [],
68
+ true: []
69
+ },
70
+ checked: {
71
+ false: [],
72
+ true: []
73
+ }
74
+ },
75
+ compoundVariants: [
76
+ {
77
+ disabled: false,
78
+ readonly: false,
79
+ class: ["cursor-pointer"]
80
+ },
81
+ {
82
+ readonly: false,
83
+ checked: false,
84
+ class: [
85
+ "unchecked:border-2",
86
+ "enabled:unchecked:border-ddt-color-common-neutral-default",
87
+ "group-hover:unchecked:enabled:border-ddt-color-common-neutral-hover",
88
+ "group-active:unchecked:enabled:border-ddt-color-common-neutral-press",
89
+ "group-hover:unchecked:enabled:bg-ddt-color-common-surface-neutral-hover",
90
+ "group-active:unchecked:enabled:bg-ddt-color-common-surface-neutral-press"
91
+ ]
92
+ },
93
+ {
94
+ readonly: false,
95
+ checked: true,
96
+ class: [
97
+ "checked:border-[5px]",
98
+ "enabled:checked:border-ddt-color-common-brand-default",
99
+ "group-hover:checked:enabled:border-ddt-color-common-brand-hover",
100
+ "group-active:checked:enabled:border-ddt-color-common-brand-press"
101
+ ]
102
+ },
103
+ {
104
+ readonly: true,
105
+ checked: false,
106
+ class: [
107
+ "border",
108
+ "border-ddt-color-common-disabled",
109
+ "bg-ddt-color-common-surface-secondary"
110
+ ]
111
+ },
112
+ {
113
+ readonly: true,
114
+ checked: true,
115
+ class: [
116
+ "border",
117
+ "border-ddt-color-common-neutral-default",
118
+ "before:content-['']",
119
+ "before:absolute",
120
+ "before:size-2",
121
+ "before:rounded-full",
122
+ "before:bg-ddt-color-common-neutral-default",
123
+ "bg-ddt-color-common-surface-secondary"
124
+ ]
125
+ }
126
+ ]
32
127
  }
33
128
  );
34
- const RADIO_CLASS_NAME = classVarianceAuthority.cva([
35
- "flex",
36
- "justify-center",
37
- "items-center",
38
- "size-4",
39
- "rounded-full",
40
- "relative",
41
- "appearance-none",
42
- "focus-visible:outline-solid",
43
- "focus-visible:outline-2",
44
- "focus-visible:outline-offset-2",
45
- "focus-visible:outline-ddt-color-common-border-focus",
46
- "unchecked:border-2",
47
- "enabled:cursor-pointer",
48
- "enabled:unchecked:border-ddt-color-common-neutral-default",
49
- "group-hover:unchecked:enabled:border-ddt-color-common-neutral-hover",
50
- "group-active:unchecked:enabled:border-ddt-color-common-neutral-press",
51
- "group-hover:unchecked:enabled:bg-ddt-color-common-surface-neutral-hover",
52
- "group-active:unchecked:enabled:bg-ddt-color-common-surface-neutral-press",
53
- "checked:border-[5px]",
54
- "enabled:checked:border-ddt-color-common-brand-default",
55
- "group-hover:checked:enabled:border-ddt-color-common-brand-hover",
56
- "group-active:checked:enabled:border-ddt-color-common-brand-press",
57
- "disabled:border-ddt-color-common-disabled"
58
- ])();
59
129
  const cvaLabel = classVarianceAuthority.cva(["natural-break"], {
60
130
  variants: {
61
131
  disabled: {
@@ -65,17 +135,54 @@ const cvaLabel = classVarianceAuthority.cva(["natural-break"], {
65
135
  hidden: {
66
136
  false: ["inline-block"],
67
137
  true: ["hidden"]
138
+ },
139
+ readonly: {
140
+ false: [],
141
+ true: []
142
+ },
143
+ checked: {
144
+ false: [],
145
+ true: []
68
146
  }
69
- }
147
+ },
148
+ compoundVariants: [
149
+ {
150
+ readonly: true,
151
+ checked: false,
152
+ disabled: false,
153
+ hidden: false,
154
+ class: ["text-ddt-color-common-disabled!"]
155
+ }
156
+ ]
70
157
  });
71
158
  exports.DaikinRadio = class DaikinRadio extends ddsFormElement.DDSFormElement {
72
159
  constructor() {
73
160
  super(...arguments);
74
161
  this.checked = false;
75
162
  this.disabled = false;
163
+ this.readonly = false;
76
164
  this.disabledByParent = false;
165
+ this.readonlyByParent = false;
77
166
  this.skipTab = false;
78
167
  }
168
+ /**
169
+ * The effective disabled state of the radio button.
170
+ * Returns `true` if either `disabled` or `disabledByParent` is `true`.
171
+ *
172
+ * @private
173
+ */
174
+ get _disabled() {
175
+ return this.disabled || this.disabledByParent;
176
+ }
177
+ /**
178
+ * The effective readonly state of the radio button.
179
+ * Returns `true` if either `readonly` or `readonlyByParent` is `true`.
180
+ *
181
+ * @private
182
+ */
183
+ get _readonly() {
184
+ return this.readonly || this.readonlyByParent;
185
+ }
79
186
  get _labelHidden() {
80
187
  return this.labelPosition === "hidden";
81
188
  }
@@ -84,7 +191,7 @@ exports.DaikinRadio = class DaikinRadio extends ddsFormElement.DDSFormElement {
84
191
  }
85
192
  _handleClick(event) {
86
193
  var _a;
87
- if (this.disabled || this.disabledByParent) {
194
+ if (this._disabled || this._readonly) {
88
195
  event.preventDefault();
89
196
  }
90
197
  if (((_a = event.target) == null ? void 0 : _a.tagName) !== "INPUT") {
@@ -92,6 +199,10 @@ exports.DaikinRadio = class DaikinRadio extends ddsFormElement.DDSFormElement {
92
199
  }
93
200
  }
94
201
  _handleChange(event) {
202
+ if (this._readonly) {
203
+ event.preventDefault();
204
+ return;
205
+ }
95
206
  this.checked = event.target.checked;
96
207
  this._updateFormValue();
97
208
  this.dispatchEvent(
@@ -102,19 +213,25 @@ exports.DaikinRadio = class DaikinRadio extends ddsFormElement.DDSFormElement {
102
213
  );
103
214
  }
104
215
  render() {
105
- const disabled = this.disabled || this.disabledByParent;
106
216
  return lit.html`<label
107
- class=${cvaWrapper({ disabled })}
217
+ class=${cvaWrapper({
218
+ disabled: this._disabled,
219
+ readonly: this._readonly
220
+ })}
108
221
  @click=${this._handleClick}
109
222
  >
110
223
  <span class="p-2">
111
224
  <input
112
- class=${RADIO_CLASS_NAME}
225
+ class=${RADIO_CLASS_NAME({
226
+ disabled: this._disabled,
227
+ readonly: this._readonly && !this._disabled,
228
+ checked: this.checked
229
+ })}
113
230
  type="radio"
114
231
  name=${ifDefined_js.ifDefined(this.getBackingProperty("name"))}
115
232
  aria-label=${this._labelHidden ? this.label : lit.nothing}
116
233
  tabindex=${ifDefined_js.ifDefined(this.skipTab ? "-1" : void 0)}
117
- ?disabled=${disabled}
234
+ ?disabled=${this._disabled}
118
235
  .checked=${this.checked}
119
236
  .value=${this.value}
120
237
  @change=${this._handleChange}
@@ -122,8 +239,10 @@ exports.DaikinRadio = class DaikinRadio extends ddsFormElement.DDSFormElement {
122
239
  </span>
123
240
  <slot
124
241
  class=${cvaLabel({
125
- disabled,
126
- hidden: this._labelHidden
242
+ disabled: this._disabled,
243
+ hidden: this._labelHidden,
244
+ readonly: this._readonly && !this._disabled,
245
+ checked: this.checked
127
246
  })}
128
247
  ?hidden=${this._labelHidden}
129
248
  >
@@ -170,9 +289,15 @@ __decorateClass([
170
289
  __decorateClass([
171
290
  ddsProperty.property({ type: Boolean, reflect: true })
172
291
  ], exports.DaikinRadio.prototype, "disabled", 2);
292
+ __decorateClass([
293
+ ddsProperty.property({ type: Boolean, reflect: true })
294
+ ], exports.DaikinRadio.prototype, "readonly", 2);
173
295
  __decorateClass([
174
296
  ddsProperty.property({ type: Boolean, reflect: true, attribute: false })
175
297
  ], exports.DaikinRadio.prototype, "disabledByParent", 2);
298
+ __decorateClass([
299
+ ddsProperty.property({ type: Boolean, reflect: true, attribute: false })
300
+ ], exports.DaikinRadio.prototype, "readonlyByParent", 2);
176
301
  __decorateClass([
177
302
  ddsProperty.property({ type: Boolean, attribute: false })
178
303
  ], exports.DaikinRadio.prototype, "skipTab", 2);
@@ -51,6 +51,11 @@ export declare class DaikinRadio extends DDSFormElement {
51
51
  * Specify the radio button disabled state.
52
52
  */
53
53
  disabled: boolean;
54
+ /**
55
+ * Specify the radio button readonly state.
56
+ * When readonly, the user cannot change the checked state.
57
+ */
58
+ readonly: boolean;
54
59
  /**
55
60
  * Specify the radio disabled state controlled by the parent component.
56
61
  * Controlled by `daikin-radio-group`.
@@ -58,6 +63,27 @@ export declare class DaikinRadio extends DDSFormElement {
58
63
  * @private
59
64
  */
60
65
  disabledByParent: boolean;
66
+ /**
67
+ * Specify the radio readonly state controlled by the parent component.
68
+ * Controlled by `daikin-radio-group`.
69
+ *
70
+ * @private
71
+ */
72
+ readonlyByParent: boolean;
73
+ /**
74
+ * The effective disabled state of the radio button.
75
+ * Returns `true` if either `disabled` or `disabledByParent` is `true`.
76
+ *
77
+ * @private
78
+ */
79
+ private get _disabled();
80
+ /**
81
+ * The effective readonly state of the radio button.
82
+ * Returns `true` if either `readonly` or `readonlyByParent` is `true`.
83
+ *
84
+ * @private
85
+ */
86
+ private get _readonly();
61
87
  /**
62
88
  * Whether the radio button can be focused.
63
89
  * Automatically set by `daikin-radio-group` component.
@@ -21,7 +21,7 @@ var __decorateClass = (decorators2, target, key, kind) => {
21
21
  if (kind && result) __defProp(target, key, result);
22
22
  return result;
23
23
  };
24
- const cvaRadioGroup = classVarianceAuthority.cva(["size-full", "flex", "gap-x-8", "gap-y-2"], {
24
+ const cvaRadioGroup = classVarianceAuthority.cva(["w-full", "flex", "gap-x-8", "gap-y-2"], {
25
25
  variants: {
26
26
  orientation: {
27
27
  horizontal: ["flex-row", "flex-wrap"],
@@ -35,6 +35,7 @@ exports.DaikinRadioGroup = class DaikinRadioGroup extends ddsElement.DDSElement
35
35
  this.value = "";
36
36
  this.required = false;
37
37
  this.disabled = false;
38
+ this.readonly = false;
38
39
  this._label = null;
39
40
  this._handleRadioChange = (event) => {
40
41
  event.stopPropagation();
@@ -45,6 +46,7 @@ exports.DaikinRadioGroup = class DaikinRadioGroup extends ddsElement.DDSElement
45
46
  _reflectSlotProperties() {
46
47
  for (const radio of this._radios) {
47
48
  radio.disabledByParent = this.disabled;
49
+ radio.readonlyByParent = this.readonly;
48
50
  }
49
51
  }
50
52
  _updateRadios() {
@@ -69,6 +71,9 @@ exports.DaikinRadioGroup = class DaikinRadioGroup extends ddsElement.DDSElement
69
71
  * https://www.w3.org/WAI/ARIA/apg/patterns/radio/
70
72
  */
71
73
  _handleKeyDown(event) {
74
+ if (this.disabled || this.readonly) {
75
+ return;
76
+ }
72
77
  const moveOffset = {
73
78
  ArrowRight: 1,
74
79
  ArrowDown: 1,
@@ -132,6 +137,7 @@ exports.DaikinRadioGroup = class DaikinRadioGroup extends ddsElement.DDSElement
132
137
  this._label = inputGroup.label;
133
138
  this.required = !!inputGroup.required;
134
139
  this.disabled = inputGroup.disabled;
140
+ this.readonly = inputGroup.readonly;
135
141
  }
136
142
  };
137
143
  exports.DaikinRadioGroup.styles = lit.css`
@@ -167,6 +173,9 @@ __decorateClass([
167
173
  __decorateClass([
168
174
  ddsProperty.property({ type: Boolean, reflect: true })
169
175
  ], exports.DaikinRadioGroup.prototype, "disabled", 2);
176
+ __decorateClass([
177
+ ddsProperty.property({ type: Boolean, reflect: true })
178
+ ], exports.DaikinRadioGroup.prototype, "readonly", 2);
170
179
  __decorateClass([
171
180
  decorators_js.state()
172
181
  ], exports.DaikinRadioGroup.prototype, "_label", 2);
@@ -62,6 +62,10 @@ export declare class DaikinRadioGroup extends DDSElement {
62
62
  * Controlled by `daikin-input-group` when used within `daikin-input-group`.
63
63
  */
64
64
  disabled: boolean;
65
+ /**
66
+ * Whether the radio group is readonly.
67
+ */
68
+ readonly: boolean;
65
69
  /**
66
70
  * The label text used as the value of aria-label.
67
71
  * Set automatically by `reflectInputGroup` method.
@@ -8,6 +8,7 @@ require("../../base/dds-form-element.cjs");
8
8
  const ddsProperty = require("../../base/dds-property.cjs");
9
9
  const decorators = require("../../base/decorators.cjs");
10
10
  require("../../base/define.cjs");
11
+ const customReadonly = require("../../controllers/custom-readonly.cjs");
11
12
  const tailwind = require("../../tailwind.css.cjs");
12
13
  var __defProp = Object.defineProperty;
13
14
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -23,26 +24,15 @@ const cvaSelect = classVarianceAuthority.cva(
23
24
  [
24
25
  "block",
25
26
  "w-full",
26
- "h-full",
27
27
  "relative",
28
- "after:icon-[daikin--chevron-down]",
29
- "after:w-6",
30
- "after:h-6",
31
- "after:m-auto",
32
- "after:absolute",
33
- "after:top-0",
34
- "after:bottom-0",
35
- "after:right-3.25",
36
- "after:pointer-events-none",
37
28
  "slotted-select:appearance-none!",
38
29
  "slotted-select:flex!",
39
30
  "slotted-select:items-center!",
40
31
  "slotted-select:gap-2!",
41
32
  "slotted-select:w-full!",
42
33
  "slotted-select:h-full!",
43
- "slotted-select:min-h-12!",
44
- "slotted-select:pl-4!",
45
- "slotted-select:pr-12!",
34
+ "slotted-select:min-h-(--dds-input-height)!",
35
+ "slotted-select:pr-[calc(var(--dds-padding-30)+var(--dds-gap-10)+var(--dds-icon))]!",
46
36
  "slotted-select:text-base!",
47
37
  "slotted-select:border!",
48
38
  "slotted-select:border-(--color-base)!",
@@ -53,10 +43,7 @@ const cvaSelect = classVarianceAuthority.cva(
53
43
  "slotted-select:-outline-offset-2!",
54
44
  "slotted-select-focus-visible:outline-2!",
55
45
  "slotted-select-focus-visible:outline-(--color-focus)!",
56
- "slotted-select-enabled:cursor-pointer!",
57
46
  "slotted-select-enabled:text-ddt-color-common-text-primary!",
58
- "slotted-select-hover:bg-ddt-color-common-surface-hover!",
59
- "slotted-select-active:bg-ddt-color-common-surface-press!",
60
47
  "slotted-select-disabled:text-ddt-color-common-disabled!",
61
48
  "slotted-select-disabled:border-ddt-color-common-disabled!"
62
49
  ],
@@ -66,6 +53,24 @@ const cvaSelect = classVarianceAuthority.cva(
66
53
  false: ["after:text-ddt-color-common-text-primary"],
67
54
  true: ["after:text-ddt-color-common-disabled"]
68
55
  },
56
+ readonly: {
57
+ false: [
58
+ "after:icon-[daikin--chevron-down]",
59
+ "after:size-(--dds-icon)",
60
+ "after:m-auto",
61
+ "after:absolute",
62
+ "after:top-0",
63
+ "after:bottom-0",
64
+ "after:right-(--dds-padding-30)",
65
+ "after:pointer-events-none"
66
+ ],
67
+ true: [
68
+ "slotted-select:[--color-base:var(--dds-color-common-surface-secondary)]",
69
+ "slotted-select:bg-(--dds-color-common-surface-secondary)!",
70
+ "slotted-select:hover:bg-(--dds-color-common-surface-secondary)!",
71
+ "slotted-select:active:bg-(--dds-color-common-surface-secondary)!"
72
+ ]
73
+ },
69
74
  error: {
70
75
  false: [
71
76
  "slotted-select-enabled:[--color-base:var(--dds-color-common-neutral-default)]",
@@ -77,6 +82,63 @@ const cvaSelect = classVarianceAuthority.cva(
77
82
  "[--color-base:var(--dds-color-common-danger-default)]",
78
83
  "[--color-focus:var(--dds-color-common-danger-default)]"
79
84
  ]
85
+ },
86
+ hasLeftIcon: {
87
+ false: [
88
+ "slotted-select:pl-[calc(var(--dds-padding-30)+var(--dds-space-100))]!"
89
+ ],
90
+ true: [
91
+ "slotted-select:pl-[calc(var(--dds-padding-30)+var(--dds-gap-10)+var(--dds-icon)+var(--dds-space-100))]!"
92
+ ]
93
+ }
94
+ },
95
+ compoundVariants: [
96
+ {
97
+ readonly: false,
98
+ disabled: false,
99
+ class: ["cursor-pointer slotted-select:cursor-pointer"]
100
+ },
101
+ {
102
+ readonly: false,
103
+ class: [
104
+ "slotted-select-hover:bg-ddt-color-common-surface-hover!",
105
+ "slotted-select-active:bg-ddt-color-common-surface-press!"
106
+ ]
107
+ },
108
+ {
109
+ readonly: true,
110
+ error: false,
111
+ class: [
112
+ "slotted-select-enabled:[--color-base:var(--dds-color-common-surface-secondary)]",
113
+ "slotted-select-hover:[--color-base:var(--dds-color-common-surface-secondary)]",
114
+ "slotted-select-active:[--color-base:var(--dds-color-common-surface-secondary)]"
115
+ ]
116
+ },
117
+ {
118
+ readonly: true,
119
+ error: true,
120
+ class: [
121
+ "slotted-select-enabled:[--color-base:var(--dds-color-common-danger-default)]"
122
+ ]
123
+ }
124
+ ]
125
+ }
126
+ );
127
+ const cvaLeftIcon = classVarianceAuthority.cva(
128
+ [
129
+ "absolute",
130
+ "z-1",
131
+ "top-1/2",
132
+ "-translate-y-1/2",
133
+ "left-(--dds-padding-30)",
134
+ "shrink-0",
135
+ "size-(--dds-icon)"
136
+ ],
137
+ {
138
+ variants: {
139
+ disabled: {
140
+ false: ["text-ddt-color-common-text-primary"],
141
+ true: ["text-ddt-color-common-disabled"]
80
142
  }
81
143
  }
82
144
  }
@@ -86,8 +148,30 @@ exports.DaikinSelect = class DaikinSelect extends ddsElement.DDSElement {
86
148
  super(...arguments);
87
149
  this.error = false;
88
150
  this.required = false;
151
+ this.readonly = false;
89
152
  this.disabled = false;
153
+ this._hasLeftIcon = false;
90
154
  this._label = null;
155
+ this._readonlyController = new customReadonly.CustomReadonlyController(this, {
156
+ isReadonly: () => this.readonly,
157
+ isDisabled: () => this.disabled,
158
+ blockedKeys: [
159
+ "ArrowUp",
160
+ "ArrowDown",
161
+ "ArrowLeft",
162
+ "ArrowRight",
163
+ "Home",
164
+ "End",
165
+ "PageUp",
166
+ "PageDown",
167
+ "Enter",
168
+ " "
169
+ ]
170
+ });
171
+ }
172
+ _handleLeftIconSlotChange(event) {
173
+ const slot = event.target;
174
+ this._hasLeftIcon = slot.assignedElements().length > 0;
91
175
  }
92
176
  get _select() {
93
177
  return this._selects[0] ?? null;
@@ -95,23 +179,38 @@ exports.DaikinSelect = class DaikinSelect extends ddsElement.DDSElement {
95
179
  _updateSelect() {
96
180
  const select = this._select;
97
181
  if (!select) {
182
+ this._readonlyController.setTarget(null);
98
183
  return;
99
184
  }
100
185
  select.disabled = this.disabled;
101
186
  select.required = this.required;
102
187
  select.ariaLabel = this._label;
188
+ this._readonlyController.setTarget(select);
103
189
  }
104
190
  _handleSlotChange() {
105
191
  this._updateSelect();
106
192
  }
107
193
  render() {
108
- return lit.html`<slot
109
- class=${cvaSelect({ disabled: this.disabled, error: this.error })}
110
- @slotchange=${this._handleSlotChange}
111
- ></slot>`;
194
+ return lit.html`<span
195
+ class=${cvaLeftIcon({
196
+ disabled: this.disabled
197
+ })}
198
+ ><slot
199
+ name="left-icon"
200
+ @slotchange=${this._handleLeftIconSlotChange}
201
+ ></slot></span
202
+ ><slot
203
+ class=${cvaSelect({
204
+ disabled: this.disabled,
205
+ readonly: this.readonly && !this.disabled,
206
+ error: this.error,
207
+ hasLeftIcon: this._hasLeftIcon
208
+ })}
209
+ @slotchange=${this._handleSlotChange}
210
+ ></slot>`;
112
211
  }
113
212
  updated(changedProperties) {
114
- if (changedProperties.has("disabled") || changedProperties.has("required")) {
213
+ if (changedProperties.has("disabled") || changedProperties.has("required") || changedProperties.has("readonly")) {
115
214
  this._updateSelect();
116
215
  }
117
216
  }
@@ -122,6 +221,7 @@ exports.DaikinSelect = class DaikinSelect extends ddsElement.DDSElement {
122
221
  reflectInputGroup(inputGroup) {
123
222
  const isError = !inputGroup.disabled && !!inputGroup.error;
124
223
  this.disabled = !!inputGroup.disabled;
224
+ this.readonly = !!inputGroup.readonly;
125
225
  this.required = !!inputGroup.required;
126
226
  this.error = isError;
127
227
  this._label = inputGroup.label;
@@ -161,6 +261,7 @@ exports.DaikinSelect.styles = lit.css`
161
261
  :host {
162
262
  display: block;
163
263
  width: 100%;
264
+ position: relative;
164
265
  }
165
266
  `;
166
267
  __decorateClass([
@@ -169,12 +270,18 @@ __decorateClass([
169
270
  __decorateClass([
170
271
  ddsProperty.property({ type: Boolean, reflect: true })
171
272
  ], exports.DaikinSelect.prototype, "required", 2);
273
+ __decorateClass([
274
+ ddsProperty.property({ type: Boolean, reflect: true })
275
+ ], exports.DaikinSelect.prototype, "readonly", 2);
172
276
  __decorateClass([
173
277
  ddsProperty.property({ type: Boolean, reflect: true })
174
278
  ], exports.DaikinSelect.prototype, "disabled", 2);
175
279
  __decorateClass([
176
280
  decorators_js.queryAssignedElements({ selector: "select" })
177
281
  ], exports.DaikinSelect.prototype, "_selects", 2);
282
+ __decorateClass([
283
+ decorators_js.state()
284
+ ], exports.DaikinSelect.prototype, "_hasLeftIcon", 2);
178
285
  __decorateClass([
179
286
  decorators_js.state()
180
287
  ], exports.DaikinSelect.prototype, "_label", 2);