mdui 1.0.2 → 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 (664) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +49 -70
  3. package/components/avatar/index.d.ts +49 -0
  4. package/components/avatar/index.js +55 -0
  5. package/components/avatar/style.d.ts +1 -0
  6. package/components/avatar/style.js +2 -0
  7. package/components/avatar.d.ts +1 -0
  8. package/components/avatar.js +1 -0
  9. package/components/badge/index.d.ts +28 -0
  10. package/components/badge/index.js +41 -0
  11. package/components/badge/style.d.ts +1 -0
  12. package/components/badge/style.js +2 -0
  13. package/components/badge.d.ts +1 -0
  14. package/components/badge.js +1 -0
  15. package/components/bottom-app-bar/index.d.ts +60 -0
  16. package/components/bottom-app-bar/index.js +105 -0
  17. package/components/bottom-app-bar/style.d.ts +1 -0
  18. package/components/bottom-app-bar/style.js +2 -0
  19. package/components/bottom-app-bar.d.ts +1 -0
  20. package/components/bottom-app-bar.js +1 -0
  21. package/components/button/button-base-style.d.ts +1 -0
  22. package/components/button/button-base-style.js +2 -0
  23. package/components/button/button-base.d.ts +138 -0
  24. package/components/button/button-base.js +206 -0
  25. package/components/button/index.d.ts +64 -0
  26. package/components/button/index.js +110 -0
  27. package/components/button/style.d.ts +1 -0
  28. package/components/button/style.js +4 -0
  29. package/components/button-icon/index.d.ts +66 -0
  30. package/components/button-icon/index.js +129 -0
  31. package/components/button-icon/style.d.ts +1 -0
  32. package/components/button-icon/style.js +4 -0
  33. package/components/button-icon.d.ts +1 -0
  34. package/components/button-icon.js +1 -0
  35. package/components/button.d.ts +1 -0
  36. package/components/button.js +1 -0
  37. package/components/card/index.d.ts +49 -0
  38. package/components/card/index.js +87 -0
  39. package/components/card/style.d.ts +1 -0
  40. package/components/card/style.js +2 -0
  41. package/components/card.d.ts +1 -0
  42. package/components/card.js +1 -0
  43. package/components/checkbox/index.d.ts +130 -0
  44. package/components/checkbox/index.js +257 -0
  45. package/components/checkbox/style.d.ts +1 -0
  46. package/components/checkbox/style.js +2 -0
  47. package/components/checkbox.d.ts +1 -0
  48. package/components/checkbox.js +1 -0
  49. package/components/chip/index.d.ts +102 -0
  50. package/components/chip/index.js +243 -0
  51. package/components/chip/style.d.ts +1 -0
  52. package/components/chip/style.js +4 -0
  53. package/components/chip.d.ts +1 -0
  54. package/components/chip.js +1 -0
  55. package/components/circular-progress/index.d.ts +28 -0
  56. package/components/circular-progress/index.js +61 -0
  57. package/components/circular-progress/style.d.ts +1 -0
  58. package/components/circular-progress/style.js +2 -0
  59. package/components/circular-progress.d.ts +1 -0
  60. package/components/circular-progress.js +1 -0
  61. package/components/collapse/collapse-item-style.d.ts +1 -0
  62. package/components/collapse/collapse-item-style.js +2 -0
  63. package/components/collapse/collapse-item.d.ts +56 -0
  64. package/components/collapse/collapse-item.js +126 -0
  65. package/components/collapse/collapse-style.d.ts +1 -0
  66. package/components/collapse/collapse-style.js +2 -0
  67. package/components/collapse/collapse.d.ts +49 -0
  68. package/components/collapse/collapse.js +175 -0
  69. package/components/collapse-item.d.ts +1 -0
  70. package/components/collapse-item.js +1 -0
  71. package/components/collapse.d.ts +1 -0
  72. package/components/collapse.js +1 -0
  73. package/components/dialog/index.d.ts +99 -0
  74. package/components/dialog/index.js +307 -0
  75. package/components/dialog/style.d.ts +1 -0
  76. package/components/dialog/style.js +2 -0
  77. package/components/dialog.d.ts +1 -0
  78. package/components/dialog.js +1 -0
  79. package/components/divider/index.d.ts +30 -0
  80. package/components/divider/index.js +58 -0
  81. package/components/divider/style.d.ts +1 -0
  82. package/components/divider/style.js +2 -0
  83. package/components/divider.d.ts +1 -0
  84. package/components/divider.js +1 -0
  85. package/components/dropdown/index.d.ts +131 -0
  86. package/components/dropdown/index.js +571 -0
  87. package/components/dropdown/style.d.ts +1 -0
  88. package/components/dropdown/style.js +2 -0
  89. package/components/dropdown.d.ts +1 -0
  90. package/components/dropdown.js +1 -0
  91. package/components/fab/index.d.ts +70 -0
  92. package/components/fab/index.js +144 -0
  93. package/components/fab/style.d.ts +1 -0
  94. package/components/fab/style.js +8 -0
  95. package/components/fab.d.ts +1 -0
  96. package/components/fab.js +1 -0
  97. package/components/icon/index.d.ts +29 -0
  98. package/components/icon/index.js +57 -0
  99. package/components/icon/style.d.ts +1 -0
  100. package/components/icon/style.js +2 -0
  101. package/components/icon.d.ts +1 -0
  102. package/components/icon.js +1 -0
  103. package/components/layout/helper.d.ts +67 -0
  104. package/components/layout/helper.js +212 -0
  105. package/components/layout/layout-item-base.d.ts +17 -0
  106. package/components/layout/layout-item-base.js +45 -0
  107. package/components/layout/layout-item-style.d.ts +1 -0
  108. package/components/layout/layout-item-style.js +2 -0
  109. package/components/layout/layout-item.d.ts +37 -0
  110. package/components/layout/layout-item.js +58 -0
  111. package/components/layout/layout-main-style.d.ts +1 -0
  112. package/components/layout/layout-main-style.js +2 -0
  113. package/components/layout/layout-main.d.ts +27 -0
  114. package/components/layout/layout-main.js +46 -0
  115. package/components/layout/layout-style.d.ts +1 -0
  116. package/components/layout/layout-style.js +2 -0
  117. package/components/layout/layout.d.ts +28 -0
  118. package/components/layout/layout.js +43 -0
  119. package/components/layout-item.d.ts +1 -0
  120. package/components/layout-item.js +1 -0
  121. package/components/layout-main.d.ts +1 -0
  122. package/components/layout-main.js +1 -0
  123. package/components/layout.d.ts +1 -0
  124. package/components/layout.js +1 -0
  125. package/components/linear-progress/index.d.ts +30 -0
  126. package/components/linear-progress/index.js +48 -0
  127. package/components/linear-progress/style.d.ts +1 -0
  128. package/components/linear-progress/style.js +2 -0
  129. package/components/linear-progress.d.ts +1 -0
  130. package/components/linear-progress.js +1 -0
  131. package/components/list/list-item-style.d.ts +1 -0
  132. package/components/list/list-item-style.js +4 -0
  133. package/components/list/list-item.d.ts +111 -0
  134. package/components/list/list-item.js +186 -0
  135. package/components/list/list-style.d.ts +1 -0
  136. package/components/list/list-style.js +2 -0
  137. package/components/list/list-subheader-style.d.ts +1 -0
  138. package/components/list/list-subheader-style.js +2 -0
  139. package/components/list/list-subheader.d.ts +24 -0
  140. package/components/list/list-subheader.js +30 -0
  141. package/components/list/list.d.ts +24 -0
  142. package/components/list/list.js +27 -0
  143. package/components/list-item.d.ts +1 -0
  144. package/components/list-item.js +1 -0
  145. package/components/list-subheader.d.ts +1 -0
  146. package/components/list-subheader.js +1 -0
  147. package/components/list.d.ts +1 -0
  148. package/components/list.js +1 -0
  149. package/components/menu/menu-item-style.d.ts +1 -0
  150. package/components/menu/menu-item-style.js +2 -0
  151. package/components/menu/menu-item.d.ts +123 -0
  152. package/components/menu/menu-item.js +412 -0
  153. package/components/menu/menu-style.d.ts +1 -0
  154. package/components/menu/menu-style.js +2 -0
  155. package/components/menu/menu.d.ts +111 -0
  156. package/components/menu/menu.js +425 -0
  157. package/components/menu-item.d.ts +1 -0
  158. package/components/menu-item.js +1 -0
  159. package/components/menu.d.ts +1 -0
  160. package/components/menu.js +1 -0
  161. package/components/navigation-bar/navigation-bar-item-style.d.ts +1 -0
  162. package/components/navigation-bar/navigation-bar-item-style.js +2 -0
  163. package/components/navigation-bar/navigation-bar-item.d.ts +72 -0
  164. package/components/navigation-bar/navigation-bar-item.js +120 -0
  165. package/components/navigation-bar/navigation-bar-style.d.ts +1 -0
  166. package/components/navigation-bar/navigation-bar-style.js +2 -0
  167. package/components/navigation-bar/navigation-bar.d.ts +78 -0
  168. package/components/navigation-bar/navigation-bar.js +180 -0
  169. package/components/navigation-bar-item.d.ts +1 -0
  170. package/components/navigation-bar-item.js +1 -0
  171. package/components/navigation-bar.d.ts +1 -0
  172. package/components/navigation-bar.js +1 -0
  173. package/components/navigation-drawer/index.d.ts +84 -0
  174. package/components/navigation-drawer/index.js +365 -0
  175. package/components/navigation-drawer/style.d.ts +1 -0
  176. package/components/navigation-drawer/style.js +2 -0
  177. package/components/navigation-drawer.d.ts +1 -0
  178. package/components/navigation-drawer.js +1 -0
  179. package/components/navigation-rail/navigation-rail-item-style.d.ts +1 -0
  180. package/components/navigation-rail/navigation-rail-item-style.js +2 -0
  181. package/components/navigation-rail/navigation-rail-item.d.ts +72 -0
  182. package/components/navigation-rail/navigation-rail-item.js +128 -0
  183. package/components/navigation-rail/navigation-rail-style.d.ts +1 -0
  184. package/components/navigation-rail/navigation-rail-style.js +2 -0
  185. package/components/navigation-rail/navigation-rail.d.ts +87 -0
  186. package/components/navigation-rail/navigation-rail.js +230 -0
  187. package/components/navigation-rail-item.d.ts +1 -0
  188. package/components/navigation-rail-item.js +1 -0
  189. package/components/navigation-rail.d.ts +1 -0
  190. package/components/navigation-rail.js +1 -0
  191. package/components/radio/radio-group-style.d.ts +1 -0
  192. package/components/radio/radio-group-style.js +2 -0
  193. package/components/radio/radio-group.d.ts +103 -0
  194. package/components/radio/radio-group.js +268 -0
  195. package/components/radio/radio-style.d.ts +1 -0
  196. package/components/radio/radio-style.js +2 -0
  197. package/components/radio/radio.d.ts +71 -0
  198. package/components/radio/radio.js +144 -0
  199. package/components/radio-group.d.ts +1 -0
  200. package/components/radio-group.js +1 -0
  201. package/components/radio.d.ts +1 -0
  202. package/components/radio.js +1 -0
  203. package/components/range-slider/index.d.ts +67 -0
  204. package/components/range-slider/index.js +210 -0
  205. package/components/range-slider.d.ts +1 -0
  206. package/components/range-slider.js +1 -0
  207. package/components/ripple/index.d.ts +44 -0
  208. package/components/ripple/index.js +173 -0
  209. package/components/ripple/ripple-mixin.d.ts +28 -0
  210. package/components/ripple/ripple-mixin.js +258 -0
  211. package/components/ripple/style.d.ts +1 -0
  212. package/components/ripple/style.js +2 -0
  213. package/components/ripple.d.ts +1 -0
  214. package/components/ripple.js +1 -0
  215. package/components/segmented-button/segmented-button-group-style.d.ts +1 -0
  216. package/components/segmented-button/segmented-button-group-style.js +2 -0
  217. package/components/segmented-button/segmented-button-group.d.ts +125 -0
  218. package/components/segmented-button/segmented-button-group.js +383 -0
  219. package/components/segmented-button/segmented-button-style.d.ts +1 -0
  220. package/components/segmented-button/segmented-button-style.js +4 -0
  221. package/components/segmented-button/segmented-button.d.ts +73 -0
  222. package/components/segmented-button/segmented-button.js +160 -0
  223. package/components/segmented-button-group.d.ts +1 -0
  224. package/components/segmented-button-group.js +1 -0
  225. package/components/segmented-button.d.ts +1 -0
  226. package/components/segmented-button.js +1 -0
  227. package/components/select/index.d.ts +200 -0
  228. package/components/select/index.js +390 -0
  229. package/components/select/style.d.ts +1 -0
  230. package/components/select/style.js +2 -0
  231. package/components/select.d.ts +1 -0
  232. package/components/select.js +1 -0
  233. package/components/slider/index.d.ts +53 -0
  234. package/components/slider/index.js +128 -0
  235. package/components/slider/slider-base-style.d.ts +1 -0
  236. package/components/slider/slider-base-style.js +2 -0
  237. package/components/slider/slider-base.d.ts +92 -0
  238. package/components/slider/slider-base.js +199 -0
  239. package/components/slider/style.d.ts +1 -0
  240. package/components/slider/style.js +2 -0
  241. package/components/slider.d.ts +1 -0
  242. package/components/slider.js +1 -0
  243. package/components/snackbar/index.d.ts +98 -0
  244. package/components/snackbar/index.js +285 -0
  245. package/components/snackbar/style.d.ts +1 -0
  246. package/components/snackbar/style.js +2 -0
  247. package/components/snackbar.d.ts +1 -0
  248. package/components/snackbar.js +1 -0
  249. package/components/switch/index.d.ts +123 -0
  250. package/components/switch/index.js +245 -0
  251. package/components/switch/style.d.ts +1 -0
  252. package/components/switch/style.js +2 -0
  253. package/components/switch.d.ts +1 -0
  254. package/components/switch.js +1 -0
  255. package/components/tab-panel.d.ts +1 -0
  256. package/components/tab-panel.js +1 -0
  257. package/components/tab.d.ts +1 -0
  258. package/components/tab.js +1 -0
  259. package/components/tabs/tab-panel-style.d.ts +1 -0
  260. package/components/tabs/tab-panel-style.js +2 -0
  261. package/components/tabs/tab-panel.d.ts +36 -0
  262. package/components/tabs/tab-panel.js +52 -0
  263. package/components/tabs/tab-style.d.ts +1 -0
  264. package/components/tabs/tab-style.js +2 -0
  265. package/components/tabs/tab.d.ts +69 -0
  266. package/components/tabs/tab.js +110 -0
  267. package/components/tabs/tabs-style.d.ts +1 -0
  268. package/components/tabs/tabs-style.js +2 -0
  269. package/components/tabs/tabs.d.ts +87 -0
  270. package/components/tabs/tabs.js +221 -0
  271. package/components/tabs.d.ts +1 -0
  272. package/components/tabs.js +1 -0
  273. package/components/text-field/index.d.ts +400 -0
  274. package/components/text-field/index.js +752 -0
  275. package/components/text-field/style.d.ts +1 -0
  276. package/components/text-field/style.js +2 -0
  277. package/components/text-field.d.ts +1 -0
  278. package/components/text-field.js +1 -0
  279. package/components/tooltip/index.d.ts +140 -0
  280. package/components/tooltip/index.js +497 -0
  281. package/components/tooltip/style.d.ts +1 -0
  282. package/components/tooltip/style.js +2 -0
  283. package/components/tooltip.d.ts +1 -0
  284. package/components/tooltip.js +1 -0
  285. package/components/top-app-bar/top-app-bar-style.d.ts +1 -0
  286. package/components/top-app-bar/top-app-bar-style.js +2 -0
  287. package/components/top-app-bar/top-app-bar-title-style.d.ts +1 -0
  288. package/components/top-app-bar/top-app-bar-title-style.js +2 -0
  289. package/components/top-app-bar/top-app-bar-title.d.ts +46 -0
  290. package/components/top-app-bar/top-app-bar-title.js +76 -0
  291. package/components/top-app-bar/top-app-bar.d.ts +74 -0
  292. package/components/top-app-bar/top-app-bar.js +178 -0
  293. package/components/top-app-bar-title.d.ts +1 -0
  294. package/components/top-app-bar-title.js +1 -0
  295. package/components/top-app-bar.d.ts +1 -0
  296. package/components/top-app-bar.js +1 -0
  297. package/css-data.zh-cn.json +2819 -0
  298. package/custom-elements.json +28087 -0
  299. package/functions/alert.d.ts +80 -0
  300. package/functions/alert.js +59 -0
  301. package/functions/breakpoint.d.ts +1 -0
  302. package/functions/breakpoint.js +1 -0
  303. package/functions/confirm.d.ts +95 -0
  304. package/functions/confirm.js +68 -0
  305. package/functions/dialog.d.ts +97 -0
  306. package/functions/dialog.js +100 -0
  307. package/functions/getColorFromImage.d.ts +7 -0
  308. package/functions/getColorFromImage.js +12 -0
  309. package/functions/getTheme.d.ts +10 -0
  310. package/functions/getTheme.js +16 -0
  311. package/functions/observeResize.d.ts +2 -0
  312. package/functions/observeResize.js +1 -0
  313. package/functions/prompt.d.ts +110 -0
  314. package/functions/prompt.js +103 -0
  315. package/functions/removeColorScheme.d.ts +6 -0
  316. package/functions/removeColorScheme.js +8 -0
  317. package/functions/setColorScheme.d.ts +15 -0
  318. package/functions/setColorScheme.js +15 -0
  319. package/functions/setTheme.d.ts +10 -0
  320. package/functions/setTheme.js +16 -0
  321. package/functions/snackbar.d.ts +91 -0
  322. package/functions/snackbar.js +84 -0
  323. package/functions/throttle.d.ts +1 -0
  324. package/functions/throttle.js +1 -0
  325. package/functions/utils/colorScheme.d.ts +39 -0
  326. package/functions/utils/colorScheme.js +133 -0
  327. package/functions/utils/theme.d.ts +1 -0
  328. package/html-data.zh-cn.json +6566 -0
  329. package/jq.d.ts +1 -0
  330. package/jq.js +1 -0
  331. package/mdui.css +1 -0
  332. package/mdui.d.ts +61 -0
  333. package/mdui.esm.js +22 -0
  334. package/mdui.global.js +22 -0
  335. package/mdui.js +61 -0
  336. package/package.json +39 -68
  337. package/web-types.zh-cn.json +11728 -0
  338. package/dist/css/mdui.css +0 -13559
  339. package/dist/css/mdui.css.map +0 -1
  340. package/dist/css/mdui.min.css +0 -6
  341. package/dist/css/mdui.min.css.map +0 -1
  342. package/dist/fonts/roboto/LICENSE.txt +0 -201
  343. package/dist/fonts/roboto/Roboto-Black.woff +0 -0
  344. package/dist/fonts/roboto/Roboto-Black.woff2 +0 -0
  345. package/dist/fonts/roboto/Roboto-BlackItalic.woff +0 -0
  346. package/dist/fonts/roboto/Roboto-BlackItalic.woff2 +0 -0
  347. package/dist/fonts/roboto/Roboto-Bold.woff +0 -0
  348. package/dist/fonts/roboto/Roboto-Bold.woff2 +0 -0
  349. package/dist/fonts/roboto/Roboto-BoldItalic.woff +0 -0
  350. package/dist/fonts/roboto/Roboto-BoldItalic.woff2 +0 -0
  351. package/dist/fonts/roboto/Roboto-Light.woff +0 -0
  352. package/dist/fonts/roboto/Roboto-Light.woff2 +0 -0
  353. package/dist/fonts/roboto/Roboto-LightItalic.woff +0 -0
  354. package/dist/fonts/roboto/Roboto-LightItalic.woff2 +0 -0
  355. package/dist/fonts/roboto/Roboto-Medium.woff +0 -0
  356. package/dist/fonts/roboto/Roboto-Medium.woff2 +0 -0
  357. package/dist/fonts/roboto/Roboto-MediumItalic.woff +0 -0
  358. package/dist/fonts/roboto/Roboto-MediumItalic.woff2 +0 -0
  359. package/dist/fonts/roboto/Roboto-Regular.woff +0 -0
  360. package/dist/fonts/roboto/Roboto-Regular.woff2 +0 -0
  361. package/dist/fonts/roboto/Roboto-RegularItalic.woff +0 -0
  362. package/dist/fonts/roboto/Roboto-RegularItalic.woff2 +0 -0
  363. package/dist/fonts/roboto/Roboto-Thin.woff +0 -0
  364. package/dist/fonts/roboto/Roboto-Thin.woff2 +0 -0
  365. package/dist/fonts/roboto/Roboto-ThinItalic.woff +0 -0
  366. package/dist/fonts/roboto/Roboto-ThinItalic.woff2 +0 -0
  367. package/dist/icons/material-icons/LICENSE.txt +0 -393
  368. package/dist/icons/material-icons/MaterialIcons-Regular.ijmap +0 -1
  369. package/dist/icons/material-icons/MaterialIcons-Regular.woff +0 -0
  370. package/dist/icons/material-icons/MaterialIcons-Regular.woff2 +0 -0
  371. package/dist/js/mdui.esm.js +0 -5976
  372. package/dist/js/mdui.esm.js.map +0 -1
  373. package/dist/js/mdui.js +0 -6474
  374. package/dist/js/mdui.js.map +0 -1
  375. package/dist/js/mdui.min.js +0 -7
  376. package/dist/js/mdui.min.js.map +0 -1
  377. package/es/components/appbar/index.d.ts +0 -2
  378. package/es/components/appbar/index.js +0 -17
  379. package/es/components/bottom_nav/index.d.ts +0 -9
  380. package/es/components/bottom_nav/index.js +0 -38
  381. package/es/components/collapse/collapseAbstract.d.ts +0 -110
  382. package/es/components/collapse/collapseAbstract.js +0 -175
  383. package/es/components/collapse/customAttr.d.ts +0 -2
  384. package/es/components/collapse/customAttr.js +0 -11
  385. package/es/components/collapse/index.d.ts +0 -23
  386. package/es/components/collapse/index.js +0 -8
  387. package/es/components/dialog/alert.d.ts +0 -44
  388. package/es/components/dialog/alert.js +0 -42
  389. package/es/components/dialog/class.d.ts +0 -133
  390. package/es/components/dialog/class.js +0 -316
  391. package/es/components/dialog/confirm.d.ts +0 -54
  392. package/es/components/dialog/confirm.js +0 -55
  393. package/es/components/dialog/customAttr.d.ts +0 -4
  394. package/es/components/dialog/customAttr.js +0 -25
  395. package/es/components/dialog/dialog.d.ts +0 -91
  396. package/es/components/dialog/dialog.js +0 -101
  397. package/es/components/dialog/index.d.ts +0 -20
  398. package/es/components/dialog/index.js +0 -14
  399. package/es/components/dialog/prompt.d.ts +0 -74
  400. package/es/components/dialog/prompt.js +0 -109
  401. package/es/components/drawer/customAttr.d.ts +0 -4
  402. package/es/components/drawer/customAttr.js +0 -20
  403. package/es/components/drawer/index.d.ts +0 -111
  404. package/es/components/drawer/index.js +0 -310
  405. package/es/components/fab/customAttr.d.ts +0 -1
  406. package/es/components/fab/customAttr.js +0 -13
  407. package/es/components/fab/index.d.ts +0 -100
  408. package/es/components/fab/index.js +0 -144
  409. package/es/components/headroom/customAttr.d.ts +0 -2
  410. package/es/components/headroom/customAttr.js +0 -11
  411. package/es/components/headroom/index.d.ts +0 -120
  412. package/es/components/headroom/index.js +0 -167
  413. package/es/components/menu/customAttr.d.ts +0 -3
  414. package/es/components/menu/customAttr.js +0 -24
  415. package/es/components/menu/index.d.ts +0 -167
  416. package/es/components/menu/index.js +0 -512
  417. package/es/components/panel/customAttr.d.ts +0 -2
  418. package/es/components/panel/customAttr.js +0 -11
  419. package/es/components/panel/index.d.ts +0 -23
  420. package/es/components/panel/index.js +0 -8
  421. package/es/components/progress/spinner.d.ts +0 -16
  422. package/es/components/progress/spinner.js +0 -47
  423. package/es/components/ripple/index.d.ts +0 -25
  424. package/es/components/ripple/index.js +0 -170
  425. package/es/components/select/customAttr.d.ts +0 -2
  426. package/es/components/select/customAttr.js +0 -11
  427. package/es/components/select/index.d.ts +0 -160
  428. package/es/components/select/index.js +0 -340
  429. package/es/components/slider/index.d.ts +0 -28
  430. package/es/components/slider/index.js +0 -134
  431. package/es/components/snackbar/index.d.ts +0 -126
  432. package/es/components/snackbar/index.js +0 -217
  433. package/es/components/tab/customAttr.d.ts +0 -2
  434. package/es/components/tab/customAttr.js +0 -11
  435. package/es/components/tab/index.d.ts +0 -114
  436. package/es/components/tab/index.js +0 -266
  437. package/es/components/table/index.d.ts +0 -25
  438. package/es/components/table/index.js +0 -178
  439. package/es/components/textfield/index.d.ts +0 -28
  440. package/es/components/textfield/index.js +0 -147
  441. package/es/components/tooltip/customAttr.d.ts +0 -3
  442. package/es/components/tooltip/customAttr.js +0 -20
  443. package/es/components/tooltip/index.d.ts +0 -123
  444. package/es/components/tooltip/index.js +0 -251
  445. package/es/global/mutation.d.ts +0 -23
  446. package/es/global/mutation.js +0 -14
  447. package/es/index.d.ts +0 -36
  448. package/es/index.js +0 -36
  449. package/es/interfaces/MduiStatic.d.ts +0 -8
  450. package/es/jq.d.ts +0 -99
  451. package/es/jq.js +0 -102
  452. package/es/jq_extends/methods/mutation.d.ts +0 -11
  453. package/es/jq_extends/methods/mutation.js +0 -19
  454. package/es/jq_extends/methods/reflow.d.ts +0 -14
  455. package/es/jq_extends/methods/reflow.js +0 -7
  456. package/es/jq_extends/methods/transform.d.ts +0 -14
  457. package/es/jq_extends/methods/transform.js +0 -8
  458. package/es/jq_extends/methods/transformOrigin.d.ts +0 -14
  459. package/es/jq_extends/methods/transformOrigin.js +0 -8
  460. package/es/jq_extends/methods/transition.d.ts +0 -15
  461. package/es/jq_extends/methods/transition.js +0 -12
  462. package/es/jq_extends/methods/transitionEnd.d.ts +0 -17
  463. package/es/jq_extends/methods/transitionEnd.js +0 -23
  464. package/es/jq_extends/static/guid.d.ts +0 -18
  465. package/es/jq_extends/static/guid.js +0 -30
  466. package/es/jq_extends/static/hideOverlay.d.ts +0 -23
  467. package/es/jq_extends/static/hideOverlay.js +0 -25
  468. package/es/jq_extends/static/lockScreen.d.ts +0 -15
  469. package/es/jq_extends/static/lockScreen.js +0 -14
  470. package/es/jq_extends/static/showOverlay.d.ts +0 -23
  471. package/es/jq_extends/static/showOverlay.js +0 -27
  472. package/es/jq_extends/static/throttle.d.ts +0 -17
  473. package/es/jq_extends/static/throttle.js +0 -13
  474. package/es/jq_extends/static/unlockScreen.d.ts +0 -22
  475. package/es/jq_extends/static/unlockScreen.js +0 -13
  476. package/es/mdui.d.ts +0 -3
  477. package/es/mdui.js +0 -8
  478. package/es/utils/componentEvent.d.ts +0 -13
  479. package/es/utils/componentEvent.js +0 -37
  480. package/es/utils/dom.d.ts +0 -4
  481. package/es/utils/dom.js +0 -5
  482. package/es/utils/mutation.d.ts +0 -15
  483. package/es/utils/mutation.js +0 -24
  484. package/es/utils/parseOptions.d.ts +0 -9
  485. package/es/utils/parseOptions.js +0 -15
  486. package/es/utils/queue.d.ts +0 -18
  487. package/es/utils/queue.js +0 -26
  488. package/es/utils/touchHandler.d.ts +0 -50
  489. package/es/utils/touchHandler.js +0 -76
  490. package/src/components/appbar/index.less +0 -110
  491. package/src/components/appbar/index.ts +0 -19
  492. package/src/components/bottom_nav/index.less +0 -155
  493. package/src/components/bottom_nav/index.ts +0 -43
  494. package/src/components/button/index.less +0 -291
  495. package/src/components/card/index.less +0 -200
  496. package/src/components/chip/index.less +0 -97
  497. package/src/components/collapse/collapseAbstract.ts +0 -270
  498. package/src/components/collapse/customAttr.ts +0 -13
  499. package/src/components/collapse/index.less +0 -44
  500. package/src/components/collapse/index.ts +0 -32
  501. package/src/components/dialog/alert.less +0 -11
  502. package/src/components/dialog/alert.ts +0 -111
  503. package/src/components/dialog/class.ts +0 -432
  504. package/src/components/dialog/confirm.less +0 -11
  505. package/src/components/dialog/confirm.ts +0 -140
  506. package/src/components/dialog/customAttr.ts +0 -41
  507. package/src/components/dialog/dialog.ts +0 -224
  508. package/src/components/dialog/index.less +0 -154
  509. package/src/components/dialog/index.ts +0 -40
  510. package/src/components/dialog/prompt.less +0 -16
  511. package/src/components/dialog/prompt.ts +0 -231
  512. package/src/components/divider/index.less +0 -49
  513. package/src/components/drawer/customAttr.ts +0 -30
  514. package/src/components/drawer/index.less +0 -177
  515. package/src/components/drawer/index.ts +0 -425
  516. package/src/components/fab/customAttr.ts +0 -23
  517. package/src/components/fab/index.less +0 -158
  518. package/src/components/fab/index.ts +0 -232
  519. package/src/components/grid_list/index.less +0 -126
  520. package/src/components/headroom/customAttr.ts +0 -13
  521. package/src/components/headroom/index.less +0 -51
  522. package/src/components/headroom/index.ts +0 -275
  523. package/src/components/list/index.less +0 -347
  524. package/src/components/menu/customAttr.ts +0 -40
  525. package/src/components/menu/index.less +0 -195
  526. package/src/components/menu/index.ts +0 -725
  527. package/src/components/menu/svg/arrow_right_dark.svg +0 -1
  528. package/src/components/menu/svg/arrow_right_light.svg +0 -1
  529. package/src/components/panel/customAttr.ts +0 -13
  530. package/src/components/panel/index.less +0 -191
  531. package/src/components/panel/index.ts +0 -32
  532. package/src/components/progress/progress.less +0 -113
  533. package/src/components/progress/spinner.less +0 -198
  534. package/src/components/progress/spinner.ts +0 -75
  535. package/src/components/ripple/index.less +0 -92
  536. package/src/components/ripple/index.ts +0 -217
  537. package/src/components/select/customAttr.ts +0 -13
  538. package/src/components/select/index.less +0 -342
  539. package/src/components/select/index.ts +0 -478
  540. package/src/components/select/svg/arrow_down_dark.svg +0 -1
  541. package/src/components/select/svg/arrow_down_light.svg +0 -1
  542. package/src/components/select/svg/arrow_up_dark.svg +0 -1
  543. package/src/components/select/svg/arrow_up_light.svg +0 -1
  544. package/src/components/selection_control/checkbox.less +0 -226
  545. package/src/components/selection_control/radio.less +0 -163
  546. package/src/components/selection_control/switch.less +0 -210
  547. package/src/components/slider/index.less +0 -340
  548. package/src/components/slider/index.ts +0 -187
  549. package/src/components/snackbar/index.less +0 -133
  550. package/src/components/snackbar/index.ts +0 -367
  551. package/src/components/subheader/index.less +0 -38
  552. package/src/components/tab/customAttr.ts +0 -13
  553. package/src/components/tab/index.less +0 -195
  554. package/src/components/tab/index.ts +0 -372
  555. package/src/components/table/index.less +0 -169
  556. package/src/components/table/index.ts +0 -240
  557. package/src/components/textfield/index.less +0 -425
  558. package/src/components/textfield/index.ts +0 -217
  559. package/src/components/toolbar/index.less +0 -92
  560. package/src/components/tooltip/customAttr.ts +0 -26
  561. package/src/components/tooltip/index.less +0 -45
  562. package/src/components/tooltip/index.ts +0 -361
  563. package/src/fonts/roboto/LICENSE.txt +0 -201
  564. package/src/fonts/roboto/Roboto-Black.woff +0 -0
  565. package/src/fonts/roboto/Roboto-Black.woff2 +0 -0
  566. package/src/fonts/roboto/Roboto-BlackItalic.woff +0 -0
  567. package/src/fonts/roboto/Roboto-BlackItalic.woff2 +0 -0
  568. package/src/fonts/roboto/Roboto-Bold.woff +0 -0
  569. package/src/fonts/roboto/Roboto-Bold.woff2 +0 -0
  570. package/src/fonts/roboto/Roboto-BoldItalic.woff +0 -0
  571. package/src/fonts/roboto/Roboto-BoldItalic.woff2 +0 -0
  572. package/src/fonts/roboto/Roboto-Light.woff +0 -0
  573. package/src/fonts/roboto/Roboto-Light.woff2 +0 -0
  574. package/src/fonts/roboto/Roboto-LightItalic.woff +0 -0
  575. package/src/fonts/roboto/Roboto-LightItalic.woff2 +0 -0
  576. package/src/fonts/roboto/Roboto-Medium.woff +0 -0
  577. package/src/fonts/roboto/Roboto-Medium.woff2 +0 -0
  578. package/src/fonts/roboto/Roboto-MediumItalic.woff +0 -0
  579. package/src/fonts/roboto/Roboto-MediumItalic.woff2 +0 -0
  580. package/src/fonts/roboto/Roboto-Regular.woff +0 -0
  581. package/src/fonts/roboto/Roboto-Regular.woff2 +0 -0
  582. package/src/fonts/roboto/Roboto-RegularItalic.woff +0 -0
  583. package/src/fonts/roboto/Roboto-RegularItalic.woff2 +0 -0
  584. package/src/fonts/roboto/Roboto-Thin.woff +0 -0
  585. package/src/fonts/roboto/Roboto-Thin.woff2 +0 -0
  586. package/src/fonts/roboto/Roboto-ThinItalic.woff +0 -0
  587. package/src/fonts/roboto/Roboto-ThinItalic.woff2 +0 -0
  588. package/src/global/mutation.ts +0 -37
  589. package/src/icons/material-icons/LICENSE.txt +0 -393
  590. package/src/icons/material-icons/MaterialIcons-Regular.ijmap +0 -1
  591. package/src/icons/material-icons/MaterialIcons-Regular.woff +0 -0
  592. package/src/icons/material-icons/MaterialIcons-Regular.woff2 +0 -0
  593. package/src/index.less +0 -73
  594. package/src/index.ts +0 -39
  595. package/src/interfaces/MduiStatic.ts +0 -11
  596. package/src/jq.ts +0 -104
  597. package/src/jq_extends/methods/mutation.ts +0 -32
  598. package/src/jq_extends/methods/reflow.ts +0 -23
  599. package/src/jq_extends/methods/transform.ts +0 -24
  600. package/src/jq_extends/methods/transformOrigin.ts +0 -24
  601. package/src/jq_extends/methods/transition.ts +0 -30
  602. package/src/jq_extends/methods/transitionEnd.ts +0 -49
  603. package/src/jq_extends/static/guid.ts +0 -56
  604. package/src/jq_extends/static/hideOverlay.ts +0 -50
  605. package/src/jq_extends/static/lockScreen.ts +0 -30
  606. package/src/jq_extends/static/showOverlay.ts +0 -51
  607. package/src/jq_extends/static/throttle.ts +0 -32
  608. package/src/jq_extends/static/unlockScreen.ts +0 -36
  609. package/src/mdui.ts +0 -12
  610. package/src/styles/color.less +0 -392
  611. package/src/styles/global.less +0 -75
  612. package/src/styles/grid.less +0 -150
  613. package/src/styles/helper.less +0 -242
  614. package/src/styles/icon.less +0 -31
  615. package/src/styles/material-icons.less +0 -36
  616. package/src/styles/media.less +0 -39
  617. package/src/styles/mixin/color.less +0 -66
  618. package/src/styles/mixin/divider.less +0 -30
  619. package/src/styles/mixin/helper.less +0 -126
  620. package/src/styles/mixin/icon.less +0 -33
  621. package/src/styles/mixin/layout-theme.less +0 -14
  622. package/src/styles/mixin/media.less +0 -11
  623. package/src/styles/mixin/shadow.less +0 -17
  624. package/src/styles/mixin/typo.less +0 -149
  625. package/src/styles/mixin.less +0 -8
  626. package/src/styles/roboto.less +0 -125
  627. package/src/styles/shadow.less +0 -20
  628. package/src/styles/typo-styles.less +0 -91
  629. package/src/styles/typo.less +0 -338
  630. package/src/styles/variable/animation.less +0 -5
  631. package/src/styles/variable/color/amber.less +0 -41
  632. package/src/styles/variable/color/black.less +0 -16
  633. package/src/styles/variable/color/blue-grey.less +0 -29
  634. package/src/styles/variable/color/blue.less +0 -41
  635. package/src/styles/variable/color/brown.less +0 -29
  636. package/src/styles/variable/color/cyan.less +0 -41
  637. package/src/styles/variable/color/deep-orange.less +0 -41
  638. package/src/styles/variable/color/deep-purple.less +0 -41
  639. package/src/styles/variable/color/default.less +0 -74
  640. package/src/styles/variable/color/green.less +0 -41
  641. package/src/styles/variable/color/grey.less +0 -29
  642. package/src/styles/variable/color/indigo.less +0 -41
  643. package/src/styles/variable/color/light-blue.less +0 -41
  644. package/src/styles/variable/color/light-green.less +0 -41
  645. package/src/styles/variable/color/lime.less +0 -41
  646. package/src/styles/variable/color/orange.less +0 -41
  647. package/src/styles/variable/color/pink.less +0 -41
  648. package/src/styles/variable/color/purple.less +0 -41
  649. package/src/styles/variable/color/red.less +0 -41
  650. package/src/styles/variable/color/teal.less +0 -41
  651. package/src/styles/variable/color/transparent.less +0 -1
  652. package/src/styles/variable/color/white.less +0 -16
  653. package/src/styles/variable/color/yellow.less +0 -41
  654. package/src/styles/variable/global.less +0 -98
  655. package/src/styles/variable/shadow.less +0 -103
  656. package/src/styles/variable.less +0 -26
  657. package/src/tsconfig.json +0 -12
  658. package/src/utils/componentEvent.ts +0 -63
  659. package/src/utils/dom.ts +0 -7
  660. package/src/utils/mutation.ts +0 -41
  661. package/src/utils/parseOptions.ts +0 -23
  662. package/src/utils/queue.ts +0 -51
  663. package/src/utils/touchHandler.ts +0 -92
  664. /package/{es/interfaces/MduiStatic.js → functions/utils/theme.js} +0 -0
@@ -0,0 +1,138 @@
1
+ import { LitElement } from 'lit';
2
+ import '../circular-progress.js';
3
+ import type { CSSResultGroup, TemplateResult } from 'lit';
4
+ type RenderButtonOptions = {
5
+ id?: string;
6
+ className?: string;
7
+ part?: string;
8
+ content?: TemplateResult | TemplateResult[];
9
+ tabindex?: number;
10
+ };
11
+ declare const ButtonBase_base: import("@open-wc/dedupe-mixin").Constructor<import("@mdui/shared/mixins/anchor.js").AnchorMixinInterface> & import("@open-wc/dedupe-mixin").Constructor<import("../ripple/ripple-mixin.js").RippleMixinInterface> & import("@open-wc/dedupe-mixin").Constructor<import("@mdui/shared/mixins/focusable.js").FocusableMixinInterface> & typeof LitElement;
12
+ export declare class ButtonBase extends ButtonBase_base {
13
+ static styles: CSSResultGroup;
14
+ /**
15
+ * 是否禁用
16
+ */
17
+ disabled: boolean;
18
+ /**
19
+ * 是否为加载中状态
20
+ */
21
+ loading: boolean;
22
+ /**
23
+ * 按钮的名称,将与表单数据一起提交
24
+ *
25
+ * **Note**:仅在未指定 `href` 属性时可用
26
+ */
27
+ name: string;
28
+ /**
29
+ * 按钮的初始值,将与表单数据一起提交
30
+ *
31
+ * **Note**:仅在未指定 `href` 属性时可用
32
+ */
33
+ value: string;
34
+ /**
35
+ * 按钮的类型。默认值为 `button`。可选值为:
36
+ *
37
+ * * `submit`:点击按钮将表单数据提交给服务器
38
+ * * `reset`:点击按钮将表单中所有组件重置为初始值
39
+ * * `button`:按钮没有默认行为
40
+ *
41
+ * **Note**:仅在未指定 `href` 属性时可用
42
+ */
43
+ type: /*此按钮将表单数据提交给服务器*/ 'submit' | /*此按钮重置所有组件为初始值*/ 'reset' | /*此按钮没有默认行为*/ 'button';
44
+ /**
45
+ * 关联的 `form` 元素。此属性值必须为同一页面中的一个 `<form>` 元素的 `id` 属性。
46
+ *
47
+ * 如果此属性未指定,则元素必须是 `form` 元素的后代。利用此属性,你可以将元素放置在页面中的任何位置,而不仅仅是作为 `form` 元素的后代。
48
+ *
49
+ * **Note**:仅在未指定 `href` 属性时可用
50
+ */
51
+ form?: string;
52
+ /**
53
+ *
54
+ * 指定提交表单的 URL。
55
+ *
56
+ * 指定了该属性时,将覆盖 `form` 元素的 `action` 属性。
57
+ *
58
+ * **Note**:仅在未指定 `href` 属性、且 `type="submit"` 时可用。
59
+ */
60
+ formAction?: string;
61
+ /**
62
+ * 指定提交表单到服务器的内容类型。可选值为:
63
+ *
64
+ * * `application/x-www-form-urlencoded`:未指定属性时的默认值
65
+ * * `multipart/form-data`:当表单包含 `<input type="file">` 元素时使用此值
66
+ * * `text/plain`:出现于 HTML5,用于调试
67
+ *
68
+ * 指定了该属性时,将覆盖 `form` 元素的 `enctype` 属性。
69
+ *
70
+ * **Note**:仅在未指定 `href` 属性、且 `type="submit"` 时可用
71
+ */
72
+ formEnctype?: /*未指定属性时的默认值*/ 'application/x-www-form-urlencoded' | /*当表单包含 `<input type="file">` 元素时使用此值*/ 'multipart/form-data' | /*出现于 HTML5,用于调试*/ 'text/plain';
73
+ /**
74
+ * 指定提交表单使用的 HTTP 方法。可选值为:
75
+ *
76
+ * * `post`:来自表单的数据被包含在表单内容中,被发送到服务器
77
+ * * `get`:来自表单的数据以 `?` 作为分隔符被附加到 form 的 URI 属性中,得到的 URI 被发送到服务器。当表单没有副作用,且仅包含 ASCII 字符时使用这种方法
78
+ *
79
+ * 指定了该属性时,将覆盖 `form` 元素的 `method` 属性。
80
+ *
81
+ * **Note**:仅在未指定 `href` 属性、且 `type="submit"` 时可用。
82
+ */
83
+ formMethod?: /*来自表单的数据被包含在表单内容中,被发送到服务器*/ 'post' | /*来自表单的数据以 `?` 作为分隔符被附加到 form 的 URI 属性中,得到的 URI 被发送到服务器。当表单没有副作用,且仅包含 ASCII 字符时使用这种方法*/ 'get';
84
+ /**
85
+ * 指定了该属性时,表示当表单被提交时不需要验证。
86
+ *
87
+ * 指定了该属性时,将覆盖 `form` 元素的 `novalidate` 属性。
88
+ *
89
+ * **Note**:仅在未指定 `href` 属性、且 `type="submit"` 时可用。
90
+ */
91
+ formNoValidate: boolean;
92
+ /**
93
+ * 在何处显示提交表单后接收到的响应。可选值为:
94
+ *
95
+ * * `_self`:默认。在同一框架中打开
96
+ * * `_blank`:在新窗口中打开
97
+ * * `_parent`:在父框架中打开
98
+ * * `_top`:在整个窗口中打开
99
+ *
100
+ * 指定了该属性时,将覆盖 `form` 元素的 `target` 属性。
101
+ *
102
+ * **Note**:仅在未指定 `href` 属性、且 `type="submit"` 时可用
103
+ */
104
+ formTarget?: /*默认。在同一框架中打开*/ '_self' | /*在新窗口中打开*/ '_blank' | /*在父框架中打开*/ '_parent' | /*在整个窗口中打开*/ '_top';
105
+ private readonly formController;
106
+ /**
107
+ * 表单验证状态对象
108
+ */
109
+ get validity(): ValidityState | undefined;
110
+ /**
111
+ * 表单验证的错误提示信息
112
+ */
113
+ get validationMessage(): string | undefined;
114
+ protected get rippleDisabled(): boolean;
115
+ protected get focusElement(): HTMLElement | null;
116
+ protected get focusDisabled(): boolean;
117
+ connectedCallback(): void;
118
+ /**
119
+ * 检查表单字段是否验证通过。若未通过则返回 `false`,并触发 `invalid` 事件;若验证通过,则返回 `true`
120
+ */
121
+ checkValidity(): boolean;
122
+ /**
123
+ * 检查表单字段是否验证通过。若未通过则返回 `false`,并触发 `invalid` 事件;若验证通过,则返回 `true`。
124
+ *
125
+ * 验证未通过时,还将在组件上显示未通过的提示。
126
+ */
127
+ reportValidity(): boolean;
128
+ /**
129
+ * 设置自定义的错误提示文本。只要文本不为空,则表示字段验证未通过
130
+ *
131
+ * @param message 自定义的提示文本
132
+ */
133
+ setCustomValidity(message: string): void;
134
+ protected renderLoading(): TemplateResult;
135
+ protected renderButton({ id, className, part, content, }: RenderButtonOptions): TemplateResult;
136
+ protected isButton(): boolean;
137
+ }
138
+ export {};
@@ -0,0 +1,206 @@
1
+ import { __decorate } from "tslib";
2
+ import { LitElement, html } from 'lit';
3
+ import { property } from 'lit/decorators.js';
4
+ import { ifDefined } from 'lit/directives/if-defined.js';
5
+ import cc from 'classcat';
6
+ import { FormController } from '@mdui/shared/controllers/form.js';
7
+ import { booleanConverter } from '@mdui/shared/helpers/decorator.js';
8
+ import { emit } from '@mdui/shared/helpers/event.js';
9
+ import { nothingTemplate } from '@mdui/shared/helpers/template.js';
10
+ import { componentStyle } from '@mdui/shared/lit-styles/component-style.js';
11
+ import { AnchorMixin } from '@mdui/shared/mixins/anchor.js';
12
+ import { FocusableMixin } from '@mdui/shared/mixins/focusable.js';
13
+ import '../circular-progress.js';
14
+ import { RippleMixin } from '../ripple/ripple-mixin.js';
15
+ import { buttonBaseStyle } from './button-base-style.js';
16
+ export class ButtonBase extends AnchorMixin(RippleMixin(FocusableMixin(LitElement))) {
17
+ constructor() {
18
+ super(...arguments);
19
+ /**
20
+ * 是否禁用
21
+ */
22
+ this.disabled = false;
23
+ /**
24
+ * 是否为加载中状态
25
+ */
26
+ this.loading = false;
27
+ /**
28
+ * 按钮的名称,将与表单数据一起提交
29
+ *
30
+ * **Note**:仅在未指定 `href` 属性时可用
31
+ */
32
+ this.name = '';
33
+ /**
34
+ * 按钮的初始值,将与表单数据一起提交
35
+ *
36
+ * **Note**:仅在未指定 `href` 属性时可用
37
+ */
38
+ this.value = '';
39
+ /**
40
+ * 按钮的类型。默认值为 `button`。可选值为:
41
+ *
42
+ * * `submit`:点击按钮将表单数据提交给服务器
43
+ * * `reset`:点击按钮将表单中所有组件重置为初始值
44
+ * * `button`:按钮没有默认行为
45
+ *
46
+ * **Note**:仅在未指定 `href` 属性时可用
47
+ */
48
+ this.type = 'button';
49
+ /**
50
+ * 指定了该属性时,表示当表单被提交时不需要验证。
51
+ *
52
+ * 指定了该属性时,将覆盖 `form` 元素的 `novalidate` 属性。
53
+ *
54
+ * **Note**:仅在未指定 `href` 属性、且 `type="submit"` 时可用。
55
+ */
56
+ this.formNoValidate = false;
57
+ this.formController = new FormController(this);
58
+ }
59
+ /**
60
+ * 表单验证状态对象
61
+ */
62
+ get validity() {
63
+ if (this.isButton()) {
64
+ return this.focusElement.validity;
65
+ }
66
+ }
67
+ /**
68
+ * 表单验证的错误提示信息
69
+ */
70
+ get validationMessage() {
71
+ if (this.isButton()) {
72
+ return this.focusElement.validationMessage;
73
+ }
74
+ }
75
+ get rippleDisabled() {
76
+ return this.disabled || this.loading;
77
+ }
78
+ get focusElement() {
79
+ var _a, _b;
80
+ return this.isButton()
81
+ ? (_a = this.renderRoot) === null || _a === void 0 ? void 0 : _a.querySelector('._button')
82
+ : (_b = this.renderRoot) === null || _b === void 0 ? void 0 : _b.querySelector('._a');
83
+ }
84
+ get focusDisabled() {
85
+ return this.disabled || this.loading;
86
+ }
87
+ connectedCallback() {
88
+ super.connectedCallback();
89
+ this.addEventListener('click', () => {
90
+ if (this.type === 'submit') {
91
+ this.formController.submit(this);
92
+ }
93
+ if (this.type === 'reset') {
94
+ this.formController.reset(this);
95
+ }
96
+ });
97
+ }
98
+ /**
99
+ * 检查表单字段是否验证通过。若未通过则返回 `false`,并触发 `invalid` 事件;若验证通过,则返回 `true`
100
+ */
101
+ checkValidity() {
102
+ if (this.isButton()) {
103
+ const valid = this.focusElement.checkValidity();
104
+ if (!valid) {
105
+ emit(this, 'invalid', {
106
+ bubbles: false,
107
+ cancelable: true,
108
+ composed: false,
109
+ });
110
+ }
111
+ return valid;
112
+ }
113
+ return true;
114
+ }
115
+ /**
116
+ * 检查表单字段是否验证通过。若未通过则返回 `false`,并触发 `invalid` 事件;若验证通过,则返回 `true`。
117
+ *
118
+ * 验证未通过时,还将在组件上显示未通过的提示。
119
+ */
120
+ reportValidity() {
121
+ if (this.isButton()) {
122
+ const invalid = !this.focusElement.reportValidity();
123
+ if (invalid) {
124
+ emit(this, 'invalid', {
125
+ bubbles: false,
126
+ cancelable: true,
127
+ composed: false,
128
+ });
129
+ // todo 考虑是否要支持 preventDefault() 方法,当前 invalid 状态没有样式
130
+ }
131
+ return !invalid;
132
+ }
133
+ return true;
134
+ }
135
+ /**
136
+ * 设置自定义的错误提示文本。只要文本不为空,则表示字段验证未通过
137
+ *
138
+ * @param message 自定义的提示文本
139
+ */
140
+ setCustomValidity(message) {
141
+ if (this.isButton()) {
142
+ this.focusElement.setCustomValidity(message);
143
+ }
144
+ }
145
+ renderLoading() {
146
+ return this.loading
147
+ ? html `<mdui-circular-progress part="loading"></mdui-circular-progress>`
148
+ : nothingTemplate;
149
+ }
150
+ renderButton({ id, className, part, content = html `<slot></slot>`, }) {
151
+ return html `<button id="${ifDefined(id)}" class="${cc(['_button', className])}" part="${ifDefined(part)}" ?disabled="${this.rippleDisabled || this.focusDisabled}">${content}</button>`;
152
+ }
153
+ isButton() {
154
+ return !this.href;
155
+ }
156
+ }
157
+ ButtonBase.styles = [
158
+ componentStyle,
159
+ buttonBaseStyle,
160
+ ];
161
+ __decorate([
162
+ property({
163
+ type: Boolean,
164
+ reflect: true,
165
+ converter: booleanConverter,
166
+ })
167
+ ], ButtonBase.prototype, "disabled", void 0);
168
+ __decorate([
169
+ property({
170
+ type: Boolean,
171
+ reflect: true,
172
+ converter: booleanConverter,
173
+ })
174
+ ], ButtonBase.prototype, "loading", void 0);
175
+ __decorate([
176
+ property({ reflect: true })
177
+ ], ButtonBase.prototype, "name", void 0);
178
+ __decorate([
179
+ property({ reflect: true })
180
+ ], ButtonBase.prototype, "value", void 0);
181
+ __decorate([
182
+ property({ reflect: true })
183
+ ], ButtonBase.prototype, "type", void 0);
184
+ __decorate([
185
+ property({ reflect: true })
186
+ ], ButtonBase.prototype, "form", void 0);
187
+ __decorate([
188
+ property({ reflect: true, attribute: 'formaction' })
189
+ ], ButtonBase.prototype, "formAction", void 0);
190
+ __decorate([
191
+ property({ reflect: true, attribute: 'formenctype' })
192
+ ], ButtonBase.prototype, "formEnctype", void 0);
193
+ __decorate([
194
+ property({ reflect: true, attribute: 'formmethod' })
195
+ ], ButtonBase.prototype, "formMethod", void 0);
196
+ __decorate([
197
+ property({
198
+ type: Boolean,
199
+ reflect: true,
200
+ converter: booleanConverter,
201
+ attribute: 'formnovalidate',
202
+ })
203
+ ], ButtonBase.prototype, "formNoValidate", void 0);
204
+ __decorate([
205
+ property({ reflect: true, attribute: 'formtarget' })
206
+ ], ButtonBase.prototype, "formTarget", void 0);
@@ -0,0 +1,64 @@
1
+ import '../icon.js';
2
+ import { ButtonBase } from './button-base.js';
3
+ import type { Ripple } from '../ripple/index.js';
4
+ import type { TemplateResult, CSSResultGroup } from 'lit';
5
+ /**
6
+ * @summary 按钮组件
7
+ *
8
+ * ```html
9
+ * <mdui-button>Button</mdui-button>
10
+ * ```
11
+ *
12
+ * @event focus - 获得焦点时触发
13
+ * @event blur - 失去焦点时触发
14
+ * @event invalid - 表单字段验证未通过时触发
15
+ *
16
+ * @slot - 按钮的文本
17
+ * @slot icon - 按钮左侧元素
18
+ * @slot end-icon - 按钮右侧元素
19
+ *
20
+ * @csspart button - 内部的 `<button>` 或 `<a>` 元素
21
+ * @csspart label - 按钮文本
22
+ * @csspart icon - 按钮左侧图标
23
+ * @csspart end-icon - 按钮右侧图标
24
+ * @csspart loading - 加载中状态的 `<mdui-circular-progress>` 元素
25
+ *
26
+ * @cssprop --shape-corner - 组件的圆角大小。可以指定一个具体的像素值;但更推荐[引用设计令牌](/docs/2/styles/design-tokens#shape-corner)
27
+ */
28
+ export declare class Button extends ButtonBase {
29
+ static styles: CSSResultGroup;
30
+ /**
31
+ * 按钮形状。可选值为:
32
+ *
33
+ * * `elevated`:带阴影的按钮,在需要把按钮和背景进行视觉分离时使用
34
+ * * `filled`:视觉效果仅次于 FAB,用于重要流程的最终操作,如“保存”、“确认”等
35
+ * * `tonal`:视觉效果介于 `filled` 和 `outlined` 之间,用于中高优先级的操作,如流程中的“下一步”
36
+ * * `outlined`:带边框的按钮,用于中等优先级,且次要的操作,如“返回”
37
+ * * `text`:文本按钮,用于最低优先级的操作
38
+ */
39
+ variant: /*带阴影的按钮,在需要把按钮和背景进行视觉分离时使用*/ 'elevated' | /*视觉效果仅次于 FAB,用于重要流程的最终操作,如“保存”、“确认”等*/ 'filled' | /*视觉效果介于 `filled` 和 `outlined` 之间,用于中等偏高优先级的场景,如流程中的“下一步”*/ 'tonal' | /*带边框的按钮,用于中等优先级,且次要操作的场景,如“返回”*/ 'outlined' | /*文本按钮,用于最低优先级的操作*/ 'text';
40
+ /**
41
+ * 是否填满父元素宽度
42
+ */
43
+ fullWidth: boolean;
44
+ /**
45
+ * 左侧的 Material Icons 图标名。也可以通过 `slot="icon"` 设置
46
+ */
47
+ icon?: string;
48
+ /**
49
+ * 右侧的 Material Icons 图标名。也可以通过 `slot="end-icon"` 设置
50
+ */
51
+ endIcon?: string;
52
+ private readonly rippleRef;
53
+ protected get rippleElement(): Ripple;
54
+ protected render(): TemplateResult;
55
+ private renderIcon;
56
+ private renderLabel;
57
+ private renderEndIcon;
58
+ private renderInner;
59
+ }
60
+ declare global {
61
+ interface HTMLElementTagNameMap {
62
+ 'mdui-button': Button;
63
+ }
64
+ }
@@ -0,0 +1,110 @@
1
+ import { __decorate } from "tslib";
2
+ import { html } from 'lit';
3
+ import { customElement, property } from 'lit/decorators.js';
4
+ import { createRef, ref } from 'lit/directives/ref.js';
5
+ import { booleanConverter } from '@mdui/shared/helpers/decorator.js';
6
+ import { nothingTemplate } from '@mdui/shared/helpers/template.js';
7
+ import '../icon.js';
8
+ import { ButtonBase } from './button-base.js';
9
+ import { style } from './style.js';
10
+ /**
11
+ * @summary 按钮组件
12
+ *
13
+ * ```html
14
+ * <mdui-button>Button</mdui-button>
15
+ * ```
16
+ *
17
+ * @event focus - 获得焦点时触发
18
+ * @event blur - 失去焦点时触发
19
+ * @event invalid - 表单字段验证未通过时触发
20
+ *
21
+ * @slot - 按钮的文本
22
+ * @slot icon - 按钮左侧元素
23
+ * @slot end-icon - 按钮右侧元素
24
+ *
25
+ * @csspart button - 内部的 `<button>` 或 `<a>` 元素
26
+ * @csspart label - 按钮文本
27
+ * @csspart icon - 按钮左侧图标
28
+ * @csspart end-icon - 按钮右侧图标
29
+ * @csspart loading - 加载中状态的 `<mdui-circular-progress>` 元素
30
+ *
31
+ * @cssprop --shape-corner - 组件的圆角大小。可以指定一个具体的像素值;但更推荐[引用设计令牌](/docs/2/styles/design-tokens#shape-corner)
32
+ */
33
+ export let Button = class Button extends ButtonBase {
34
+ constructor() {
35
+ super(...arguments);
36
+ /**
37
+ * 按钮形状。可选值为:
38
+ *
39
+ * * `elevated`:带阴影的按钮,在需要把按钮和背景进行视觉分离时使用
40
+ * * `filled`:视觉效果仅次于 FAB,用于重要流程的最终操作,如“保存”、“确认”等
41
+ * * `tonal`:视觉效果介于 `filled` 和 `outlined` 之间,用于中高优先级的操作,如流程中的“下一步”
42
+ * * `outlined`:带边框的按钮,用于中等优先级,且次要的操作,如“返回”
43
+ * * `text`:文本按钮,用于最低优先级的操作
44
+ */
45
+ this.variant = 'filled';
46
+ /**
47
+ * 是否填满父元素宽度
48
+ */
49
+ this.fullWidth = false;
50
+ this.rippleRef = createRef();
51
+ }
52
+ get rippleElement() {
53
+ return this.rippleRef.value;
54
+ }
55
+ render() {
56
+ return html `<mdui-ripple ${ref(this.rippleRef)} .noRipple="${this.noRipple}"></mdui-ripple>${this.isButton()
57
+ ? this.renderButton({
58
+ className: 'button',
59
+ part: 'button',
60
+ content: this.renderInner(),
61
+ })
62
+ : this.disabled || this.loading
63
+ ? html `<span part="button" class="button _a">${this.renderInner()}</span>`
64
+ : this.renderAnchor({
65
+ className: 'button',
66
+ part: 'button',
67
+ content: this.renderInner(),
68
+ })}`;
69
+ }
70
+ renderIcon() {
71
+ if (this.loading) {
72
+ return this.renderLoading();
73
+ }
74
+ return html `<slot name="icon" part="icon" class="icon">${this.icon
75
+ ? html `<mdui-icon name="${this.icon}"></mdui-icon>`
76
+ : nothingTemplate}</slot>`;
77
+ }
78
+ renderLabel() {
79
+ return html `<slot part="label" class="label"></slot>`;
80
+ }
81
+ renderEndIcon() {
82
+ return html `<slot name="end-icon" part="end-icon" class="end-icon">${this.endIcon
83
+ ? html `<mdui-icon name="${this.endIcon}"></mdui-icon>`
84
+ : nothingTemplate}</slot>`;
85
+ }
86
+ renderInner() {
87
+ return [this.renderIcon(), this.renderLabel(), this.renderEndIcon()];
88
+ }
89
+ };
90
+ Button.styles = [ButtonBase.styles, style];
91
+ __decorate([
92
+ property({ reflect: true })
93
+ ], Button.prototype, "variant", void 0);
94
+ __decorate([
95
+ property({
96
+ type: Boolean,
97
+ reflect: true,
98
+ converter: booleanConverter,
99
+ attribute: 'full-width',
100
+ })
101
+ ], Button.prototype, "fullWidth", void 0);
102
+ __decorate([
103
+ property({ reflect: true })
104
+ ], Button.prototype, "icon", void 0);
105
+ __decorate([
106
+ property({ reflect: true, attribute: 'end-icon' })
107
+ ], Button.prototype, "endIcon", void 0);
108
+ Button = __decorate([
109
+ customElement('mdui-button')
110
+ ], Button);
@@ -0,0 +1 @@
1
+ export declare const style: import("lit").CSSResult;
@@ -0,0 +1,4 @@
1
+ import { css } from 'lit';
2
+ export const style = css `:host{--shape-corner:var(--mdui-shape-corner-full);position:relative;display:inline-block;overflow:hidden;text-align:center;border-radius:var(--shape-corner);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:box-shadow var(--mdui-motion-duration-short4) var(--mdui-motion-easing-linear);min-width:3rem;height:2.5rem;color:rgb(var(--mdui-color-primary));font-size:var(--mdui-typescale-label-large-size);font-weight:var(--mdui-typescale-label-large-weight);letter-spacing:var(--mdui-typescale-label-large-tracking);line-height:var(--mdui-typescale-label-large-line-height)}.button{width:100%;padding:0 1rem}:host([full-width]){display:block}:host([variant=elevated]){box-shadow:var(--mdui-elevation-level1);background-color:rgb(var(--mdui-color-surface-container-low));--mdui-comp-ripple-state-layer-color:var(--mdui-color-primary)}:host([variant=filled]){color:rgb(var(--mdui-color-on-primary));background-color:rgb(var(--mdui-color-primary));--mdui-comp-ripple-state-layer-color:var(--mdui-color-on-primary)}:host([variant=tonal]){color:rgb(var(--mdui-color-on-secondary-container));background-color:rgb(var(--mdui-color-secondary-container));--mdui-comp-ripple-state-layer-color:var(
3
+ --mdui-color-on-secondary-container
4
+ )}:host([variant=outlined]){border:.0625rem solid rgb(var(--mdui-color-outline));--mdui-comp-ripple-state-layer-color:var(--mdui-color-primary)}:host([variant=text]){--mdui-comp-ripple-state-layer-color:var(--mdui-color-primary)}:host([variant=outlined][focus-visible]){border-color:rgb(var(--mdui-color-primary))}:host([variant=elevated][hover]){box-shadow:var(--mdui-elevation-level2)}:host([variant=filled][hover]),:host([variant=tonal][hover]){box-shadow:var(--mdui-elevation-level1)}:host([disabled]),:host([loading]){cursor:default;pointer-events:none}:host([disabled]){color:rgba(var(--mdui-color-on-surface),38%);box-shadow:var(--mdui-elevation-level0)}:host([variant=elevated][disabled]),:host([variant=filled][disabled]),:host([variant=tonal][disabled]){background-color:rgba(var(--mdui-color-on-surface),12%)}:host([variant=outlined][disabled]){border-color:rgba(var(--mdui-color-on-surface),12%)}.label{display:inline-flex;padding-right:.5rem;padding-left:.5rem}.end-icon,.icon{display:inline-flex;font-size:1.28571429em}.end-icon mdui-icon,.icon mdui-icon,::slotted([slot=end-icon]),::slotted([slot=icon]){font-size:inherit}mdui-circular-progress{display:inline-flex;width:1.125rem;height:1.125rem}:host([variant=filled]) mdui-circular-progress{stroke:rgb(var(--mdui-color-on-primary))}:host([variant=tonal]) mdui-circular-progress{stroke:rgb(var(--mdui-color-on-secondary-container))}:host([disabled]) mdui-circular-progress{stroke:rgba(var(--mdui-color-on-surface),38%)}`;
@@ -0,0 +1,66 @@
1
+ import { ButtonBase } from '../button/button-base.js';
2
+ import '../icon.js';
3
+ import type { Ripple } from '../ripple/index.js';
4
+ import type { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
5
+ /**
6
+ * @summary 图标按钮组件
7
+ *
8
+ * ```html
9
+ * <mdui-button-icon icon="search"></mdui-button-icon>
10
+ * ```
11
+ *
12
+ * @event focus - 获得焦点时触发
13
+ * @event blur - 失去焦点时触发
14
+ * @event change - 选中状态变更时触发
15
+ * @event invalid - 表单字段验证未通过时触发
16
+ *
17
+ * @slot - 图标组件
18
+ * @slot selected-icon 选中状态显示的图标元素
19
+ *
20
+ * @csspart button - 内部的 `<button>` 或 `<a>` 元素
21
+ * @csspart icon - 未选中状态的图标
22
+ * @csspart selected-icon 选中状态的图标
23
+ * @csspart loading - 加载中状态的 `<mdui-circular-progress>` 元素
24
+ *
25
+ * @cssprop --shape-corner - 组件的圆角大小。可以指定一个具体的像素值;但更推荐[引用设计令牌](/docs/2/styles/design-tokens#shape-corner)
26
+ */
27
+ export declare class ButtonIcon extends ButtonBase {
28
+ static styles: CSSResultGroup;
29
+ /**
30
+ * 图标按钮的形状。可选值为:
31
+ *
32
+ * * `standard`:用于最低优先级的操作
33
+ * * `filled`:具有最强视觉效果,用于高优先级的操作
34
+ * * `tonal`:视觉效果介于 `filled` 和 `outlined` 之间,用于中高优先级的操作
35
+ * * `outlined`:用于中等优先级的操作
36
+ */
37
+ variant: /*用于最低优先级的操作*/ 'standard' | /*具有最强视觉效果,用于高优先级的操作*/ 'filled' | /*视觉效果介于 `filled` 和 `outlined` 之间,用于中高优先级的操作*/ 'tonal' | /*用于中等优先级的操作*/ 'outlined';
38
+ /**
39
+ * Material Icons 图标名。也可以通过 default slot 设置
40
+ */
41
+ icon?: string;
42
+ /**
43
+ * 选中状态的 Material Icons 图标名。也可以通过 `slot="selected-icon"` 设置
44
+ */
45
+ selectedIcon?: string;
46
+ /**
47
+ * 是否可选中
48
+ */
49
+ selectable: boolean;
50
+ /**
51
+ * 是否已选中
52
+ */
53
+ selected: boolean;
54
+ private readonly rippleRef;
55
+ private readonly hasSlotController;
56
+ protected get rippleElement(): Ripple;
57
+ private onSelectedChange;
58
+ protected firstUpdated(changedProperties: PropertyValues): void;
59
+ protected render(): TemplateResult;
60
+ private renderIcon;
61
+ }
62
+ declare global {
63
+ interface HTMLElementTagNameMap {
64
+ 'mdui-button-icon': ButtonIcon;
65
+ }
66
+ }