microui-wc 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (343) hide show
  1. package/AGENTS.md +71 -71
  2. package/CHANGELOG.md +1 -1
  3. package/README.md +14 -9
  4. package/dist/AGENTS.md +116 -116
  5. package/dist/README.md +21 -16
  6. package/dist/components.css +1 -1
  7. package/dist/microui.css +1 -1
  8. package/dist/microui.esm.js.map +1 -1
  9. package/dist/microui.min.js.map +1 -1
  10. package/dist/styles/components/switch.css +1 -1
  11. package/docs/getting-started.md +3 -3
  12. package/package.json +38 -10
  13. package/src/components/mu-schema-form.js +1 -1
  14. package/src/styles/components/switch.css +7 -8
  15. package/src/styles/components.css +6 -6
  16. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -40
  17. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -33
  18. package/.github/PULL_REQUEST_TEMPLATE.md +0 -28
  19. package/.github/workflows/ci.yml +0 -42
  20. package/.github/workflows/deploy-pages.yml +0 -112
  21. package/CODE_OF_CONDUCT.md +0 -59
  22. package/CONTRIBUTING.md +0 -156
  23. package/SECURITY.md +0 -58
  24. package/app/.generated/routes/alerts.js +0 -8
  25. package/app/.generated/routes/avatars.js +0 -8
  26. package/app/.generated/routes/badges.js +0 -8
  27. package/app/.generated/routes/buttons.js +0 -10
  28. package/app/.generated/routes/cards.js +0 -10
  29. package/app/.generated/routes/checkboxes.js +0 -9
  30. package/app/.generated/routes/chips.js +0 -8
  31. package/app/.generated/routes/dropdowns.js +0 -9
  32. package/app/.generated/routes/home.js +0 -7
  33. package/app/.generated/routes/icons.js +0 -9
  34. package/app/.generated/routes/inputs.js +0 -10
  35. package/app/.generated/routes/installation.js +0 -7
  36. package/app/.generated/routes/layout.js +0 -9
  37. package/app/.generated/routes/modals.js +0 -9
  38. package/app/.generated/routes/navbar.js +0 -7
  39. package/app/.generated/routes/progress.js +0 -9
  40. package/app/.generated/routes/radios.js +0 -9
  41. package/app/.generated/routes/switches.js +0 -9
  42. package/app/.generated/routes/tabs.js +0 -8
  43. package/app/.generated/routes/toasts.js +0 -9
  44. package/app/index.html +0 -67
  45. package/app/pages/alerts.html +0 -23
  46. package/app/pages/avatars.html +0 -22
  47. package/app/pages/badges.html +0 -22
  48. package/app/pages/buttons.html +0 -71
  49. package/app/pages/cards.html +0 -54
  50. package/app/pages/checkboxes.html +0 -39
  51. package/app/pages/chips.html +0 -23
  52. package/app/pages/dropdowns.html +0 -41
  53. package/app/pages/home.html +0 -59
  54. package/app/pages/icons.html +0 -29
  55. package/app/pages/inputs.html +0 -66
  56. package/app/pages/installation.html +0 -34
  57. package/app/pages/layout.html +0 -30
  58. package/app/pages/modals.html +0 -21
  59. package/app/pages/navbar.html +0 -22
  60. package/app/pages/progress.html +0 -35
  61. package/app/pages/radios.html +0 -40
  62. package/app/pages/switches.html +0 -39
  63. package/app/pages/tabs.html +0 -30
  64. package/app/pages/toasts.html +0 -22
  65. package/app-dist/index.html +0 -67
  66. package/app-dist/pages/alerts.html +0 -23
  67. package/app-dist/pages/avatars.html +0 -22
  68. package/app-dist/pages/badges.html +0 -22
  69. package/app-dist/pages/buttons.html +0 -71
  70. package/app-dist/pages/cards.html +0 -54
  71. package/app-dist/pages/checkboxes.html +0 -39
  72. package/app-dist/pages/chips.html +0 -23
  73. package/app-dist/pages/dropdowns.html +0 -41
  74. package/app-dist/pages/home.html +0 -59
  75. package/app-dist/pages/icons.html +0 -29
  76. package/app-dist/pages/inputs.html +0 -66
  77. package/app-dist/pages/installation.html +0 -34
  78. package/app-dist/pages/layout.html +0 -30
  79. package/app-dist/pages/modals.html +0 -21
  80. package/app-dist/pages/navbar.html +0 -22
  81. package/app-dist/pages/progress.html +0 -35
  82. package/app-dist/pages/radios.html +0 -40
  83. package/app-dist/pages/switches.html +0 -39
  84. package/app-dist/pages/tabs.html +0 -30
  85. package/app-dist/pages/toasts.html +0 -22
  86. package/app-dist/pages.json +0 -217
  87. package/app-dist/routes/alerts.js +0 -5
  88. package/app-dist/routes/avatars.js +0 -1
  89. package/app-dist/routes/badges.js +0 -1
  90. package/app-dist/routes/buttons.js +0 -1
  91. package/app-dist/routes/cards.js +0 -1
  92. package/app-dist/routes/checkboxes.js +0 -9
  93. package/app-dist/routes/chips.js +0 -4
  94. package/app-dist/routes/chunk-019e5e2f.js +0 -5
  95. package/app-dist/routes/chunk-0m4j19yd.js +0 -2
  96. package/app-dist/routes/chunk-0tmmp5q0.js +0 -1
  97. package/app-dist/routes/chunk-10xn709r.js +0 -1
  98. package/app-dist/routes/chunk-15m2qcda.js +0 -2
  99. package/app-dist/routes/chunk-1bh8g23n.js +0 -1
  100. package/app-dist/routes/chunk-1vg0v937.js +0 -1
  101. package/app-dist/routes/chunk-1zvcgy3j.js +0 -1
  102. package/app-dist/routes/chunk-2afb0861.js +0 -1
  103. package/app-dist/routes/chunk-2c6ttpzt.js +0 -5
  104. package/app-dist/routes/chunk-3dy30fhs.js +0 -1
  105. package/app-dist/routes/chunk-426dnces.js +0 -13
  106. package/app-dist/routes/chunk-44kgxery.js +0 -1
  107. package/app-dist/routes/chunk-47fdnejd.js +0 -33
  108. package/app-dist/routes/chunk-49a6t2vq.js +0 -1
  109. package/app-dist/routes/chunk-4fe1rm5b.js +0 -1
  110. package/app-dist/routes/chunk-4ggmvkta.js +0 -33
  111. package/app-dist/routes/chunk-4vkz81q7.js +0 -33
  112. package/app-dist/routes/chunk-4w4tmj8f.js +0 -31
  113. package/app-dist/routes/chunk-532s62kr.js +0 -31
  114. package/app-dist/routes/chunk-5hm3bssy.js +0 -33
  115. package/app-dist/routes/chunk-5vrh24hc.js +0 -1
  116. package/app-dist/routes/chunk-61pcg25a.js +0 -1
  117. package/app-dist/routes/chunk-6nfhygvf.js +0 -1
  118. package/app-dist/routes/chunk-700e7je6.js +0 -33
  119. package/app-dist/routes/chunk-7fsn17kg.js +0 -1
  120. package/app-dist/routes/chunk-7k789b32.js +0 -1
  121. package/app-dist/routes/chunk-7r46q0ys.js +0 -36
  122. package/app-dist/routes/chunk-86fmc1fr.js +0 -5
  123. package/app-dist/routes/chunk-8qth37vw.js +0 -1
  124. package/app-dist/routes/chunk-924wv8n0.js +0 -1
  125. package/app-dist/routes/chunk-9mbhgxk9.js +0 -1
  126. package/app-dist/routes/chunk-a216hyd9.js +0 -1
  127. package/app-dist/routes/chunk-akzxykh9.js +0 -33
  128. package/app-dist/routes/chunk-b3dcvy8c.js +0 -1
  129. package/app-dist/routes/chunk-b74zahz5.js +0 -31
  130. package/app-dist/routes/chunk-bftj53p2.js +0 -5
  131. package/app-dist/routes/chunk-c01hnz3e.js +0 -1
  132. package/app-dist/routes/chunk-d8pvv5km.js +0 -1
  133. package/app-dist/routes/chunk-dev0aezr.js +0 -2
  134. package/app-dist/routes/chunk-dh6vnv0e.js +0 -1
  135. package/app-dist/routes/chunk-dn2cbpva.js +0 -36
  136. package/app-dist/routes/chunk-dvn0my90.js +0 -1
  137. package/app-dist/routes/chunk-dvq8mnve.js +0 -36
  138. package/app-dist/routes/chunk-e8c2gc4d.js +0 -5
  139. package/app-dist/routes/chunk-ejf9ak2x.js +0 -1
  140. package/app-dist/routes/chunk-f083m55s.js +0 -1
  141. package/app-dist/routes/chunk-fnrj28s1.js +0 -31
  142. package/app-dist/routes/chunk-fvg3yjdp.js +0 -31
  143. package/app-dist/routes/chunk-g7k381n1.js +0 -1
  144. package/app-dist/routes/chunk-h01kq2ae.js +0 -13
  145. package/app-dist/routes/chunk-h4dk761v.js +0 -5
  146. package/app-dist/routes/chunk-hmx91z2x.js +0 -5
  147. package/app-dist/routes/chunk-hxbg4m42.js +0 -36
  148. package/app-dist/routes/chunk-jbjnfp2b.js +0 -2
  149. package/app-dist/routes/chunk-jxtz5vv6.js +0 -36
  150. package/app-dist/routes/chunk-jxzcs0ey.js +0 -36
  151. package/app-dist/routes/chunk-kt7wwhcx.js +0 -1
  152. package/app-dist/routes/chunk-kzptszyc.js +0 -33
  153. package/app-dist/routes/chunk-mhgca4w4.js +0 -2
  154. package/app-dist/routes/chunk-mhswxa20.js +0 -1
  155. package/app-dist/routes/chunk-n8zfeex6.js +0 -1
  156. package/app-dist/routes/chunk-pee47b2r.js +0 -1
  157. package/app-dist/routes/chunk-pesmw829.js +0 -1
  158. package/app-dist/routes/chunk-pgc4c6f3.js +0 -36
  159. package/app-dist/routes/chunk-q8egegm1.js +0 -1
  160. package/app-dist/routes/chunk-q9mn2qyq.js +0 -36
  161. package/app-dist/routes/chunk-qh0rtaf3.js +0 -5
  162. package/app-dist/routes/chunk-qqhmk6ye.js +0 -2
  163. package/app-dist/routes/chunk-qrxygmf7.js +0 -33
  164. package/app-dist/routes/chunk-r46yzksx.js +0 -36
  165. package/app-dist/routes/chunk-rgpbw2w0.js +0 -5
  166. package/app-dist/routes/chunk-rnpzv3d8.js +0 -2
  167. package/app-dist/routes/chunk-s5v8cv05.js +0 -2
  168. package/app-dist/routes/chunk-sbwn5bpc.js +0 -1
  169. package/app-dist/routes/chunk-sqbg8jbt.js +0 -33
  170. package/app-dist/routes/chunk-sv8dqnf7.js +0 -1
  171. package/app-dist/routes/chunk-t67sw3za.js +0 -1
  172. package/app-dist/routes/chunk-tjdpqwdf.js +0 -31
  173. package/app-dist/routes/chunk-tq2mfghg.js +0 -1
  174. package/app-dist/routes/chunk-ttn10vt6.js +0 -1
  175. package/app-dist/routes/chunk-v2hzpjxr.js +0 -1
  176. package/app-dist/routes/chunk-wfjjkw9y.js +0 -1
  177. package/app-dist/routes/chunk-wt8cxzmf.js +0 -31
  178. package/app-dist/routes/chunk-x45d372k.js +0 -5
  179. package/app-dist/routes/chunk-y3wsazkt.js +0 -1
  180. package/app-dist/routes/chunk-y7pmgc7t.js +0 -33
  181. package/app-dist/routes/chunk-zefdt2q3.js +0 -31
  182. package/app-dist/routes/dropdowns.js +0 -6
  183. package/app-dist/routes/home.js +0 -1
  184. package/app-dist/routes/icons.js +0 -1
  185. package/app-dist/routes/inputs.js +0 -12
  186. package/app-dist/routes/installation.js +0 -1
  187. package/app-dist/routes/layout.js +0 -1
  188. package/app-dist/routes/modals.js +0 -7
  189. package/app-dist/routes/navbar.js +0 -1
  190. package/app-dist/routes/progress.js +0 -1
  191. package/app-dist/routes/radios.js +0 -6
  192. package/app-dist/routes/switches.js +0 -6
  193. package/app-dist/routes/tabs.js +0 -1
  194. package/app-dist/routes/toasts.js +0 -16
  195. package/assets/fonts/material-symbols-mini.woff2 +0 -0
  196. package/assets/fonts/material-symbols.woff2 +0 -0
  197. package/assets/fonts/roboto-400.woff2 +0 -0
  198. package/assets/fonts/roboto-500.woff2 +0 -0
  199. package/assets/fonts/roboto-700.woff2 +0 -0
  200. package/assets/logo-banner-400.jpg +0 -0
  201. package/assets/logo-banner-400.webp +0 -0
  202. package/assets/logo-banner-800.webp +0 -0
  203. package/assets/logo-banner.jpg +0 -0
  204. package/assets/logo-icon-64.jpg +0 -0
  205. package/assets/logo-icon-64.webp +0 -0
  206. package/assets/logo-icon.jpg +0 -0
  207. package/assets/logo-square.jpg +0 -0
  208. package/bun.lock +0 -312
  209. package/bunfig.toml +0 -4
  210. package/custom-elements.json +0 -1916
  211. package/demo/api/sample-data.json +0 -38
  212. package/demo/content/alerts.html +0 -115
  213. package/demo/content/avatars.html +0 -70
  214. package/demo/content/badges.html +0 -65
  215. package/demo/content/buttons.html +0 -188
  216. package/demo/content/callouts.html +0 -91
  217. package/demo/content/cards.html +0 -121
  218. package/demo/content/checkboxes.html +0 -178
  219. package/demo/content/chips.html +0 -67
  220. package/demo/content/codeblocks.html +0 -101
  221. package/demo/content/confirms.html +0 -115
  222. package/demo/content/datatables.html +0 -149
  223. package/demo/content/dividers.html +0 -119
  224. package/demo/content/dropdowns.html +0 -89
  225. package/demo/content/enterprise.html +0 -252
  226. package/demo/content/home.html +0 -149
  227. package/demo/content/icons.html +0 -89
  228. package/demo/content/inputs.html +0 -135
  229. package/demo/content/installation.html +0 -16
  230. package/demo/content/layout.html +0 -136
  231. package/demo/content/modals.html +0 -141
  232. package/demo/content/navbar.html +0 -70
  233. package/demo/content/progress.html +0 -119
  234. package/demo/content/radios.html +0 -88
  235. package/demo/content/skeletons.html +0 -109
  236. package/demo/content/spinners.html +0 -96
  237. package/demo/content/switches.html +0 -84
  238. package/demo/content/tables.html +0 -124
  239. package/demo/content/tabs.html +0 -85
  240. package/demo/content/toasts.html +0 -116
  241. package/demo/content/tooltips.html +0 -107
  242. package/demo/content/virtual-lists.html +0 -233
  243. package/demo/favicon.ico +0 -0
  244. package/demo/favicon.png +0 -0
  245. package/demo/full.html +0 -52
  246. package/demo/iife.html +0 -46
  247. package/demo/manifest.json +0 -34
  248. package/demo/pages/datatable-demo.html +0 -237
  249. package/demo/pages/prompt-ui-demo.html +0 -218
  250. package/demo/pages/responsive-demo.html +0 -122
  251. package/demo/pages/schema-form-demo.html +0 -270
  252. package/demo/robots.txt +0 -6
  253. package/demo/shell.html +0 -712
  254. package/demo/sw.js +0 -387
  255. package/lighthouse-audit.mjs +0 -113
  256. package/scripts/analyze-components.js +0 -105
  257. package/scripts/build-app.js +0 -193
  258. package/scripts/build-framework.js +0 -444
  259. package/scripts/build-utils.js +0 -101
  260. package/scripts/test-isolated.js +0 -151
  261. package/server.js +0 -256
  262. package/tests/agents/agent-integration.test.js +0 -76
  263. package/tests/benchmark.html +0 -296
  264. package/tests/build/scan-components.test.js +0 -173
  265. package/tests/components/all-components.test.js +0 -245
  266. package/tests/components/all-missing-components.test.js +0 -574
  267. package/tests/components/mu-alert.test.js +0 -113
  268. package/tests/components/mu-avatar.test.js +0 -148
  269. package/tests/components/mu-badge.test.js +0 -92
  270. package/tests/components/mu-button.test.js +0 -112
  271. package/tests/components/mu-card.test.js +0 -89
  272. package/tests/components/mu-checkbox.test.js +0 -158
  273. package/tests/components/mu-chip.test.js +0 -118
  274. package/tests/components/mu-container.test.js +0 -120
  275. package/tests/components/mu-divider.test.js +0 -98
  276. package/tests/components/mu-drawer-item.test.js +0 -199
  277. package/tests/components/mu-drawer.test.js +0 -96
  278. package/tests/components/mu-dropdown.test.js +0 -125
  279. package/tests/components/mu-form.test.js +0 -138
  280. package/tests/components/mu-grid.test.js +0 -135
  281. package/tests/components/mu-icon.test.js +0 -110
  282. package/tests/components/mu-input.test.js +0 -131
  283. package/tests/components/mu-lazy.test.js +0 -103
  284. package/tests/components/mu-modal.test.js +0 -275
  285. package/tests/components/mu-navbar.test.js +0 -101
  286. package/tests/components/mu-progress.test.js +0 -115
  287. package/tests/components/mu-radio.test.js +0 -114
  288. package/tests/components/mu-repeat.test.js +0 -106
  289. package/tests/components/mu-sidebar.test.js +0 -126
  290. package/tests/components/mu-skeleton.test.js +0 -162
  291. package/tests/components/mu-stack.test.js +0 -143
  292. package/tests/components/mu-switch.test.js +0 -292
  293. package/tests/components/mu-table.test.js +0 -124
  294. package/tests/components/mu-tabs.test.js +0 -104
  295. package/tests/components/mu-textarea.test.js +0 -115
  296. package/tests/components/mu-toast.test.js +0 -321
  297. package/tests/components/mu-tooltip.test.js +0 -133
  298. package/tests/components/mu-virtual-list.test.js +0 -109
  299. package/tests/core/MuElement.test.js +0 -120
  300. package/tests/core/agent-api.test.js +0 -125
  301. package/tests/core/all-core-modules.test.js +0 -442
  302. package/tests/core/bus.test.js +0 -364
  303. package/tests/core/component-schema.test.js +0 -160
  304. package/tests/core/feature-registry.test.js +0 -198
  305. package/tests/core/form-state.test.js +0 -167
  306. package/tests/core/http.test.js +0 -119
  307. package/tests/core/keyboard.test.js +0 -319
  308. package/tests/core/layers.test.js +0 -129
  309. package/tests/core/namespaced-stores.test.js +0 -114
  310. package/tests/core/render.test.js +0 -121
  311. package/tests/core/ripple.test.js +0 -131
  312. package/tests/core/router.test.js +0 -89
  313. package/tests/core/scheduler.test.js +0 -121
  314. package/tests/core/signals.test.js +0 -128
  315. package/tests/core/store.test.js +0 -171
  316. package/tests/core/transitions.test.js +0 -82
  317. package/tests/e2e/accessibility-harness.html +0 -58
  318. package/tests/e2e/accessibility.test.js +0 -401
  319. package/tests/e2e/agent-features.test.js +0 -372
  320. package/tests/e2e/card-spacing.test.js +0 -287
  321. package/tests/e2e/components.test.js +0 -439
  322. package/tests/e2e/demo-routes.test.js +0 -478
  323. package/tests/e2e/layout-css-fallback.test.js +0 -334
  324. package/tests/e2e/mu-alert.e2e.test.js +0 -111
  325. package/tests/e2e/mu-checkbox.test.js +0 -489
  326. package/tests/e2e/mu-chip.test.js +0 -347
  327. package/tests/e2e/mu-form.test.js +0 -499
  328. package/tests/e2e/mu-icon.test.js +0 -114
  329. package/tests/e2e/mu-radio.test.js +0 -113
  330. package/tests/e2e/mu-skeleton.test.js +0 -140
  331. package/tests/e2e/mu-switch.test.js +0 -415
  332. package/tests/e2e/mu-tabs.test.js +0 -494
  333. package/tests/e2e/mu-textarea.test.js +0 -242
  334. package/tests/e2e/mu-virtual-list.test.js +0 -427
  335. package/tests/e2e/perf-memory.test.js +0 -161
  336. package/tests/e2e/puppeteer-helper.js +0 -137
  337. package/tests/e2e/puppeteer.test.js +0 -226
  338. package/tests/e2e/pwa.test.js +0 -261
  339. package/tests/e2e/test-harness.html +0 -319
  340. package/tests/manual/test-components.html +0 -120
  341. package/tests/memory-test.html +0 -309
  342. package/tests/setup-dom.js +0 -93
  343. package/tests/visual-test.html +0 -301
@@ -1,121 +0,0 @@
1
- <!-- Cards Content Fragment -->
2
- <div id="page-cards" class="page active">
3
- <h1 class="page-title">Card</h1>
4
- <p class="page-subtitle">
5
- <code>&lt;mu-card&gt;</code> is a surface container that holds related content.
6
- MD3 defines 3 card variants with different elevation and emphasis levels.
7
- </p>
8
-
9
- <mu-tabs active="0" id="card-doc-tabs" style="margin-bottom: 24px;">
10
- <mu-tab>OVERVIEW</mu-tab>
11
- <mu-tab>API</mu-tab>
12
- <mu-tab>STYLING</mu-tab>
13
- <mu-tab>EXAMPLES</mu-tab>
14
- </mu-tabs>
15
-
16
- <div id="card-overview" class="doc-tab-content">
17
- <mu-example title="Card variants">
18
- <div slot="demo">
19
- <mu-card variant="elevated" style="min-width: 160px; flex: 1;">
20
- <h3>Elevated</h3>
21
- <p>With shadow for depth.</p>
22
- </mu-card>
23
- <mu-card variant="filled" style="min-width: 160px; flex: 1;">
24
- <h3>Filled</h3>
25
- <p>Surface container color.</p>
26
- </mu-card>
27
- <mu-card variant="outlined" style="min-width: 160px; flex: 1;">
28
- <h3>Outlined</h3>
29
- <p>With border, no shadow.</p>
30
- </mu-card>
31
- </div>
32
- </mu-example>
33
-
34
- <div class="component-section">
35
- <h2 class="section-title">Choosing a card variant</h2>
36
- <mu-stack gap="lg">
37
- <mu-card variant="outlined">
38
- <mu-stack direction="row" gap="md" align="center">
39
- <strong>Elevated</strong>
40
- <span>High emphasis - main content, hero sections</span>
41
- </mu-stack>
42
- </mu-card>
43
- <mu-card variant="outlined">
44
- <mu-stack direction="row" gap="md" align="center">
45
- <strong>Filled</strong>
46
- <span>Medium emphasis - grouped items, list items</span>
47
- </mu-stack>
48
- </mu-card>
49
- <mu-card variant="outlined">
50
- <mu-stack direction="row" gap="md" align="center">
51
- <strong>Outlined</strong>
52
- <span>Low emphasis - subtle containers, nested cards</span>
53
- </mu-stack>
54
- </mu-card>
55
- </mu-stack>
56
- </div>
57
- </div>
58
-
59
- <div id="card-api" class="doc-tab-content" style="display: none;">
60
- <div class="component-section">
61
- <h2 class="section-title">Attributes</h2>
62
- <mu-api-table type="attributes">
63
- <mu-api-row name="variant" type="string" default="elevated">Card style: 'elevated' |
64
- 'filled' | 'outlined'</mu-api-row>
65
- <mu-api-row name="clickable" type="boolean" default="false">Whether card is clickable with
66
- hover state</mu-api-row>
67
- </mu-api-table>
68
- </div>
69
- </div>
70
-
71
- <div id="card-styling" class="doc-tab-content" style="display: none;">
72
- <div class="component-section">
73
- <h2 class="section-title">CSS Custom Properties</h2>
74
- <mu-api-table type="tokens">
75
- <mu-api-row name="--md-sys-color-surface" default="#fef7ff">Card background</mu-api-row>
76
- <mu-api-row name="--md-sys-color-outline-variant" default="#cac4d0">Outlined
77
- border</mu-api-row>
78
- <mu-api-row name="--md-sys-shape-corner-medium" default="12px">Border radius</mu-api-row>
79
- <mu-api-row name="--md-sys-elevation-1" default="0 1px 3px...">Elevated shadow</mu-api-row>
80
- </mu-api-table>
81
- </div>
82
- </div>
83
-
84
- <div id="card-examples" class="doc-tab-content" style="display: none;">
85
- <mu-example title="Product card">
86
- <div slot="demo">
87
- <mu-card variant="elevated" style="max-width: 320px;">
88
- <mu-stack gap="md">
89
- <div
90
- style="background: var(--md-sys-color-secondary-container); height: 140px; border-radius: 8px; display: flex; align-items: center; justify-content: center;">
91
- <mu-icon name="image" style="font-size: 48px; opacity: 0.5;"></mu-icon>
92
- </div>
93
- <h3 style="margin: 0;">Product Title</h3>
94
- <p style="margin: 0; color: var(--md-sys-color-on-surface-variant);">A brief
95
- description of the product.</p>
96
- <mu-stack direction="row" gap="sm">
97
- <mu-button variant="filled">Buy Now</mu-button>
98
- <mu-button variant="outlined">Learn More</mu-button>
99
- </mu-stack>
100
- </mu-stack>
101
- </mu-card>
102
- </div>
103
- </mu-example>
104
-
105
- <mu-example title="Nested cards">
106
- <div slot="demo">
107
- <mu-card variant="filled">
108
- <h3>Parent Card</h3>
109
- <mu-stack gap="sm">
110
- <mu-card variant="outlined">
111
- <p>Nested child 1</p>
112
- </mu-card>
113
- <mu-card variant="outlined">
114
- <p>Nested child 2</p>
115
- </mu-card>
116
- </mu-stack>
117
- </mu-card>
118
- </div>
119
- </mu-example>
120
- </div>
121
- </div>
@@ -1,178 +0,0 @@
1
- <!-- Checkboxes Content Fragment -->
2
- <div id="page-checkboxes" class="page active">
3
- <h1 class="page-title">Checkbox</h1>
4
- <p class="page-subtitle">
5
- <code>&lt;mu-checkbox&gt;</code> provides the same functionality as a native
6
- <code>&lt;input type="checkbox"&gt;</code> enhanced with Material Design 3 styling and animations.
7
- </p>
8
-
9
- <!-- Documentation Tabs -->
10
- <mu-tabs active="0" id="checkbox-doc-tabs" style="margin-bottom: 24px;">
11
- <mu-tab>OVERVIEW</mu-tab>
12
- <mu-tab>API</mu-tab>
13
- <mu-tab>STYLING</mu-tab>
14
- <mu-tab>EXAMPLES</mu-tab>
15
- </mu-tabs>
16
-
17
- <!-- OVERVIEW Tab Content -->
18
- <div id="checkbox-overview" class="doc-tab-content">
19
- <mu-example title="Basic checkboxes">
20
- <div slot="demo">
21
- <mu-checkbox checked>Check me!</mu-checkbox>
22
- <mu-checkbox disabled>Disabled</mu-checkbox>
23
- </div>
24
-
25
- </mu-example>
26
-
27
- <mu-example title="Indeterminate state">
28
- <div slot="demo">
29
- <mu-stack gap="sm">
30
- <mu-checkbox indeterminate>Parent task</mu-checkbox>
31
- <mu-stack gap="xs" style="padding-left: 24px;">
32
- <mu-checkbox checked>Child task 1</mu-checkbox>
33
- <mu-checkbox>Child task 2</mu-checkbox>
34
- <mu-checkbox>Child task 3</mu-checkbox>
35
- </mu-stack>
36
- </mu-stack>
37
- </div>
38
-
39
- </mu-example>
40
-
41
- <div class="component-section">
42
- <h2 class="section-title">Checkbox label</h2>
43
- <p style="color: var(--md-sys-color-on-surface-variant); line-height: 1.6;">
44
- The checkbox label is provided as the content to the <code>&lt;mu-checkbox&gt;</code>
45
- element.
46
- Alternatively, use the <code>label</code> attribute. For accessibility, always provide a
47
- label.
48
- </p>
49
- </div>
50
-
51
- <div class="component-section"
52
- style="background: var(--md-sys-color-primary-container); border-left: 4px solid var(--md-sys-color-primary);">
53
- <h2 class="section-title" style="color: var(--md-sys-color-on-primary-container);">Accessibility
54
- </h2>
55
- <p style="color: var(--md-sys-color-on-primary-container); line-height: 1.6;">
56
- <code>&lt;mu-checkbox&gt;</code> uses a native <code>role="checkbox"</code> and
57
- manages <code>aria-checked</code> automatically based on state.
58
- The indeterminate state uses <code>aria-checked="mixed"</code>.
59
- </p>
60
- </div>
61
- </div>
62
-
63
- <!-- API Tab Content -->
64
- <div id="checkbox-api" class="doc-tab-content" style="display: none;">
65
- <div class="component-section">
66
- <h2 class="section-title">Selector</h2>
67
- <div class="code-block" style="display: inline-block;">&lt;mu-checkbox&gt;</div>
68
- </div>
69
-
70
- <div class="component-section">
71
- <h2 class="section-title">Attributes</h2>
72
- <mu-api-table type="attributes">
73
- <mu-api-row name="checked" type="boolean" default="false">Whether the checkbox is
74
- checked</mu-api-row>
75
- <mu-api-row name="indeterminate" type="boolean" default="false">Whether in indeterminate
76
- state (horizontal line)</mu-api-row>
77
- <mu-api-row name="disabled" type="boolean" default="false">Whether the checkbox is
78
- disabled</mu-api-row>
79
- <mu-api-row name="label" type="string" default="">Alternative way to set label
80
- text</mu-api-row>
81
- <mu-api-row name="name" type="string" default="">Form input name for form
82
- submission</mu-api-row>
83
- </mu-api-table>
84
- </div>
85
-
86
- <div class="component-section">
87
- <h2 class="section-title">Properties</h2>
88
- <mu-api-table type="properties">
89
- <mu-api-row name="checked" type="boolean">Gets/sets the checked state</mu-api-row>
90
- <mu-api-row name="indeterminate" type="boolean">Gets/sets the indeterminate
91
- state</mu-api-row>
92
- </mu-api-table>
93
- </div>
94
-
95
- <div class="component-section">
96
- <h2 class="section-title">Methods</h2>
97
- <mu-api-table type="methods">
98
- <mu-api-row name="toggle" signature="toggle(): void">Toggles the checked state</mu-api-row>
99
- </mu-api-table>
100
- </div>
101
-
102
- <div class="component-section">
103
- <h2 class="section-title">Events</h2>
104
- <mu-api-table type="events">
105
- <mu-api-row name="mu-change" detail="{ checked: boolean, indeterminate: boolean }">Emitted
106
- when the checkbox state changes</mu-api-row>
107
- </mu-api-table>
108
- </div>
109
- </div>
110
-
111
- <!-- STYLING Tab Content -->
112
- <div id="checkbox-styling" class="doc-tab-content" style="display: none;">
113
- <div class="component-section">
114
- <h2 class="section-title">CSS Custom Properties</h2>
115
- <p style="color: var(--md-sys-color-on-surface-variant); margin-bottom: 16px;">
116
- Customize the checkbox using MD3 design tokens.
117
- </p>
118
- <mu-api-table type="tokens">
119
- <mu-api-row name="--md-sys-color-primary" default="#6750a4">Checked state background and
120
- border</mu-api-row>
121
- <mu-api-row name="--md-sys-color-on-primary" default="#ffffff">Checkmark color</mu-api-row>
122
- <mu-api-row name="--md-sys-color-outline" default="#79747e">Unchecked border
123
- color</mu-api-row>
124
- <mu-api-row name="--md-sys-color-on-surface" default="#1d1b20">Label text color</mu-api-row>
125
- <mu-api-row name="--md-sys-motion-easing-standard" default="ease-out">Animation
126
- easing</mu-api-row>
127
- </mu-api-table>
128
- </div>
129
-
130
- <div class="component-section">
131
- <h2 class="section-title">Theming Example</h2>
132
- <div class="code-block">/* Custom checkbox theme */
133
- mu-checkbox {
134
- --md-sys-color-primary: #006d3b;
135
- --md-sys-color-on-primary: #ffffff;
136
- }</div>
137
- </div>
138
- </div>
139
-
140
- <!-- EXAMPLES Tab Content -->
141
- <div id="checkbox-examples" class="doc-tab-content" style="display: none;">
142
- <mu-example title="Configurable checkbox">
143
- <div slot="demo">
144
- <mu-stack gap="md">
145
- <mu-checkbox id="config-checkbox" checked>Configurable checkbox</mu-checkbox>
146
- <mu-stack direction="row" gap="sm">
147
- <mu-button variant="outlined" size="sm"
148
- onclick="document.getElementById('config-checkbox').checked = !document.getElementById('config-checkbox').checked">Toggle
149
- Checked</mu-button>
150
- <mu-button variant="outlined" size="sm"
151
- onclick="document.getElementById('config-checkbox').indeterminate = !document.getElementById('config-checkbox').indeterminate">Toggle
152
- Indeterminate</mu-button>
153
- </mu-stack>
154
- </mu-stack>
155
- </div>
156
- </mu-example>
157
-
158
- <mu-example title="With icons (styled label)">
159
- <div slot="demo">
160
- <mu-checkbox>
161
- <mu-stack direction="row" gap="sm" align="center">
162
- <mu-icon name="check" style="color: var(--md-sys-color-primary);"></mu-icon>
163
- Accept terms and conditions
164
- </mu-stack>
165
- </mu-checkbox>
166
- </div>
167
- </mu-example>
168
-
169
- <mu-example title="Form integration">
170
- <div slot="demo">
171
- <mu-form>
172
- <mu-checkbox name="newsletter" checked>Subscribe to newsletter</mu-checkbox>
173
- <mu-checkbox name="terms">I accept the terms</mu-checkbox>
174
- </mu-form>
175
- </div>
176
- </mu-example>
177
- </div>
178
- </div>
@@ -1,67 +0,0 @@
1
- <!-- Chips Content Fragment -->
2
- <div id="page-chips" class="page active">
3
- <h1 class="page-title">Chip</h1>
4
- <p class="page-subtitle">
5
- <code>&lt;mu-chip&gt;</code> compact elements for filters, selections,
6
- or tags. Supports selection state and click interactions.
7
- </p>
8
-
9
- <mu-tabs active="0" id="chip-doc-tabs" style="margin-bottom: 24px;">
10
- <mu-tab>OVERVIEW</mu-tab>
11
- <mu-tab>API</mu-tab>
12
- <mu-tab>STYLING</mu-tab>
13
- <mu-tab>EXAMPLES</mu-tab>
14
- </mu-tabs>
15
-
16
- <div id="chip-overview" class="doc-tab-content">
17
- <mu-example title="Selectable chips">
18
- <div slot="demo">
19
- <mu-chip>React</mu-chip>
20
- <mu-chip selected>Vue</mu-chip>
21
- <mu-chip>Angular</mu-chip>
22
- <mu-chip>Svelte</mu-chip>
23
- </div>
24
-
25
- </mu-example>
26
- </div>
27
-
28
- <div id="chip-api" class="doc-tab-content" style="display: none;">
29
- <div class="component-section">
30
- <h2 class="section-title">Attributes</h2>
31
- <mu-api-table type="attributes">
32
- <mu-api-row name="selected" type="boolean" default="false">Whether chip is in selected
33
- state</mu-api-row>
34
- <mu-api-row name="removable" type="boolean" default="false">Shows remove (x)
35
- button</mu-api-row>
36
- </mu-api-table>
37
- </div>
38
- <div class="component-section">
39
- <h2 class="section-title">Events</h2>
40
- <mu-api-table type="events">
41
- <mu-api-row name="mu-remove" detail="{}">Emitted when remove button clicked</mu-api-row>
42
- </mu-api-table>
43
- </div>
44
- </div>
45
-
46
- <div id="chip-styling" class="doc-tab-content" style="display: none;">
47
- <div class="component-section">
48
- <h2 class="section-title">CSS Custom Properties</h2>
49
- <mu-api-table type="tokens">
50
- <mu-api-row name="--md-sys-color-secondary-container" default="#e8def8">Selected
51
- background</mu-api-row>
52
- <mu-api-row name="--md-sys-color-outline" default="#79747e">Border color</mu-api-row>
53
- </mu-api-table>
54
- </div>
55
- </div>
56
-
57
- <div id="chip-examples" class="doc-tab-content" style="display: none;">
58
- <mu-example title="Filter chips">
59
- <div slot="demo">
60
- <mu-chip selected>All</mu-chip>
61
- <mu-chip>Music</mu-chip>
62
- <mu-chip>Sports</mu-chip>
63
- <mu-chip>News</mu-chip>
64
- </div>
65
- </mu-example>
66
- </div>
67
- </div>
@@ -1,101 +0,0 @@
1
- <div class="page active">
2
- <h1 class="page-title">Code Block</h1>
3
- <p class="page-subtitle">
4
- <code>&lt;mu-code&gt;</code> displays code with syntax highlighting
5
- and a copy-to-clipboard button.
6
- </p>
7
-
8
- <mu-tabs active="0" id="codeblock-doc-tabs" style="margin-bottom: 24px;">
9
- <mu-tab>OVERVIEW</mu-tab>
10
- <mu-tab>API</mu-tab>
11
- <mu-tab>STYLING</mu-tab>
12
- <mu-tab>EXAMPLES</mu-tab>
13
- </mu-tabs>
14
-
15
- <div id="codeblock-overview" class="doc-tab-content">
16
- <mu-example title="HTML syntax highlighting">
17
- <div slot="demo">
18
- <mu-code language="html">&lt;mu-button variant="filled"&gt;Click me&lt;/mu-button&gt;
19
- &lt;mu-card variant="elevated"&gt;
20
- &lt;h2&gt;Card Title&lt;/h2&gt;
21
- &lt;p&gt;Card content goes here.&lt;/p&gt;
22
- &lt;/mu-card&gt;
23
- </mu-code>
24
- </div>
25
- </mu-example>
26
-
27
- <mu-example title="JavaScript syntax highlighting">
28
- <div slot="demo">
29
- <mu-code language="javascript">import { muConfirm } from 'microui-wc';
30
- async function deleteItem(id) {
31
- const ok = await muConfirm('Delete this?');
32
- if (ok) {
33
- await fetch(`/api/items/${id}`, { method: 'DELETE' });
34
- }
35
- }
36
- </mu-code>
37
- </div>
38
- </mu-example>
39
-
40
- <div class="component-section">
41
- <h2 class="section-title">Features</h2>
42
- <mu-stack gap="sm">
43
- <p>✓ Syntax highlighting for HTML and JavaScript</p>
44
- <p>✓ Copy-to-clipboard button with feedback</p>
45
- <p>✓ Language badge</p>
46
- <p>✓ Scrollable for long code</p>
47
- </mu-stack>
48
- </div>
49
- </div>
50
-
51
- <div id="codeblock-api" class="doc-tab-content" style="display: none;">
52
- <div class="component-section">
53
- <h2 class="section-title">Selector</h2>
54
- <div class="code-block" style="display: inline-block;">&lt;mu-code&gt;</div>
55
- </div>
56
-
57
- <div class="component-section">
58
- <h2 class="section-title">Attributes</h2>
59
- <mu-api-table type="attributes">
60
- <mu-api-row name="language" type="string" default="'html'">'html' | 'javascript' | 'js'</mu-api-row>
61
- </mu-api-table>
62
- </div>
63
- </div>
64
-
65
- <div id="codeblock-styling" class="doc-tab-content" style="display: none;">
66
- <div class="component-section">
67
- <h2 class="section-title">CSS Classes</h2>
68
- <mu-api-table type="attributes">
69
- <mu-api-row name="mu-code__header" type="class">Header with language badge and copy button</mu-api-row>
70
- <mu-api-row name="mu-code__language" type="class">Language badge</mu-api-row>
71
- <mu-api-row name="mu-code__copy" type="class">Copy button</mu-api-row>
72
- <mu-api-row name="mu-code__pre" type="class">Pre element container</mu-api-row>
73
- <mu-api-row name="mu-code__content" type="class">Code content</mu-api-row>
74
- </mu-api-table>
75
- </div>
76
-
77
- <div class="component-section">
78
- <h2 class="section-title">Syntax Colors</h2>
79
- <mu-api-table type="tokens">
80
- <mu-api-row name="mu-code__tag" type="class">HTML tag names (primary color)</mu-api-row>
81
- <mu-api-row name="mu-code__attr" type="class">Attributes (tertiary color)</mu-api-row>
82
- <mu-api-row name="mu-code__string" type="class">String values (secondary color)</mu-api-row>
83
- <mu-api-row name="mu-code__keyword" type="class">JS keywords (primary, bold)</mu-api-row>
84
- <mu-api-row name="mu-code__comment" type="class">Comments (outline, italic)</mu-api-row>
85
- </mu-api-table>
86
- </div>
87
- </div>
88
-
89
- <div id="codeblock-examples" class="doc-tab-content" style="display: none;">
90
- <mu-example title="CSS code (default highlighting)">
91
- <div slot="demo">
92
- <mu-code language="css">.mu-button {
93
- background: var(--md-sys-color-primary);
94
- color: var(--md-sys-color-on-primary);
95
- border-radius: var(--md-sys-shape-corner-full);
96
- }
97
- </mu-code>
98
- </div>
99
- </mu-example>
100
- </div>
101
- </div>
@@ -1,115 +0,0 @@
1
- <div class="page active">
2
- <h1 class="page-title">Confirm Dialog</h1>
3
- <p class="page-subtitle">
4
- <code>&lt;mu-confirm&gt;</code> is a Promise-based confirmation dialog.
5
- Use <code>muConfirm()</code> for one-line confirm prompts.
6
- </p>
7
-
8
- <mu-tabs active="0" id="confirm-doc-tabs" style="margin-bottom: 24px;">
9
- <mu-tab>OVERVIEW</mu-tab>
10
- <mu-tab>API</mu-tab>
11
- <mu-tab>STYLING</mu-tab>
12
- <mu-tab>EXAMPLES</mu-tab>
13
- </mu-tabs>
14
-
15
- <div id="confirm-overview" class="doc-tab-content">
16
- <mu-example title="Basic confirm dialog">
17
- <div slot="demo">
18
- <mu-button variant="filled" onclick="testConfirm()">Delete Item</mu-button>
19
- <script>
20
- async function testConfirm() {
21
- const { muConfirm } = await import('../dist/components/mu-confirm.js');
22
- const ok = await muConfirm('Are you sure you want to delete this item?', {
23
- title: 'Confirm Delete',
24
- confirmText: 'Delete',
25
- cancelText: 'Cancel',
26
- variant: 'danger'
27
- });
28
- if (ok) {
29
- window.muToast?.('Item deleted', 'success');
30
- }
31
- }
32
- </script>
33
- </div>
34
- <div slot="code">import { muConfirm } from 'microui-wc';
35
-
36
- const ok = await muConfirm('Delete this item?', {
37
- title: 'Confirm Delete',
38
- confirmText: 'Delete',
39
- variant: 'danger'
40
- });
41
- if (ok) deleteItem();</div>
42
- </mu-example>
43
-
44
- <div class="component-section">
45
- <h2 class="section-title">Promise-based API</h2>
46
- <p style="color: var(--md-sys-color-on-surface-variant); line-height: 1.6;">
47
- <code>muConfirm()</code> returns a Promise that resolves to <code>true</code> when confirmed,
48
- or <code>false</code> when cancelled. Use with <code>async/await</code> for clean one-liner
49
- confirmations.
50
- </p>
51
- </div>
52
- </div>
53
-
54
- <div id="confirm-api" class="doc-tab-content" style="display: none;">
55
- <div class="component-section">
56
- <h2 class="section-title">Function Signature</h2>
57
- <div class="code-block">muConfirm(message: string, options?: ConfirmOptions): Promise&lt;boolean&gt;</div>
58
- </div>
59
-
60
- <div class="component-section">
61
- <h2 class="section-title">Options</h2>
62
- <mu-api-table type="attributes">
63
- <mu-api-row name="title" type="string" default="'Confirm'">Dialog title</mu-api-row>
64
- <mu-api-row name="confirmText" type="string" default="'Confirm'">Confirm button text</mu-api-row>
65
- <mu-api-row name="cancelText" type="string" default="'Cancel'">Cancel button text</mu-api-row>
66
- <mu-api-row name="variant" type="string" default="'primary'">'primary' | 'danger' |
67
- 'warning'</mu-api-row>
68
- </mu-api-table>
69
- </div>
70
-
71
- <div class="component-section">
72
- <h2 class="section-title">Events</h2>
73
- <mu-api-table type="events">
74
- <mu-api-row name="mu-confirm" detail="void">Emitted when user confirms</mu-api-row>
75
- <mu-api-row name="mu-cancel" detail="void">Emitted when user cancels (or presses ESC)</mu-api-row>
76
- </mu-api-table>
77
- </div>
78
- </div>
79
-
80
- <div id="confirm-styling" class="doc-tab-content" style="display: none;">
81
- <div class="component-section">
82
- <h2 class="section-title">CSS Classes</h2>
83
- <mu-api-table type="attributes">
84
- <mu-api-row name="mu-confirm__overlay" type="class">Backdrop overlay</mu-api-row>
85
- <mu-api-row name="mu-confirm__dialog" type="class">Dialog container</mu-api-row>
86
- <mu-api-row name="mu-confirm__title" type="class">Title element</mu-api-row>
87
- <mu-api-row name="mu-confirm__message" type="class">Message text</mu-api-row>
88
- <mu-api-row name="mu-confirm__actions" type="class">Button container</mu-api-row>
89
- </mu-api-table>
90
- </div>
91
- </div>
92
-
93
- <div id="confirm-examples" class="doc-tab-content" style="display: none;">
94
- <mu-example title="Danger variant">
95
- <div slot="demo">
96
- <mu-button variant="danger" onclick="testDangerConfirm()">Delete Account</mu-button>
97
- <script>
98
- async function testDangerConfirm() {
99
- const { muConfirm } = await import('../dist/components/mu-confirm.js');
100
- await muConfirm('This action cannot be undone.', {
101
- title: 'Delete Account?',
102
- confirmText: 'Delete Forever',
103
- variant: 'danger'
104
- });
105
- }
106
- </script>
107
- </div>
108
- <div slot="code">await muConfirm('This action cannot be undone.', {
109
- title: 'Delete Account?',
110
- confirmText: 'Delete Forever',
111
- variant: 'danger'
112
- });</div>
113
- </mu-example>
114
- </div>
115
- </div>