@scouterna/ui-webc 2.0.0 → 2.2.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 (293) hide show
  1. package/dist/cjs/{index-D42maJcS.js → index-CtwQwhfH.js} +7 -8
  2. package/dist/cjs/index-CtwQwhfH.js.map +1 -0
  3. package/dist/cjs/index.cjs.js +1 -1
  4. package/dist/cjs/index.cjs.js.map +1 -1
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/scout-app-bar.cjs.entry.js +20 -0
  7. package/dist/cjs/scout-app-bar.entry.cjs.js.map +1 -0
  8. package/dist/cjs/scout-bottom-bar-item.cjs.entry.js +8 -2
  9. package/dist/cjs/scout-bottom-bar-item.entry.cjs.js.map +1 -1
  10. package/dist/cjs/scout-bottom-bar.cjs.entry.js +2 -2
  11. package/dist/cjs/scout-bottom-bar.entry.cjs.js.map +1 -1
  12. package/dist/cjs/scout-button.cjs.entry.js +19 -3
  13. package/dist/cjs/scout-button.entry.cjs.js.map +1 -1
  14. package/dist/cjs/scout-card.cjs.entry.js +3 -3
  15. package/dist/cjs/scout-card.entry.cjs.js.map +1 -1
  16. package/dist/cjs/scout-checkbox.scout-radio-button.entry.cjs.js.map +1 -0
  17. package/dist/cjs/scout-checkbox_2.cjs.entry.js +91 -0
  18. package/dist/cjs/scout-divider.cjs.entry.js +19 -0
  19. package/dist/cjs/scout-divider.entry.cjs.js.map +1 -0
  20. package/dist/cjs/scout-field.cjs.entry.js +2 -2
  21. package/dist/cjs/scout-field.entry.cjs.js.map +1 -1
  22. package/dist/cjs/scout-input.cjs.entry.js +3 -2
  23. package/dist/cjs/scout-input.entry.cjs.js.map +1 -1
  24. package/dist/cjs/scout-link.cjs.entry.js +64 -0
  25. package/dist/cjs/scout-link.entry.cjs.js.map +1 -0
  26. package/dist/cjs/scout-list-view-item.cjs.entry.js +63 -0
  27. package/dist/cjs/scout-list-view-item.entry.cjs.js.map +1 -0
  28. package/dist/cjs/scout-list-view-subheader.cjs.entry.js +21 -0
  29. package/dist/cjs/scout-list-view-subheader.entry.cjs.js.map +1 -0
  30. package/dist/cjs/scout-list-view.cjs.entry.js +39 -0
  31. package/dist/cjs/scout-list-view.entry.cjs.js.map +1 -0
  32. package/dist/cjs/scout-loader.cjs.entry.js +73 -0
  33. package/dist/cjs/scout-loader.entry.cjs.js.map +1 -0
  34. package/dist/cjs/scout-select.cjs.entry.js +61 -0
  35. package/dist/cjs/scout-select.entry.cjs.js.map +1 -0
  36. package/dist/cjs/scout-stack.cjs.entry.js +39 -0
  37. package/dist/cjs/scout-stack.entry.cjs.js.map +1 -0
  38. package/dist/cjs/scout-switch.cjs.entry.js +3 -3
  39. package/dist/cjs/scout-switch.entry.cjs.js.map +1 -1
  40. package/dist/cjs/ui-webc.cjs.js +3 -3
  41. package/dist/cjs/ui-webc.cjs.js.map +1 -1
  42. package/dist/collection/collection-manifest.json +13 -3
  43. package/dist/collection/components/app-bar/app-bar.css +27 -0
  44. package/dist/collection/components/app-bar/app-bar.js +44 -0
  45. package/dist/collection/components/app-bar/app-bar.js.map +1 -0
  46. package/dist/collection/components/bottom-bar/bottom-bar.css +1 -1
  47. package/dist/collection/components/bottom-bar/bottom-bar.js +1 -1
  48. package/dist/collection/components/bottom-bar-item/bottom-bar-item.css +1 -1
  49. package/dist/collection/components/bottom-bar-item/bottom-bar-item.js +46 -2
  50. package/dist/collection/components/bottom-bar-item/bottom-bar-item.js.map +1 -1
  51. package/dist/collection/components/button/button.css +40 -17
  52. package/dist/collection/components/button/button.js +97 -4
  53. package/dist/collection/components/button/button.js.map +1 -1
  54. package/dist/collection/components/card/card.css +4 -2
  55. package/dist/collection/components/card/card.js +1 -1
  56. package/dist/collection/components/checkbox/checkbox.css +2 -6
  57. package/dist/collection/components/checkbox/checkbox.js +47 -13
  58. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  59. package/dist/collection/components/divider/divider.css +5 -0
  60. package/dist/collection/components/divider/divider.js +20 -0
  61. package/dist/collection/components/divider/divider.js.map +1 -0
  62. package/dist/collection/components/field/field.css +1 -1
  63. package/dist/collection/components/field/field.js +1 -1
  64. package/dist/collection/components/input/input.css +1 -1
  65. package/dist/collection/components/input/input.js +23 -3
  66. package/dist/collection/components/input/input.js.map +1 -1
  67. package/dist/collection/components/link/link.css +30 -0
  68. package/dist/collection/components/link/link.js +207 -0
  69. package/dist/collection/components/link/link.js.map +1 -0
  70. package/dist/collection/components/list-view/list-view.css +5 -0
  71. package/dist/collection/components/list-view/list-view.js +50 -0
  72. package/dist/collection/components/list-view/list-view.js.map +1 -0
  73. package/dist/collection/components/list-view-item/list-view-item.css +71 -0
  74. package/dist/collection/components/list-view-item/list-view-item.js +282 -0
  75. package/dist/collection/components/list-view-item/list-view-item.js.map +1 -0
  76. package/dist/collection/components/list-view-subheader/list-view-subheader.css +18 -0
  77. package/dist/collection/components/list-view-subheader/list-view-subheader.js +65 -0
  78. package/dist/collection/components/list-view-subheader/list-view-subheader.js.map +1 -0
  79. package/dist/collection/components/loader/loader.css +118 -0
  80. package/dist/collection/components/loader/loader.js +111 -0
  81. package/dist/collection/components/loader/loader.js.map +1 -0
  82. package/dist/collection/components/loader/symbols/adventurer.svg +22 -0
  83. package/dist/collection/components/loader/symbols/challenger.svg +22 -0
  84. package/dist/collection/components/loader/symbols/discoverer.svg +22 -0
  85. package/dist/collection/components/loader/symbols/family-scout.svg +22 -0
  86. package/dist/collection/components/loader/symbols/rover.svg +22 -0
  87. package/dist/collection/components/loader/symbols/tracker.svg +22 -0
  88. package/dist/collection/components/radio-button/radio-button.css +73 -0
  89. package/dist/collection/components/radio-button/radio-button.js +209 -0
  90. package/dist/collection/components/radio-button/radio-button.js.map +1 -0
  91. package/dist/collection/components/select/select.css +59 -0
  92. package/dist/collection/components/select/select.js +196 -0
  93. package/dist/collection/components/select/select.js.map +1 -0
  94. package/dist/collection/components/stack/stack.css +6 -0
  95. package/dist/collection/components/stack/stack.js +96 -0
  96. package/dist/collection/components/stack/stack.js.map +1 -0
  97. package/dist/collection/components/switch/switch.js +2 -2
  98. package/dist/collection/components/switch/switch.js.map +1 -1
  99. package/dist/collection/index.js +1 -1
  100. package/dist/collection/index.js.map +1 -1
  101. package/dist/collection/utils/utils.js +1 -1
  102. package/dist/collection/utils/utils.js.map +1 -1
  103. package/dist/components/index.js +2 -2
  104. package/dist/components/index.js.map +1 -1
  105. package/dist/components/p-C2uc7k4n.js +73 -0
  106. package/dist/components/p-C2uc7k4n.js.map +1 -0
  107. package/dist/components/{p-MfRr-Vl1.js → p-DNlelzlE.js} +7 -9
  108. package/dist/components/p-DNlelzlE.js.map +1 -0
  109. package/dist/components/p-Jt6ZXtWI.js +71 -0
  110. package/dist/components/p-Jt6ZXtWI.js.map +1 -0
  111. package/dist/components/scout-app-bar.d.ts +11 -0
  112. package/dist/components/scout-app-bar.js +42 -0
  113. package/dist/components/scout-app-bar.js.map +1 -0
  114. package/dist/components/scout-bottom-bar-item.js +11 -3
  115. package/dist/components/scout-bottom-bar-item.js.map +1 -1
  116. package/dist/components/scout-bottom-bar.js +2 -2
  117. package/dist/components/scout-bottom-bar.js.map +1 -1
  118. package/dist/components/scout-button.js +25 -5
  119. package/dist/components/scout-button.js.map +1 -1
  120. package/dist/components/scout-card.js +3 -3
  121. package/dist/components/scout-card.js.map +1 -1
  122. package/dist/components/scout-checkbox.js +1 -70
  123. package/dist/components/scout-checkbox.js.map +1 -1
  124. package/dist/components/scout-divider.d.ts +11 -0
  125. package/dist/components/scout-divider.js +39 -0
  126. package/dist/components/scout-divider.js.map +1 -0
  127. package/dist/components/scout-field.js +3 -3
  128. package/dist/components/scout-field.js.map +1 -1
  129. package/dist/components/scout-input.js +5 -3
  130. package/dist/components/scout-input.js.map +1 -1
  131. package/dist/components/scout-link.d.ts +11 -0
  132. package/dist/components/scout-link.js +91 -0
  133. package/dist/components/scout-link.js.map +1 -0
  134. package/dist/components/scout-list-view-item.d.ts +11 -0
  135. package/dist/components/scout-list-view-item.js +106 -0
  136. package/dist/components/scout-list-view-item.js.map +1 -0
  137. package/dist/components/scout-list-view-subheader.d.ts +11 -0
  138. package/dist/components/scout-list-view-subheader.js +44 -0
  139. package/dist/components/scout-list-view-subheader.js.map +1 -0
  140. package/dist/components/scout-list-view.d.ts +11 -0
  141. package/dist/components/scout-list-view.js +59 -0
  142. package/dist/components/scout-list-view.js.map +1 -0
  143. package/dist/components/scout-loader.d.ts +11 -0
  144. package/dist/components/scout-loader.js +96 -0
  145. package/dist/components/scout-loader.js.map +1 -0
  146. package/dist/components/scout-radio-button.d.ts +11 -0
  147. package/dist/components/scout-radio-button.js +9 -0
  148. package/dist/components/scout-radio-button.js.map +1 -0
  149. package/dist/components/scout-select.d.ts +11 -0
  150. package/dist/components/scout-select.js +86 -0
  151. package/dist/components/scout-select.js.map +1 -0
  152. package/dist/components/scout-stack.d.ts +11 -0
  153. package/dist/components/scout-stack.js +62 -0
  154. package/dist/components/scout-stack.js.map +1 -0
  155. package/dist/components/scout-switch.js +4 -4
  156. package/dist/components/scout-switch.js.map +1 -1
  157. package/dist/custom-elements.json +1524 -10
  158. package/dist/esm/{index-DByXnE9g.js → index-Cp4mWtfs.js} +7 -9
  159. package/dist/esm/index-Cp4mWtfs.js.map +1 -0
  160. package/dist/esm/index.js +1 -1
  161. package/dist/esm/index.js.map +1 -1
  162. package/dist/esm/loader.js +3 -3
  163. package/dist/esm/scout-app-bar.entry.js +18 -0
  164. package/dist/esm/scout-app-bar.entry.js.map +1 -0
  165. package/dist/esm/scout-bottom-bar-item.entry.js +8 -2
  166. package/dist/esm/scout-bottom-bar-item.entry.js.map +1 -1
  167. package/dist/esm/scout-bottom-bar.entry.js +2 -2
  168. package/dist/esm/scout-bottom-bar.entry.js.map +1 -1
  169. package/dist/esm/scout-button.entry.js +19 -3
  170. package/dist/esm/scout-button.entry.js.map +1 -1
  171. package/dist/esm/scout-card.entry.js +3 -3
  172. package/dist/esm/scout-card.entry.js.map +1 -1
  173. package/dist/esm/scout-checkbox.scout-radio-button.entry.js.map +1 -0
  174. package/dist/esm/scout-checkbox_2.entry.js +88 -0
  175. package/dist/esm/scout-divider.entry.js +17 -0
  176. package/dist/esm/scout-divider.entry.js.map +1 -0
  177. package/dist/esm/scout-field.entry.js +2 -2
  178. package/dist/esm/scout-field.entry.js.map +1 -1
  179. package/dist/esm/scout-input.entry.js +3 -2
  180. package/dist/esm/scout-input.entry.js.map +1 -1
  181. package/dist/esm/scout-link.entry.js +62 -0
  182. package/dist/esm/scout-link.entry.js.map +1 -0
  183. package/dist/esm/scout-list-view-item.entry.js +61 -0
  184. package/dist/esm/scout-list-view-item.entry.js.map +1 -0
  185. package/dist/esm/scout-list-view-subheader.entry.js +19 -0
  186. package/dist/esm/scout-list-view-subheader.entry.js.map +1 -0
  187. package/dist/esm/scout-list-view.entry.js +37 -0
  188. package/dist/esm/scout-list-view.entry.js.map +1 -0
  189. package/dist/esm/scout-loader.entry.js +71 -0
  190. package/dist/esm/scout-loader.entry.js.map +1 -0
  191. package/dist/esm/scout-select.entry.js +59 -0
  192. package/dist/esm/scout-select.entry.js.map +1 -0
  193. package/dist/esm/scout-stack.entry.js +37 -0
  194. package/dist/esm/scout-stack.entry.js.map +1 -0
  195. package/dist/esm/scout-switch.entry.js +3 -3
  196. package/dist/esm/scout-switch.entry.js.map +1 -1
  197. package/dist/esm/ui-webc.js +4 -4
  198. package/dist/esm/ui-webc.js.map +1 -1
  199. package/dist/types/components/app-bar/app-bar.d.ts +4 -0
  200. package/dist/types/components/bottom-bar-item/bottom-bar-item.d.ts +2 -0
  201. package/dist/types/components/button/button.d.ts +5 -1
  202. package/dist/types/components/checkbox/checkbox.d.ts +4 -2
  203. package/dist/types/components/divider/divider.d.ts +3 -0
  204. package/dist/types/components/input/input.d.ts +1 -0
  205. package/dist/types/components/link/link.d.ts +39 -0
  206. package/dist/types/components/list-view/list-view.d.ts +8 -0
  207. package/dist/types/components/list-view-item/list-view-item.d.ts +19 -0
  208. package/dist/types/components/list-view-subheader/list-view-subheader.d.ts +5 -0
  209. package/dist/types/components/loader/loader.d.ts +15 -0
  210. package/dist/types/components/radio-button/radio-button.d.ts +24 -0
  211. package/dist/types/components/select/select.d.ts +32 -0
  212. package/dist/types/components/stack/stack.d.ts +22 -0
  213. package/dist/types/components.d.ts +427 -4
  214. package/dist/types/index.d.ts +2 -2
  215. package/dist/types/stencil-public-runtime.d.ts +20 -11
  216. package/dist/ui-webc/index.esm.js.map +1 -1
  217. package/dist/ui-webc/{p-2b434594.entry.js → p-0b42e59f.entry.js} +2 -2
  218. package/dist/ui-webc/{p-2b434594.entry.js.map → p-0b42e59f.entry.js.map} +1 -1
  219. package/dist/ui-webc/p-29689fe2.entry.js +2 -0
  220. package/dist/ui-webc/p-29689fe2.entry.js.map +1 -0
  221. package/dist/ui-webc/p-33010b09.entry.js +2 -0
  222. package/dist/ui-webc/p-33010b09.entry.js.map +1 -0
  223. package/dist/ui-webc/p-3b426423.entry.js +2 -0
  224. package/dist/ui-webc/p-3b426423.entry.js.map +1 -0
  225. package/dist/ui-webc/p-3e34c267.entry.js +2 -0
  226. package/dist/ui-webc/p-3e34c267.entry.js.map +1 -0
  227. package/dist/ui-webc/{p-7245a55a.entry.js → p-4c70c251.entry.js} +2 -2
  228. package/dist/ui-webc/p-5d73566e.entry.js +2 -0
  229. package/dist/ui-webc/p-5d73566e.entry.js.map +1 -0
  230. package/dist/ui-webc/p-6ef8c777.entry.js +2 -0
  231. package/dist/ui-webc/p-6ef8c777.entry.js.map +1 -0
  232. package/dist/ui-webc/p-714363c8.entry.js +2 -0
  233. package/dist/ui-webc/p-714363c8.entry.js.map +1 -0
  234. package/dist/ui-webc/p-7f8dc0da.entry.js +2 -0
  235. package/dist/ui-webc/{p-383736c1.entry.js.map → p-7f8dc0da.entry.js.map} +1 -1
  236. package/dist/ui-webc/p-85e7b20f.entry.js +2 -0
  237. package/dist/ui-webc/p-85e7b20f.entry.js.map +1 -0
  238. package/dist/ui-webc/p-93ee0d2c.entry.js +2 -0
  239. package/dist/ui-webc/p-93ee0d2c.entry.js.map +1 -0
  240. package/dist/ui-webc/p-9f80fed6.entry.js +2 -0
  241. package/dist/ui-webc/p-Cp4mWtfs.js +3 -0
  242. package/dist/ui-webc/p-Cp4mWtfs.js.map +1 -0
  243. package/dist/ui-webc/p-afa38195.entry.js +2 -0
  244. package/dist/ui-webc/p-afa38195.entry.js.map +1 -0
  245. package/dist/ui-webc/p-b8715dc5.entry.js +2 -0
  246. package/dist/ui-webc/p-b8715dc5.entry.js.map +1 -0
  247. package/dist/ui-webc/p-e4070682.entry.js +2 -0
  248. package/dist/ui-webc/p-e4070682.entry.js.map +1 -0
  249. package/dist/ui-webc/p-efab02f0.entry.js +2 -0
  250. package/dist/ui-webc/p-efab02f0.entry.js.map +1 -0
  251. package/dist/ui-webc/scout-app-bar.entry.esm.js.map +1 -0
  252. package/dist/ui-webc/scout-bottom-bar-item.entry.esm.js.map +1 -1
  253. package/dist/ui-webc/scout-bottom-bar.entry.esm.js.map +1 -1
  254. package/dist/ui-webc/scout-button.entry.esm.js.map +1 -1
  255. package/dist/ui-webc/scout-card.entry.esm.js.map +1 -1
  256. package/dist/ui-webc/scout-checkbox.scout-radio-button.entry.esm.js.map +1 -0
  257. package/dist/ui-webc/scout-divider.entry.esm.js.map +1 -0
  258. package/dist/ui-webc/scout-field.entry.esm.js.map +1 -1
  259. package/dist/ui-webc/scout-input.entry.esm.js.map +1 -1
  260. package/dist/ui-webc/scout-link.entry.esm.js.map +1 -0
  261. package/dist/ui-webc/scout-list-view-item.entry.esm.js.map +1 -0
  262. package/dist/ui-webc/scout-list-view-subheader.entry.esm.js.map +1 -0
  263. package/dist/ui-webc/scout-list-view.entry.esm.js.map +1 -0
  264. package/dist/ui-webc/scout-loader.entry.esm.js.map +1 -0
  265. package/dist/ui-webc/scout-select.entry.esm.js.map +1 -0
  266. package/dist/ui-webc/scout-stack.entry.esm.js.map +1 -0
  267. package/dist/ui-webc/scout-switch.entry.esm.js.map +1 -1
  268. package/dist/ui-webc/ui-webc.css +2 -13
  269. package/dist/ui-webc/ui-webc.esm.js +1 -1
  270. package/dist/ui-webc/ui-webc.esm.js.map +1 -1
  271. package/package.json +9 -9
  272. package/dist/cjs/index-D42maJcS.js.map +0 -1
  273. package/dist/cjs/scout-checkbox.cjs.entry.js +0 -53
  274. package/dist/cjs/scout-checkbox.entry.cjs.js.map +0 -1
  275. package/dist/components/p-MfRr-Vl1.js.map +0 -1
  276. package/dist/esm/index-DByXnE9g.js.map +0 -1
  277. package/dist/esm/scout-checkbox.entry.js +0 -51
  278. package/dist/esm/scout-checkbox.entry.js.map +0 -1
  279. package/dist/ui-webc/p-24632b65.entry.js +0 -2
  280. package/dist/ui-webc/p-24632b65.entry.js.map +0 -1
  281. package/dist/ui-webc/p-383736c1.entry.js +0 -2
  282. package/dist/ui-webc/p-99329c64.entry.js +0 -2
  283. package/dist/ui-webc/p-99329c64.entry.js.map +0 -1
  284. package/dist/ui-webc/p-9b7c270d.entry.js +0 -2
  285. package/dist/ui-webc/p-9b7c270d.entry.js.map +0 -1
  286. package/dist/ui-webc/p-DByXnE9g.js +0 -3
  287. package/dist/ui-webc/p-DByXnE9g.js.map +0 -1
  288. package/dist/ui-webc/p-c0c3a4af.entry.js +0 -2
  289. package/dist/ui-webc/p-e7602729.entry.js +0 -2
  290. package/dist/ui-webc/p-e7602729.entry.js.map +0 -1
  291. package/dist/ui-webc/scout-checkbox.entry.esm.js.map +0 -1
  292. /package/dist/ui-webc/{p-7245a55a.entry.js.map → p-4c70c251.entry.js.map} +0 -0
  293. /package/dist/ui-webc/{p-c0c3a4af.entry.js.map → p-9f80fed6.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"scout-switch.entry.cjs.js","sources":["src/components/switch/switch.css?tag=scout-switch&encapsulation=shadow","src/components/switch/switch.tsx"],"sourcesContent":[".switch {\n width: var(--spacing-12);\n height: var(--spacing-6);\n appearance: none;\n -webkit-appearance: none;\n border-radius: var(--spacing-8);\n background-color: var(--color-text-brand-inverse);\n border: 1px solid var(--color-gray-300);\n position: relative;\n display: flex;\n align-content: center;\n justify-content: center;\n transition-property: border-color;\n transition-duration: 0.3s;\n transition-timing-function: ease-in-out;\n cursor: pointer;\n --switch-ball-size: calc((var(--spacing-6) - var(--spacing-1) / 2) + 1px);\n}\n\n.switch:hover {\n transition-property: none;\n border-color: var(--color-gray-400);\n background-color: var(--color-background-brand-subtle-hovered);\n}\n\n.switch:active {\n background-color: var(--color-background-brand-subtle-pressed);\n}\n\n.switch:checked {\n border-color: var(--color-background-brand-base);\n}\n\n.switch:hover::before {\n background-color: var(--color-gray-400);\n}\n\n.switch::before {\n content: \"\";\n background-color: var(--color-gray-300);\n width: var(--switch-ball-size);\n height: var(--switch-ball-size);\n border-radius: 50%;\n position: absolute;\n left: -1px;\n right: 0;\n transition-duration: 0.3s;\n transition-property: left, right;\n}\n.switch:checked::before {\n content: \"\";\n background-color: var(--color-background-brand-base);\n left: calc(100% - calc(var(--spacing-6) - var(--spacing-1) / 2) + 1px);\n}\n\n.switch:disabled {\n pointer-events: none;\n background-color: var(--color-gray-100);\n border-color: var(--color-gray-100);\n}\n\n.switch:disabled::before {\n background-color: var(--color-gray-300);\n}\n\nlabel {\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n font: var(--type-label-base);\n color: var(--color-text-base);\n}\n\n.inlineDivider {\n width: var(--spacing-2);\n}\n","import {\n Component,\n Event,\n type EventEmitter,\n h,\n Prop,\n State,\n} from \"@stencil/core\";\n\n@Component({\n tag: \"scout-switch\",\n styleUrl: \"switch.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class ScoutSwitch {\n /**\n * Indicates whether the switch is toggled on or off.\n */\n @Prop() toggled: boolean = false;\n\n @Prop() disabled: boolean = false;\n\n /**\n * Use this prop if you need to connect your switch with another element describing its use, other than the property label.\n */\n @Prop() ariaLabelledby: string;\n\n @Prop() label: string;\n\n @State() ariaId: string;\n\n @Event() scoutSwitchToggled: EventEmitter<{\n toggled: boolean;\n element: HTMLInputElement;\n }>;\n /**\n * Internal event used for form field association.\n */\n @Event() _fieldId: EventEmitter<string>;\n\n componentWillLoad(): Promise<void> | void {\n this.ariaId = `_${Math.random().toString(36).substring(2, 9)}`;\n this._fieldId.emit(this.ariaId);\n }\n\n onClick(event: Event) {\n const switchElement = event.target as HTMLInputElement;\n\n this.scoutSwitchToggled.emit({\n toggled: switchElement.checked,\n element: switchElement,\n });\n }\n\n render() {\n const Tag = this.label && this.label.length ? \"label\" : \"div\";\n return (\n <Tag>\n {this.label}\n <span class=\"inlineDivider\"></span>\n <input\n class=\"switch\"\n onChange={(event) => this.onClick(event)}\n type=\"checkbox\"\n id={this.ariaId}\n aria-labelledby={this.ariaLabelledby}\n aria-disabled={this.disabled}\n disabled={this.disabled}\n checked={this.toggled}\n />\n </Tag>\n );\n }\n}\n"],"names":["h"],"mappings":";;;;AAAA,MAAM,SAAS,GAAG,omDAAomD;;MCgBzmD,WAAW,GAAA,MAAA;;;;;;AACtB;;AAEG;IACK,OAAO,GAAY,KAAK;IAExB,QAAQ,GAAY,KAAK;AAEjC;;AAEG;AACK,IAAA,cAAc;AAEd,IAAA,KAAK;AAEJ,IAAA,MAAM;AAEN,IAAA,kBAAkB;AAI3B;;AAEG;AACM,IAAA,QAAQ;IAEjB,iBAAiB,GAAA;QACf,IAAI,CAAC,MAAM,GAAG,CAAA,CAAA,EAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE;QAC9D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;;AAGjC,IAAA,OAAO,CAAC,KAAY,EAAA;AAClB,QAAA,MAAM,aAAa,GAAG,KAAK,CAAC,MAA0B;AAEtD,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,aAAa,CAAC,OAAO;AAC9B,YAAA,OAAO,EAAE,aAAa;AACvB,SAAA,CAAC;;IAGJ,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,GAAG,KAAK;QAC7D,QACEA,QAAC,GAAG,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACD,IAAI,CAAC,KAAK,EACXA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,EAAQ,CAAA,EACnCA,OACE,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,QAAQ,EACd,QAAQ,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EACxC,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,IAAI,CAAC,MAAM,EAAA,iBAAA,EACE,IAAI,CAAC,cAAc,mBACrB,IAAI,CAAC,QAAQ,EAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAA,CACrB,CACE;;;;;;;;"}
1
+ {"version":3,"file":"scout-switch.entry.cjs.js","sources":["src/components/switch/switch.css?tag=scout-switch&encapsulation=shadow","src/components/switch/switch.tsx"],"sourcesContent":[".switch {\n width: var(--spacing-12);\n height: var(--spacing-6);\n appearance: none;\n -webkit-appearance: none;\n border-radius: var(--spacing-8);\n background-color: var(--color-text-brand-inverse);\n border: 1px solid var(--color-gray-300);\n position: relative;\n display: flex;\n align-content: center;\n justify-content: center;\n transition-property: border-color;\n transition-duration: 0.3s;\n transition-timing-function: ease-in-out;\n cursor: pointer;\n --switch-ball-size: calc((var(--spacing-6) - var(--spacing-1) / 2) + 1px);\n}\n\n.switch:hover {\n transition-property: none;\n border-color: var(--color-gray-400);\n background-color: var(--color-background-brand-subtle-hovered);\n}\n\n.switch:active {\n background-color: var(--color-background-brand-subtle-pressed);\n}\n\n.switch:checked {\n border-color: var(--color-background-brand-base);\n}\n\n.switch:hover::before {\n background-color: var(--color-gray-400);\n}\n\n.switch::before {\n content: \"\";\n background-color: var(--color-gray-300);\n width: var(--switch-ball-size);\n height: var(--switch-ball-size);\n border-radius: 50%;\n position: absolute;\n left: -1px;\n right: 0;\n transition-duration: 0.3s;\n transition-property: left, right;\n}\n.switch:checked::before {\n content: \"\";\n background-color: var(--color-background-brand-base);\n left: calc(100% - calc(var(--spacing-6) - var(--spacing-1) / 2) + 1px);\n}\n\n.switch:disabled {\n pointer-events: none;\n background-color: var(--color-gray-100);\n border-color: var(--color-gray-100);\n}\n\n.switch:disabled::before {\n background-color: var(--color-gray-300);\n}\n\nlabel {\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n font: var(--type-label-base);\n color: var(--color-text-base);\n}\n\n.inlineDivider {\n width: var(--spacing-2);\n}\n","import {\n Component,\n Event,\n type EventEmitter,\n h,\n Prop,\n State,\n} from \"@stencil/core\";\n\n@Component({\n tag: \"scout-switch\",\n styleUrl: \"switch.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class ScoutSwitch {\n /**\n * Indicates whether the switch is toggled on or off.\n */\n @Prop() toggled: boolean = false;\n\n @Prop() disabled: boolean = false;\n\n /**\n * Use this prop if you need to connect your switch with another element describing its use, other than the property label.\n */\n @Prop() ariaLabelledby: string;\n\n @Prop() label: string;\n\n @State() ariaId: string;\n\n @Event() scoutSwitchToggled: EventEmitter<{\n toggled: boolean;\n element: HTMLInputElement;\n }>;\n /**\n * Internal event used for form field association.\n */\n @Event() _fieldId: EventEmitter<string>;\n\n componentWillLoad(): Promise<void> | void {\n this.ariaId = `_${Math.random().toString(36).substring(2, 9)}`;\n this._fieldId.emit(this.ariaId);\n }\n\n onClick(event: Event) {\n const switchElement = event.target as HTMLInputElement;\n\n this.scoutSwitchToggled.emit({\n toggled: switchElement.checked,\n element: switchElement,\n });\n }\n\n render() {\n const Tag = this.label?.length ? \"label\" : \"div\";\n return (\n <Tag>\n {this.label}\n <span class=\"inlineDivider\"></span>\n <input\n class=\"switch\"\n onChange={(event) => this.onClick(event)}\n type=\"checkbox\"\n id={this.ariaId}\n aria-labelledby={this.ariaLabelledby}\n aria-disabled={this.disabled}\n disabled={this.disabled}\n checked={this.toggled}\n />\n </Tag>\n );\n }\n}\n"],"names":["h"],"mappings":";;;;AAAA,MAAM,SAAS,GAAG,omDAAomD;;MCgBzmD,WAAW,GAAA,MAAA;;;;;;AACtB;;AAEG;IACK,OAAO,GAAY,KAAK;IAExB,QAAQ,GAAY,KAAK;AAEjC;;AAEG;AACK,IAAA,cAAc;AAEd,IAAA,KAAK;AAEJ,IAAA,MAAM;AAEN,IAAA,kBAAkB;AAI3B;;AAEG;AACM,IAAA,QAAQ;IAEjB,iBAAiB,GAAA;QACf,IAAI,CAAC,MAAM,GAAG,CAAA,CAAA,EAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE;QAC9D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;;AAGjC,IAAA,OAAO,CAAC,KAAY,EAAA;AAClB,QAAA,MAAM,aAAa,GAAG,KAAK,CAAC,MAA0B;AAEtD,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,aAAa,CAAC,OAAO;AAC9B,YAAA,OAAO,EAAE,aAAa;AACvB,SAAA,CAAC;;IAGJ,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK;QAChD,QACEA,QAAC,GAAG,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACD,IAAI,CAAC,KAAK,EACXA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,EAAQ,CAAA,EACnCA,OACE,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,QAAQ,EACd,QAAQ,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EACxC,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,IAAI,CAAC,MAAM,EAAA,iBAAA,EACE,IAAI,CAAC,cAAc,mBACrB,IAAI,CAAC,QAAQ,EAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAA,CACrB,CACE;;;;;;;;"}
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D42maJcS.js');
3
+ var index = require('./index-CtwQwhfH.js');
4
4
 
5
5
  var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
6
6
  /*
7
- Stencil Client Patch Browser v4.38.1 | MIT Licensed | https://stenciljs.com
7
+ Stencil Client Patch Browser v4.38.3 | MIT Licensed | https://stenciljs.com
8
8
  */
9
9
 
10
10
  var patchBrowser = () => {
@@ -18,7 +18,7 @@ var patchBrowser = () => {
18
18
 
19
19
  patchBrowser().then(async (options) => {
20
20
  await index.globalScripts();
21
- return index.bootstrapLazy([["scout-bottom-bar.cjs",[[273,"scout-bottom-bar"]]],["scout-bottom-bar-item.cjs",[[273,"scout-bottom-bar-item",{"type":[1],"href":[1],"icon":[1],"label":[1],"active":[4]}]]],["scout-button.cjs",[[273,"scout-button",{"type":[1],"variant":[1],"icon":[1]}]]],["scout-card.cjs",[[273,"scout-card"]]],["scout-checkbox.cjs",[[258,"scout-checkbox",{"checked":[4],"disabled":[4],"ariaLabelledby":[1,"aria-labelledby"],"label":[1],"ariaId":[32]}]]],["scout-field.cjs",[[262,"scout-field",{"label":[1],"helpText":[1,"help-text"],"inputId":[32],"errorText":[32],"errorHidden":[32]},[[0,"_fieldId","catchFieldId"],[0,"scoutInputChange","handleInputChange"],[0,"scoutBlur","handleValidationBlur"]]]]],["scout-input.cjs",[[258,"scout-input",{"type":[1],"inputmode":[1],"pattern":[1],"value":[1],"disabled":[4],"validate":[16],"ariaId":[32]}]]],["scout-switch.cjs",[[273,"scout-switch",{"toggled":[4],"disabled":[4],"ariaLabelledby":[1,"aria-labelledby"],"label":[1],"ariaId":[32]}]]]], options);
21
+ return index.bootstrapLazy([["scout-list-view-item.cjs",[[785,"scout-list-view-item",{"icon":[1],"primary":[1],"secondary":[1],"type":[1],"href":[1],"target":[1],"rel":[1],"name":[1],"value":[1],"checked":[4]}]]],["scout-app-bar.cjs",[[785,"scout-app-bar",{"titleText":[1,"title-text"]}]]],["scout-bottom-bar.cjs",[[273,"scout-bottom-bar"]]],["scout-bottom-bar-item.cjs",[[785,"scout-bottom-bar-item",{"type":[1],"href":[1],"target":[1],"rel":[1],"icon":[1],"label":[1],"active":[4]}]]],["scout-button.cjs",[[785,"scout-button",{"type":[1],"href":[1],"target":[1],"rel":[1],"variant":[1],"icon":[1],"iconOnly":[4,"icon-only"]}]]],["scout-card.cjs",[[273,"scout-card"]]],["scout-divider.cjs",[[273,"scout-divider"]]],["scout-field.cjs",[[774,"scout-field",{"label":[1],"helpText":[1,"help-text"],"inputId":[32],"errorText":[32],"errorHidden":[32]},[[0,"_fieldId","catchFieldId"],[0,"scoutInputChange","handleInputChange"],[0,"scoutBlur","handleValidationBlur"]]]]],["scout-input.cjs",[[770,"scout-input",{"type":[1],"inputmode":[1],"pattern":[1],"value":[1],"name":[1],"disabled":[4],"validate":[16],"ariaId":[32]}]]],["scout-link.cjs",[[785,"scout-link",{"href":[1],"label":[1],"rel":[1],"linkAriaLabel":[1,"link-aria-label"],"type":[1],"target":[1]}]]],["scout-list-view.cjs",[[273,"scout-list-view",null,[[0,"scoutChecked","onScoutChecked"]]]]],["scout-list-view-subheader.cjs",[[785,"scout-list-view-subheader",{"text":[1],"headingLevel":[1,"heading-level"]}]]],["scout-loader.cjs",[[769,"scout-loader",{"text":[1],"size":[1]}]]],["scout-select.cjs",[[774,"scout-select",{"value":[1],"disabled":[4],"name":[1],"validate":[16],"ariaId":[32]}]]],["scout-stack.cjs",[[785,"scout-stack",{"direction":[1],"gapSize":[1,"gap-size"]}]]],["scout-switch.cjs",[[785,"scout-switch",{"toggled":[4],"disabled":[4],"ariaLabelledby":[1,"aria-labelledby"],"label":[1],"ariaId":[32]}]]],["scout-checkbox_2.cjs",[[770,"scout-checkbox",{"checked":[4],"disabled":[4],"ariaLabelledby":[1,"aria-labelledby"],"label":[1],"value":[1],"name":[1],"ariaId":[32]}],[770,"scout-radio-button",{"checked":[4],"disabled":[4],"ariaLabelledby":[1,"aria-labelledby"],"label":[1],"value":[1],"name":[1],"ariaId":[32]}]]]], options);
22
22
  });
23
23
 
24
24
  exports.setNonce = index.setNonce;
@@ -1 +1 @@
1
- {"version":3,"file":"ui-webc.cjs.js","sources":["../../node_modules/.pnpm/@stencil+core@4.38.1/node_modules/@stencil/core/internal/client/patch-browser.js","@lazy-browser-entrypoint?app-data=conditional"],"sourcesContent":["/*\n Stencil Client Patch Browser v4.38.1 | MIT Licensed | https://stenciljs.com\n */\n\n// src/client/client-patch-browser.ts\nimport { BUILD, NAMESPACE } from \"@stencil/core/internal/app-data\";\nimport { consoleDevInfo, H, promiseResolve, win } from \"@stencil/core\";\nvar patchBrowser = () => {\n if (BUILD.isDev && !BUILD.isTesting) {\n consoleDevInfo(\"Running in development mode.\");\n }\n if (BUILD.cloneNodeFix) {\n patchCloneNodeFix(H.prototype);\n }\n const scriptElm = BUILD.scriptDataOpts ? win.document && Array.from(win.document.querySelectorAll(\"script\")).find(\n (s) => new RegExp(`/${NAMESPACE}(\\\\.esm)?\\\\.js($|\\\\?|#)`).test(s.src) || s.getAttribute(\"data-stencil-namespace\") === NAMESPACE\n ) : null;\n const importMeta = import.meta.url;\n const opts = BUILD.scriptDataOpts ? (scriptElm || {})[\"data-opts\"] || {} : {};\n if (importMeta !== \"\") {\n opts.resourcesUrl = new URL(\".\", importMeta).href;\n }\n return promiseResolve(opts);\n};\nvar patchCloneNodeFix = (HTMLElementPrototype) => {\n const nativeCloneNodeFn = HTMLElementPrototype.cloneNode;\n HTMLElementPrototype.cloneNode = function(deep) {\n if (this.nodeName === \"TEMPLATE\") {\n return nativeCloneNodeFn.call(this, deep);\n }\n const clonedNode = nativeCloneNodeFn.call(this, false);\n const srcChildNodes = this.childNodes;\n if (deep) {\n for (let i = 0; i < srcChildNodes.length; i++) {\n if (srcChildNodes[i].nodeType !== 2) {\n clonedNode.appendChild(srcChildNodes[i].cloneNode(true));\n }\n }\n }\n return clonedNode;\n };\n};\nexport {\n patchBrowser\n};\n","export { setNonce } from '@stencil/core';\nimport { bootstrapLazy } from '@stencil/core';\nimport { patchBrowser } from '@stencil/core/internal/client/patch-browser';\nimport { globalScripts } from '@stencil/core/internal/app-globals';\npatchBrowser().then(async (options) => {\n await globalScripts();\n return bootstrapLazy([/*!__STENCIL_LAZY_DATA__*/], options);\n});\n"],"names":["promiseResolve","globalScripts","bootstrapLazy"],"mappings":";;;;;AAAA;AACA;AACA;;AAKA,IAAI,YAAY,GAAG,MAAM;AAUzB,EAAE,MAAM,UAAU,GAAG,gQAAe;AACpC,EAAE,MAAM,IAAI,GAAiE,EAAE;AAC/E,EAAE,IAAI,UAAU,KAAK,EAAE,EAAE;AACzB,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,IAAI;AACrD;AACA,EAAE,OAAOA,oBAAc,CAAC,IAAI,CAAC;AAC7B,CAAC;;ACnBD,YAAY,EAAE,CAAC,IAAI,CAAC,OAAO,OAAO,KAAK;AACvC,EAAE,MAAMC,mBAAa,EAAE;AACvB,EAAE,OAAOC,mBAAa,CAAC,4BAA4B,EAAE,OAAO,CAAC;AAC7D,CAAC,CAAC;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"ui-webc.cjs.js","sources":["../../node_modules/.pnpm/@stencil+core@4.38.3/node_modules/@stencil/core/internal/client/patch-browser.js","@lazy-browser-entrypoint?app-data=conditional"],"sourcesContent":["/*\n Stencil Client Patch Browser v4.38.3 | MIT Licensed | https://stenciljs.com\n */\n\n// src/client/client-patch-browser.ts\nimport { BUILD, NAMESPACE } from \"@stencil/core/internal/app-data\";\nimport { consoleDevInfo, H, promiseResolve, win } from \"@stencil/core\";\nvar patchBrowser = () => {\n if (BUILD.isDev && !BUILD.isTesting) {\n consoleDevInfo(\"Running in development mode.\");\n }\n if (BUILD.cloneNodeFix) {\n patchCloneNodeFix(H.prototype);\n }\n const scriptElm = BUILD.scriptDataOpts ? win.document && Array.from(win.document.querySelectorAll(\"script\")).find(\n (s) => new RegExp(`/${NAMESPACE}(\\\\.esm)?\\\\.js($|\\\\?|#)`).test(s.src) || s.getAttribute(\"data-stencil-namespace\") === NAMESPACE\n ) : null;\n const importMeta = import.meta.url;\n const opts = BUILD.scriptDataOpts ? (scriptElm || {})[\"data-opts\"] || {} : {};\n if (importMeta !== \"\") {\n opts.resourcesUrl = new URL(\".\", importMeta).href;\n }\n return promiseResolve(opts);\n};\nvar patchCloneNodeFix = (HTMLElementPrototype) => {\n const nativeCloneNodeFn = HTMLElementPrototype.cloneNode;\n HTMLElementPrototype.cloneNode = function(deep) {\n if (this.nodeName === \"TEMPLATE\") {\n return nativeCloneNodeFn.call(this, deep);\n }\n const clonedNode = nativeCloneNodeFn.call(this, false);\n const srcChildNodes = this.childNodes;\n if (deep) {\n for (let i = 0; i < srcChildNodes.length; i++) {\n if (srcChildNodes[i].nodeType !== 2) {\n clonedNode.appendChild(srcChildNodes[i].cloneNode(true));\n }\n }\n }\n return clonedNode;\n };\n};\nexport {\n patchBrowser\n};\n","export { setNonce } from '@stencil/core';\nimport { bootstrapLazy } from '@stencil/core';\nimport { patchBrowser } from '@stencil/core/internal/client/patch-browser';\nimport { globalScripts } from '@stencil/core/internal/app-globals';\npatchBrowser().then(async (options) => {\n await globalScripts();\n return bootstrapLazy([/*!__STENCIL_LAZY_DATA__*/], options);\n});\n"],"names":["promiseResolve","globalScripts","bootstrapLazy"],"mappings":";;;;;AAAA;AACA;AACA;;AAKA,IAAI,YAAY,GAAG,MAAM;AAUzB,EAAE,MAAM,UAAU,GAAG,gQAAe;AACpC,EAAE,MAAM,IAAI,GAAiE,EAAE;AAC/E,EAAE,IAAI,UAAU,KAAK,EAAE,EAAE;AACzB,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,IAAI;AACrD;AACA,EAAE,OAAOA,oBAAc,CAAC,IAAI,CAAC;AAC7B,CAAC;;ACnBD,YAAY,EAAE,CAAC,IAAI,CAAC,OAAO,OAAO,KAAK;AACvC,EAAE,MAAMC,mBAAa,EAAE;AACvB,EAAE,OAAOC,mBAAa,CAAC,4BAA4B,EAAE,OAAO,CAAC;AAC7D,CAAC,CAAC;;;;","x_google_ignoreList":[0]}
@@ -1,17 +1,27 @@
1
1
  {
2
2
  "entries": [
3
+ "components/app-bar/app-bar.js",
4
+ "components/bottom-bar/bottom-bar.js",
3
5
  "components/bottom-bar-item/bottom-bar-item.js",
4
6
  "components/button/button.js",
5
- "components/input/input.js",
6
- "components/bottom-bar/bottom-bar.js",
7
7
  "components/card/card.js",
8
8
  "components/checkbox/checkbox.js",
9
+ "components/divider/divider.js",
9
10
  "components/field/field.js",
11
+ "components/input/input.js",
12
+ "components/link/link.js",
13
+ "components/list-view/list-view.js",
14
+ "components/list-view-item/list-view-item.js",
15
+ "components/list-view-subheader/list-view-subheader.js",
16
+ "components/loader/loader.js",
17
+ "components/radio-button/radio-button.js",
18
+ "components/select/select.js",
19
+ "components/stack/stack.js",
10
20
  "components/switch/switch.js"
11
21
  ],
12
22
  "compiler": {
13
23
  "name": "@stencil/core",
14
- "version": "4.38.1",
24
+ "version": "4.38.3",
15
25
  "typescriptVersion": "5.9.3"
16
26
  },
17
27
  "collections": [],
@@ -0,0 +1,27 @@
1
+ :host {
2
+ display: flex;
3
+ width: 100%;
4
+ }
5
+
6
+ ::slotted(scout-button) {
7
+ height: 100%;
8
+ }
9
+
10
+ .container {
11
+ display: flex;
12
+ flex: 1;
13
+ height: var(--spacing-14);
14
+ background-color: var(--color-white);
15
+ border-bottom: 1px solid var(--color-neutral-100);
16
+ color: var(--color-text-brand-base);
17
+ padding: var(--spacing-1);
18
+ }
19
+
20
+ .title {
21
+ flex: 1;
22
+ display: flex;
23
+ align-items: center;
24
+ font: var(--type-body-lg);
25
+ font-weight: 500;
26
+ padding: 0 var(--spacing-2);
27
+ }
@@ -0,0 +1,44 @@
1
+ import { h } from "@stencil/core";
2
+ export class ScoutAppBar {
3
+ titleText;
4
+ render() {
5
+ return (h("header", { key: '041b27816bb20c69b19b27ef90515c2cec8f2131', class: "container" }, h("slot", { key: '0171b39a13600bc784df175ad4499891415a58b2', name: "prefix" }), h("div", { key: '43c4905c019583a11ae290e4c049f1ccb7c08242', class: "title" }, this.titleText), h("slot", { key: '26741e8d7ec8559a720dd52a152d939ef857e2b5', name: "suffix" })));
6
+ }
7
+ static get is() { return "scout-app-bar"; }
8
+ static get encapsulation() { return "shadow"; }
9
+ static get delegatesFocus() { return true; }
10
+ static get originalStyleUrls() {
11
+ return {
12
+ "$": ["app-bar.css"]
13
+ };
14
+ }
15
+ static get styleUrls() {
16
+ return {
17
+ "$": ["app-bar.css"]
18
+ };
19
+ }
20
+ static get properties() {
21
+ return {
22
+ "titleText": {
23
+ "type": "string",
24
+ "mutable": false,
25
+ "complexType": {
26
+ "original": "string",
27
+ "resolved": "string",
28
+ "references": {}
29
+ },
30
+ "required": false,
31
+ "optional": true,
32
+ "docs": {
33
+ "tags": [],
34
+ "text": ""
35
+ },
36
+ "getter": false,
37
+ "setter": false,
38
+ "reflect": false,
39
+ "attribute": "title-text"
40
+ }
41
+ };
42
+ }
43
+ }
44
+ //# sourceMappingURL=app-bar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-bar.js","sourceRoot":"","sources":["../../../src/components/app-bar/app-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AASnD,MAAM,OAAO,WAAW;IACd,SAAS,CAAU;IAE3B,MAAM;QACJ,OAAO,CACL,+DAAQ,KAAK,EAAC,WAAW;YACvB,6DAAM,IAAI,EAAC,QAAQ,GAAG;YACtB,4DAAK,KAAK,EAAC,OAAO,IAAE,IAAI,CAAC,SAAS,CAAO;YACzC,6DAAM,IAAI,EAAC,QAAQ,GAAG,CACf,CACV,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, h, Prop } from \"@stencil/core\";\n\n@Component({\n tag: \"scout-app-bar\",\n styleUrl: \"app-bar.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class ScoutAppBar {\n @Prop() titleText?: string;\n\n render() {\n return (\n <header class=\"container\">\n <slot name=\"prefix\" />\n <div class=\"title\">{this.titleText}</div>\n <slot name=\"suffix\" />\n </header>\n );\n }\n}\n"]}
@@ -8,4 +8,4 @@
8
8
  flex: 1;
9
9
  height: var(--spacing-14);
10
10
  border-top: 1px solid var(--color-neutral-100);
11
- }
11
+ }
@@ -5,7 +5,7 @@ import { h } from "@stencil/core";
5
5
  */
6
6
  export class ScoutBottomBar {
7
7
  render() {
8
- return (h("nav", { key: '0904c3ec8b60ca5fe9a2ed4d68ea2b6fcb55f0dc', class: "container" }, h("slot", { key: '18223004272416c7ced4ff31a160adbb451a7367' })));
8
+ return (h("nav", { key: '5f2fb6d34977a9a83fb2c2e254562b129fe40535', class: "container" }, h("slot", { key: '6833b584719bf53edfa90875d8798707a7fccbe4' })));
9
9
  }
10
10
  static get is() { return "scout-bottom-bar"; }
11
11
  static get encapsulation() { return "shadow"; }
@@ -36,4 +36,4 @@
36
36
  a {
37
37
  -webkit-text-decoration: none;
38
38
  text-decoration: none;
39
- }
39
+ }
@@ -14,6 +14,8 @@ export class ScoutBottomBarItem {
14
14
  * `type` is set to "link".
15
15
  */
16
16
  href;
17
+ target;
18
+ rel;
17
19
  /**
18
20
  * An icon to display above the label. Must be an SVG string.
19
21
  */
@@ -33,9 +35,13 @@ export class ScoutBottomBarItem {
33
35
  const props = this.type === "link"
34
36
  ? {
35
37
  href: this.href,
38
+ target: this.target,
39
+ // This might not be our job, but better safe than sorry.
40
+ rel: this.rel ??
41
+ (this.target === "_blank" ? "noopener noreferrer" : undefined),
36
42
  }
37
43
  : {};
38
- return (h(Tag, { key: 'da439bd71733883dd610eb24b9ffffb9bb2369e1', class: clsx("button", this.active && "active"), onClick: () => this.scoutClick.emit(), ...props }, h("span", { key: 'e3267d4487d643265984555155760cbdb242ef81', class: "icon", innerHTML: this.icon }), h("span", { key: '02ade513642f237b24ef25856bf4b56e386b7b2a', class: "label" }, this.label)));
44
+ return (h(Tag, { key: '96f414836614c63073d7d4250e5d51e9b4f0fe18', class: clsx("button", this.active && "active"), onClick: () => this.scoutClick.emit(), ...props }, h("span", { key: '9a6715eb90b616aa62bd4120ff49aeb687d43d27', class: "icon", innerHTML: this.icon }), h("span", { key: 'b66e620d12e0da541e4b6366a2eb373383dff4b8', class: "label" }, this.label)));
39
45
  }
40
46
  static get is() { return "scout-bottom-bar-item"; }
41
47
  static get encapsulation() { return "shadow"; }
@@ -61,7 +67,7 @@ export class ScoutBottomBarItem {
61
67
  "references": {
62
68
  "ItemType": {
63
69
  "location": "local",
64
- "path": "/home/runner/work/j26-web-components/j26-web-components/packages/ui-webc/src/components/bottom-bar-item/bottom-bar-item.tsx",
70
+ "path": "/home/runner/work/j26-components/j26-components/packages/ui-webc/src/components/bottom-bar-item/bottom-bar-item.tsx",
65
71
  "id": "src/components/bottom-bar-item/bottom-bar-item.tsx::ItemType"
66
72
  }
67
73
  }
@@ -97,6 +103,44 @@ export class ScoutBottomBarItem {
97
103
  "reflect": false,
98
104
  "attribute": "href"
99
105
  },
106
+ "target": {
107
+ "type": "string",
108
+ "mutable": false,
109
+ "complexType": {
110
+ "original": "string",
111
+ "resolved": "string",
112
+ "references": {}
113
+ },
114
+ "required": false,
115
+ "optional": true,
116
+ "docs": {
117
+ "tags": [],
118
+ "text": ""
119
+ },
120
+ "getter": false,
121
+ "setter": false,
122
+ "reflect": false,
123
+ "attribute": "target"
124
+ },
125
+ "rel": {
126
+ "type": "string",
127
+ "mutable": false,
128
+ "complexType": {
129
+ "original": "string",
130
+ "resolved": "string",
131
+ "references": {}
132
+ },
133
+ "required": false,
134
+ "optional": true,
135
+ "docs": {
136
+ "tags": [],
137
+ "text": ""
138
+ },
139
+ "getter": false,
140
+ "setter": false,
141
+ "reflect": false,
142
+ "attribute": "rel"
143
+ },
100
144
  "icon": {
101
145
  "type": "string",
102
146
  "mutable": false,
@@ -1 +1 @@
1
- {"version":3,"file":"bottom-bar-item.js","sourceRoot":"","sources":["../../../src/components/bottom-bar-item/bottom-bar-item.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB;;;GAGG;AAQH,MAAM,OAAO,kBAAkB;IAC7B;;OAEG;IACK,IAAI,GAAa,QAAQ,CAAC;IAElC;;;OAGG;IACK,IAAI,CAAU;IAEtB;;OAEG;IACK,IAAI,CAAU;IAEtB;;OAEG;IACK,KAAK,CAAU;IAEvB;;;OAGG;IACK,MAAM,CAAW;IAEhB,UAAU,CAAqB;IAExC,MAAM;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;QAElD,MAAM,KAAK,GACT,IAAI,CAAC,IAAI,KAAK,MAAM;YAClB,CAAC,CAAC;gBACE,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB;YACH,CAAC,CAAC,EAAE,CAAC;QAET,OAAO,CACL,EAAC,GAAG,qDACF,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,EAC9C,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KACjC,KAAK;YAET,6DAAM,KAAK,EAAC,MAAM,EAAC,SAAS,EAAE,IAAI,CAAC,IAAI,GAAI;YAC3C,6DAAM,KAAK,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ,CACnC,CACP,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Event, type EventEmitter, h, Prop } from \"@stencil/core\";\nimport clsx from \"clsx\";\n\nexport type ItemType = \"button\" | \"link\";\n\n/**\n * A bottom bar item used within the bottom bar for navigation. Should not be\n * used outside of a bottom bar.\n */\n@Component({\n tag: \"scout-bottom-bar-item\",\n styleUrl: \"bottom-bar-item.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class ScoutBottomBarItem {\n /**\n * The type of the bottom bar item, either a button or a link.\n */\n @Prop() type: ItemType = \"button\";\n\n /**\n * An optional link to navigate to when the item is clicked. Only used when\n * `type` is set to \"link\".\n */\n @Prop() href?: string;\n\n /**\n * An icon to display above the label. Must be an SVG string.\n */\n @Prop() icon!: string;\n\n /**\n * The label to display below the icon.\n */\n @Prop() label!: string;\n\n /**\n * Whether the item is currently active. Should be set to true when the item\n * represents the current page.\n */\n @Prop() active?: boolean;\n\n @Event() scoutClick: EventEmitter<void>;\n\n render() {\n const Tag = this.type === \"link\" ? \"a\" : \"button\";\n\n const props =\n this.type === \"link\"\n ? {\n href: this.href,\n }\n : {};\n\n return (\n <Tag\n class={clsx(\"button\", this.active && \"active\")}\n onClick={() => this.scoutClick.emit()}\n {...props}\n >\n <span class=\"icon\" innerHTML={this.icon} />\n <span class=\"label\">{this.label}</span>\n </Tag>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"bottom-bar-item.js","sourceRoot":"","sources":["../../../src/components/bottom-bar-item/bottom-bar-item.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB;;;GAGG;AAQH,MAAM,OAAO,kBAAkB;IAC7B;;OAEG;IACK,IAAI,GAAa,QAAQ,CAAC;IAElC;;;OAGG;IACK,IAAI,CAAU;IACd,MAAM,CAAU;IAChB,GAAG,CAAU;IAErB;;OAEG;IACK,IAAI,CAAU;IAEtB;;OAEG;IACK,KAAK,CAAU;IAEvB;;;OAGG;IACK,MAAM,CAAW;IAEhB,UAAU,CAAqB;IAExC,MAAM;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;QAElD,MAAM,KAAK,GACT,IAAI,CAAC,IAAI,KAAK,MAAM;YAClB,CAAC,CAAC;gBACE,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,yDAAyD;gBACzD,GAAG,EACD,IAAI,CAAC,GAAG;oBACR,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;aACjE;YACH,CAAC,CAAC,EAAE,CAAC;QAET,OAAO,CACL,EAAC,GAAG,qDACF,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,EAC9C,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KACjC,KAAK;YAET,6DAAM,KAAK,EAAC,MAAM,EAAC,SAAS,EAAE,IAAI,CAAC,IAAI,GAAI;YAC3C,6DAAM,KAAK,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ,CACnC,CACP,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Event, type EventEmitter, h, Prop } from \"@stencil/core\";\nimport clsx from \"clsx\";\n\nexport type ItemType = \"button\" | \"link\";\n\n/**\n * A bottom bar item used within the bottom bar for navigation. Should not be\n * used outside of a bottom bar.\n */\n@Component({\n tag: \"scout-bottom-bar-item\",\n styleUrl: \"bottom-bar-item.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class ScoutBottomBarItem {\n /**\n * The type of the bottom bar item, either a button or a link.\n */\n @Prop() type: ItemType = \"button\";\n\n /**\n * An optional link to navigate to when the item is clicked. Only used when\n * `type` is set to \"link\".\n */\n @Prop() href?: string;\n @Prop() target?: string;\n @Prop() rel?: string;\n\n /**\n * An icon to display above the label. Must be an SVG string.\n */\n @Prop() icon!: string;\n\n /**\n * The label to display below the icon.\n */\n @Prop() label!: string;\n\n /**\n * Whether the item is currently active. Should be set to true when the item\n * represents the current page.\n */\n @Prop() active?: boolean;\n\n @Event() scoutClick: EventEmitter<void>;\n\n render() {\n const Tag = this.type === \"link\" ? \"a\" : \"button\";\n\n const props =\n this.type === \"link\"\n ? {\n href: this.href,\n target: this.target,\n // This might not be our job, but better safe than sorry.\n rel:\n this.rel ??\n (this.target === \"_blank\" ? \"noopener noreferrer\" : undefined),\n }\n : {};\n\n return (\n <Tag\n class={clsx(\"button\", this.active && \"active\")}\n onClick={() => this.scoutClick.emit()}\n {...props}\n >\n <span class=\"icon\" innerHTML={this.icon} />\n <span class=\"label\">{this.label}</span>\n </Tag>\n );\n }\n}\n"]}
@@ -1,18 +1,20 @@
1
1
  :host {
2
2
  display: inline-flex;
3
+ height: var(--spacing-10);
3
4
  }
4
5
 
5
- button {
6
+ .button {
6
7
  display: inline-flex;
7
8
  align-items: center;
8
9
  justify-content: center;
9
10
  gap: var(--spacing-3);
10
- height: var(--spacing-10);
11
11
  padding: 0 var(--spacing-4);
12
12
  font: var(--type-body-base);
13
13
  border-radius: var(--spacing-2);
14
14
  border: 1px solid transparent;
15
15
  cursor: pointer;
16
+ -webkit-text-decoration: none;
17
+ text-decoration: none;
16
18
  }
17
19
 
18
20
  .icon {
@@ -26,69 +28,90 @@ button {
26
28
  height: 100%;
27
29
  }
28
30
 
29
- button.primary {
31
+ .button.icon-only {
32
+ aspect-ratio: 1 / 1;
33
+ justify-content: center;
34
+ padding: 0;
35
+ }
36
+
37
+ .button.icon-only .icon {
38
+ margin: 0;
39
+ }
40
+
41
+ .button.icon-only .content {
42
+ /* Visually hidden: https://www.a11yproject.com/posts/how-to-hide-content/ */
43
+ clip: rect(0 0 0 0);
44
+ clip-path: inset(50%);
45
+ height: 1px;
46
+ overflow: hidden;
47
+ position: absolute;
48
+ white-space: nowrap;
49
+ width: 1px;
50
+ }
51
+
52
+ .button.primary {
30
53
  background-color: var(--color-background-brand-base);
31
54
  color: var(--color-text-brand-inverse);
32
55
  }
33
56
 
34
- button.primary:hover {
57
+ .button.primary:hover {
35
58
  background-color: var(--color-background-brand-hovered);
36
59
  }
37
60
 
38
- button.primary:active {
61
+ .button.primary:active {
39
62
  background-color: var(--color-background-brand-pressed);
40
63
  }
41
64
 
42
- button.outlined {
65
+ .button.outlined {
43
66
  background-color: transparent;
44
67
  border-color: var(--color-background-brand-subtle-base);
45
68
  color: var(--color-text-brand-base);
46
69
  }
47
70
 
48
- button.outlined:hover {
71
+ .button.outlined:hover {
49
72
  background-color: var(--color-background-brand-subtle-hovered);
50
73
  }
51
74
 
52
- button.outlined:active {
75
+ .button.outlined:active {
53
76
  background-color: var(--color-background-brand-subtle-pressed);
54
77
  }
55
78
 
56
- button.text {
79
+ .button.text {
57
80
  background-color: transparent;
58
81
  border-color: transparent;
59
82
  color: var(--color-text-brand-base);
60
83
  }
61
84
 
62
- button.text:hover {
85
+ .button.text:hover {
63
86
  background-color: var(--color-background-brand-subtle-hovered);
64
87
  }
65
88
 
66
- button.text:active {
89
+ .button.text:active {
67
90
  background-color: var(--color-background-brand-subtle-pressed);
68
91
  }
69
92
 
70
- button.caution {
93
+ .button.caution {
71
94
  background-color: var(--color-background-caution-bold-base);
72
95
  color: var(--color-text-caution-bold-base);
73
96
  }
74
97
 
75
- button.caution:hover {
98
+ .button.caution:hover {
76
99
  background-color: var(--color-background-caution-bold-hovered);
77
100
  }
78
101
 
79
- button.caution:active {
102
+ .button.caution:active {
80
103
  background-color: var(--color-background-caution-bold-pressed);
81
104
  }
82
105
 
83
- button.danger {
106
+ .button.danger {
84
107
  background-color: var(--color-background-danger-bold-base);
85
108
  color: var(--color-text-danger-bold-base);
86
109
  }
87
110
 
88
- button.danger:hover {
111
+ .button.danger:hover {
89
112
  background-color: var(--color-background-danger-bold-hovered);
90
113
  }
91
114
 
92
- button.danger:active {
115
+ .button.danger:active {
93
116
  background-color: var(--color-background-danger-bold-pressed);
94
117
  }
@@ -4,6 +4,9 @@ import { h } from "@stencil/core";
4
4
  */
5
5
  export class ScoutButton {
6
6
  type = "button";
7
+ href;
8
+ target;
9
+ rel;
7
10
  /**
8
11
  * The variant primarily affects the color of the button.
9
12
  */
@@ -12,9 +15,22 @@ export class ScoutButton {
12
15
  * An optional icon to display alongside the button text. Must be an SVG string.
13
16
  */
14
17
  icon;
18
+ iconOnly = false;
15
19
  scoutClick;
16
20
  render() {
17
- return (h("button", { key: '7c5b9b8b4dbb40537b923585af17c81dc6ee1644', type: this.type, class: this.variant, onClick: () => this.scoutClick.emit() }, h("slot", { key: 'a89b795dbbd004cd8d9123bacf338cb87cca4953' }), this.icon && h("span", { key: '12ac9a0668ebd4d84fd02e5065f1c9802d188171', class: "icon", innerHTML: this.icon })));
21
+ const Tag = this.type === "link" ? "a" : "button";
22
+ const props = this.type === "link"
23
+ ? {
24
+ href: this.href,
25
+ target: this.target,
26
+ // This might not be our job, but better safe than sorry.
27
+ rel: this.rel ??
28
+ (this.target === "_blank" ? "noopener noreferrer" : undefined),
29
+ }
30
+ : {
31
+ type: this.type,
32
+ };
33
+ return (h(Tag, { key: 'e82f79602197488fbf8e013259203ae5862da824', class: `button ${this.variant} ${this.iconOnly ? "icon-only" : ""}`, onClick: () => this.scoutClick.emit(), ...props }, h("span", { key: '1be7c7ccdb6f6570f08f06a81539174c76cbaa8c', class: "content" }, h("slot", { key: '556d6b6497cbcd437fbd4d77bff8b814511c844a' })), this.icon && h("span", { key: '9cf1e36f3cd767e2ac65dd0bdb1401759bf71e9e', class: "icon", innerHTML: this.icon })));
18
34
  }
19
35
  static get is() { return "scout-button"; }
20
36
  static get encapsulation() { return "shadow"; }
@@ -35,8 +51,8 @@ export class ScoutButton {
35
51
  "type": "string",
36
52
  "mutable": false,
37
53
  "complexType": {
38
- "original": "\"button\" | \"submit\" | \"reset\"",
39
- "resolved": "\"button\" | \"reset\" | \"submit\"",
54
+ "original": "\"button\" | \"submit\" | \"reset\" | \"link\"",
55
+ "resolved": "\"button\" | \"link\" | \"reset\" | \"submit\"",
40
56
  "references": {}
41
57
  },
42
58
  "required": false,
@@ -51,6 +67,63 @@ export class ScoutButton {
51
67
  "attribute": "type",
52
68
  "defaultValue": "\"button\""
53
69
  },
70
+ "href": {
71
+ "type": "string",
72
+ "mutable": false,
73
+ "complexType": {
74
+ "original": "string",
75
+ "resolved": "string",
76
+ "references": {}
77
+ },
78
+ "required": false,
79
+ "optional": true,
80
+ "docs": {
81
+ "tags": [],
82
+ "text": ""
83
+ },
84
+ "getter": false,
85
+ "setter": false,
86
+ "reflect": false,
87
+ "attribute": "href"
88
+ },
89
+ "target": {
90
+ "type": "string",
91
+ "mutable": false,
92
+ "complexType": {
93
+ "original": "string",
94
+ "resolved": "string",
95
+ "references": {}
96
+ },
97
+ "required": false,
98
+ "optional": true,
99
+ "docs": {
100
+ "tags": [],
101
+ "text": ""
102
+ },
103
+ "getter": false,
104
+ "setter": false,
105
+ "reflect": false,
106
+ "attribute": "target"
107
+ },
108
+ "rel": {
109
+ "type": "string",
110
+ "mutable": false,
111
+ "complexType": {
112
+ "original": "string",
113
+ "resolved": "string",
114
+ "references": {}
115
+ },
116
+ "required": false,
117
+ "optional": true,
118
+ "docs": {
119
+ "tags": [],
120
+ "text": ""
121
+ },
122
+ "getter": false,
123
+ "setter": false,
124
+ "reflect": false,
125
+ "attribute": "rel"
126
+ },
54
127
  "variant": {
55
128
  "type": "string",
56
129
  "mutable": false,
@@ -60,7 +133,7 @@ export class ScoutButton {
60
133
  "references": {
61
134
  "Variant": {
62
135
  "location": "local",
63
- "path": "/home/runner/work/j26-web-components/j26-web-components/packages/ui-webc/src/components/button/button.tsx",
136
+ "path": "/home/runner/work/j26-components/j26-components/packages/ui-webc/src/components/button/button.tsx",
64
137
  "id": "src/components/button/button.tsx::Variant"
65
138
  }
66
139
  }
@@ -95,6 +168,26 @@ export class ScoutButton {
95
168
  "setter": false,
96
169
  "reflect": false,
97
170
  "attribute": "icon"
171
+ },
172
+ "iconOnly": {
173
+ "type": "boolean",
174
+ "mutable": false,
175
+ "complexType": {
176
+ "original": "boolean",
177
+ "resolved": "boolean",
178
+ "references": {}
179
+ },
180
+ "required": false,
181
+ "optional": false,
182
+ "docs": {
183
+ "tags": [],
184
+ "text": ""
185
+ },
186
+ "getter": false,
187
+ "setter": false,
188
+ "reflect": false,
189
+ "attribute": "icon-only",
190
+ "defaultValue": "false"
98
191
  }
99
192
  };
100
193
  }
@@ -1 +1 @@
1
- {"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAI7E;;GAEG;AAQH,MAAM,OAAO,WAAW;IACd,IAAI,GAAkC,QAAQ,CAAC;IAEvD;;OAEG;IACK,OAAO,GAAY,UAAU,CAAC;IAEtC;;OAEG;IACK,IAAI,CAAU;IAEb,UAAU,CAAqB;IAExC,MAAM;QACJ,OAAO,CACL,+DACE,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,OAAO,EACnB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;YAErC,8DAAQ;YACP,IAAI,CAAC,IAAI,IAAI,6DAAM,KAAK,EAAC,MAAM,EAAC,SAAS,EAAE,IAAI,CAAC,IAAI,GAAI,CAClD,CACV,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Event, type EventEmitter, h, Prop } from \"@stencil/core\";\n\nexport type Variant = \"primary\" | \"outlined\" | \"text\" | \"caution\" | \"danger\";\n\n/**\n * A simple button component.\n */\n@Component({\n tag: \"scout-button\",\n styleUrl: \"button.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class ScoutButton {\n @Prop() type: \"button\" | \"submit\" | \"reset\" = \"button\";\n\n /**\n * The variant primarily affects the color of the button.\n */\n @Prop() variant: Variant = \"outlined\";\n\n /**\n * An optional icon to display alongside the button text. Must be an SVG string.\n */\n @Prop() icon?: string;\n\n @Event() scoutClick: EventEmitter<void>;\n\n render() {\n return (\n <button\n type={this.type}\n class={this.variant}\n onClick={() => this.scoutClick.emit()}\n >\n <slot />\n {this.icon && <span class=\"icon\" innerHTML={this.icon} />}\n </button>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAI7E;;GAEG;AAQH,MAAM,OAAO,WAAW;IACd,IAAI,GAA2C,QAAQ,CAAC;IAExD,IAAI,CAAU;IACd,MAAM,CAAU;IAChB,GAAG,CAAU;IAErB;;OAEG;IACK,OAAO,GAAY,UAAU,CAAC;IAEtC;;OAEG;IACK,IAAI,CAAU;IACd,QAAQ,GAAY,KAAK,CAAC;IAEzB,UAAU,CAAqB;IAExC,MAAM;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;QAElD,MAAM,KAAK,GACT,IAAI,CAAC,IAAI,KAAK,MAAM;YAClB,CAAC,CAAC;gBACE,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,yDAAyD;gBACzD,GAAG,EACD,IAAI,CAAC,GAAG;oBACR,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;aACjE;YACH,CAAC,CAAC;gBACE,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC;QAER,OAAO,CACL,EAAC,GAAG,qDACF,KAAK,EAAE,UAAU,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,EACnE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KACjC,KAAK;YAET,6DAAM,KAAK,EAAC,SAAS;gBACnB,8DAAQ,CACH;YACN,IAAI,CAAC,IAAI,IAAI,6DAAM,KAAK,EAAC,MAAM,EAAC,SAAS,EAAE,IAAI,CAAC,IAAI,GAAI,CACrD,CACP,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Event, type EventEmitter, h, Prop } from \"@stencil/core\";\n\nexport type Variant = \"primary\" | \"outlined\" | \"text\" | \"caution\" | \"danger\";\n\n/**\n * A simple button component.\n */\n@Component({\n tag: \"scout-button\",\n styleUrl: \"button.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class ScoutButton {\n @Prop() type: \"button\" | \"submit\" | \"reset\" | \"link\" = \"button\";\n\n @Prop() href?: string;\n @Prop() target?: string;\n @Prop() rel?: string;\n\n /**\n * The variant primarily affects the color of the button.\n */\n @Prop() variant: Variant = \"outlined\";\n\n /**\n * An optional icon to display alongside the button text. Must be an SVG string.\n */\n @Prop() icon?: string;\n @Prop() iconOnly: boolean = false;\n\n @Event() scoutClick: EventEmitter<void>;\n\n render() {\n const Tag = this.type === \"link\" ? \"a\" : \"button\";\n\n const props =\n this.type === \"link\"\n ? {\n href: this.href,\n target: this.target,\n // This might not be our job, but better safe than sorry.\n rel:\n this.rel ??\n (this.target === \"_blank\" ? \"noopener noreferrer\" : undefined),\n }\n : {\n type: this.type,\n };\n\n return (\n <Tag\n class={`button ${this.variant} ${this.iconOnly ? \"icon-only\" : \"\"}`}\n onClick={() => this.scoutClick.emit()}\n {...props}\n >\n <span class=\"content\">\n <slot />\n </span>\n {this.icon && <span class=\"icon\" innerHTML={this.icon} />}\n </Tag>\n );\n }\n}\n"]}
@@ -4,5 +4,7 @@
4
4
  border: 1px solid var(--color-gray-100);
5
5
  padding: var(--spacing-2);
6
6
  /* TODO: We don't have tokens for shadows yet */
7
- box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
8
- }
7
+ box-shadow:
8
+ 0 1px 3px 0 rgba(0, 0, 0, 0.1),
9
+ 0 1px 2px -1px rgba(0, 0, 0, 0.1);
10
+ }
@@ -4,7 +4,7 @@ import { h } from "@stencil/core";
4
4
  */
5
5
  export class ScoutCard {
6
6
  render() {
7
- return h("slot", { key: 'bde708b7482da31d53fbc29581bed3f068e26279' });
7
+ return h("slot", { key: '44e84e98fac4b83c20fdec40a532c752f41dffd7' });
8
8
  }
9
9
  static get is() { return "scout-card"; }
10
10
  static get encapsulation() { return "shadow"; }
@@ -25,7 +25,7 @@
25
25
 
26
26
  .checkbox:checked:hover {
27
27
  background-color: var(--color-background-brand-hovered);
28
- border: 2px solid var(--color-background-brand-hovered);
28
+ border-color: var(--color-background-brand-hovered);
29
29
  box-shadow: none;
30
30
  }
31
31
 
@@ -70,12 +70,8 @@
70
70
 
71
71
  label {
72
72
  display: flex;
73
- flex-direction: row-reverse;
74
73
  align-items: center;
74
+ gap: var(--spacing-2);
75
75
  font: var(--type-label-base);
76
76
  color: var(--color-text-base);
77
77
  }
78
-
79
- .inlineDivider {
80
- width: var(--spacing-2);
81
- }