@api-client/ui 0.2.13 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (326) hide show
  1. package/.vscode/settings.json +1 -0
  2. package/build/src/core/ModalActivity.d.ts +1 -1
  3. package/build/src/core/ModalActivity.d.ts.map +1 -1
  4. package/build/src/core/ModalActivity.js +6 -5
  5. package/build/src/core/ModalActivity.js.map +1 -1
  6. package/build/src/core/ThemeManager.d.ts +4 -2
  7. package/build/src/core/ThemeManager.d.ts.map +1 -1
  8. package/build/src/core/ThemeManager.js.map +1 -1
  9. package/build/src/demo/DemoPage.d.ts +1 -4
  10. package/build/src/demo/DemoPage.d.ts.map +1 -1
  11. package/build/src/demo/DemoPage.js +2 -5
  12. package/build/src/demo/DemoPage.js.map +1 -1
  13. package/build/src/elements/authorization/ui/CcAuthorization.d.ts +1 -1
  14. package/build/src/elements/authorization/ui/CcAuthorization.d.ts.map +1 -1
  15. package/build/src/elements/authorization/ui/CcAuthorization.js +2 -2
  16. package/build/src/elements/authorization/ui/CcAuthorization.js.map +1 -1
  17. package/build/src/elements/authorization/ui/OAuth2Authorization.d.ts +1 -1
  18. package/build/src/elements/authorization/ui/OAuth2Authorization.d.ts.map +1 -1
  19. package/build/src/elements/authorization/ui/OAuth2Authorization.js +11 -5
  20. package/build/src/elements/authorization/ui/OAuth2Authorization.js.map +1 -1
  21. package/build/src/elements/authorization/ui/OidcAuthorization.d.ts +1 -2
  22. package/build/src/elements/authorization/ui/OidcAuthorization.d.ts.map +1 -1
  23. package/build/src/elements/authorization/ui/OidcAuthorization.js +10 -8
  24. package/build/src/elements/authorization/ui/OidcAuthorization.js.map +1 -1
  25. package/build/src/elements/code/HttpSnippets.d.ts +1 -1
  26. package/build/src/elements/code/HttpSnippets.d.ts.map +1 -1
  27. package/build/src/elements/code/HttpSnippets.js +5 -5
  28. package/build/src/elements/code/HttpSnippets.js.map +1 -1
  29. package/build/src/elements/dialog/internals/ConfirmDelete.d.ts +1 -1
  30. package/build/src/elements/dialog/internals/ConfirmDelete.d.ts.map +1 -1
  31. package/build/src/elements/dialog/internals/ConfirmDelete.js +5 -5
  32. package/build/src/elements/dialog/internals/ConfirmDelete.js.map +1 -1
  33. package/build/src/elements/dialog/internals/Rename.d.ts +1 -1
  34. package/build/src/elements/dialog/internals/Rename.d.ts.map +1 -1
  35. package/build/src/elements/dialog/internals/Rename.js +6 -5
  36. package/build/src/elements/dialog/internals/Rename.js.map +1 -1
  37. package/build/src/elements/environment/EnvironmentEditor.d.ts +1 -1
  38. package/build/src/elements/environment/EnvironmentEditor.d.ts.map +1 -1
  39. package/build/src/elements/environment/EnvironmentEditor.js +5 -4
  40. package/build/src/elements/environment/EnvironmentEditor.js.map +1 -1
  41. package/build/src/elements/http/BodyEditor.d.ts +1 -3
  42. package/build/src/elements/http/BodyEditor.d.ts.map +1 -1
  43. package/build/src/elements/http/BodyEditor.js +25 -20
  44. package/build/src/elements/http/BodyEditor.js.map +1 -1
  45. package/build/src/elements/http/BodyMultipartEditor.d.ts +1 -1
  46. package/build/src/elements/http/BodyMultipartEditor.d.ts.map +1 -1
  47. package/build/src/elements/http/BodyMultipartEditor.js +3 -3
  48. package/build/src/elements/http/BodyMultipartEditor.js.map +1 -1
  49. package/build/src/elements/http/CertificateAdd.element.d.ts +1 -3
  50. package/build/src/elements/http/CertificateAdd.element.d.ts.map +1 -1
  51. package/build/src/elements/http/CertificateAdd.element.js +6 -10
  52. package/build/src/elements/http/CertificateAdd.element.js.map +1 -1
  53. package/build/src/elements/http/HeadersForm.d.ts +1 -1
  54. package/build/src/elements/http/HeadersForm.d.ts.map +1 -1
  55. package/build/src/elements/http/HeadersForm.js +3 -3
  56. package/build/src/elements/http/HeadersForm.js.map +1 -1
  57. package/build/src/elements/http/HttpAssertions.element.d.ts +1 -1
  58. package/build/src/elements/http/HttpAssertions.element.d.ts.map +1 -1
  59. package/build/src/elements/http/HttpAssertions.element.js +2 -2
  60. package/build/src/elements/http/HttpAssertions.element.js.map +1 -1
  61. package/build/src/elements/http/HttpFlows.element.d.ts +1 -1
  62. package/build/src/elements/http/HttpFlows.element.d.ts.map +1 -1
  63. package/build/src/elements/http/HttpFlows.element.js +6 -6
  64. package/build/src/elements/http/HttpFlows.element.js.map +1 -1
  65. package/build/src/elements/http/RequestEditor.d.ts +1 -3
  66. package/build/src/elements/http/RequestEditor.d.ts.map +1 -1
  67. package/build/src/elements/http/RequestEditor.js +10 -11
  68. package/build/src/elements/http/RequestEditor.js.map +1 -1
  69. package/build/src/elements/http/UrlParamsForm.d.ts +1 -1
  70. package/build/src/elements/http/UrlParamsForm.d.ts.map +1 -1
  71. package/build/src/elements/http/UrlParamsForm.js +4 -4
  72. package/build/src/elements/http/UrlParamsForm.js.map +1 -1
  73. package/build/src/elements/project/HttpProjectRequest.d.ts +1 -1
  74. package/build/src/elements/project/HttpProjectRequest.d.ts.map +1 -1
  75. package/build/src/elements/project/HttpProjectRequest.js +3 -3
  76. package/build/src/elements/project/HttpProjectRequest.js.map +1 -1
  77. package/build/src/elements/project/HttpProjectRequestHistory.d.ts +1 -2
  78. package/build/src/elements/project/HttpProjectRequestHistory.d.ts.map +1 -1
  79. package/build/src/elements/project/HttpProjectRequestHistory.js +5 -6
  80. package/build/src/elements/project/HttpProjectRequestHistory.js.map +1 -1
  81. package/build/src/elements/project/ProjectRunReport.d.ts +1 -1
  82. package/build/src/elements/project/ProjectRunReport.d.ts.map +1 -1
  83. package/build/src/elements/project/ProjectRunReport.js +7 -7
  84. package/build/src/elements/project/ProjectRunReport.js.map +1 -1
  85. package/build/src/elements/project/ProjectRunner.d.ts +1 -2
  86. package/build/src/elements/project/ProjectRunner.d.ts.map +1 -1
  87. package/build/src/elements/project/ProjectRunner.js +4 -5
  88. package/build/src/elements/project/ProjectRunner.js.map +1 -1
  89. package/build/src/md/button/internals/base.d.ts +98 -0
  90. package/build/src/md/button/internals/base.d.ts.map +1 -0
  91. package/build/src/md/button/internals/base.js +353 -0
  92. package/build/src/md/button/internals/base.js.map +1 -0
  93. package/build/src/md/button/internals/button.d.ts +7 -75
  94. package/build/src/md/button/internals/button.d.ts.map +1 -1
  95. package/build/src/md/button/internals/button.js +18 -247
  96. package/build/src/md/button/internals/button.js.map +1 -1
  97. package/build/src/md/button/internals/{button-styles.d.ts → button.styles.d.ts} +1 -1
  98. package/build/src/md/button/internals/button.styles.d.ts.map +1 -0
  99. package/build/src/md/button/internals/button.styles.js +319 -0
  100. package/build/src/md/button/internals/button.styles.js.map +1 -0
  101. package/build/src/md/button/internals/group.d.ts +54 -0
  102. package/build/src/md/button/internals/group.d.ts.map +1 -0
  103. package/build/src/md/button/internals/group.js +157 -0
  104. package/build/src/md/button/internals/group.js.map +1 -0
  105. package/build/src/md/button/internals/{text-button.styles.d.ts → group.styles.d.ts} +1 -1
  106. package/build/src/md/button/internals/group.styles.d.ts.map +1 -0
  107. package/build/src/md/button/internals/group.styles.js +102 -0
  108. package/build/src/md/button/internals/group.styles.js.map +1 -0
  109. package/build/src/md/button/ui-button-group.d.ts +11 -0
  110. package/build/src/md/button/ui-button-group.d.ts.map +1 -0
  111. package/build/src/md/{icon-button/ui-filled-icon-button.js → button/ui-button-group.js} +10 -11
  112. package/build/src/md/button/ui-button-group.js.map +1 -0
  113. package/build/src/md/button/ui-button.d.ts +14 -0
  114. package/build/src/md/button/ui-button.d.ts.map +1 -0
  115. package/build/src/md/button/{ui-text-button.js → ui-button.js} +10 -11
  116. package/build/src/md/button/ui-button.js.map +1 -0
  117. package/build/src/md/dialog/internals/Dialog.d.ts +5 -5
  118. package/build/src/md/dialog/internals/Dialog.d.ts.map +1 -1
  119. package/build/src/md/dialog/internals/Dialog.js +14 -9
  120. package/build/src/md/dialog/internals/Dialog.js.map +1 -1
  121. package/build/src/md/dropdown-list/internals/UiDropdownList.d.ts +1 -1
  122. package/build/src/md/dropdown-list/internals/UiDropdownList.js +1 -1
  123. package/build/src/md/dropdown-list/internals/UiDropdownList.js.map +1 -1
  124. package/build/src/md/icon-button/internals/IconButton.d.ts +12 -36
  125. package/build/src/md/icon-button/internals/IconButton.d.ts.map +1 -1
  126. package/build/src/md/icon-button/internals/IconButton.js +32 -144
  127. package/build/src/md/icon-button/internals/IconButton.js.map +1 -1
  128. package/build/src/md/{button/internals/filled-button.styles.d.ts → icon-button/internals/IconButton.styles.d.ts} +1 -1
  129. package/build/src/md/icon-button/internals/IconButton.styles.d.ts.map +1 -0
  130. package/build/src/md/icon-button/internals/IconButton.styles.js +286 -0
  131. package/build/src/md/icon-button/internals/IconButton.styles.js.map +1 -0
  132. package/build/src/md/icon-button/ui-icon-button.d.ts.map +1 -1
  133. package/build/src/md/icon-button/ui-icon-button.js +2 -3
  134. package/build/src/md/icon-button/ui-icon-button.js.map +1 -1
  135. package/build/src/md/input/Input.d.ts +4 -3
  136. package/build/src/md/input/Input.d.ts.map +1 -1
  137. package/build/src/md/input/Input.js +15 -11
  138. package/build/src/md/input/Input.js.map +1 -1
  139. package/build/src/md/ripple/internals/ripple.d.ts +2 -0
  140. package/build/src/md/ripple/internals/ripple.d.ts.map +1 -1
  141. package/build/src/md/ripple/internals/ripple.js +20 -10
  142. package/build/src/md/ripple/internals/ripple.js.map +1 -1
  143. package/build/src/md/ripple/internals/ripple.styles.d.ts.map +1 -1
  144. package/build/src/md/ripple/internals/ripple.styles.js +8 -20
  145. package/build/src/md/ripple/internals/ripple.styles.js.map +1 -1
  146. package/build/src/md/snackbar/internals/Snackbar.d.ts +1 -1
  147. package/build/src/md/snackbar/internals/Snackbar.d.ts.map +1 -1
  148. package/build/src/md/snackbar/internals/Snackbar.js +4 -2
  149. package/build/src/md/snackbar/internals/Snackbar.js.map +1 -1
  150. package/build/src/md/text-field/internals/common.styles.d.ts.map +1 -1
  151. package/build/src/md/text-field/internals/common.styles.js +11 -5
  152. package/build/src/md/text-field/internals/common.styles.js.map +1 -1
  153. package/build/src/md/text-field/internals/filled.styles.d.ts.map +1 -1
  154. package/build/src/md/text-field/internals/filled.styles.js +7 -0
  155. package/build/src/md/text-field/internals/filled.styles.js.map +1 -1
  156. package/build/src/md/text-field/internals/outlined.styles.d.ts.map +1 -1
  157. package/build/src/md/text-field/internals/outlined.styles.js +29 -9
  158. package/build/src/md/text-field/internals/outlined.styles.js.map +1 -1
  159. package/build/src/styles/m3/dialog.module.d.ts +2 -2
  160. package/build/src/styles/m3/dialog.module.js +2 -2
  161. package/build/src/styles/m3/dialog.module.js.map +1 -1
  162. package/build/src/styles/m3/tokens.d.ts.map +1 -1
  163. package/build/src/styles/m3/tokens.js +208 -182
  164. package/build/src/styles/m3/tokens.js.map +1 -1
  165. package/demo/elements/authorization/oauth-authorize.html +1 -1
  166. package/demo/elements/authorization/oauth-authorize.ts +1 -1
  167. package/demo/elements/environment/variables-editor.ts +2 -2
  168. package/demo/elements/http/url-editing.ts +3 -3
  169. package/demo/elements/project/request-editor.ts +4 -4
  170. package/demo/layout/index.ts +5 -5
  171. package/demo/md/buttons/button.html +121 -0
  172. package/demo/md/buttons/button.ts +246 -0
  173. package/demo/md/buttons/{index.html → group.html} +15 -2
  174. package/demo/md/buttons/group.ts +171 -0
  175. package/demo/md/checkbox/index.ts +1 -1
  176. package/demo/md/dialog/dialog.ts +8 -9
  177. package/demo/md/dropdown-list/index.ts +68 -71
  178. package/demo/md/icon-button/index.html +97 -7
  179. package/demo/md/icon-button/index.ts +97 -201
  180. package/demo/md/index.html +3 -1
  181. package/demo/md/inputs/input.html +39 -0
  182. package/demo/md/inputs/input.ts +204 -419
  183. package/demo/md/inputs/radio.ts +1 -1
  184. package/demo/md/inputs/switch.ts +1 -1
  185. package/demo/md/notification/snack.ts +5 -5
  186. package/demo/md/progress/progress.ts +4 -3
  187. package/package.json +2 -2
  188. package/src/core/ModalActivity.ts +6 -5
  189. package/src/core/ThemeManager.ts +5 -4
  190. package/src/demo/DemoPage.ts +2 -5
  191. package/src/elements/authorization/ui/CcAuthorization.ts +2 -2
  192. package/src/elements/authorization/ui/OAuth2Authorization.ts +11 -5
  193. package/src/elements/authorization/ui/OidcAuthorization.ts +10 -8
  194. package/src/elements/code/HttpSnippets.ts +5 -5
  195. package/src/elements/dialog/internals/ConfirmDelete.ts +5 -5
  196. package/src/elements/dialog/internals/Rename.ts +6 -5
  197. package/src/elements/environment/EnvironmentEditor.ts +5 -4
  198. package/src/elements/http/BodyEditor.ts +25 -20
  199. package/src/elements/http/BodyMultipartEditor.ts +3 -3
  200. package/src/elements/http/CertificateAdd.element.ts +6 -10
  201. package/src/elements/http/HeadersForm.ts +3 -3
  202. package/src/elements/http/HttpAssertions.element.ts +2 -2
  203. package/src/elements/http/HttpFlows.element.ts +6 -6
  204. package/src/elements/http/RequestEditor.ts +10 -11
  205. package/src/elements/http/UrlParamsForm.ts +4 -4
  206. package/src/elements/project/HttpProjectRequest.ts +3 -3
  207. package/src/elements/project/HttpProjectRequestHistory.ts +5 -6
  208. package/src/elements/project/ProjectRunReport.ts +7 -7
  209. package/src/elements/project/ProjectRunner.ts +4 -5
  210. package/src/md/button/internals/base.ts +299 -0
  211. package/src/md/button/internals/button.styles.ts +319 -0
  212. package/src/md/button/internals/button.ts +8 -234
  213. package/src/md/button/internals/group.styles.ts +102 -0
  214. package/src/md/button/internals/group.ts +121 -0
  215. package/src/md/button/ui-button-group.ts +15 -0
  216. package/src/md/button/ui-button.ts +18 -0
  217. package/src/md/dialog/internals/Dialog.ts +14 -9
  218. package/src/md/dropdown-list/internals/UiDropdownList.ts +1 -1
  219. package/src/md/icon-button/internals/IconButton.styles.ts +286 -0
  220. package/src/md/icon-button/internals/IconButton.ts +15 -139
  221. package/src/md/icon-button/ui-icon-button.ts +2 -3
  222. package/src/md/input/Input.ts +16 -11
  223. package/src/md/ripple/internals/ripple.styles.ts +8 -20
  224. package/src/md/ripple/internals/ripple.ts +21 -13
  225. package/src/md/snackbar/internals/Snackbar.ts +4 -2
  226. package/src/md/text-field/internals/common.styles.ts +11 -5
  227. package/src/md/text-field/internals/filled.styles.ts +7 -0
  228. package/src/md/text-field/internals/outlined.styles.ts +29 -9
  229. package/src/styles/m3/dialog.module.ts +2 -2
  230. package/src/styles/m3/native.css +270 -0
  231. package/src/styles/m3/tokens.css +208 -182
  232. package/src/styles/m3/tokens.ts +208 -182
  233. package/test/ui/button/UiButton.test.ts +51 -29
  234. package/test/ui/button/UiIconButton.test.ts +25 -19
  235. package/test/ui/dialog/UiDialog.test.ts +10 -10
  236. package/build/src/md/button/internals/button-styles.d.ts.map +0 -1
  237. package/build/src/md/button/internals/button-styles.js +0 -143
  238. package/build/src/md/button/internals/button-styles.js.map +0 -1
  239. package/build/src/md/button/internals/elevated-button.d.ts +0 -4
  240. package/build/src/md/button/internals/elevated-button.d.ts.map +0 -1
  241. package/build/src/md/button/internals/elevated-button.js +0 -4
  242. package/build/src/md/button/internals/elevated-button.js.map +0 -1
  243. package/build/src/md/button/internals/elevated-button.styles.d.ts +0 -3
  244. package/build/src/md/button/internals/elevated-button.styles.d.ts.map +0 -1
  245. package/build/src/md/button/internals/elevated-button.styles.js +0 -38
  246. package/build/src/md/button/internals/elevated-button.styles.js.map +0 -1
  247. package/build/src/md/button/internals/filled-button.d.ts +0 -4
  248. package/build/src/md/button/internals/filled-button.d.ts.map +0 -1
  249. package/build/src/md/button/internals/filled-button.js +0 -4
  250. package/build/src/md/button/internals/filled-button.js.map +0 -1
  251. package/build/src/md/button/internals/filled-button.styles.d.ts.map +0 -1
  252. package/build/src/md/button/internals/filled-button.styles.js +0 -30
  253. package/build/src/md/button/internals/filled-button.styles.js.map +0 -1
  254. package/build/src/md/button/internals/filled-tonal-button.d.ts +0 -4
  255. package/build/src/md/button/internals/filled-tonal-button.d.ts.map +0 -1
  256. package/build/src/md/button/internals/filled-tonal-button.js +0 -4
  257. package/build/src/md/button/internals/filled-tonal-button.js.map +0 -1
  258. package/build/src/md/button/internals/filled-tonal-button.styles.d.ts +0 -3
  259. package/build/src/md/button/internals/filled-tonal-button.styles.d.ts.map +0 -1
  260. package/build/src/md/button/internals/filled-tonal-button.styles.js +0 -30
  261. package/build/src/md/button/internals/filled-tonal-button.styles.js.map +0 -1
  262. package/build/src/md/button/internals/outlined-button.d.ts +0 -4
  263. package/build/src/md/button/internals/outlined-button.d.ts.map +0 -1
  264. package/build/src/md/button/internals/outlined-button.js +0 -4
  265. package/build/src/md/button/internals/outlined-button.js.map +0 -1
  266. package/build/src/md/button/internals/outlined-button.styles.d.ts +0 -3
  267. package/build/src/md/button/internals/outlined-button.styles.d.ts.map +0 -1
  268. package/build/src/md/button/internals/outlined-button.styles.js +0 -31
  269. package/build/src/md/button/internals/outlined-button.styles.js.map +0 -1
  270. package/build/src/md/button/internals/text-button.d.ts +0 -4
  271. package/build/src/md/button/internals/text-button.d.ts.map +0 -1
  272. package/build/src/md/button/internals/text-button.js +0 -4
  273. package/build/src/md/button/internals/text-button.js.map +0 -1
  274. package/build/src/md/button/internals/text-button.styles.d.ts.map +0 -1
  275. package/build/src/md/button/internals/text-button.styles.js +0 -30
  276. package/build/src/md/button/internals/text-button.styles.js.map +0 -1
  277. package/build/src/md/button/ui-elevated-button.d.ts +0 -14
  278. package/build/src/md/button/ui-elevated-button.d.ts.map +0 -1
  279. package/build/src/md/button/ui-elevated-button.js +0 -31
  280. package/build/src/md/button/ui-elevated-button.js.map +0 -1
  281. package/build/src/md/button/ui-filled-button.d.ts +0 -14
  282. package/build/src/md/button/ui-filled-button.d.ts.map +0 -1
  283. package/build/src/md/button/ui-filled-button.js +0 -31
  284. package/build/src/md/button/ui-filled-button.js.map +0 -1
  285. package/build/src/md/button/ui-filled-tonal-button.d.ts +0 -14
  286. package/build/src/md/button/ui-filled-tonal-button.d.ts.map +0 -1
  287. package/build/src/md/button/ui-filled-tonal-button.js +0 -31
  288. package/build/src/md/button/ui-filled-tonal-button.js.map +0 -1
  289. package/build/src/md/button/ui-outlined-button.d.ts +0 -14
  290. package/build/src/md/button/ui-outlined-button.d.ts.map +0 -1
  291. package/build/src/md/button/ui-outlined-button.js +0 -31
  292. package/build/src/md/button/ui-outlined-button.js.map +0 -1
  293. package/build/src/md/button/ui-text-button.d.ts +0 -14
  294. package/build/src/md/button/ui-text-button.d.ts.map +0 -1
  295. package/build/src/md/button/ui-text-button.js.map +0 -1
  296. package/build/src/md/icon-button/ui-filled-icon-button.d.ts +0 -11
  297. package/build/src/md/icon-button/ui-filled-icon-button.d.ts.map +0 -1
  298. package/build/src/md/icon-button/ui-filled-icon-button.js.map +0 -1
  299. package/build/src/md/icon-button/ui-filled-tonal-icon-button.d.ts +0 -11
  300. package/build/src/md/icon-button/ui-filled-tonal-icon-button.d.ts.map +0 -1
  301. package/build/src/md/icon-button/ui-filled-tonal-icon-button.js +0 -28
  302. package/build/src/md/icon-button/ui-filled-tonal-icon-button.js.map +0 -1
  303. package/build/src/md/icon-button/ui-outlined-icon-button.d.ts +0 -11
  304. package/build/src/md/icon-button/ui-outlined-icon-button.d.ts.map +0 -1
  305. package/build/src/md/icon-button/ui-outlined-icon-button.js +0 -28
  306. package/build/src/md/icon-button/ui-outlined-icon-button.js.map +0 -1
  307. package/demo/md/buttons/index.ts +0 -279
  308. package/src/md/button/internals/button-styles.ts +0 -143
  309. package/src/md/button/internals/elevated-button.styles.ts +0 -38
  310. package/src/md/button/internals/elevated-button.ts +0 -3
  311. package/src/md/button/internals/filled-button.styles.ts +0 -30
  312. package/src/md/button/internals/filled-button.ts +0 -3
  313. package/src/md/button/internals/filled-tonal-button.styles.ts +0 -30
  314. package/src/md/button/internals/filled-tonal-button.ts +0 -3
  315. package/src/md/button/internals/outlined-button.styles.ts +0 -31
  316. package/src/md/button/internals/outlined-button.ts +0 -3
  317. package/src/md/button/internals/text-button.styles.ts +0 -30
  318. package/src/md/button/internals/text-button.ts +0 -3
  319. package/src/md/button/ui-elevated-button.ts +0 -19
  320. package/src/md/button/ui-filled-button.ts +0 -19
  321. package/src/md/button/ui-filled-tonal-button.ts +0 -19
  322. package/src/md/button/ui-outlined-button.ts +0 -19
  323. package/src/md/button/ui-text-button.ts +0 -19
  324. package/src/md/icon-button/ui-filled-icon-button.ts +0 -16
  325. package/src/md/icon-button/ui-filled-tonal-icon-button.ts +0 -16
  326. package/src/md/icon-button/ui-outlined-icon-button.ts +0 -16
@@ -1,21 +1,20 @@
1
1
  import { html, TemplateResult } from 'lit'
2
2
  import { DemoPage } from '../../../src/demo/DemoPage.js'
3
- import IconButtonElement from '../../../src/md/icon-button/internals/IconButton.js'
3
+ import IconButtonElement, { type MdIconButtonWidth } from '../../../src/md/icon-button/internals/IconButton.js'
4
+ import reactive from '../../../src/decorators/reactive.js'
5
+ import type { MdButtonSize, MdButtonShape } from '../../../src/md/button/internals/base.js'
4
6
 
5
7
  import '../../../src/md/icon-button/ui-icon-button.js'
6
- import '../../../src/md/icon-button/ui-filled-icon-button.js'
7
- import '../../../src/md/icon-button/ui-filled-tonal-icon-button.js'
8
- import '../../../src/md/icon-button/ui-outlined-icon-button.js'
9
8
  import '../../../src/md/icons/ui-icon.js'
10
9
 
11
- import '@material/web/iconbutton/icon-button.js'
12
- import '@material/web/iconbutton/filled-icon-button.js'
13
- import '@material/web/iconbutton/filled-tonal-icon-button.js'
14
- import '@material/web/iconbutton/outlined-icon-button.js'
15
- import '@material/web/icon/icon.js'
16
-
17
10
  class ComponentDemoPage extends DemoPage {
18
- override accessor componentName = 'API icon button'
11
+ override accessor componentName = 'UI icon button'
12
+
13
+ @reactive() accessor size: MdButtonSize = 's'
14
+
15
+ @reactive() accessor shape: MdButtonShape = 'round'
16
+
17
+ @reactive() accessor width: MdIconButtonWidth = 'default'
19
18
 
20
19
  _clickHandler(e: Event): void {
21
20
  const button = e.target as IconButtonElement
@@ -24,208 +23,105 @@ class ComponentDemoPage extends DemoPage {
24
23
 
25
24
  _activeHandler(e: Event): void {
26
25
  const button = e.target as IconButtonElement
27
- console.log(`A ${button.localName} button was ${button.active ? 'activated' : 'deactivated'}`)
26
+ console.log(`A ${button.localName} button was ${button.selected ? 'activated' : 'deactivated'}`)
28
27
  }
29
28
 
30
- contentTemplate(): TemplateResult {
31
- return html`
32
- <a href="../">Back</a>
33
- <section class="demo-section">
34
- <h2 class="title-large">Filled icon button</h2>
35
-
36
- <h3 class="title-small">UI icon button</h3>
37
- <div class="demo-row icons-demo-row">
38
- <ui-filled-icon-button
39
- @click="${this._clickHandler}"
40
- @active="${this._activeHandler}"
41
- aria-label="Settings: standard filled button"
42
- ><ui-icon>settings</ui-icon></ui-filled-icon-button
43
- >
44
- <ui-filled-icon-button
45
- toggle
46
- @click="${this._clickHandler}"
47
- @active="${this._activeHandler}"
48
- aria-label="Settings: toggle filled button"
49
- ><ui-icon>settings</ui-icon></ui-filled-icon-button
50
- >
51
- <ui-filled-icon-button
52
- toggle
53
- active
54
- @click="${this._clickHandler}"
55
- @active="${this._activeHandler}"
56
- aria-label="Settings: toggle, active filled button"
57
- ><ui-icon>settings</ui-icon></ui-filled-icon-button
58
- >
59
- <ui-filled-icon-button
60
- disabled
61
- @click="${this._clickHandler}"
62
- @active="${this._activeHandler}"
63
- aria-label="Settings: disabled filled button"
64
- ><ui-icon>settings</ui-icon></ui-filled-icon-button
65
- >
29
+ handleSizeChange(e: Event): void {
30
+ const select = e.target as HTMLSelectElement
31
+ this.size = select.value as MdButtonSize
32
+ }
66
33
 
67
- <p class="label-large">No toggle</p>
68
- <p class="label-large">Toggle (unselected)</p>
69
- <p class="label-large">Toggle (selected)</p>
70
- <p class="label-large">Disabled</p>
71
- </div>
34
+ handleShapeChange(e: Event): void {
35
+ const select = e.target as HTMLSelectElement
36
+ this.shape = select.value as MdButtonShape
37
+ }
72
38
 
73
- <h3 class="title-small">MD icon button (reference)</h3>
74
- <div class="demo-row icons-demo-row">
75
- <md-filled-icon-button><md-icon>settings</md-icon></md-filled-icon-button>
76
- <md-filled-icon-button toggle><md-icon>settings</md-icon></md-filled-icon-button>
77
- <md-filled-icon-button toggle selected><md-icon>settings</md-icon></md-filled-icon-button>
78
- <md-filled-icon-button disabled><md-icon>settings</md-icon></md-filled-icon-button>
79
- <p class="label-large">No toggle</p>
80
- <p class="label-large">Toggle (unselected)</p>
81
- <p class="label-large">Toggle (selected)</p>
82
- <p class="label-large">Disabled</p>
83
- </div>
84
- </section>
39
+ handleWidthChange(e: Event): void {
40
+ const select = e.target as HTMLSelectElement
41
+ this.width = select.value as MdIconButtonWidth
42
+ }
85
43
 
86
- <section class="demo-section">
87
- <h2 class="title-large">Filled tonal icon button</h2>
88
- <h3 class="title-small">UI icon button</h3>
89
- <div class="demo-row icons-demo-row">
90
- <ui-filled-tonal-icon-button
91
- @click="${this._clickHandler}"
92
- @active="${this._activeHandler}"
93
- aria-label="Settings: standard filled button"
94
- ><ui-icon>settings</ui-icon></ui-filled-tonal-icon-button
95
- >
96
- <ui-filled-tonal-icon-button
97
- toggle
98
- @click="${this._clickHandler}"
99
- @active="${this._activeHandler}"
100
- aria-label="Settings: toggle filled button"
101
- ><ui-icon>settings</ui-icon></ui-filled-tonal-icon-button
102
- >
103
- <ui-filled-tonal-icon-button
104
- toggle
105
- active
106
- @click="${this._clickHandler}"
107
- @active="${this._activeHandler}"
108
- aria-label="Settings: toggle, active filled button"
109
- ><ui-icon>settings</ui-icon></ui-filled-tonal-icon-button
110
- >
111
- <ui-filled-tonal-icon-button
112
- disabled
113
- @click="${this._clickHandler}"
114
- @active="${this._activeHandler}"
115
- aria-label="Settings: disabled filled button"
116
- ><ui-icon>settings</ui-icon></ui-filled-tonal-icon-button
117
- >
44
+ readonly icon = html`<ui-icon>settings</ui-icon>`
118
45
 
119
- <p class="label-large">No toggle</p>
120
- <p class="label-large">Toggle (unselected)</p>
121
- <p class="label-large">Toggle (selected)</p>
122
- <p class="label-large">Disabled</p>
123
- </div>
124
-
125
- <h3 class="title-small">MD icon button (reference)</h3>
126
- <div class="demo-row icons-demo-row">
127
- <md-filled-tonal-icon-button><md-icon>settings</md-icon></md-filled-tonal-icon-button>
128
- <md-filled-tonal-icon-button toggle><md-icon>settings</md-icon></md-filled-tonal-icon-button>
129
- <md-filled-tonal-icon-button toggle selected><md-icon>settings</md-icon></md-filled-tonal-icon-button>
130
- <md-filled-tonal-icon-button disabled><md-icon>settings</md-icon></md-filled-tonal-icon-button>
131
- <p class="label-large">No toggle</p>
132
- <p class="label-large">Toggle (unselected)</p>
133
- <p class="label-large">Toggle (selected)</p>
134
- <p class="label-large">Disabled</p>
46
+ contentTemplate(): TemplateResult {
47
+ const { size: s, shape: h, icon: i, width: w } = this
48
+ return html`
49
+ <a href="../">Back</a>
50
+ ${this.renderConfigurationSection()}
51
+ <section class="demo-section ${s}">
52
+ <h2 class="display-large">Color</h2>
53
+ <div class="color-grid">
54
+ <span>&nbsp</span>
55
+ <span class="legend-marker">1</span>
56
+ <span class="legend-marker">2</span>
57
+ <span class="legend-marker">3</span>
58
+ <span class="legend-marker">A</span>
59
+ <ui-icon-button color="filled" .size="${s}" .shape="${h}" .width="${w}">${i}</ui-icon-button>
60
+ <ui-icon-button color="filled" .size="${s}" .shape="${h}" .width="${w}" toggle>${i}</ui-icon-button>
61
+ <ui-icon-button color="filled" .size="${s}" .shape="${h}" .width="${w}" toggle selected>${i}</ui-icon-button>
62
+ <span class="legend-marker">B</span>
63
+ <ui-icon-button color="tonal" .size="${s}" .shape="${h}" .width="${w}">${i}</ui-icon-button>
64
+ <ui-icon-button color="tonal" .size="${s}" .shape="${h}" .width="${w}" toggle>${i}</ui-icon-button>
65
+ <ui-icon-button color="tonal" .size="${s}" .shape="${h}" .width="${w}" toggle selected>${i}</ui-icon-button>
66
+ <span class="legend-marker">C</span>
67
+ <ui-icon-button color="outlined" .size="${s}" .shape="${h}" .width="${w}">${i}</ui-icon-button>
68
+ <ui-icon-button color="outlined" .size="${s}" .shape="${h}" .width="${w}" toggle>${i}</ui-icon-button>
69
+ <ui-icon-button color="outlined" .size="${s}" .shape="${h}" .width="${w}" toggle selected
70
+ >${i}</ui-icon-button
71
+ >
72
+ <span class="legend-marker">D</span>
73
+ <ui-icon-button .size="${s}" .shape="${h}" .width="${w}">${i}</ui-icon-button>
74
+ <ui-icon-button .size="${s}" .shape="${h}" .width="${w}" toggle>${i}</ui-icon-button>
75
+ <ui-icon-button .size="${s}" .shape="${h}" .width="${w}" toggle selected>${i}</ui-icon-button>
135
76
  </div>
77
+ <p class="body-medium">A. Filled, B. Tonal, C. Outlined, D. Standard</p>
78
+ <ol class="decimal body-medium">
79
+ <li>Default</li>
80
+ <li>Toggle: unselected</li>
81
+ <li>Toggle: selected</li>
82
+ </ol>
136
83
  </section>
84
+ `
85
+ }
137
86
 
87
+ renderConfigurationSection(): TemplateResult {
88
+ const { size: s, shape: h, width: w } = this
89
+ return html`
138
90
  <section class="demo-section">
139
- <h2 class="title-large">Outlined icon button</h2>
140
- <h3 class="title-small">UI icon button</h3>
141
-
142
- <div class="demo-row icons-demo-row">
143
- <ui-outlined-icon-button
144
- @click="${this._clickHandler}"
145
- @active="${this._activeHandler}"
146
- aria-labelledby="iont"
147
- ><ui-icon>settings</ui-icon></ui-outlined-icon-button
148
- >
149
- <ui-outlined-icon-button
150
- toggle
151
- @click="${this._clickHandler}"
152
- @active="${this._activeHandler}"
153
- aria-labelledby="iotu"
154
- ><ui-icon>settings</ui-icon></ui-outlined-icon-button
155
- >
156
- <ui-outlined-icon-button
157
- active
158
- toggle
159
- @click="${this._clickHandler}"
160
- @active="${this._activeHandler}"
161
- aria-labelledby="iots"
162
- ><ui-icon>settings</ui-icon></ui-outlined-icon-button
163
- >
164
- <ui-outlined-icon-button
165
- disabled
166
- @click="${this._clickHandler}"
167
- @active="${this._activeHandler}"
168
- aria-labelledby="iod"
169
- ><ui-icon>settings</ui-icon></ui-outlined-icon-button
170
- >
171
-
172
- <p class="label-large" id="iont">No toggle</p>
173
- <p class="label-large" id="iotu">Toggle (unselected)</p>
174
- <p class="label-large" id="iots">Toggle (selected)</p>
175
- <p class="label-large" id="iod">Disabled</p>
176
- </div>
177
-
178
- <h3 class="title-small">MD icon button (reference)</h3>
179
- <div class="demo-row icons-demo-row">
180
- <md-outlined-icon-button><md-icon>settings</md-icon></md-outlined-icon-button>
181
- <md-outlined-icon-button toggle><md-icon>settings</md-icon></md-outlined-icon-button>
182
- <md-outlined-icon-button toggle selected><md-icon>settings</md-icon></md-outlined-icon-button>
183
- <md-outlined-icon-button disabled><md-icon>settings</md-icon></md-outlined-icon-button>
184
- <p class="label-large">No toggle</p>
185
- <p class="label-large">Toggle (unselected)</p>
186
- <p class="label-large">Toggle (selected)</p>
187
- <p class="label-large">Disabled</p>
91
+ <h2 class="title-large">Configuration</h2>
92
+ <div class="md-select outlined">
93
+ <label for="size">Size</label>
94
+ <select class="md-select" id="size" @change="${this.handleSizeChange}" name="size" .value="${s}">
95
+ <button>
96
+ <selectedcontent></selectedcontent>
97
+ </button>
98
+ <option value="xs">Extra small</option>
99
+ <option value="s">Small</option>
100
+ <option value="m">Medium</option>
101
+ <option value="l">Large</option>
102
+ <option value="xl">Extra large</option>
103
+ </select>
188
104
  </div>
189
- </section>
190
-
191
- <section class="demo-section">
192
- <h2 class="title-large">Standard icon button</h2>
193
- <h3 class="title-small">UI icon button</h3>
194
- <div class="demo-row icons-demo-row">
195
- <ui-icon-button @click="${this._clickHandler}" @active="${this._activeHandler}" aria-labelledby="isnt"
196
- ><ui-icon>settings</ui-icon></ui-icon-button
197
- >
198
- <ui-icon-button toggle @click="${this._clickHandler}" @active="${this._activeHandler}" aria-labelledby="istu"
199
- ><ui-icon>settings</ui-icon></ui-icon-button
200
- >
201
- <ui-icon-button
202
- toggle
203
- active
204
- @click="${this._clickHandler}"
205
- @active="${this._activeHandler}"
206
- aria-labelledby="ists"
207
- ><ui-icon>settings</ui-icon></ui-icon-button
208
- >
209
- <ui-icon-button disabled @click="${this._clickHandler}" @active="${this._activeHandler}" aria-labelledby="isd"
210
- ><ui-icon>settings</ui-icon></ui-icon-button
211
- >
212
-
213
- <p class="label-large" id="isnt">No toggle</p>
214
- <p class="label-large" id="istu">Toggle (unselected)</p>
215
- <p class="label-large" id="ists">Toggle (selected)</p>
216
- <p class="label-large" id="isd">Disabled</p>
105
+ <div class="md-select outlined">
106
+ <label for="shape">Shape</label>
107
+ <select id="shape" @change="${this.handleShapeChange}" name="shape" .value="${h}">
108
+ <button>
109
+ <selectedcontent></selectedcontent>
110
+ </button>
111
+ <option value="round">Round</option>
112
+ <option value="square">Square</option>
113
+ </select>
217
114
  </div>
218
-
219
- <h3 class="title-small">MD icon button (reference)</h3>
220
- <div class="demo-row icons-demo-row">
221
- <md-icon-button><md-icon>settings</md-icon></md-icon-button>
222
- <md-icon-button toggle><md-icon>settings</md-icon></md-icon-button>
223
- <md-icon-button toggle selected><md-icon>settings</md-icon></md-icon-button>
224
- <md-icon-button disabled><md-icon>settings</md-icon></md-icon-button>
225
- <p class="label-large">No toggle</p>
226
- <p class="label-large">Toggle (unselected)</p>
227
- <p class="label-large">Toggle (selected)</p>
228
- <p class="label-large">Disabled</p>
115
+ <div class="md-select outlined">
116
+ <label for="width">Width</label>
117
+ <select id="width" @change="${this.handleWidthChange}" name="width" .value="${w}">
118
+ <button>
119
+ <selectedcontent></selectedcontent>
120
+ </button>
121
+ <option value="default">Default</option>
122
+ <option value="narrow">Narrow</option>
123
+ <option value="wide">Wide</option>
124
+ </select>
229
125
  </div>
230
126
  </section>
231
127
  `
@@ -19,8 +19,10 @@
19
19
  <nav>
20
20
  <h2>Elements</h2>
21
21
  <dl>
22
- <dt><a href="buttons/index.html">button</a></dt>
22
+ <dt><a href="buttons/button.html">button</a></dt>
23
23
  <dd>A Material 3 button.</dd>
24
+ <dt><a href="buttons/group.html">button group</a></dt>
25
+ <dd>A Material 3 button group.</dd>
24
26
  <dt><a href="checkbox/index.html">checkbox</a></dt>
25
27
  <dd>A Material 3 checkbox.</dd>
26
28
  <dt><a href="chip/chip.html">chip</a></dt>
@@ -24,6 +24,45 @@
24
24
  .demo-row {
25
25
  margin: 20px 0;
26
26
  }
27
+
28
+ .demo .demo-section {
29
+ max-width: 858px;
30
+ margin: 0 auto 80px auto;
31
+ }
32
+
33
+ .demo h2, .demo h3 {
34
+ margin-bottom: 36px;
35
+ }
36
+
37
+ .frame {
38
+ padding: 40px;
39
+ border-radius: 20px;
40
+ border: 1px var(--md-sys-color-outline) solid;
41
+ }
42
+
43
+ .demo-grid {
44
+ grid-template-columns: 160px 1fr 1fr;
45
+ display: grid;
46
+ gap: 0 0;
47
+ justify-items: center;
48
+ align-items: center;
49
+ grid-template-rows: 40px repeat(auto-fit, minmax(80px, 1fr));
50
+ grid-auto-rows: 80px;
51
+
52
+ padding: 40px;
53
+ border-radius: 20px;
54
+ border: 1px var(--md-sys-color-outline) solid;
55
+ }
56
+
57
+ .row-name {
58
+ justify-self: end;
59
+ text-align: right;
60
+ }
61
+
62
+ ui-filled-text-field,
63
+ ui-outlined-text-field {
64
+ max-width: 240px;
65
+ }
27
66
  </style>
28
67
  </head>
29
68
  <body>